plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

openfd.9p (1080B)


      1 .TH OPENFD 9P
      2 .SH NAME
      3 openfd \- prepare a fid for I/O using a file descriptor
      4 .SH SYNOPSIS
      5 .ta \w'\fLTopenfd 'u
      6 .IR size [4]
      7 .B Topenfd
      8 .IR tag [2]
      9 .IR fid [4]
     10 .IR mode [1]
     11 .br
     12 .IR size [4]
     13 .B Ropenfd
     14 .IR tag [2]
     15 .IR qid [13]
     16 .IR iounit [4]
     17 .IR unixfd [4]
     18 .SH DESCRIPTION
     19 The
     20 .I openfd
     21 request behaves like open, except that it prepares and returns
     22 a Unix file descriptor corresponding to the opened fid.
     23 .PP
     24 After a successful
     25 .I open
     26 transaction,
     27 .I fid
     28 is considered by the client to have been clunked
     29 and can be reused.
     30 .PP
     31 The returned Unix file descriptor is one end of a Unix pipe.
     32 A proxy process at the other end transfers data between
     33 the pipe and the 9P server.
     34 Because it is a pipe, errors on reads and writes are discarded
     35 and
     36 .I mode
     37 must be
     38 .B OREAD
     39 or
     40 .BR OWRITE ;
     41 it cannot be
     42 .BR ORDWR .
     43 .PP
     44 .I Openfd
     45 is implemented by
     46 .MR 9pserve (4) .
     47 9P servers that post their services using
     48 .MR 9pserve (4)
     49 (or indirectly via
     50 .MR post9pservice (3) )
     51 will never see a
     52 .B Topenfd
     53 message.
     54 .SH ENTRY POINTS
     55 .I Fsopenfd
     56 (see
     57 .MR 9pclient (3) )
     58 generates an
     59 .B openfd
     60 message.