cpp-d1064d
[cross.git] / i686-linux-gnu-4.7 / usr / include / rpcsvc / nfs_prot.h
1 /*
2  * Please do not edit this file.
3  * It was generated using rpcgen.
4  */
5
6 #ifndef _NFS_PROT_H_RPCGEN
7 #define _NFS_PROT_H_RPCGEN
8
9 #include <rpc/rpc.h>
10
11
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15
16 #define NFS_PORT 2049
17 #define NFS_MAXDATA 8192
18 #define NFS_MAXPATHLEN 1024
19 #define NFS_MAXNAMLEN 255
20 #define NFS_FHSIZE 32
21 #define NFS_COOKIESIZE 4
22 #define NFS_FIFO_DEV -1
23 #define NFSMODE_FMT 0170000
24 #define NFSMODE_DIR 0040000
25 #define NFSMODE_CHR 0020000
26 #define NFSMODE_BLK 0060000
27 #define NFSMODE_REG 0100000
28 #define NFSMODE_LNK 0120000
29 #define NFSMODE_SOCK 0140000
30 #define NFSMODE_FIFO 0010000
31
32 enum nfsstat {
33         NFS_OK = 0,
34         NFSERR_PERM = 1,
35         NFSERR_NOENT = 2,
36         NFSERR_IO = 5,
37         NFSERR_NXIO = 6,
38         NFSERR_ACCES = 13,
39         NFSERR_EXIST = 17,
40         NFSERR_NODEV = 19,
41         NFSERR_NOTDIR = 20,
42         NFSERR_ISDIR = 21,
43         NFSERR_FBIG = 27,
44         NFSERR_NOSPC = 28,
45         NFSERR_ROFS = 30,
46         NFSERR_NAMETOOLONG = 63,
47         NFSERR_NOTEMPTY = 66,
48         NFSERR_DQUOT = 69,
49         NFSERR_STALE = 70,
50         NFSERR_WFLUSH = 99,
51 };
52 typedef enum nfsstat nfsstat;
53
54 enum ftype {
55         NFNON = 0,
56         NFREG = 1,
57         NFDIR = 2,
58         NFBLK = 3,
59         NFCHR = 4,
60         NFLNK = 5,
61         NFSOCK = 6,
62         NFBAD = 7,
63         NFFIFO = 8,
64 };
65 typedef enum ftype ftype;
66
67 struct nfs_fh {
68         char data[NFS_FHSIZE];
69 };
70 typedef struct nfs_fh nfs_fh;
71
72 struct nfstime {
73         u_int seconds;
74         u_int useconds;
75 };
76 typedef struct nfstime nfstime;
77
78 struct fattr {
79         ftype type;
80         u_int mode;
81         u_int nlink;
82         u_int uid;
83         u_int gid;
84         u_int size;
85         u_int blocksize;
86         u_int rdev;
87         u_int blocks;
88         u_int fsid;
89         u_int fileid;
90         nfstime atime;
91         nfstime mtime;
92         nfstime ctime;
93 };
94 typedef struct fattr fattr;
95
96 struct sattr {
97         u_int mode;
98         u_int uid;
99         u_int gid;
100         u_int size;
101         nfstime atime;
102         nfstime mtime;
103 };
104 typedef struct sattr sattr;
105
106 typedef char *filename;
107
108 typedef char *nfspath;
109
110 struct attrstat {
111         nfsstat status;
112         union {
113                 fattr attributes;
114         } attrstat_u;
115 };
116 typedef struct attrstat attrstat;
117
118 struct sattrargs {
119         nfs_fh file;
120         sattr attributes;
121 };
122 typedef struct sattrargs sattrargs;
123
124 struct diropargs {
125         nfs_fh dir;
126         filename name;
127 };
128 typedef struct diropargs diropargs;
129
130 struct diropokres {
131         nfs_fh file;
132         fattr attributes;
133 };
134 typedef struct diropokres diropokres;
135
136 struct diropres {
137         nfsstat status;
138         union {
139                 diropokres diropres;
140         } diropres_u;
141 };
142 typedef struct diropres diropres;
143
144 struct readlinkres {
145         nfsstat status;
146         union {
147                 nfspath data;
148         } readlinkres_u;
149 };
150 typedef struct readlinkres readlinkres;
151
152 struct readargs {
153         nfs_fh file;
154         u_int offset;
155         u_int count;
156         u_int totalcount;
157 };
158 typedef struct readargs readargs;
159
160 struct readokres {
161         fattr attributes;
162         struct {
163                 u_int data_len;
164                 char *data_val;
165         } data;
166 };
167 typedef struct readokres readokres;
168
169 struct readres {
170         nfsstat status;
171         union {
172                 readokres reply;
173         } readres_u;
174 };
175 typedef struct readres readres;
176
177 struct writeargs {
178         nfs_fh file;
179         u_int beginoffset;
180         u_int offset;
181         u_int totalcount;
182         struct {
183                 u_int data_len;
184                 char *data_val;
185         } data;
186 };
187 typedef struct writeargs writeargs;
188
189 struct createargs {
190         diropargs where;
191         sattr attributes;
192 };
193 typedef struct createargs createargs;
194
195 struct renameargs {
196         diropargs from;
197         diropargs to;
198 };
199 typedef struct renameargs renameargs;
200
201 struct linkargs {
202         nfs_fh from;
203         diropargs to;
204 };
205 typedef struct linkargs linkargs;
206
207 struct symlinkargs {
208         diropargs from;
209         nfspath to;
210         sattr attributes;
211 };
212 typedef struct symlinkargs symlinkargs;
213
214 typedef char nfscookie[NFS_COOKIESIZE];
215
216 struct readdirargs {
217         nfs_fh dir;
218         nfscookie cookie;
219         u_int count;
220 };
221 typedef struct readdirargs readdirargs;
222
223 struct entry {
224         u_int fileid;
225         filename name;
226         nfscookie cookie;
227         struct entry *nextentry;
228 };
229 typedef struct entry entry;
230
231 struct dirlist {
232         entry *entries;
233         bool_t eof;
234 };
235 typedef struct dirlist dirlist;
236
237 struct readdirres {
238         nfsstat status;
239         union {
240                 dirlist reply;
241         } readdirres_u;
242 };
243 typedef struct readdirres readdirres;
244
245 struct statfsokres {
246         u_int tsize;
247         u_int bsize;
248         u_int blocks;
249         u_int bfree;
250         u_int bavail;
251 };
252 typedef struct statfsokres statfsokres;
253
254 struct statfsres {
255         nfsstat status;
256         union {
257                 statfsokres reply;
258         } statfsres_u;
259 };
260 typedef struct statfsres statfsres;
261
262 #define NFS_PROGRAM 100003
263 #define NFS_VERSION 2
264
265 #if defined(__STDC__) || defined(__cplusplus)
266 #define NFSPROC_NULL 0
267 extern  void * nfsproc_null_2(void *, CLIENT *);
268 extern  void * nfsproc_null_2_svc(void *, struct svc_req *);
269 #define NFSPROC_GETATTR 1
270 extern  attrstat * nfsproc_getattr_2(nfs_fh *, CLIENT *);
271 extern  attrstat * nfsproc_getattr_2_svc(nfs_fh *, struct svc_req *);
272 #define NFSPROC_SETATTR 2
273 extern  attrstat * nfsproc_setattr_2(sattrargs *, CLIENT *);
274 extern  attrstat * nfsproc_setattr_2_svc(sattrargs *, struct svc_req *);
275 #define NFSPROC_ROOT 3
276 extern  void * nfsproc_root_2(void *, CLIENT *);
277 extern  void * nfsproc_root_2_svc(void *, struct svc_req *);
278 #define NFSPROC_LOOKUP 4
279 extern  diropres * nfsproc_lookup_2(diropargs *, CLIENT *);
280 extern  diropres * nfsproc_lookup_2_svc(diropargs *, struct svc_req *);
281 #define NFSPROC_READLINK 5
282 extern  readlinkres * nfsproc_readlink_2(nfs_fh *, CLIENT *);
283 extern  readlinkres * nfsproc_readlink_2_svc(nfs_fh *, struct svc_req *);
284 #define NFSPROC_READ 6
285 extern  readres * nfsproc_read_2(readargs *, CLIENT *);
286 extern  readres * nfsproc_read_2_svc(readargs *, struct svc_req *);
287 #define NFSPROC_WRITECACHE 7
288 extern  void * nfsproc_writecache_2(void *, CLIENT *);
289 extern  void * nfsproc_writecache_2_svc(void *, struct svc_req *);
290 #define NFSPROC_WRITE 8
291 extern  attrstat * nfsproc_write_2(writeargs *, CLIENT *);
292 extern  attrstat * nfsproc_write_2_svc(writeargs *, struct svc_req *);
293 #define NFSPROC_CREATE 9
294 extern  diropres * nfsproc_create_2(createargs *, CLIENT *);
295 extern  diropres * nfsproc_create_2_svc(createargs *, struct svc_req *);
296 #define NFSPROC_REMOVE 10
297 extern  nfsstat * nfsproc_remove_2(diropargs *, CLIENT *);
298 extern  nfsstat * nfsproc_remove_2_svc(diropargs *, struct svc_req *);
299 #define NFSPROC_RENAME 11
300 extern  nfsstat * nfsproc_rename_2(renameargs *, CLIENT *);
301 extern  nfsstat * nfsproc_rename_2_svc(renameargs *, struct svc_req *);
302 #define NFSPROC_LINK 12
303 extern  nfsstat * nfsproc_link_2(linkargs *, CLIENT *);
304 extern  nfsstat * nfsproc_link_2_svc(linkargs *, struct svc_req *);
305 #define NFSPROC_SYMLINK 13
306 extern  nfsstat * nfsproc_symlink_2(symlinkargs *, CLIENT *);
307 extern  nfsstat * nfsproc_symlink_2_svc(symlinkargs *, struct svc_req *);
308 #define NFSPROC_MKDIR 14
309 extern  diropres * nfsproc_mkdir_2(createargs *, CLIENT *);
310 extern  diropres * nfsproc_mkdir_2_svc(createargs *, struct svc_req *);
311 #define NFSPROC_RMDIR 15
312 extern  nfsstat * nfsproc_rmdir_2(diropargs *, CLIENT *);
313 extern  nfsstat * nfsproc_rmdir_2_svc(diropargs *, struct svc_req *);
314 #define NFSPROC_READDIR 16
315 extern  readdirres * nfsproc_readdir_2(readdirargs *, CLIENT *);
316 extern  readdirres * nfsproc_readdir_2_svc(readdirargs *, struct svc_req *);
317 #define NFSPROC_STATFS 17
318 extern  statfsres * nfsproc_statfs_2(nfs_fh *, CLIENT *);
319 extern  statfsres * nfsproc_statfs_2_svc(nfs_fh *, struct svc_req *);
320 extern int nfs_program_2_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
321
322 #else /* K&R C */
323 #define NFSPROC_NULL 0
324 extern  void * nfsproc_null_2();
325 extern  void * nfsproc_null_2_svc();
326 #define NFSPROC_GETATTR 1
327 extern  attrstat * nfsproc_getattr_2();
328 extern  attrstat * nfsproc_getattr_2_svc();
329 #define NFSPROC_SETATTR 2
330 extern  attrstat * nfsproc_setattr_2();
331 extern  attrstat * nfsproc_setattr_2_svc();
332 #define NFSPROC_ROOT 3
333 extern  void * nfsproc_root_2();
334 extern  void * nfsproc_root_2_svc();
335 #define NFSPROC_LOOKUP 4
336 extern  diropres * nfsproc_lookup_2();
337 extern  diropres * nfsproc_lookup_2_svc();
338 #define NFSPROC_READLINK 5
339 extern  readlinkres * nfsproc_readlink_2();
340 extern  readlinkres * nfsproc_readlink_2_svc();
341 #define NFSPROC_READ 6
342 extern  readres * nfsproc_read_2();
343 extern  readres * nfsproc_read_2_svc();
344 #define NFSPROC_WRITECACHE 7
345 extern  void * nfsproc_writecache_2();
346 extern  void * nfsproc_writecache_2_svc();
347 #define NFSPROC_WRITE 8
348 extern  attrstat * nfsproc_write_2();
349 extern  attrstat * nfsproc_write_2_svc();
350 #define NFSPROC_CREATE 9
351 extern  diropres * nfsproc_create_2();
352 extern  diropres * nfsproc_create_2_svc();
353 #define NFSPROC_REMOVE 10
354 extern  nfsstat * nfsproc_remove_2();
355 extern  nfsstat * nfsproc_remove_2_svc();
356 #define NFSPROC_RENAME 11
357 extern  nfsstat * nfsproc_rename_2();
358 extern  nfsstat * nfsproc_rename_2_svc();
359 #define NFSPROC_LINK 12
360 extern  nfsstat * nfsproc_link_2();
361 extern  nfsstat * nfsproc_link_2_svc();
362 #define NFSPROC_SYMLINK 13
363 extern  nfsstat * nfsproc_symlink_2();
364 extern  nfsstat * nfsproc_symlink_2_svc();
365 #define NFSPROC_MKDIR 14
366 extern  diropres * nfsproc_mkdir_2();
367 extern  diropres * nfsproc_mkdir_2_svc();
368 #define NFSPROC_RMDIR 15
369 extern  nfsstat * nfsproc_rmdir_2();
370 extern  nfsstat * nfsproc_rmdir_2_svc();
371 #define NFSPROC_READDIR 16
372 extern  readdirres * nfsproc_readdir_2();
373 extern  readdirres * nfsproc_readdir_2_svc();
374 #define NFSPROC_STATFS 17
375 extern  statfsres * nfsproc_statfs_2();
376 extern  statfsres * nfsproc_statfs_2_svc();
377 extern int nfs_program_2_freeresult ();
378 #endif /* K&R C */
379
380 /* the xdr functions */
381
382 #if defined(__STDC__) || defined(__cplusplus)
383 extern  bool_t xdr_nfsstat (XDR *, nfsstat*);
384 extern  bool_t xdr_ftype (XDR *, ftype*);
385 extern  bool_t xdr_nfs_fh (XDR *, nfs_fh*);
386 extern  bool_t xdr_nfstime (XDR *, nfstime*);
387 extern  bool_t xdr_fattr (XDR *, fattr*);
388 extern  bool_t xdr_sattr (XDR *, sattr*);
389 extern  bool_t xdr_filename (XDR *, filename*);
390 extern  bool_t xdr_nfspath (XDR *, nfspath*);
391 extern  bool_t xdr_attrstat (XDR *, attrstat*);
392 extern  bool_t xdr_sattrargs (XDR *, sattrargs*);
393 extern  bool_t xdr_diropargs (XDR *, diropargs*);
394 extern  bool_t xdr_diropokres (XDR *, diropokres*);
395 extern  bool_t xdr_diropres (XDR *, diropres*);
396 extern  bool_t xdr_readlinkres (XDR *, readlinkres*);
397 extern  bool_t xdr_readargs (XDR *, readargs*);
398 extern  bool_t xdr_readokres (XDR *, readokres*);
399 extern  bool_t xdr_readres (XDR *, readres*);
400 extern  bool_t xdr_writeargs (XDR *, writeargs*);
401 extern  bool_t xdr_createargs (XDR *, createargs*);
402 extern  bool_t xdr_renameargs (XDR *, renameargs*);
403 extern  bool_t xdr_linkargs (XDR *, linkargs*);
404 extern  bool_t xdr_symlinkargs (XDR *, symlinkargs*);
405 extern  bool_t xdr_nfscookie (XDR *, nfscookie);
406 extern  bool_t xdr_readdirargs (XDR *, readdirargs*);
407 extern  bool_t xdr_entry (XDR *, entry*);
408 extern  bool_t xdr_dirlist (XDR *, dirlist*);
409 extern  bool_t xdr_readdirres (XDR *, readdirres*);
410 extern  bool_t xdr_statfsokres (XDR *, statfsokres*);
411 extern  bool_t xdr_statfsres (XDR *, statfsres*);
412
413 #else /* K&R C */
414 extern bool_t xdr_nfsstat ();
415 extern bool_t xdr_ftype ();
416 extern bool_t xdr_nfs_fh ();
417 extern bool_t xdr_nfstime ();
418 extern bool_t xdr_fattr ();
419 extern bool_t xdr_sattr ();
420 extern bool_t xdr_filename ();
421 extern bool_t xdr_nfspath ();
422 extern bool_t xdr_attrstat ();
423 extern bool_t xdr_sattrargs ();
424 extern bool_t xdr_diropargs ();
425 extern bool_t xdr_diropokres ();
426 extern bool_t xdr_diropres ();
427 extern bool_t xdr_readlinkres ();
428 extern bool_t xdr_readargs ();
429 extern bool_t xdr_readokres ();
430 extern bool_t xdr_readres ();
431 extern bool_t xdr_writeargs ();
432 extern bool_t xdr_createargs ();
433 extern bool_t xdr_renameargs ();
434 extern bool_t xdr_linkargs ();
435 extern bool_t xdr_symlinkargs ();
436 extern bool_t xdr_nfscookie ();
437 extern bool_t xdr_readdirargs ();
438 extern bool_t xdr_entry ();
439 extern bool_t xdr_dirlist ();
440 extern bool_t xdr_readdirres ();
441 extern bool_t xdr_statfsokres ();
442 extern bool_t xdr_statfsres ();
443
444 #endif /* K&R C */
445
446 #ifdef __cplusplus
447 }
448 #endif
449
450 #endif /* !_NFS_PROT_H_RPCGEN */