X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/mLib/blobdiff_plain/dd3c57bc8cac59e0d657ee665ce462988d27d714..18c831dcd0ae4d660c70ccac69d27ed2a97851be:/sys/fdpass.3 diff --git a/sys/fdpass.3 b/sys/fdpass.3 new file mode 100644 index 0000000..b643bde --- /dev/null +++ b/sys/fdpass.3 @@ -0,0 +1,54 @@ +.\" -*-nroff-*- +.TH fdpass 3 "28 November 2003" "Straylight/Edgeware" "mLib utilities library" +.SH NAME +fdpass \- file descriptor passing +.\" @fdpass_send +.\" @fdpass_recv +.SH SYNOPSIS +.nf +.B "#include " + +.BI "ssize_t fdpass_send(int " sock ", int " fd ", const void *" p ", size_t " sz ); +.BI "ssize_t fdpass_recv(int " sock ", int *" fd ", void *" p ", size_t " sz ); +.fi +.SH DESCRIPTION +The function +.B fdpass_send +sends the file descriptor +.I fd +as ancillary data attached to the buffer pointed to by +.I p +of length +.I sz +over the Unix-domain socket +.IR sock . +It returns the amount of data sent, or \-1 on error. For more details, +see +.BR sendmsg (2) +and +.BR unix (7). +.PP +The function +.B fdpass_recv +receives at most +.I sz +bytes of data into the buffer pointed to by +.IR p , +together with at most one file descriptor passed as ancillary data, +which is written to the integer pointed to by +.IR fd . +Other file descriptors received are closed; any other ancillary messages +are ignored. If no file descriptor is received, +.BI * fd +is set to \-1. The function returns the number of bytes read, or \-1 on +error. For more details, see +.BR recvmsg (2) +and +.BR unix (7). +.SH "SEE ALSO" +.BR recvmsg (2), +.BR sendmsg (2), +.BR mLib (3), +.BR unix (7). +.SH AUTHOR +Mark Wooding,