Blame


1 2277c5d7 2004-03-21 devnull /*
2 2277c5d7 2004-03-21 devnull * NFS mounter V3; see RFC 1813
3 2277c5d7 2004-03-21 devnull */
4 2277c5d7 2004-03-21 devnull /*
5 2277c5d7 2004-03-21 devnull #pragma lib "libsunrpc.a"
6 2277c5d7 2004-03-21 devnull #pragma src "/sys/src/libsunrpc"
7 2277c5d7 2004-03-21 devnull */
8 2277c5d7 2004-03-21 devnull #define _NFS3H_ /* sorry */
9 2277c5d7 2004-03-21 devnull
10 2277c5d7 2004-03-21 devnull enum {
11 2277c5d7 2004-03-21 devnull NfsMount1HandleSize = 32,
12 2277c5d7 2004-03-21 devnull NfsMount3MaxPathSize = 1024,
13 2277c5d7 2004-03-21 devnull NfsMount3MaxNameSize = 255,
14 2277c5d7 2004-03-21 devnull NfsMount3MaxHandleSize = 64,
15 2277c5d7 2004-03-21 devnull NfsMount3Program = 100005,
16 2277c5d7 2004-03-21 devnull NfsMount3Version = 3,
17 2277c5d7 2004-03-21 devnull NfsMount1Program = 100005,
18 2277c5d7 2004-03-21 devnull NfsMount1Version = 1
19 2277c5d7 2004-03-21 devnull };
20 2277c5d7 2004-03-21 devnull typedef struct NfsMount3TNull NfsMount3TNull;
21 2277c5d7 2004-03-21 devnull typedef struct NfsMount3RNull NfsMount3RNull;
22 2277c5d7 2004-03-21 devnull typedef struct NfsMount3TMnt NfsMount3TMnt;
23 2277c5d7 2004-03-21 devnull typedef struct NfsMount3RMnt NfsMount3RMnt;
24 2277c5d7 2004-03-21 devnull typedef struct NfsMount3TDump NfsMount3TDump;
25 2277c5d7 2004-03-21 devnull typedef struct NfsMount3Entry NfsMount3Entry;
26 2277c5d7 2004-03-21 devnull typedef struct NfsMount3RDump NfsMount3RDump;
27 2277c5d7 2004-03-21 devnull typedef struct NfsMount3TUmnt NfsMount3TUmnt;
28 2277c5d7 2004-03-21 devnull typedef struct NfsMount3RUmnt NfsMount3RUmnt;
29 2277c5d7 2004-03-21 devnull typedef struct NfsMount3Export NfsMount3Export;
30 2277c5d7 2004-03-21 devnull typedef struct NfsMount3TUmntall NfsMount3TUmntall;
31 2277c5d7 2004-03-21 devnull typedef struct NfsMount3RUmntall NfsMount3RUmntall;
32 2277c5d7 2004-03-21 devnull typedef struct NfsMount3TExport NfsMount3TExport;
33 2277c5d7 2004-03-21 devnull typedef struct NfsMount3RExport NfsMount3RExport;
34 2277c5d7 2004-03-21 devnull
35 2277c5d7 2004-03-21 devnull typedef enum
36 2277c5d7 2004-03-21 devnull {
37 2277c5d7 2004-03-21 devnull NfsMount3CallTNull,
38 2277c5d7 2004-03-21 devnull NfsMount3CallRNull,
39 2277c5d7 2004-03-21 devnull NfsMount3CallTMnt,
40 2277c5d7 2004-03-21 devnull NfsMount3CallRMnt,
41 2277c5d7 2004-03-21 devnull NfsMount3CallTDump,
42 2277c5d7 2004-03-21 devnull NfsMount3CallRDump,
43 2277c5d7 2004-03-21 devnull NfsMount3CallTUmnt,
44 2277c5d7 2004-03-21 devnull NfsMount3CallRUmnt,
45 2277c5d7 2004-03-21 devnull NfsMount3CallTUmntall,
46 2277c5d7 2004-03-21 devnull NfsMount3CallRUmntall,
47 2277c5d7 2004-03-21 devnull NfsMount3CallTExport,
48 2277c5d7 2004-03-21 devnull NfsMount3CallRExport
49 2277c5d7 2004-03-21 devnull } NfsMount3CallType;
50 2277c5d7 2004-03-21 devnull
51 2277c5d7 2004-03-21 devnull struct NfsMount3TNull {
52 2277c5d7 2004-03-21 devnull SunCall call;
53 2277c5d7 2004-03-21 devnull };
54 2277c5d7 2004-03-21 devnull
55 2277c5d7 2004-03-21 devnull struct NfsMount3RNull {
56 2277c5d7 2004-03-21 devnull SunCall call;
57 2277c5d7 2004-03-21 devnull };
58 2277c5d7 2004-03-21 devnull
59 2277c5d7 2004-03-21 devnull struct NfsMount3TMnt {
60 2277c5d7 2004-03-21 devnull SunCall call;
61 2277c5d7 2004-03-21 devnull char *path;
62 2277c5d7 2004-03-21 devnull };
63 2277c5d7 2004-03-21 devnull
64 2277c5d7 2004-03-21 devnull struct NfsMount3RMnt {
65 2277c5d7 2004-03-21 devnull SunCall call;
66 2277c5d7 2004-03-21 devnull uint status;
67 2277c5d7 2004-03-21 devnull uchar *handle;
68 2277c5d7 2004-03-21 devnull uint len;
69 2277c5d7 2004-03-21 devnull u32int *auth;
70 2277c5d7 2004-03-21 devnull u32int nauth;
71 2277c5d7 2004-03-21 devnull };
72 2277c5d7 2004-03-21 devnull
73 2277c5d7 2004-03-21 devnull struct NfsMount3TDump {
74 2277c5d7 2004-03-21 devnull SunCall call;
75 2277c5d7 2004-03-21 devnull };
76 2277c5d7 2004-03-21 devnull
77 2277c5d7 2004-03-21 devnull struct NfsMount3Entry {
78 2277c5d7 2004-03-21 devnull char *host;
79 2277c5d7 2004-03-21 devnull char *path;
80 2277c5d7 2004-03-21 devnull };
81 2277c5d7 2004-03-21 devnull
82 2277c5d7 2004-03-21 devnull struct NfsMount3RDump {
83 2277c5d7 2004-03-21 devnull SunCall call;
84 2277c5d7 2004-03-21 devnull uchar *data;
85 2277c5d7 2004-03-21 devnull u32int count;
86 2277c5d7 2004-03-21 devnull };
87 2277c5d7 2004-03-21 devnull
88 2277c5d7 2004-03-21 devnull struct NfsMount3TUmnt {
89 2277c5d7 2004-03-21 devnull SunCall call;
90 2277c5d7 2004-03-21 devnull char *path;
91 2277c5d7 2004-03-21 devnull };
92 2277c5d7 2004-03-21 devnull
93 2277c5d7 2004-03-21 devnull struct NfsMount3RUmnt {
94 2277c5d7 2004-03-21 devnull SunCall call;
95 2277c5d7 2004-03-21 devnull };
96 2277c5d7 2004-03-21 devnull
97 2277c5d7 2004-03-21 devnull struct NfsMount3Export {
98 2277c5d7 2004-03-21 devnull char *path;
99 2277c5d7 2004-03-21 devnull char **g;
100 2277c5d7 2004-03-21 devnull u32int ng;
101 2277c5d7 2004-03-21 devnull };
102 2277c5d7 2004-03-21 devnull
103 2277c5d7 2004-03-21 devnull struct NfsMount3TUmntall {
104 2277c5d7 2004-03-21 devnull SunCall call;
105 2277c5d7 2004-03-21 devnull };
106 2277c5d7 2004-03-21 devnull
107 2277c5d7 2004-03-21 devnull struct NfsMount3RUmntall {
108 2277c5d7 2004-03-21 devnull SunCall call;
109 2277c5d7 2004-03-21 devnull };
110 2277c5d7 2004-03-21 devnull
111 2277c5d7 2004-03-21 devnull struct NfsMount3TExport {
112 2277c5d7 2004-03-21 devnull SunCall call;
113 2277c5d7 2004-03-21 devnull };
114 2277c5d7 2004-03-21 devnull
115 2277c5d7 2004-03-21 devnull struct NfsMount3RExport {
116 2277c5d7 2004-03-21 devnull SunCall call;
117 2277c5d7 2004-03-21 devnull uchar *data;
118 2277c5d7 2004-03-21 devnull u32int count;
119 2277c5d7 2004-03-21 devnull };
120 2277c5d7 2004-03-21 devnull
121 2277c5d7 2004-03-21 devnull uint nfsmount3exportgroupsize(uchar*);
122 2277c5d7 2004-03-21 devnull uint nfsmount3exportsize(NfsMount3Export*);
123 2277c5d7 2004-03-21 devnull int nfsmount3exportpack(uchar*, uchar*, uchar**, NfsMount3Export*);
124 2277c5d7 2004-03-21 devnull int nfsmount3exportunpack(uchar*, uchar*, uchar**, char**, char***, NfsMount3Export*);
125 2277c5d7 2004-03-21 devnull int nfsmount3entrypack(uchar*, uchar*, uchar**, NfsMount3Entry*);
126 2277c5d7 2004-03-21 devnull int nfsmount3entryunpack(uchar*, uchar*, uchar**, NfsMount3Entry*);
127 2277c5d7 2004-03-21 devnull uint nfsmount3entrysize(NfsMount3Entry*);
128 2277c5d7 2004-03-21 devnull
129 2277c5d7 2004-03-21 devnull extern SunProg nfsmount3prog;
130 2277c5d7 2004-03-21 devnull
131 2277c5d7 2004-03-21 devnull /*
132 2277c5d7 2004-03-21 devnull * NFS V3; see RFC 1813
133 2277c5d7 2004-03-21 devnull */
134 2277c5d7 2004-03-21 devnull enum {
135 2277c5d7 2004-03-21 devnull Nfs3MaxHandleSize = 64,
136 2277c5d7 2004-03-21 devnull Nfs3CookieVerfSize = 8,
137 2277c5d7 2004-03-21 devnull Nfs3CreateVerfSize = 8,
138 2277c5d7 2004-03-21 devnull Nfs3WriteVerfSize = 8,
139 2277c5d7 2004-03-21 devnull Nfs3AccessRead = 1,
140 2277c5d7 2004-03-21 devnull Nfs3AccessLookup = 2,
141 2277c5d7 2004-03-21 devnull Nfs3AccessModify = 4,
142 2277c5d7 2004-03-21 devnull Nfs3AccessExtend = 8,
143 2277c5d7 2004-03-21 devnull Nfs3AccessDelete = 16,
144 2277c5d7 2004-03-21 devnull Nfs3AccessExecute = 32,
145 2277c5d7 2004-03-21 devnull Nfs3FsHasLinks = 1,
146 2277c5d7 2004-03-21 devnull Nfs3FsHasSymlinks = 2,
147 2277c5d7 2004-03-21 devnull Nfs3FsHomogeneous = 8,
148 2277c5d7 2004-03-21 devnull Nfs3FsCanSetTime = 16,
149 2277c5d7 2004-03-21 devnull
150 2277c5d7 2004-03-21 devnull Nfs3Version = 3,
151 cbeb0b26 2006-04-01 devnull Nfs3Program = 100003
152 2277c5d7 2004-03-21 devnull };
153 2277c5d7 2004-03-21 devnull typedef enum
154 2277c5d7 2004-03-21 devnull {
155 2277c5d7 2004-03-21 devnull Nfs3Ok = 0,
156 2277c5d7 2004-03-21 devnull Nfs3ErrNotOwner = 1,
157 2277c5d7 2004-03-21 devnull Nfs3ErrNoEnt = 2,
158 2277c5d7 2004-03-21 devnull Nfs3ErrIo = 5,
159 2277c5d7 2004-03-21 devnull Nfs3ErrNxio = 6,
160 2277c5d7 2004-03-21 devnull Nfs3ErrNoMem = 12,
161 2277c5d7 2004-03-21 devnull Nfs3ErrAcces = 13,
162 2277c5d7 2004-03-21 devnull Nfs3ErrExist = 17,
163 2277c5d7 2004-03-21 devnull Nfs3ErrXDev = 18,
164 2277c5d7 2004-03-21 devnull Nfs3ErrNoDev = 19,
165 2277c5d7 2004-03-21 devnull Nfs3ErrNotDir = 20,
166 2277c5d7 2004-03-21 devnull Nfs3ErrIsDir = 21,
167 2277c5d7 2004-03-21 devnull Nfs3ErrInval = 22,
168 2277c5d7 2004-03-21 devnull Nfs3ErrFbig = 27,
169 2277c5d7 2004-03-21 devnull Nfs3ErrNoSpc = 28,
170 2277c5d7 2004-03-21 devnull Nfs3ErrRoFs = 30,
171 2277c5d7 2004-03-21 devnull Nfs3ErrMLink = 31,
172 2277c5d7 2004-03-21 devnull Nfs3ErrNameTooLong = 63,
173 2277c5d7 2004-03-21 devnull Nfs3ErrNotEmpty = 66,
174 2277c5d7 2004-03-21 devnull Nfs3ErrDQuot = 69,
175 2277c5d7 2004-03-21 devnull Nfs3ErrStale = 70,
176 2277c5d7 2004-03-21 devnull Nfs3ErrRemote = 71,
177 2277c5d7 2004-03-21 devnull Nfs3ErrBadHandle = 10001,
178 2277c5d7 2004-03-21 devnull Nfs3ErrNotSync = 10002,
179 2277c5d7 2004-03-21 devnull Nfs3ErrBadCookie = 10003,
180 2277c5d7 2004-03-21 devnull Nfs3ErrNotSupp = 10004,
181 2277c5d7 2004-03-21 devnull Nfs3ErrTooSmall = 10005,
182 2277c5d7 2004-03-21 devnull Nfs3ErrServerFault = 10006,
183 2277c5d7 2004-03-21 devnull Nfs3ErrBadType = 10007,
184 2277c5d7 2004-03-21 devnull Nfs3ErrJukebox = 10008,
185 2277c5d7 2004-03-21 devnull Nfs3ErrFprintNotFound = 10009,
186 cbeb0b26 2006-04-01 devnull Nfs3ErrAborted = 10010
187 2277c5d7 2004-03-21 devnull } Nfs3Status;
188 2277c5d7 2004-03-21 devnull
189 819822c9 2004-06-16 devnull void nfs3errstr(Nfs3Status);
190 2277c5d7 2004-03-21 devnull
191 2277c5d7 2004-03-21 devnull typedef enum
192 2277c5d7 2004-03-21 devnull {
193 2277c5d7 2004-03-21 devnull Nfs3FileReg = 1,
194 2277c5d7 2004-03-21 devnull Nfs3FileDir = 2,
195 2277c5d7 2004-03-21 devnull Nfs3FileBlock = 3,
196 2277c5d7 2004-03-21 devnull Nfs3FileChar = 4,
197 2277c5d7 2004-03-21 devnull Nfs3FileSymlink = 5,
198 2277c5d7 2004-03-21 devnull Nfs3FileSocket = 6,
199 cbeb0b26 2006-04-01 devnull Nfs3FileFifo = 7
200 2277c5d7 2004-03-21 devnull } Nfs3FileType;
201 2277c5d7 2004-03-21 devnull
202 2277c5d7 2004-03-21 devnull enum
203 2277c5d7 2004-03-21 devnull {
204 2277c5d7 2004-03-21 devnull Nfs3ModeSetUid = 0x800,
205 2277c5d7 2004-03-21 devnull Nfs3ModeSetGid = 0x400,
206 cbeb0b26 2006-04-01 devnull Nfs3ModeSticky = 0x200
207 2277c5d7 2004-03-21 devnull };
208 2277c5d7 2004-03-21 devnull
209 2277c5d7 2004-03-21 devnull typedef enum
210 2277c5d7 2004-03-21 devnull {
211 2277c5d7 2004-03-21 devnull Nfs3CallTNull,
212 2277c5d7 2004-03-21 devnull Nfs3CallRNull,
213 2277c5d7 2004-03-21 devnull Nfs3CallTGetattr,
214 2277c5d7 2004-03-21 devnull Nfs3CallRGetattr,
215 2277c5d7 2004-03-21 devnull Nfs3CallTSetattr,
216 2277c5d7 2004-03-21 devnull Nfs3CallRSetattr,
217 2277c5d7 2004-03-21 devnull Nfs3CallTLookup,
218 2277c5d7 2004-03-21 devnull Nfs3CallRLookup,
219 2277c5d7 2004-03-21 devnull Nfs3CallTAccess,
220 2277c5d7 2004-03-21 devnull Nfs3CallRAccess,
221 2277c5d7 2004-03-21 devnull Nfs3CallTReadlink,
222 2277c5d7 2004-03-21 devnull Nfs3CallRReadlink,
223 2277c5d7 2004-03-21 devnull Nfs3CallTRead,
224 2277c5d7 2004-03-21 devnull Nfs3CallRRead,
225 2277c5d7 2004-03-21 devnull Nfs3CallTWrite,
226 2277c5d7 2004-03-21 devnull Nfs3CallRWrite,
227 2277c5d7 2004-03-21 devnull Nfs3CallTCreate,
228 2277c5d7 2004-03-21 devnull Nfs3CallRCreate,
229 2277c5d7 2004-03-21 devnull Nfs3CallTMkdir,
230 2277c5d7 2004-03-21 devnull Nfs3CallRMkdir,
231 2277c5d7 2004-03-21 devnull Nfs3CallTSymlink,
232 2277c5d7 2004-03-21 devnull Nfs3CallRSymlink,
233 2277c5d7 2004-03-21 devnull Nfs3CallTMknod,
234 2277c5d7 2004-03-21 devnull Nfs3CallRMknod,
235 2277c5d7 2004-03-21 devnull Nfs3CallTRemove,
236 2277c5d7 2004-03-21 devnull Nfs3CallRRemove,
237 2277c5d7 2004-03-21 devnull Nfs3CallTRmdir,
238 2277c5d7 2004-03-21 devnull Nfs3CallRRmdir,
239 2277c5d7 2004-03-21 devnull Nfs3CallTRename,
240 2277c5d7 2004-03-21 devnull Nfs3CallRRename,
241 2277c5d7 2004-03-21 devnull Nfs3CallTLink,
242 2277c5d7 2004-03-21 devnull Nfs3CallRLink,
243 2277c5d7 2004-03-21 devnull Nfs3CallTReadDir,
244 2277c5d7 2004-03-21 devnull Nfs3CallRReadDir,
245 2277c5d7 2004-03-21 devnull Nfs3CallTReadDirPlus,
246 2277c5d7 2004-03-21 devnull Nfs3CallRReadDirPlus,
247 2277c5d7 2004-03-21 devnull Nfs3CallTFsStat,
248 2277c5d7 2004-03-21 devnull Nfs3CallRFsStat,
249 2277c5d7 2004-03-21 devnull Nfs3CallTFsInfo,
250 2277c5d7 2004-03-21 devnull Nfs3CallRFsInfo,
251 2277c5d7 2004-03-21 devnull Nfs3CallTPathconf,
252 2277c5d7 2004-03-21 devnull Nfs3CallRPathconf,
253 2277c5d7 2004-03-21 devnull Nfs3CallTCommit,
254 cbeb0b26 2006-04-01 devnull Nfs3CallRCommit
255 2277c5d7 2004-03-21 devnull } Nfs3CallType;
256 2277c5d7 2004-03-21 devnull
257 2277c5d7 2004-03-21 devnull typedef struct Nfs3Handle Nfs3Handle;
258 2277c5d7 2004-03-21 devnull typedef struct Nfs3Time Nfs3Time;
259 2277c5d7 2004-03-21 devnull typedef struct Nfs3Attr Nfs3Attr;
260 2277c5d7 2004-03-21 devnull typedef struct Nfs3WccAttr Nfs3WccAttr;
261 2277c5d7 2004-03-21 devnull typedef struct Nfs3Wcc Nfs3Wcc;
262 2277c5d7 2004-03-21 devnull typedef enum
263 2277c5d7 2004-03-21 devnull {
264 2277c5d7 2004-03-21 devnull Nfs3SetTimeDont = 0,
265 2277c5d7 2004-03-21 devnull Nfs3SetTimeServer = 1,
266 cbeb0b26 2006-04-01 devnull Nfs3SetTimeClient = 2
267 2277c5d7 2004-03-21 devnull } Nfs3SetTime;
268 2277c5d7 2004-03-21 devnull
269 2277c5d7 2004-03-21 devnull typedef struct Nfs3SetAttr Nfs3SetAttr;
270 2277c5d7 2004-03-21 devnull typedef struct Nfs3TNull Nfs3TNull;
271 2277c5d7 2004-03-21 devnull typedef struct Nfs3RNull Nfs3RNull;
272 2277c5d7 2004-03-21 devnull typedef struct Nfs3TGetattr Nfs3TGetattr;
273 2277c5d7 2004-03-21 devnull typedef struct Nfs3RGetattr Nfs3RGetattr;
274 2277c5d7 2004-03-21 devnull typedef struct Nfs3TSetattr Nfs3TSetattr;
275 2277c5d7 2004-03-21 devnull typedef struct Nfs3RSetattr Nfs3RSetattr;
276 2277c5d7 2004-03-21 devnull typedef struct Nfs3TLookup Nfs3TLookup;
277 2277c5d7 2004-03-21 devnull typedef struct Nfs3RLookup Nfs3RLookup;
278 2277c5d7 2004-03-21 devnull typedef struct Nfs3TAccess Nfs3TAccess;
279 2277c5d7 2004-03-21 devnull typedef struct Nfs3RAccess Nfs3RAccess;
280 2277c5d7 2004-03-21 devnull typedef struct Nfs3TReadlink Nfs3TReadlink;
281 2277c5d7 2004-03-21 devnull typedef struct Nfs3RReadlink Nfs3RReadlink;
282 2277c5d7 2004-03-21 devnull typedef struct Nfs3TRead Nfs3TRead;
283 2277c5d7 2004-03-21 devnull typedef struct Nfs3RRead Nfs3RRead;
284 2277c5d7 2004-03-21 devnull typedef enum
285 2277c5d7 2004-03-21 devnull {
286 2277c5d7 2004-03-21 devnull Nfs3SyncNone = 0,
287 2277c5d7 2004-03-21 devnull Nfs3SyncData = 1,
288 cbeb0b26 2006-04-01 devnull Nfs3SyncFile = 2
289 2277c5d7 2004-03-21 devnull } Nfs3Sync;
290 2277c5d7 2004-03-21 devnull
291 2277c5d7 2004-03-21 devnull typedef struct Nfs3TWrite Nfs3TWrite;
292 2277c5d7 2004-03-21 devnull typedef struct Nfs3RWrite Nfs3RWrite;
293 2277c5d7 2004-03-21 devnull typedef enum
294 2277c5d7 2004-03-21 devnull {
295 2277c5d7 2004-03-21 devnull Nfs3CreateUnchecked = 0,
296 2277c5d7 2004-03-21 devnull Nfs3CreateGuarded = 1,
297 cbeb0b26 2006-04-01 devnull Nfs3CreateExclusive = 2
298 2277c5d7 2004-03-21 devnull } Nfs3Create;
299 2277c5d7 2004-03-21 devnull
300 2277c5d7 2004-03-21 devnull typedef struct Nfs3TCreate Nfs3TCreate;
301 2277c5d7 2004-03-21 devnull typedef struct Nfs3RCreate Nfs3RCreate;
302 2277c5d7 2004-03-21 devnull typedef struct Nfs3TMkdir Nfs3TMkdir;
303 2277c5d7 2004-03-21 devnull typedef struct Nfs3RMkdir Nfs3RMkdir;
304 2277c5d7 2004-03-21 devnull typedef struct Nfs3TSymlink Nfs3TSymlink;
305 2277c5d7 2004-03-21 devnull typedef struct Nfs3RSymlink Nfs3RSymlink;
306 2277c5d7 2004-03-21 devnull typedef struct Nfs3TMknod Nfs3TMknod;
307 2277c5d7 2004-03-21 devnull typedef struct Nfs3RMknod Nfs3RMknod;
308 2277c5d7 2004-03-21 devnull typedef struct Nfs3TRemove Nfs3TRemove;
309 2277c5d7 2004-03-21 devnull typedef struct Nfs3RRemove Nfs3RRemove;
310 2277c5d7 2004-03-21 devnull typedef struct Nfs3TRmdir Nfs3TRmdir;
311 2277c5d7 2004-03-21 devnull typedef struct Nfs3RRmdir Nfs3RRmdir;
312 2277c5d7 2004-03-21 devnull typedef struct Nfs3TRename Nfs3TRename;
313 2277c5d7 2004-03-21 devnull typedef struct Nfs3RRename Nfs3RRename;
314 2277c5d7 2004-03-21 devnull typedef struct Nfs3TLink Nfs3TLink;
315 2277c5d7 2004-03-21 devnull typedef struct Nfs3RLink Nfs3RLink;
316 2277c5d7 2004-03-21 devnull typedef struct Nfs3TReadDir Nfs3TReadDir;
317 2277c5d7 2004-03-21 devnull typedef struct Nfs3Entry Nfs3Entry;
318 2277c5d7 2004-03-21 devnull typedef struct Nfs3RReadDir Nfs3RReadDir;
319 2277c5d7 2004-03-21 devnull typedef struct Nfs3TReadDirPlus Nfs3TReadDirPlus;
320 2277c5d7 2004-03-21 devnull typedef struct Nfs3EntryPlus Nfs3EntryPlus;
321 2277c5d7 2004-03-21 devnull typedef struct Nfs3RReadDirPlus Nfs3RReadDirPlus;
322 2277c5d7 2004-03-21 devnull typedef struct Nfs3TFsStat Nfs3TFsStat;
323 2277c5d7 2004-03-21 devnull typedef struct Nfs3RFsStat Nfs3RFsStat;
324 2277c5d7 2004-03-21 devnull typedef struct Nfs3TFsInfo Nfs3TFsInfo;
325 2277c5d7 2004-03-21 devnull typedef struct Nfs3RFsInfo Nfs3RFsInfo;
326 2277c5d7 2004-03-21 devnull typedef struct Nfs3TPathconf Nfs3TPathconf;
327 2277c5d7 2004-03-21 devnull typedef struct Nfs3RPathconf Nfs3RPathconf;
328 2277c5d7 2004-03-21 devnull typedef struct Nfs3TCommit Nfs3TCommit;
329 2277c5d7 2004-03-21 devnull typedef struct Nfs3RCommit Nfs3RCommit;
330 2277c5d7 2004-03-21 devnull
331 2277c5d7 2004-03-21 devnull struct Nfs3Handle {
332 2277c5d7 2004-03-21 devnull uchar h[Nfs3MaxHandleSize];
333 2277c5d7 2004-03-21 devnull u32int len;
334 2277c5d7 2004-03-21 devnull };
335 2277c5d7 2004-03-21 devnull
336 2277c5d7 2004-03-21 devnull struct Nfs3Time {
337 2277c5d7 2004-03-21 devnull u32int sec;
338 2277c5d7 2004-03-21 devnull u32int nsec;
339 2277c5d7 2004-03-21 devnull };
340 2277c5d7 2004-03-21 devnull
341 2277c5d7 2004-03-21 devnull struct Nfs3Attr {
342 2277c5d7 2004-03-21 devnull Nfs3FileType type;
343 2277c5d7 2004-03-21 devnull u32int mode;
344 2277c5d7 2004-03-21 devnull u32int nlink;
345 2277c5d7 2004-03-21 devnull u32int uid;
346 2277c5d7 2004-03-21 devnull u32int gid;
347 2277c5d7 2004-03-21 devnull u64int size;
348 2277c5d7 2004-03-21 devnull u64int used;
349 2277c5d7 2004-03-21 devnull u32int major;
350 2277c5d7 2004-03-21 devnull u32int minor;
351 2277c5d7 2004-03-21 devnull u64int fsid;
352 2277c5d7 2004-03-21 devnull u64int fileid;
353 2277c5d7 2004-03-21 devnull Nfs3Time atime;
354 2277c5d7 2004-03-21 devnull Nfs3Time mtime;
355 2277c5d7 2004-03-21 devnull Nfs3Time ctime;
356 2277c5d7 2004-03-21 devnull };
357 2277c5d7 2004-03-21 devnull
358 2277c5d7 2004-03-21 devnull struct Nfs3WccAttr {
359 2277c5d7 2004-03-21 devnull u64int size;
360 2277c5d7 2004-03-21 devnull Nfs3Time mtime;
361 2277c5d7 2004-03-21 devnull Nfs3Time ctime;
362 2277c5d7 2004-03-21 devnull };
363 2277c5d7 2004-03-21 devnull
364 2277c5d7 2004-03-21 devnull struct Nfs3Wcc {
365 2277c5d7 2004-03-21 devnull u1int haveWccAttr;
366 2277c5d7 2004-03-21 devnull Nfs3WccAttr wccAttr;
367 2277c5d7 2004-03-21 devnull u1int haveAttr;
368 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
369 2277c5d7 2004-03-21 devnull };
370 2277c5d7 2004-03-21 devnull
371 2277c5d7 2004-03-21 devnull struct Nfs3SetAttr {
372 2277c5d7 2004-03-21 devnull u1int setMode;
373 2277c5d7 2004-03-21 devnull u32int mode;
374 2277c5d7 2004-03-21 devnull u1int setUid;
375 2277c5d7 2004-03-21 devnull u32int uid;
376 2277c5d7 2004-03-21 devnull u1int setGid;
377 2277c5d7 2004-03-21 devnull u32int gid;
378 2277c5d7 2004-03-21 devnull u1int setSize;
379 2277c5d7 2004-03-21 devnull u64int size;
380 2277c5d7 2004-03-21 devnull Nfs3SetTime setAtime;
381 2277c5d7 2004-03-21 devnull Nfs3Time atime;
382 2277c5d7 2004-03-21 devnull Nfs3SetTime setMtime;
383 2277c5d7 2004-03-21 devnull Nfs3Time mtime;
384 2277c5d7 2004-03-21 devnull };
385 2277c5d7 2004-03-21 devnull
386 2277c5d7 2004-03-21 devnull struct Nfs3TNull {
387 2277c5d7 2004-03-21 devnull SunCall call;
388 2277c5d7 2004-03-21 devnull };
389 2277c5d7 2004-03-21 devnull
390 2277c5d7 2004-03-21 devnull struct Nfs3RNull {
391 2277c5d7 2004-03-21 devnull SunCall call;
392 2277c5d7 2004-03-21 devnull };
393 2277c5d7 2004-03-21 devnull
394 2277c5d7 2004-03-21 devnull struct Nfs3TGetattr {
395 2277c5d7 2004-03-21 devnull SunCall call;
396 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
397 2277c5d7 2004-03-21 devnull };
398 2277c5d7 2004-03-21 devnull
399 2277c5d7 2004-03-21 devnull struct Nfs3RGetattr {
400 2277c5d7 2004-03-21 devnull SunCall call;
401 2277c5d7 2004-03-21 devnull Nfs3Status status;
402 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
403 2277c5d7 2004-03-21 devnull };
404 2277c5d7 2004-03-21 devnull
405 2277c5d7 2004-03-21 devnull struct Nfs3TSetattr {
406 2277c5d7 2004-03-21 devnull SunCall call;
407 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
408 2277c5d7 2004-03-21 devnull Nfs3SetAttr attr;
409 2277c5d7 2004-03-21 devnull u1int checkCtime;
410 2277c5d7 2004-03-21 devnull Nfs3Time ctime;
411 2277c5d7 2004-03-21 devnull };
412 2277c5d7 2004-03-21 devnull
413 2277c5d7 2004-03-21 devnull struct Nfs3RSetattr {
414 2277c5d7 2004-03-21 devnull SunCall call;
415 2277c5d7 2004-03-21 devnull Nfs3Status status;
416 2277c5d7 2004-03-21 devnull Nfs3Wcc wcc;
417 2277c5d7 2004-03-21 devnull };
418 2277c5d7 2004-03-21 devnull
419 2277c5d7 2004-03-21 devnull struct Nfs3TLookup {
420 2277c5d7 2004-03-21 devnull SunCall call;
421 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
422 2277c5d7 2004-03-21 devnull char *name;
423 2277c5d7 2004-03-21 devnull };
424 2277c5d7 2004-03-21 devnull
425 2277c5d7 2004-03-21 devnull struct Nfs3RLookup {
426 2277c5d7 2004-03-21 devnull SunCall call;
427 2277c5d7 2004-03-21 devnull Nfs3Status status;
428 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
429 2277c5d7 2004-03-21 devnull u1int haveAttr;
430 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
431 2277c5d7 2004-03-21 devnull u1int haveDirAttr;
432 2277c5d7 2004-03-21 devnull Nfs3Attr dirAttr;
433 2277c5d7 2004-03-21 devnull };
434 2277c5d7 2004-03-21 devnull
435 2277c5d7 2004-03-21 devnull struct Nfs3TAccess {
436 2277c5d7 2004-03-21 devnull SunCall call;
437 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
438 2277c5d7 2004-03-21 devnull u32int access;
439 2277c5d7 2004-03-21 devnull };
440 2277c5d7 2004-03-21 devnull
441 2277c5d7 2004-03-21 devnull struct Nfs3RAccess {
442 2277c5d7 2004-03-21 devnull SunCall call;
443 2277c5d7 2004-03-21 devnull Nfs3Status status;
444 2277c5d7 2004-03-21 devnull u1int haveAttr;
445 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
446 2277c5d7 2004-03-21 devnull u32int access;
447 2277c5d7 2004-03-21 devnull };
448 2277c5d7 2004-03-21 devnull
449 2277c5d7 2004-03-21 devnull struct Nfs3TReadlink {
450 2277c5d7 2004-03-21 devnull SunCall call;
451 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
452 2277c5d7 2004-03-21 devnull };
453 2277c5d7 2004-03-21 devnull
454 2277c5d7 2004-03-21 devnull struct Nfs3RReadlink {
455 2277c5d7 2004-03-21 devnull SunCall call;
456 2277c5d7 2004-03-21 devnull Nfs3Status status;
457 2277c5d7 2004-03-21 devnull u1int haveAttr;
458 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
459 2277c5d7 2004-03-21 devnull char *data;
460 2277c5d7 2004-03-21 devnull };
461 2277c5d7 2004-03-21 devnull
462 2277c5d7 2004-03-21 devnull struct Nfs3TRead {
463 2277c5d7 2004-03-21 devnull SunCall call;
464 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
465 2277c5d7 2004-03-21 devnull u64int offset;
466 2277c5d7 2004-03-21 devnull u32int count;
467 2277c5d7 2004-03-21 devnull };
468 2277c5d7 2004-03-21 devnull
469 2277c5d7 2004-03-21 devnull struct Nfs3RRead {
470 2277c5d7 2004-03-21 devnull SunCall call;
471 2277c5d7 2004-03-21 devnull Nfs3Status status;
472 2277c5d7 2004-03-21 devnull u1int haveAttr;
473 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
474 2277c5d7 2004-03-21 devnull u32int count;
475 2277c5d7 2004-03-21 devnull u1int eof;
476 2277c5d7 2004-03-21 devnull uchar *data;
477 2277c5d7 2004-03-21 devnull u32int ndata;
478 2277c5d7 2004-03-21 devnull };
479 2277c5d7 2004-03-21 devnull
480 2277c5d7 2004-03-21 devnull struct Nfs3TWrite {
481 2277c5d7 2004-03-21 devnull SunCall call;
482 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
483 2277c5d7 2004-03-21 devnull u64int offset;
484 2277c5d7 2004-03-21 devnull u32int count;
485 2277c5d7 2004-03-21 devnull Nfs3Sync stable;
486 2277c5d7 2004-03-21 devnull uchar *data;
487 2277c5d7 2004-03-21 devnull u32int ndata;
488 2277c5d7 2004-03-21 devnull };
489 2277c5d7 2004-03-21 devnull
490 2277c5d7 2004-03-21 devnull struct Nfs3RWrite {
491 2277c5d7 2004-03-21 devnull SunCall call;
492 2277c5d7 2004-03-21 devnull Nfs3Status status;
493 2277c5d7 2004-03-21 devnull Nfs3Wcc wcc;
494 2277c5d7 2004-03-21 devnull u32int count;
495 2277c5d7 2004-03-21 devnull Nfs3Sync committed;
496 2277c5d7 2004-03-21 devnull uchar verf[Nfs3WriteVerfSize];
497 2277c5d7 2004-03-21 devnull };
498 2277c5d7 2004-03-21 devnull
499 2277c5d7 2004-03-21 devnull struct Nfs3TCreate {
500 2277c5d7 2004-03-21 devnull SunCall call;
501 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
502 2277c5d7 2004-03-21 devnull char *name;
503 2277c5d7 2004-03-21 devnull Nfs3Create mode;
504 2277c5d7 2004-03-21 devnull Nfs3SetAttr attr;
505 2277c5d7 2004-03-21 devnull uchar verf[Nfs3CreateVerfSize];
506 2277c5d7 2004-03-21 devnull };
507 2277c5d7 2004-03-21 devnull
508 2277c5d7 2004-03-21 devnull struct Nfs3RCreate {
509 2277c5d7 2004-03-21 devnull SunCall call;
510 2277c5d7 2004-03-21 devnull Nfs3Status status;
511 2277c5d7 2004-03-21 devnull u1int haveHandle;
512 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
513 2277c5d7 2004-03-21 devnull u1int haveAttr;
514 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
515 2277c5d7 2004-03-21 devnull Nfs3Wcc dirWcc;
516 2277c5d7 2004-03-21 devnull };
517 2277c5d7 2004-03-21 devnull
518 2277c5d7 2004-03-21 devnull struct Nfs3TMkdir {
519 2277c5d7 2004-03-21 devnull SunCall call;
520 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
521 2277c5d7 2004-03-21 devnull char *name;
522 2277c5d7 2004-03-21 devnull Nfs3SetAttr attr;
523 2277c5d7 2004-03-21 devnull };
524 2277c5d7 2004-03-21 devnull
525 2277c5d7 2004-03-21 devnull struct Nfs3RMkdir {
526 2277c5d7 2004-03-21 devnull SunCall call;
527 2277c5d7 2004-03-21 devnull Nfs3Status status;
528 2277c5d7 2004-03-21 devnull u1int haveHandle;
529 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
530 2277c5d7 2004-03-21 devnull u1int haveAttr;
531 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
532 2277c5d7 2004-03-21 devnull Nfs3Wcc dirWcc;
533 2277c5d7 2004-03-21 devnull };
534 2277c5d7 2004-03-21 devnull
535 2277c5d7 2004-03-21 devnull struct Nfs3TSymlink {
536 2277c5d7 2004-03-21 devnull SunCall call;
537 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
538 2277c5d7 2004-03-21 devnull char *name;
539 2277c5d7 2004-03-21 devnull Nfs3SetAttr attr;
540 2277c5d7 2004-03-21 devnull char *data;
541 2277c5d7 2004-03-21 devnull };
542 2277c5d7 2004-03-21 devnull
543 2277c5d7 2004-03-21 devnull struct Nfs3RSymlink {
544 2277c5d7 2004-03-21 devnull SunCall call;
545 2277c5d7 2004-03-21 devnull Nfs3Status status;
546 2277c5d7 2004-03-21 devnull u1int haveHandle;
547 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
548 2277c5d7 2004-03-21 devnull u1int haveAttr;
549 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
550 2277c5d7 2004-03-21 devnull Nfs3Wcc dirWcc;
551 2277c5d7 2004-03-21 devnull };
552 2277c5d7 2004-03-21 devnull
553 2277c5d7 2004-03-21 devnull struct Nfs3TMknod {
554 2277c5d7 2004-03-21 devnull SunCall call;
555 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
556 2277c5d7 2004-03-21 devnull char *name;
557 2277c5d7 2004-03-21 devnull Nfs3FileType type;
558 2277c5d7 2004-03-21 devnull Nfs3SetAttr attr;
559 2277c5d7 2004-03-21 devnull u32int major;
560 2277c5d7 2004-03-21 devnull u32int minor;
561 2277c5d7 2004-03-21 devnull };
562 2277c5d7 2004-03-21 devnull
563 2277c5d7 2004-03-21 devnull struct Nfs3RMknod {
564 2277c5d7 2004-03-21 devnull SunCall call;
565 2277c5d7 2004-03-21 devnull Nfs3Status status;
566 2277c5d7 2004-03-21 devnull u1int haveHandle;
567 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
568 2277c5d7 2004-03-21 devnull u1int haveAttr;
569 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
570 2277c5d7 2004-03-21 devnull Nfs3Wcc dirWcc;
571 2277c5d7 2004-03-21 devnull };
572 2277c5d7 2004-03-21 devnull
573 2277c5d7 2004-03-21 devnull struct Nfs3TRemove {
574 2277c5d7 2004-03-21 devnull SunCall call;
575 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
576 2277c5d7 2004-03-21 devnull char *name;
577 2277c5d7 2004-03-21 devnull };
578 2277c5d7 2004-03-21 devnull
579 2277c5d7 2004-03-21 devnull struct Nfs3RRemove {
580 2277c5d7 2004-03-21 devnull SunCall call;
581 2277c5d7 2004-03-21 devnull Nfs3Status status;
582 2277c5d7 2004-03-21 devnull Nfs3Wcc wcc;
583 2277c5d7 2004-03-21 devnull };
584 2277c5d7 2004-03-21 devnull
585 2277c5d7 2004-03-21 devnull struct Nfs3TRmdir {
586 2277c5d7 2004-03-21 devnull SunCall call;
587 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
588 2277c5d7 2004-03-21 devnull char *name;
589 2277c5d7 2004-03-21 devnull };
590 2277c5d7 2004-03-21 devnull
591 2277c5d7 2004-03-21 devnull struct Nfs3RRmdir {
592 2277c5d7 2004-03-21 devnull SunCall call;
593 2277c5d7 2004-03-21 devnull Nfs3Status status;
594 2277c5d7 2004-03-21 devnull Nfs3Wcc wcc;
595 2277c5d7 2004-03-21 devnull };
596 2277c5d7 2004-03-21 devnull
597 2277c5d7 2004-03-21 devnull struct Nfs3TRename {
598 2277c5d7 2004-03-21 devnull SunCall call;
599 2277c5d7 2004-03-21 devnull struct {
600 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
601 2277c5d7 2004-03-21 devnull char *name;
602 2277c5d7 2004-03-21 devnull } from;
603 2277c5d7 2004-03-21 devnull struct {
604 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
605 2277c5d7 2004-03-21 devnull char *name;
606 2277c5d7 2004-03-21 devnull } to;
607 2277c5d7 2004-03-21 devnull };
608 2277c5d7 2004-03-21 devnull
609 2277c5d7 2004-03-21 devnull struct Nfs3RRename {
610 2277c5d7 2004-03-21 devnull SunCall call;
611 2277c5d7 2004-03-21 devnull Nfs3Status status;
612 2277c5d7 2004-03-21 devnull Nfs3Wcc fromWcc;
613 2277c5d7 2004-03-21 devnull Nfs3Wcc toWcc;
614 2277c5d7 2004-03-21 devnull };
615 2277c5d7 2004-03-21 devnull
616 2277c5d7 2004-03-21 devnull struct Nfs3TLink {
617 2277c5d7 2004-03-21 devnull SunCall call;
618 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
619 2277c5d7 2004-03-21 devnull struct {
620 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
621 2277c5d7 2004-03-21 devnull char *name;
622 2277c5d7 2004-03-21 devnull } link;
623 2277c5d7 2004-03-21 devnull };
624 2277c5d7 2004-03-21 devnull
625 2277c5d7 2004-03-21 devnull struct Nfs3RLink {
626 2277c5d7 2004-03-21 devnull SunCall call;
627 2277c5d7 2004-03-21 devnull Nfs3Status status;
628 2277c5d7 2004-03-21 devnull u1int haveAttr;
629 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
630 2277c5d7 2004-03-21 devnull Nfs3Wcc dirWcc;
631 2277c5d7 2004-03-21 devnull };
632 2277c5d7 2004-03-21 devnull
633 2277c5d7 2004-03-21 devnull struct Nfs3TReadDir {
634 2277c5d7 2004-03-21 devnull SunCall call;
635 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
636 2277c5d7 2004-03-21 devnull u64int cookie;
637 2277c5d7 2004-03-21 devnull uchar verf[Nfs3CookieVerfSize];
638 2277c5d7 2004-03-21 devnull u32int count;
639 2277c5d7 2004-03-21 devnull };
640 2277c5d7 2004-03-21 devnull
641 2277c5d7 2004-03-21 devnull struct Nfs3RReadDir {
642 2277c5d7 2004-03-21 devnull SunCall call;
643 2277c5d7 2004-03-21 devnull Nfs3Status status;
644 2277c5d7 2004-03-21 devnull u1int haveAttr;
645 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
646 2277c5d7 2004-03-21 devnull uchar verf[Nfs3CookieVerfSize];
647 2277c5d7 2004-03-21 devnull uchar *data;
648 2277c5d7 2004-03-21 devnull u32int count;
649 2277c5d7 2004-03-21 devnull u1int eof;
650 2277c5d7 2004-03-21 devnull };
651 2277c5d7 2004-03-21 devnull
652 2277c5d7 2004-03-21 devnull struct Nfs3TReadDirPlus {
653 2277c5d7 2004-03-21 devnull SunCall call;
654 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
655 2277c5d7 2004-03-21 devnull u64int cookie;
656 2277c5d7 2004-03-21 devnull uchar verf[Nfs3CookieVerfSize];
657 2277c5d7 2004-03-21 devnull u32int dirCount;
658 2277c5d7 2004-03-21 devnull u32int maxCount;
659 2277c5d7 2004-03-21 devnull };
660 2277c5d7 2004-03-21 devnull
661 2277c5d7 2004-03-21 devnull struct Nfs3Entry {
662 2277c5d7 2004-03-21 devnull u64int fileid;
663 2277c5d7 2004-03-21 devnull char *name;
664 11b0772a 2006-05-05 devnull uint namelen;
665 2277c5d7 2004-03-21 devnull u64int cookie;
666 2277c5d7 2004-03-21 devnull u1int haveAttr;
667 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
668 2277c5d7 2004-03-21 devnull u1int haveHandle;
669 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
670 2277c5d7 2004-03-21 devnull };
671 2277c5d7 2004-03-21 devnull
672 2277c5d7 2004-03-21 devnull struct Nfs3RReadDirPlus {
673 2277c5d7 2004-03-21 devnull SunCall call;
674 2277c5d7 2004-03-21 devnull Nfs3Status status;
675 2277c5d7 2004-03-21 devnull u1int haveAttr;
676 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
677 2277c5d7 2004-03-21 devnull uchar verf[Nfs3CookieVerfSize];
678 2277c5d7 2004-03-21 devnull uchar *data;
679 2277c5d7 2004-03-21 devnull u32int count;
680 2277c5d7 2004-03-21 devnull u1int eof;
681 2277c5d7 2004-03-21 devnull };
682 2277c5d7 2004-03-21 devnull
683 2277c5d7 2004-03-21 devnull struct Nfs3TFsStat {
684 2277c5d7 2004-03-21 devnull SunCall call;
685 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
686 2277c5d7 2004-03-21 devnull };
687 2277c5d7 2004-03-21 devnull
688 2277c5d7 2004-03-21 devnull struct Nfs3RFsStat {
689 2277c5d7 2004-03-21 devnull SunCall call;
690 2277c5d7 2004-03-21 devnull Nfs3Status status;
691 2277c5d7 2004-03-21 devnull u1int haveAttr;
692 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
693 2277c5d7 2004-03-21 devnull u64int totalBytes;
694 2277c5d7 2004-03-21 devnull u64int freeBytes;
695 2277c5d7 2004-03-21 devnull u64int availBytes;
696 2277c5d7 2004-03-21 devnull u64int totalFiles;
697 2277c5d7 2004-03-21 devnull u64int freeFiles;
698 2277c5d7 2004-03-21 devnull u64int availFiles;
699 2277c5d7 2004-03-21 devnull u32int invarSec;
700 2277c5d7 2004-03-21 devnull };
701 2277c5d7 2004-03-21 devnull
702 2277c5d7 2004-03-21 devnull struct Nfs3TFsInfo {
703 2277c5d7 2004-03-21 devnull SunCall call;
704 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
705 2277c5d7 2004-03-21 devnull };
706 2277c5d7 2004-03-21 devnull
707 2277c5d7 2004-03-21 devnull struct Nfs3RFsInfo {
708 2277c5d7 2004-03-21 devnull SunCall call;
709 2277c5d7 2004-03-21 devnull Nfs3Status status;
710 2277c5d7 2004-03-21 devnull u1int haveAttr;
711 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
712 2277c5d7 2004-03-21 devnull u32int readMax;
713 2277c5d7 2004-03-21 devnull u32int readPref;
714 2277c5d7 2004-03-21 devnull u32int readMult;
715 2277c5d7 2004-03-21 devnull u32int writeMax;
716 2277c5d7 2004-03-21 devnull u32int writePref;
717 2277c5d7 2004-03-21 devnull u32int writeMult;
718 2277c5d7 2004-03-21 devnull u32int readDirPref;
719 2277c5d7 2004-03-21 devnull u64int maxFileSize;
720 2277c5d7 2004-03-21 devnull Nfs3Time timePrec;
721 2277c5d7 2004-03-21 devnull u32int flags;
722 2277c5d7 2004-03-21 devnull };
723 2277c5d7 2004-03-21 devnull
724 2277c5d7 2004-03-21 devnull struct Nfs3TPathconf {
725 2277c5d7 2004-03-21 devnull SunCall call;
726 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
727 2277c5d7 2004-03-21 devnull };
728 2277c5d7 2004-03-21 devnull
729 2277c5d7 2004-03-21 devnull struct Nfs3RPathconf {
730 2277c5d7 2004-03-21 devnull SunCall call;
731 2277c5d7 2004-03-21 devnull Nfs3Status status;
732 2277c5d7 2004-03-21 devnull u1int haveAttr;
733 2277c5d7 2004-03-21 devnull Nfs3Attr attr;
734 2277c5d7 2004-03-21 devnull u32int maxLink;
735 2277c5d7 2004-03-21 devnull u32int maxName;
736 2277c5d7 2004-03-21 devnull u1int noTrunc;
737 2277c5d7 2004-03-21 devnull u1int chownRestricted;
738 2277c5d7 2004-03-21 devnull u1int caseInsensitive;
739 2277c5d7 2004-03-21 devnull u1int casePreserving;
740 2277c5d7 2004-03-21 devnull };
741 2277c5d7 2004-03-21 devnull
742 2277c5d7 2004-03-21 devnull struct Nfs3TCommit {
743 2277c5d7 2004-03-21 devnull SunCall call;
744 2277c5d7 2004-03-21 devnull Nfs3Handle handle;
745 2277c5d7 2004-03-21 devnull u64int offset;
746 2277c5d7 2004-03-21 devnull u32int count;
747 2277c5d7 2004-03-21 devnull };
748 2277c5d7 2004-03-21 devnull
749 2277c5d7 2004-03-21 devnull struct Nfs3RCommit {
750 2277c5d7 2004-03-21 devnull SunCall call;
751 2277c5d7 2004-03-21 devnull Nfs3Status status;
752 2277c5d7 2004-03-21 devnull Nfs3Wcc wcc;
753 2277c5d7 2004-03-21 devnull uchar verf[Nfs3WriteVerfSize];
754 2277c5d7 2004-03-21 devnull };
755 2277c5d7 2004-03-21 devnull
756 2277c5d7 2004-03-21 devnull char *nfs3statusstr(Nfs3Status);
757 2277c5d7 2004-03-21 devnull char *nfs3typestr(SunCallType);
758 2277c5d7 2004-03-21 devnull char *nfs3settimestr(Nfs3SetTime);
759 2277c5d7 2004-03-21 devnull char *nfs3syncstr(Nfs3Sync);
760 2277c5d7 2004-03-21 devnull
761 2277c5d7 2004-03-21 devnull void nfs3handleprint(Fmt*, Nfs3Handle*);
762 2277c5d7 2004-03-21 devnull u32int nfs3handlesize(Nfs3Handle*);
763 2277c5d7 2004-03-21 devnull int nfs3handlepack(uchar*, uchar*, uchar**, Nfs3Handle*);
764 2277c5d7 2004-03-21 devnull int nfs3handleunpack(uchar*, uchar*, uchar**, Nfs3Handle*);
765 2277c5d7 2004-03-21 devnull
766 2277c5d7 2004-03-21 devnull void nfs3timeprint(Fmt*, Nfs3Time*);
767 2277c5d7 2004-03-21 devnull u32int nfs3timesize(Nfs3Time*);
768 2277c5d7 2004-03-21 devnull int nfs3timepack(uchar*, uchar*, uchar**, Nfs3Time*);
769 2277c5d7 2004-03-21 devnull int nfs3timeunpack(uchar*, uchar*, uchar**, Nfs3Time*);
770 2277c5d7 2004-03-21 devnull
771 2277c5d7 2004-03-21 devnull void nfs3attrprint(Fmt*, Nfs3Attr*);
772 2277c5d7 2004-03-21 devnull u32int nfs3attrsize(Nfs3Attr*);
773 2277c5d7 2004-03-21 devnull int nfs3attrpack(uchar*, uchar*, uchar**, Nfs3Attr*);
774 2277c5d7 2004-03-21 devnull int nfs3attrunpack(uchar*, uchar*, uchar**, Nfs3Attr*);
775 2277c5d7 2004-03-21 devnull
776 2277c5d7 2004-03-21 devnull void nfs3wccattrprint(Fmt*, Nfs3WccAttr*);
777 2277c5d7 2004-03-21 devnull u32int nfs3wccattrsize(Nfs3WccAttr*);
778 2277c5d7 2004-03-21 devnull int nfs3wccattrpack(uchar*, uchar*, uchar**, Nfs3WccAttr*);
779 2277c5d7 2004-03-21 devnull int nfs3wccattrunpack(uchar*, uchar*, uchar**, Nfs3WccAttr*);
780 2277c5d7 2004-03-21 devnull
781 2277c5d7 2004-03-21 devnull void nfs3wccprint(Fmt*, Nfs3Wcc*);
782 2277c5d7 2004-03-21 devnull u32int nfs3wccsize(Nfs3Wcc*);
783 2277c5d7 2004-03-21 devnull int nfs3wccpack(uchar*, uchar*, uchar**, Nfs3Wcc*);
784 2277c5d7 2004-03-21 devnull int nfs3wccunpack(uchar*, uchar*, uchar**, Nfs3Wcc*);
785 2277c5d7 2004-03-21 devnull
786 2277c5d7 2004-03-21 devnull void nfs3setattrprint(Fmt*, Nfs3SetAttr*);
787 2277c5d7 2004-03-21 devnull u32int nfs3setattrsize(Nfs3SetAttr*);
788 2277c5d7 2004-03-21 devnull int nfs3setattrpack(uchar*, uchar*, uchar**, Nfs3SetAttr*);
789 2277c5d7 2004-03-21 devnull int nfs3setattrunpack(uchar*, uchar*, uchar**, Nfs3SetAttr*);
790 2277c5d7 2004-03-21 devnull
791 2277c5d7 2004-03-21 devnull extern SunProg nfs3prog;
792 2277c5d7 2004-03-21 devnull
793 2277c5d7 2004-03-21 devnull void nfs3entryprint(Fmt*, Nfs3Entry*);
794 2277c5d7 2004-03-21 devnull u32int nfs3entrysize(Nfs3Entry*);
795 2277c5d7 2004-03-21 devnull int nfs3entrypack(uchar*, uchar*, uchar**, Nfs3Entry*);
796 2277c5d7 2004-03-21 devnull int nfs3entryunpack(uchar*, uchar*, uchar**, Nfs3Entry*);
797 2277c5d7 2004-03-21 devnull
798 2277c5d7 2004-03-21 devnull void nfs3entryplusprint(Fmt*, Nfs3Entry*);
799 2277c5d7 2004-03-21 devnull u32int nfs3entryplussize(Nfs3Entry*);
800 2277c5d7 2004-03-21 devnull int nfs3entrypluspack(uchar*, uchar*, uchar**, Nfs3Entry*);
801 2277c5d7 2004-03-21 devnull int nfs3entryplusunpack(uchar*, uchar*, uchar**, Nfs3Entry*);
802 2277c5d7 2004-03-21 devnull