diff options
author | Sripathi Kodi <sripathik@in.ibm.com> | 2010-03-05 13:49:11 -0500 |
---|---|---|
committer | Eric Van Hensbergen <ericvh@gmail.com> | 2010-03-05 16:04:42 -0500 |
commit | 0fb80abd911a7cb1e6548b5279568dc1e8949702 (patch) | |
tree | 0c179f49f2f0d0bf2c979ee1b1f1cfd864122029 /include/net/9p | |
parent | dd6102fbd917889384d89bc427e98e85e8fda000 (diff) |
9P2010.L handshake: Add mount option
Add new mount V9FS mount option to specify protocol version
This patch adds a new mount option to specify protocol version.
With this option it is possible to use "-o version=" switch to
specify 9P protocol version to use. Valid options for version
are:
9p2000
9p2000.u
9p2010.L
Signed-off-by: Sripathi Kodi <sripathik@in.ibm.com>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
Diffstat (limited to 'include/net/9p')
-rw-r--r-- | include/net/9p/client.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/net/9p/client.h b/include/net/9p/client.h index fb00b329f0d3..d40f8c55dfae 100644 --- a/include/net/9p/client.h +++ b/include/net/9p/client.h | |||
@@ -29,6 +29,19 @@ | |||
29 | /* Number of requests per row */ | 29 | /* Number of requests per row */ |
30 | #define P9_ROW_MAXTAG 255 | 30 | #define P9_ROW_MAXTAG 255 |
31 | 31 | ||
32 | /** enum p9_proto_versions - 9P protocol versions | ||
33 | * @p9_proto_legacy: 9P Legacy mode, pre-9P2000.u | ||
34 | * @p9_proto_2000u: 9P2000.u extension | ||
35 | * @p9_proto_2010L: 9P2010.L extension | ||
36 | */ | ||
37 | |||
38 | enum p9_proto_versions{ | ||
39 | p9_proto_legacy = 0, | ||
40 | p9_proto_2000u = 1, | ||
41 | p9_proto_2010L = 2, | ||
42 | }; | ||
43 | |||
44 | |||
32 | /** | 45 | /** |
33 | * enum p9_trans_status - different states of underlying transports | 46 | * enum p9_trans_status - different states of underlying transports |
34 | * @Connected: transport is connected and healthy | 47 | * @Connected: transport is connected and healthy |
@@ -111,6 +124,7 @@ struct p9_req_t { | |||
111 | * @lock: protect @fidlist | 124 | * @lock: protect @fidlist |
112 | * @msize: maximum data size negotiated by protocol | 125 | * @msize: maximum data size negotiated by protocol |
113 | * @dotu: extension flags negotiated by protocol | 126 | * @dotu: extension flags negotiated by protocol |
127 | * @proto_version: 9P protocol version to use | ||
114 | * @trans_mod: module API instantiated with this client | 128 | * @trans_mod: module API instantiated with this client |
115 | * @trans: tranport instance state and API | 129 | * @trans: tranport instance state and API |
116 | * @conn: connection state information used by trans_fd | 130 | * @conn: connection state information used by trans_fd |
@@ -138,6 +152,7 @@ struct p9_client { | |||
138 | spinlock_t lock; /* protect client structure */ | 152 | spinlock_t lock; /* protect client structure */ |
139 | int msize; | 153 | int msize; |
140 | unsigned char dotu; | 154 | unsigned char dotu; |
155 | unsigned char proto_version; | ||
141 | struct p9_trans_module *trans_mod; | 156 | struct p9_trans_module *trans_mod; |
142 | enum p9_trans_status status; | 157 | enum p9_trans_status status; |
143 | void *trans; | 158 | void *trans; |