1/*
2 * Please do not edit this file too much.
3 * It was generated using rpcgen, and then hacked to fix compilation problems.
4 */
5
6#ifndef _MOUNT_H_RPCGEN
7#define _MOUNT_H_RPCGEN
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13#define MNTPATHLEN 1024
14#define MNTNAMLEN 255
15#define FHSIZE3 64
16
17typedef struct {
18    u_int fhandle3_len;
19    char *fhandle3_val;
20} fhandle3;
21
22typedef char *dirpath;
23
24typedef char *mountname;
25
26enum mountstat3 {
27    MNT3_OK = 0,
28    MNT3ERR_PERM = 1,
29    MNT3ERR_NOENT = 2,
30    MNT3ERR_IO = 5,
31    MNT3ERR_ACCES = 13,
32    MNT3ERR_NOTDIR = 20,
33    MNT3ERR_INVAL = 22,
34    MNT3ERR_NAMETOOLONG = 63,
35    MNT3ERR_NOTSUPP = 10004,
36    MNT3ERR_SERVERFAULT = 10006,
37};
38typedef enum mountstat3 mountstat3;
39
40struct mountres3_ok {
41    fhandle3 fhandle;
42    struct {
43        u_int auth_flavors_len;
44        int *auth_flavors_val;
45    } auth_flavors;
46};
47typedef struct mountres3_ok mountres3_ok;
48
49struct mountres3 {
50    mountstat3 fhs_status;
51    union {
52        mountres3_ok mountinfo;
53    } mountres3_u;
54};
55typedef struct mountres3 mountres3;
56
57typedef struct mountbody *mountlist;
58
59struct mountbody {
60    mountname ml_hostname;
61    dirpath ml_directory;
62    mountlist ml_next;
63};
64typedef struct mountbody mountbody;
65
66typedef struct groupnode *groups;
67
68struct groupnode {
69    mountname gr_name;
70    groups gr_next;
71};
72typedef struct groupnode groupnode;
73
74typedef struct exportnode *exports;
75
76struct exportnode {
77    dirpath ex_dir;
78    groups ex_groups;
79    exports ex_next;
80};
81typedef struct exportnode exportnode;
82
83#define MOUNT_PROGRAM 100005
84#define MOUNT_V3 3
85
86#define MOUNTPROC3_NULL 0
87#define MOUNTPROC3_MNT 1
88#define MOUNTPROC3_DUMP 2
89#define MOUNTPROC3_UMNT 3
90#define MOUNTPROC3_UMNTALL 4
91#define MOUNTPROC3_EXPORT 5
92
93#if 0
94extern  enum clnt_stat mountproc3_null_3(void *, void *, CLIENT *);
95extern  enum clnt_stat mountproc3_mnt_3(dirpath *, mountres3 *, CLIENT *);
96extern  enum clnt_stat mountproc3_dump_3(void *, mountlist *, CLIENT *);
97extern  enum clnt_stat mountproc3_umnt_3(dirpath *, void *, CLIENT *);
98extern  enum clnt_stat mountproc3_umntall_3(void *, void *, CLIENT *);
99extern  enum clnt_stat mountproc3_export_3(void *, exports *, CLIENT *);
100#endif
101
102/* the xdr functions */
103extern  bool_t xdr_fhandle3 (XDR *, fhandle3*);
104extern  bool_t xdr_dirpath (XDR *, dirpath*);
105extern  bool_t xdr_mountname (XDR *, mountname*);
106extern  bool_t xdr_mountstat3 (XDR *, mountstat3*);
107extern  bool_t xdr_mountres3_ok (XDR *, mountres3_ok*);
108extern  bool_t xdr_mountres3 (XDR *, mountres3*);
109extern  bool_t xdr_mountlist (XDR *, mountlist*);
110extern  bool_t xdr_mountbody (XDR *, mountbody*);
111extern  bool_t xdr_groups (XDR *, groups*);
112extern  bool_t xdr_groupnode (XDR *, groupnode*);
113extern  bool_t xdr_exports (XDR *, exports*);
114extern  bool_t xdr_exportnode (XDR *, exportnode*);
115
116#ifdef __cplusplus
117}
118#endif
119
120#endif /* !_MOUNT_H_RPCGEN */
121