aboutsummaryrefslogtreecommitdiff
path: root/man/man3/proto.html
diff options
context:
space:
mode:
Diffstat (limited to 'man/man3/proto.html')
-rw-r--r--man/man3/proto.html140
1 files changed, 140 insertions, 0 deletions
diff --git a/man/man3/proto.html b/man/man3/proto.html
new file mode 100644
index 00000000..59e4fccd
--- /dev/null
+++ b/man/man3/proto.html
@@ -0,0 +1,140 @@
+<head>
+<title>proto(3) - Plan 9 from User Space</title>
+<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
+</head>
+<body bgcolor=#ffffff>
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=10><td>
+<tr><td width=20><td>
+<tr><td width=20><td><b>PROTO(3)</b><td align=right><b>PROTO(3)</b>
+<tr><td width=20><td colspan=2>
+ <br>
+<p><font size=+1><b>NAME </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ rdproto &ndash; parse and process a proto file listing<br>
+
+</table>
+<p><font size=+1><b>SYNOPSIS </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>#include &lt;u.h&gt;<br>
+ #include &lt;libc.h&gt;<br>
+ #include &lt;disk.h&gt;<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>typedef void Protoenum(char *new, char *old, Dir *d, void *a)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>typedef void Protowarn(char *msg, void *a)<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+ </font></tt>
+ <tt><font size=+1>int rdproto(char *proto, char *root, Protoenum *enm,<br>
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ Protowarn *warn, void *a)<br>
+
+ </table>
+
+ </table>
+ </font></tt>
+</table>
+<p><font size=+1><b>DESCRIPTION </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <i>Rdproto</i> reads and interprets the named <i>proto</i> file relative to
+ the root directory <i>root</i>.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Each line of the <i>proto</i> file specifies a file to copy. Blank lines
+ and lines beginning with <tt><font size=+1>#</font></tt> are ignored. Indentation (usually tabs)
+ is significant, with each level of indentation corresponding to
+ a level in the file tree. Fields within a line are separated by
+ white space. The first field is the last path element in the destination
+ file tree. The second field specifies the permissions. The third
+ field is the owner of the file, and the fourth is the group owning
+ the file. The fifth field is the name of the file from which to
+ copy; this file is read from the current name space, not the source
+ file tree. All fields except the first are optional. Specifying
+ <tt><font size=+1>&#8722;</font></tt> for
+ permissions, owner, or group causes <i>rdproto</i> to fetch the corresponding
+ information from the file rather than override it. (This is the
+ default behavior when the fields are not present; explicitly specifying
+ <tt><font size=+1>&#8722;</font></tt> is useful when one wishes to set, say, the file owner without
+ setting the permissions.)
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ Names beginning with a <tt><font size=+1>$</font></tt> are expanded as environment variables.
+ If the first file specified in a directory is <tt><font size=+1>*</font></tt>, all of the files
+ in that directory are considered listed. If the first file is
+ <tt><font size=+1>+</font></tt>, all of the files are copied, and all subdirectories are recursively
+ considered listed. All files are considered relative to <i>root</i>.
+
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ For each file named by the <i>proto</i>, <i>enm</i> is called with <i>new</i> pointing
+ at the name of the file (without the root prefix), <i>old</i> pointing
+ at the name of the source file (with the root prefix, when applicable),
+ and <i>Dir</i> at the desired directory information for the new file.
+ Only the <tt><font size=+1>name</font></tt>, <tt><font size=+1>uid</font></tt>, <tt><font size=+1>gid</font></tt>, <tt><font size=+1>mode</font></tt>, <tt><font size=+1>mtime</font></tt>, and <tt><font size=+1>length</font></tt> fields
+ are guaranteed to be valid. The argument <i>a</i> is the same argument
+ passed to <i>rdproto</i>; typically it points at some extra state used
+ by the enumeration function.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ When files or directories do not exist or cannot be read by <i>rdproto</i>,
+ it formats a warning message, calls <i>warn</i>, and continues processing;
+ if <i>warn</i> is nil, <i>rdproto</i> prints the warning message to standard
+ error.
+ <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
+
+ <i>Rdproto</i> returns zero if <i>proto</i> was processed, &ndash;1 if it could not
+ be opened.<br>
+
+</table>
+<p><font size=+1><b>FILES </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/sys/lib/sysconfig/proto/</font></tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;directory of prototype files.<br>
+ <tt><font size=+1>/sys/lib/sysconfig/proto/portproto</font></tt>&nbsp;&nbsp;&nbsp;generic prototype file.<br>
+
+</table>
+<p><font size=+1><b>SOURCE </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <tt><font size=+1>/usr/local/plan9/src/libdisk/proto.c<br>
+ </font></tt>
+</table>
+<p><font size=+1><b>SEE ALSO </b></font><br>
+
+<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
+
+ <a href="../man8/mk9660.html"><i>mk9660</i>(8)</a>, Plan 9&#8217;s <i>mkfs</i>(8)<br>
+
+</table>
+
+<td width=20>
+<tr height=20><td>
+</table>
+<!-- TRAILER -->
+<table border=0 cellpadding=0 cellspacing=0 width=100%>
+<tr height=15><td width=10><td><td width=10>
+<tr><td><td>
+<center>
+<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
+</center>
+</table>
+<!-- TRAILER -->
+</body></html>