commit - 0144f87dc6c7f2f6becbd55519e433a9b36a466f
commit + 36cd4c58c1346375b98f517fb8568be5bb47618d
blob - f432cf519c51022de00d0bf91bb3d29738a61107
blob + 30e153a1da94a021fb1d71f2a350f772e481c70a
--- man/man9/0intro.9p
+++ man/man9/0intro.9p
Another possibility for a server is to synthesize
files on demand, perhaps based on information on data structures
maintained in memory; the
-.IM plumber (4)
+.MR plumber (4)
server is an example of such a server.
.PP
A
Text strings are represented this way,
with the text itself stored as a UTF-8
encoded sequence of Unicode characters (see
-.IM utf (7) ).
+.MR utf (7) ).
Text strings in 9P messages are not
.SM NUL\c
-terminated:
outside hexadecimal 00-1F and 80-9F)
except slash.)
Messages are transported in byte form to allow for machine independence;
-.IM fcall (3)
+.MR fcall (3)
describes routines that convert to and from this form into a machine-dependent
C structure.
.SH MESSAGES
Fids are somewhat like file descriptors in a user process,
but they are not restricted to files open for I/O:
directories being examined, files being accessed by
-.IM stat (3)
+.MR stat (3)
calls, and so on \(em all files being manipulated by the operating
system \(em are identified by fids.
Fids are chosen by the client.
See
.IR openfd (9p)
and
-.IM 9pclient (3)
+.MR 9pclient (3)
for details.
.PP
The
access and modification times, and
owner and group identifications
(see
-.IM stat (3) ).
+.MR stat (3) ).
The owner and group identifications are textual names.
The
.B wstat
.SS Unix
On Unix, 9P services are posted as Unix domain sockets in a
well-known directory (see
-.IM getns (3)
+.MR getns (3)
and
-.IM 9pserve (4) ).
+.MR 9pserve (4) ).
Clients connect to these servers using a 9P client library
(see
-.IM 9pclient (3) ).
+.MR 9pclient (3) ).
.SH DIRECTORIES
Directories are created by
.B create
blob - 3a5104d5da241b44e7825d982efc23507fa7d94c
blob + 4160f30d656fe0740a34b08503f87213271a0663
--- man/man9/attach.9p
+++ man/man9/attach.9p
and
.I fsauth
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
generate
.B attach
and
.\" .B mount
.\" system call on an uninitialized connection.
.SH SEE ALSO
-.IM 9pclient (3) ,
+.MR 9pclient (3) ,
.IR version (9P),
Plan 9's \fIauthsrv\fR(6)
blob - 3277c4b056119c0bafbe6f058e75a92c6b33aaac
blob + f014ac4264d03a93729560ef23fe610c97f25f1e
--- man/man9/clunk.9p
+++ man/man9/clunk.9p
and
.I fsunmount
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
and indirectly by other actions such as failed
.I fsopen
calls.
blob - d0987cac4bf83425cefa61863ee55996ab3d069d
blob + 862ab9a4a86fc0a4ce1821eea5b61060cd6a6afd
--- man/man9/flush.9p
+++ man/man9/flush.9p
and flushing an invalid tag.
.SH ENTRY POINTS
The
-.IM 9pclient (3)
+.MR 9pclient (3)
library does not generate
.B flush
transactions..
-.IM 9pserve (4)
+.MR 9pserve (4)
generates
.B flush
transactions to cancel transactions pending when a client hangs up.
blob - 1f74eb07d040b9a6bcf6fa095b4c9e53b7e5b5c2
blob + 8a54f72c06b850ad164196a757b7145b358be770
--- man/man9/open.9p
+++ man/man9/open.9p
.I fscreate
call
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
uses
.B open
with truncation.
and
.I fscreate
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
both generate
.B open
messages; only
blob - 56fb392a28477a139351bdcaab8b7aebf329acdd
blob + 620b1991a44000d43ff39d59fc211e6ee1abbc27
--- man/man9/openfd.9p
+++ man/man9/openfd.9p
.PP
.I Openfd
is implemented by
-.IM 9pserve (4) .
+.MR 9pserve (4) .
9P servers that post their services using
-.IM 9pserve (4)
+.MR 9pserve (4)
(or indirectly via
-.IM post9pservice (3) )
+.MR post9pservice (3) )
will never see a
.B Topenfd
message.
.SH ENTRY POINTS
.I Fsopenfd
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
generates an
.B openfd
message.
blob - 515f85c31da96e9903c2f727471e03956dff2deb
blob + 675bb77384d6c02181aeb84040ca5c85e5266768
--- man/man9/read.9p
+++ man/man9/read.9p
and
.I fswrite
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
generate the corresponding messages.
Because they take an offset parameter, the
.I fspread
blob - 79a646a10ab513926be7233efc925420cbf91889
blob + 232c88f6bca2fc96866dbb4ab137134ebf649102
--- man/man9/remove.9p
+++ man/man9/remove.9p
.SH ENTRY POINTS
.I Fsremove
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
generates
.B remove
messages.
blob - b92f2d69ffe354810885b87b0a4562c65f2a5b70
blob + 7706d3eb1e2d185f915c9128212d3ba13fa143dd
--- man/man9/stat.9p
+++ man/man9/stat.9p
and
.I convD2M
routines (see
-.IM fcall (3) )
+.MR fcall (3) )
convert between directory entries and a C structure called a
.BR Dir .
.PP
and
.IR fsdirstat
(see
-.IM 9pclient (3) ).
+.MR 9pclient (3) ).
.PP
.B Wstat
messages are generated by
blob - 99f30239b6893e09ed883d9da743c5ac3c50f012
blob + c71ee556620c13a87a286f80270e297315c3e483
--- man/man9/version.9p
+++ man/man9/version.9p
.SH ENTRY POINTS
.I Fsversion
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
generates
.B version
messages;
blob - b48b947bb449e8d29d24547ee72203a35d2825a3
blob + 735b7dcb9231d269913b6d8dec21193f4555e3e5
--- man/man9/walk.9p
+++ man/man9/walk.9p
This constant is called
.B MAXWELEM
in
-.IM fcall (3) .
+.MR fcall (3) .
Despite this restriction, the system imposes no limit on the number of elements in a file name,
only the number that may be transmitted in a single message.
.SH ENTRY POINTS
.I Fswalk
(see
-.IM 9pclient (3) )
+.MR 9pclient (3) )
generates walk messages.
One or more walk messages may be generated by
any call that evaluates file names: