1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
<head>
<title>attach(9P) - 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>ATTACH(9P)</b><td align=right><b>ATTACH(9P)</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>
attach, auth – messages to establish a connection<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>
<i>size</i>[4] <tt><font size=+1>Tauth</font></tt> <i>tag</i>[2] <i>afid</i>[4] <i>uname</i>[<i>s</i>] <i>aname</i>[<i>s</i>]<br>
<i>size</i>[4] <tt><font size=+1>Rauth</font></tt> <i>tag</i>[2] <i>aqid</i>[13]
<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
<i>size</i>[4] <tt><font size=+1>Tattach</font></tt> <i>tag</i>[2] <i>fid</i>[4] <i>afid</i>[4] <i>uname</i>[<i>s</i>] <i>aname</i>[<i>s</i>]<br>
<i>size</i>[4] <tt><font size=+1>Rattach</font></tt> <i>tag</i>[2] <i>qid</i>[13]<br>
</table>
<p><font size=+1><b>DESCRIPTION </b></font><br>
<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
The <tt><font size=+1>attach</font></tt> message serves as a fresh introduction from a user
on the client machine to the server. The message identifies the
user (<i>uname</i>) and may select the file tree to access (<i>aname</i>). The
<i>afid</i> argument specifies a fid previously established by an <tt><font size=+1>auth</font></tt>
message, as described below.
<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
As a result of the <tt><font size=+1>attach</font></tt> transaction, the client will have a
connection to the root directory of the desired file tree, represented
by <i>fid</i>. An error is returned if <i>fid</i> is already in use. The server’s
idea of the root of the file tree is represented by the returned
<i>qid</i>.
<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
If the client does not wish to authenticate the connection, or
knows that authentication is not required, the <i>afid</i> field in the
<tt><font size=+1>attach</font></tt> message should be set to <tt><font size=+1>NOFID</font></tt>, defined as <tt><font size=+1>(u32int)~0</font></tt> in
<tt><font size=+1><fcall.h></font></tt>. If the client does wish to authenticate, it must acquire
and validate an <i>afid</i> using an <tt><font size=+1>auth</font></tt> message before
doing the <tt><font size=+1>attach</font></tt>.
<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
The <tt><font size=+1>auth</font></tt> message contains <i>afid</i>, a new fid to be established for
authentication, and the <i>uname</i> and <i>aname</i> that will be those of
the following <tt><font size=+1>attach</font></tt> message. If the server does not require authentication,
it returns <tt><font size=+1>Rerror</font></tt> to the <tt><font size=+1>Tauth</font></tt> message.
<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
If the server does require authentication, it returns <i>aqid</i> defining
a file of type <tt><font size=+1>QTAUTH</font></tt> (see <i>intro</i>(9P)) that may be read and written
(using <tt><font size=+1>read</font></tt> and <tt><font size=+1>write</font></tt> messages in the usual way) to execute an
authentication protocol. That protocol’s definition is not part
of 9P itself.
<table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
Once the protocol is complete, the same <i>afid</i> is presented in the
<tt><font size=+1>attach</font></tt> message for the user, granting entry. The same validated
<i>afid</i> may be used for multiple <tt><font size=+1>attach</font></tt> messages with the same <i>uname</i>
and <i>aname</i>.<br>
</table>
<p><font size=+1><b>ENTRY POINTS </b></font><br>
<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>
<i>Fsmount</i> and <i>fsauth</i> (see <a href="../man3/9pclient.html"><i>9pclient</i>(3)</a>) generate <tt><font size=+1>attach</font></tt> and <tt><font size=+1>auth</font></tt>
transactions.<br>
</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="../man3/9pclient.html"><i>9pclient</i>(3)</a>, <i>version</i>(9P), Plan 9’s <i>authsrv</i>(6)<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>
|