1/*
2 * This file was generated using rpcgen, and then hand-tweaked to get rid
3 * of recursion when processing lists.  In this case, to iterate is human
4 * but efficient; to recurse is divine but wasteful.
5 */
6
7#ifndef _MOUNT_H_RPCGEN
8#define _MOUNT_H_RPCGEN
9
10#define RPCGEN_VERSION	199506
11
12#include <oncrpc/rpc.h>
13
14#define MNTPATHLEN 1024
15#define MNTNAMLEN 255
16#define FHSIZE 32
17#define FHSIZE3 64
18
19typedef char fhandle[FHSIZE];
20#ifdef __cplusplus
21extern "C" bool_t xdr_fhandle(XDR *, fhandle);
22#elif __STDC__
23extern  bool_t xdr_fhandle(XDR *, fhandle);
24#else /* Old Style C */
25bool_t xdr_fhandle();
26#endif /* Old Style C */
27
28
29typedef struct {
30	u_int fhandle3_len;
31	char *fhandle3_val;
32} fhandle3;
33#ifdef __cplusplus
34extern "C" bool_t xdr_fhandle3(XDR *, fhandle3*);
35#elif __STDC__
36extern  bool_t xdr_fhandle3(XDR *, fhandle3*);
37#else /* Old Style C */
38bool_t xdr_fhandle3();
39#endif /* Old Style C */
40
41
42struct fhstatus {
43	u_int fhs_status;
44	union {
45		fhandle fhs_fhandle;
46	} fhstatus_u;
47};
48typedef struct fhstatus fhstatus;
49#ifdef __cplusplus
50extern "C" bool_t xdr_fhstatus(XDR *, fhstatus*);
51#elif __STDC__
52extern  bool_t xdr_fhstatus(XDR *, fhstatus*);
53#else /* Old Style C */
54bool_t xdr_fhstatus();
55#endif /* Old Style C */
56
57
58enum mountstat3 {
59	MNT3_OK = 0,
60	MNT3ERR_PERM = 1,
61	MNT3ERR_NOENT = 2,
62	MNT3ERR_IO = 5,
63	MNT3ERR_ACCES = 13,
64	MNT3ERR_NOTDIR = 20,
65	MNT3ERR_INVAL = 22,
66	MNT3ERR_NAMETOOLONG = 63,
67	MNT3ERR_NOTSUPP = 10004,
68	MNT3ERR_SERVERFAULT = 10006,
69};
70typedef enum mountstat3 mountstat3;
71#ifdef __cplusplus
72extern "C" bool_t xdr_mountstat3(XDR *, mountstat3*);
73#elif __STDC__
74extern  bool_t xdr_mountstat3(XDR *, mountstat3*);
75#else /* Old Style C */
76bool_t xdr_mountstat3();
77#endif /* Old Style C */
78
79
80struct mountres3_ok {
81	fhandle3 fhandle;
82	struct {
83		u_int auth_flavors_len;
84		int *auth_flavors_val;
85	} auth_flavors;
86};
87typedef struct mountres3_ok mountres3_ok;
88#ifdef __cplusplus
89extern "C" bool_t xdr_mountres3_ok(XDR *, mountres3_ok*);
90#elif __STDC__
91extern  bool_t xdr_mountres3_ok(XDR *, mountres3_ok*);
92#else /* Old Style C */
93bool_t xdr_mountres3_ok();
94#endif /* Old Style C */
95
96
97struct mountres3 {
98	mountstat3 fhs_status;
99	union {
100		mountres3_ok mountinfo;
101	} mountres3_u;
102};
103typedef struct mountres3 mountres3;
104#ifdef __cplusplus
105extern "C" bool_t xdr_mountres3(XDR *, mountres3*);
106#elif __STDC__
107extern  bool_t xdr_mountres3(XDR *, mountres3*);
108#else /* Old Style C */
109bool_t xdr_mountres3();
110#endif /* Old Style C */
111
112
113typedef char *dirpath;
114#ifdef __cplusplus
115extern "C" bool_t xdr_dirpath(XDR *, dirpath*);
116#elif __STDC__
117extern  bool_t xdr_dirpath(XDR *, dirpath*);
118#else /* Old Style C */
119bool_t xdr_dirpath();
120#endif /* Old Style C */
121
122
123typedef char *name;
124#ifdef __cplusplus
125extern "C" bool_t xdr_name(XDR *, name*);
126#elif __STDC__
127extern  bool_t xdr_name(XDR *, name*);
128#else /* Old Style C */
129bool_t xdr_name();
130#endif /* Old Style C */
131
132
133typedef struct mountbody *mountlist;
134#ifdef __cplusplus
135extern "C" bool_t xdr_mountlist(XDR *, mountlist*);
136#elif __STDC__
137extern  bool_t xdr_mountlist(XDR *, mountlist*);
138#else /* Old Style C */
139bool_t xdr_mountlist();
140#endif /* Old Style C */
141
142
143struct mountbody {
144	name ml_hostname;
145	dirpath ml_directory;
146	mountlist ml_next;
147};
148typedef struct mountbody mountbody;
149
150
151typedef struct groupnode *groups;
152#ifdef __cplusplus
153extern "C" bool_t xdr_groups(XDR *, groups*);
154#elif __STDC__
155extern  bool_t xdr_groups(XDR *, groups*);
156#else /* Old Style C */
157bool_t xdr_groups();
158#endif /* Old Style C */
159
160
161struct groupnode {
162	name gr_name;
163	groups gr_next;
164};
165typedef struct groupnode groupnode;
166
167
168typedef struct exportnode *exports;
169#ifdef __cplusplus
170extern "C" bool_t xdr_exports(XDR *, exports*);
171#elif __STDC__
172extern  bool_t xdr_exports(XDR *, exports*);
173#else /* Old Style C */
174bool_t xdr_exports();
175#endif /* Old Style C */
176
177
178struct exportnode {
179	dirpath ex_dir;
180	groups ex_groups;
181	exports ex_next;
182};
183typedef struct exportnode exportnode;
184
185
186#define MOUNTPROG ((rpc_uint)100005)
187#define MOUNTVERS ((rpc_uint)1)
188
189#ifdef __cplusplus
190#define MOUNTPROC_NULL ((rpc_uint)0)
191extern "C" void * mountproc_null_1(void *, CLIENT *);
192extern "C" void * mountproc_null_1_svc(void *, struct svc_req *);
193#define MOUNTPROC_MNT ((rpc_uint)1)
194extern "C" fhstatus * mountproc_mnt_1(dirpath *, CLIENT *);
195extern "C" fhstatus * mountproc_mnt_1_svc(dirpath *, struct svc_req *);
196#define MOUNTPROC_DUMP ((rpc_uint)2)
197extern "C" mountlist * mountproc_dump_1(void *, CLIENT *);
198extern "C" mountlist * mountproc_dump_1_svc(void *, struct svc_req *);
199#define MOUNTPROC_UMNT ((rpc_uint)3)
200extern "C" void * mountproc_umnt_1(dirpath *, CLIENT *);
201extern "C" void * mountproc_umnt_1_svc(dirpath *, struct svc_req *);
202#define MOUNTPROC_UMNTALL ((rpc_uint)4)
203extern "C" void * mountproc_umntall_1(void *, CLIENT *);
204extern "C" void * mountproc_umntall_1_svc(void *, struct svc_req *);
205#define MOUNTPROC_EXPORT ((rpc_uint)5)
206extern "C" exports * mountproc_export_1(void *, CLIENT *);
207extern "C" exports * mountproc_export_1_svc(void *, struct svc_req *);
208#define MOUNTPROC_EXPORTALL ((rpc_uint)6)
209extern "C" exports * mountproc_exportall_1(void *, CLIENT *);
210extern "C" exports * mountproc_exportall_1_svc(void *, struct svc_req *);
211
212#elif __STDC__
213#define MOUNTPROC_NULL ((rpc_uint)0)
214extern  void * mountproc_null_1(void *, CLIENT *);
215extern  void * mountproc_null_1_svc(void *, struct svc_req *);
216#define MOUNTPROC_MNT ((rpc_uint)1)
217extern  fhstatus * mountproc_mnt_1(dirpath *, CLIENT *);
218extern  fhstatus * mountproc_mnt_1_svc(dirpath *, struct svc_req *);
219#define MOUNTPROC_DUMP ((rpc_uint)2)
220extern  mountlist * mountproc_dump_1(void *, CLIENT *);
221extern  mountlist * mountproc_dump_1_svc(void *, struct svc_req *);
222#define MOUNTPROC_UMNT ((rpc_uint)3)
223extern  void * mountproc_umnt_1(dirpath *, CLIENT *);
224extern  void * mountproc_umnt_1_svc(dirpath *, struct svc_req *);
225#define MOUNTPROC_UMNTALL ((rpc_uint)4)
226extern  void * mountproc_umntall_1(void *, CLIENT *);
227extern  void * mountproc_umntall_1_svc(void *, struct svc_req *);
228#define MOUNTPROC_EXPORT ((rpc_uint)5)
229extern  exports * mountproc_export_1(void *, CLIENT *);
230extern  exports * mountproc_export_1_svc(void *, struct svc_req *);
231#define MOUNTPROC_EXPORTALL ((rpc_uint)6)
232extern  exports * mountproc_exportall_1(void *, CLIENT *);
233extern  exports * mountproc_exportall_1_svc(void *, struct svc_req *);
234
235#else /* Old Style C */
236#define MOUNTPROC_NULL ((rpc_uint)0)
237extern  void * mountproc_null_1();
238extern  void * mountproc_null_1_svc();
239#define MOUNTPROC_MNT ((rpc_uint)1)
240extern  fhstatus * mountproc_mnt_1();
241extern  fhstatus * mountproc_mnt_1_svc();
242#define MOUNTPROC_DUMP ((rpc_uint)2)
243extern  mountlist * mountproc_dump_1();
244extern  mountlist * mountproc_dump_1_svc();
245#define MOUNTPROC_UMNT ((rpc_uint)3)
246extern  void * mountproc_umnt_1();
247extern  void * mountproc_umnt_1_svc();
248#define MOUNTPROC_UMNTALL ((rpc_uint)4)
249extern  void * mountproc_umntall_1();
250extern  void * mountproc_umntall_1_svc();
251#define MOUNTPROC_EXPORT ((rpc_uint)5)
252extern  exports * mountproc_export_1();
253extern  exports * mountproc_export_1_svc();
254#define MOUNTPROC_EXPORTALL ((rpc_uint)6)
255extern  exports * mountproc_exportall_1();
256extern  exports * mountproc_exportall_1_svc();
257#endif /* Old Style C */
258#define MOUNTVERS3 ((rpc_uint)3)
259
260#ifdef __cplusplus
261extern "C" void * mountproc_null_3(void *, CLIENT *);
262extern "C" void * mountproc_null_3_svc(void *, struct svc_req *);
263extern "C" mountres3 * mountproc_mnt_3(dirpath *, CLIENT *);
264extern "C" mountres3 * mountproc_mnt_3_svc(dirpath *, struct svc_req *);
265extern "C" mountlist * mountproc_dump_3(void *, CLIENT *);
266extern "C" mountlist * mountproc_dump_3_svc(void *, struct svc_req *);
267extern "C" void * mountproc_umnt_3(dirpath *, CLIENT *);
268extern "C" void * mountproc_umnt_3_svc(dirpath *, struct svc_req *);
269extern "C" void * mountproc_umntall_3(void *, CLIENT *);
270extern "C" void * mountproc_umntall_3_svc(void *, struct svc_req *);
271extern "C" exports * mountproc_export_3(void *, CLIENT *);
272extern "C" exports * mountproc_export_3_svc(void *, struct svc_req *);
273
274#elif __STDC__
275extern  void * mountproc_null_3(void *, CLIENT *);
276extern  void * mountproc_null_3_svc(void *, struct svc_req *);
277extern  mountres3 * mountproc_mnt_3(dirpath *, CLIENT *);
278extern  mountres3 * mountproc_mnt_3_svc(dirpath *, struct svc_req *);
279extern  mountlist * mountproc_dump_3(void *, CLIENT *);
280extern  mountlist * mountproc_dump_3_svc(void *, struct svc_req *);
281extern  void * mountproc_umnt_3(dirpath *, CLIENT *);
282extern  void * mountproc_umnt_3_svc(dirpath *, struct svc_req *);
283extern  void * mountproc_umntall_3(void *, CLIENT *);
284extern  void * mountproc_umntall_3_svc(void *, struct svc_req *);
285extern  exports * mountproc_export_3(void *, CLIENT *);
286extern  exports * mountproc_export_3_svc(void *, struct svc_req *);
287
288#else /* Old Style C */
289extern  void * mountproc_null_3();
290extern  void * mountproc_null_3_svc();
291extern  mountres3 * mountproc_mnt_3();
292extern  mountres3 * mountproc_mnt_3_svc();
293extern  mountlist * mountproc_dump_3();
294extern  mountlist * mountproc_dump_3_svc();
295extern  void * mountproc_umnt_3();
296extern  void * mountproc_umnt_3_svc();
297extern  void * mountproc_umntall_3();
298extern  void * mountproc_umntall_3_svc();
299extern  exports * mountproc_export_3();
300extern  exports * mountproc_export_3_svc();
301#endif /* Old Style C */
302
303#endif /* !_MOUNT_H_RPCGEN */
304