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

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

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.

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

Space Glenda