| OPENFD(9P) | OPENFD(9P)

NAME

| openfd – prepare a fid for I/O using a file descriptor

SYNOPSIS

| size[4] `Topenfd` tag[2] fid[4] mode[1] size[4] `Ropenfd` tag[2] qid[13] iounit[4] unixfd[4]

DESCRIPTION

The openfd request behaves like open, except that it prepares and returns a Unix file descriptor corresponding to the opened fid.

After a successful open transaction, fid is considered by the client to have been clunked and can be reused.

The returned Unix file descriptor is one end of a Unix pipe. A proxy process at the other end transfers data between the pipe and the 9P server. Because it is a pipe, errors on reads and writes are discarded and mode must be `OREAD` or `OWRITE`; it cannot be `ORDWR`.

Openfd is implemented by 9pserve(4). 9P servers that post their services using 9pserve(4) (or indirectly via post9pservice(3)) will never see a `Topenfd` message.

ENTRY POINTS

| Fsopenfd (see 9pclient(3)) generates an `openfd` message.