SENDFD(3) SENDFD(3)
NAME
sendfd, recvfd - pass file descriptors along Unix domain
sockets
SYNOPSIS
#include <u.h>
#include <libc.h>
int sendfd(int socket, int fd)
int recvfd(int socket)
DESCRIPTION
Recvfd and sendfd can be used to pass an open file descrip-
tor over a Unix domain socket from one process to another.
Since pipe(3) is implemented with socketpair(2) instead of
pipe(2), socket can be a file descriptor obtained from
pipe(3).
Sendfd sends the file descriptor fd along the socket to a
process calling recvfd on the other end.
It is assumed that the two sides have coordinated and agreed
to transfer a file descriptor already, so that the sendfd is
met with a recvfd instead of an ordinary read.
The file descriptor number may change on its way between
processes, but the kernel structure it represents will not.
SOURCE
/usr/local/plan9/src/lib9/sendfd.c
SEE ALSO
socketpair(2), sendmsg in send(2)
Page 1 Plan 9 (printed 10/25/25)