.TH OPENFD 9P .SH NAME openfd \- prepare a fid for I/O using a file descriptor .SH SYNOPSIS .ta \w'\fLTopenfd 'u .IR size [4] .B Topenfd .IR tag [2] .IR fid [4] .IR mode [1] .br .IR size [4] .B Ropenfd .IR tag [2] .IR qid [13] .IR iounit [4] .IR unixfd [4] .SH DESCRIPTION The .I openfd request behaves like open, except that it prepares and returns a Unix file descriptor corresponding to the opened fid. .PP After a successful .I open transaction, .I fid is considered by the client to have been clunked and can be reused. .PP 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 .I mode must be .B OREAD or .BR OWRITE ; it cannot be .BR ORDWR . .PP .I Openfd is implemented by .IR 9pserve (4). 9P servers that post their services using .IR 9pserve (4) (or indirectly via .IR post9pservice (3)) will never see a .B Topenfd message. .SH ENTRY POINTS .I Fsopenfd (see .IR 9pclient (3)) generates an .B openfd message.