chiark / gitweb /
Cope with programs which set SIGCHLD to SIG_IGN. (We assume they don't manipulate...
[authbind.git] / authbind-helper.8
1 .\" Hey, Emacs!  This is an -*- nroff -*- source file.
2 .\" Authors: Ian Jackson
3 .\" 
4 .\" authbind is Copyright (C) 1998 Ian Jackson
5 .\"
6 .\" This program is free software; you can redistribute it and/or modify
7 .\" it under the terms of the GNU General Public License as published by
8 .\" the Free Software Foundation; either version 2, or (at your option)
9 .\" any later version.
10 .\"
11 .\" This program is distributed in the hope that it will be useful,
12 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
13 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 .\" GNU General Public License for more details.
15 .\"
16 .\" You should have received a copy of the GNU General Public License
17 .\" along with this program; if not, write to the Free Software Foundation,
18 .\" Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 
19 .\"
20 .TH AUTHBIND\-HELPER 8 "30th August 1998" "Debian Project" "Debian Linux manual"
21 .br
22 .SH NAME 
23 authbind\-helper \- helper program to bind sockets to privileged ports without root
24 .SH SYNOPSIS
25 .BI /usr/lib/authbind/helper " addr4\-hex port\-hex " < socket
26 .br
27 .BI /usr/lib/authbind/helper " addr6\-hex port\-hex 6 " < socket
28 .SH DESCRIPTION
29 .B helper
30 is the program used by
31 .BR libauthbind ,
32 which is in turn used by
33 .B authbind
34 to allow programs which do not or should not run as root to bind to
35 low-numbered ports in a controlled way.  See
36 .BR authbind (1).
37 .PP
38 It may also be used standalone, i.e. without assistance from
39 .BR authbind .
40 Its standard input should be a TCP/IP socket, and it should be passed
41 two or three arguments.
42 .PP
43 The arguments are the address and port number, respectively, to which
44 the caller desires that the socket be bound, and the address family
45 (ommitted for IPv4; the fixed string
46 .B 6
47 for IPv6).
48 .I addr4-hex
49 and
50 .I port-hex
51 should be hex strings,
52 .I without
53 leading
54 .BR 0x ,
55 of exactly the right length (8 and 4 digits, respectively), being
56 a pair of hex digits for each byte in the address or port number when
57 expressed in host byte order.  For example, the port argument is the
58 result of something like
59 .B sprintf(arg,
60 .B """%04X"",
61 .BR sin.sin_port) .
62 .I addr6-hex
63 should be a string of 32 hex digits, being a pair for each byte in
64 the address, in network byte order.
65 .SH EXIT STATUS
66 .B helper
67 will exit with code 0 on success.
68 .PP
69 If possible,
70 .B helper
71 will return an appropriate
72 .B errno
73 value as its exit status.  If this is not possible it may exit with
74 status 255 or with an exit status corresponding to
75 .B ENOSYS
76 .RI ( "Function not implemented" ).
77 .SH ACCESS CONTROL
78 See
79 .BR authbind (1)
80 for details of the access control regime implemented by
81 .BR helper .
82 .SH SEE ALSO
83 .BR authbind (1),
84 .BR bind (2)
85 .SH AUTHOR
86 .B authbind
87 and this manpage were written by Ian Jackson.  They are
88 Copyright (C)1998,2012
89 by him and released under the GNU General Public Licence; there is NO
90 WARRANTY.  See
91 .B /usr/doc/authbind/copyright
92 and
93 .B /usr/doc/copyright/GPL
94 for details.