chiark / gitweb /
278029a56954a2e234f8b1c0a05f7ee05ba87993
[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 .\" $Id$
21 .\"
22 .TH AUTHBIND\-HELPER 8 "30th August 1998" "Debian Project" "Debian Linux manual"
23 .br
24 .SH NAME 
25 authbind\-helper \- helper program to bind sockets to privileged ports without root
26 .SH SYNOPSIS
27 .BI /usr/lib/authbind/helper " addr4\-hex port\-hex " < socket
28 .br
29 .BI /usr/lib/authbind/helper " addr6\-hex port\-hex 6 " < socket
30 .SH DESCRIPTION
31 .B helper
32 is the program used by
33 .BR libauthbind ,
34 which is in turn used by
35 .B authbind
36 to allow programs which do not or should not run as root to bind to
37 low-numbered ports in a controlled way.  See
38 .BR authbind (1).
39 .PP
40 It may also be used standalone, i.e. without assistance from
41 .BR authbind .
42 Its standard input should be a TCP/IP socket, and it should be passed
43 two or three arguments.
44 .PP
45 The arguments are the address and port number, respectively, to which
46 the caller desires that the socket be bound, and the address family
47 (ommitted for IPv4; the fixed string
48 .B 6
49 for IPv6).
50 The address and port should be hex strings,
51 .I without
52 leading
53 .BR 0x ,
54 of exactly the right length (8 or 32, and 4, digits, respectively), being
55 a pairs of hex digits for each byte in the address or port number when
56 expressed in host byte order.  For example, the port argument is the
57 result of something like
58 .B sprintf(arg,
59 .B """%04X"",
60 .BR sin.sin_port) .
61 .SH EXIT STATUS
62 .B helper
63 will exit with code 0 on success.
64 .PP
65 If possible,
66 .B helper
67 will return an appropriate
68 .B errno
69 value as its exit status.  If this is not possible it may exit with
70 status 255 or with an exit status corresponding to
71 .B ENOSYS
72 .RI ( "Function not implemented" ).
73 .SH ACCESS CONTROL
74 See
75 .BR authbind (1)
76 for details of the access control regime implemented by
77 .BR helper .
78 .SH SEE ALSO
79 .BR authbind (1),
80 .BR bind (2)
81 .SH AUTHOR
82 .B authbind
83 and this manpage were written by Ian Jackson.  They are
84 Copyright (C)1998,2012
85 by him and released under the GNU General Public Licence; there is NO
86 WARRANTY.  See
87 .B /usr/doc/authbind/copyright
88 and
89 .B /usr/doc/copyright/GPL
90 for details.