Initial revision
[nfs-utils.git] / utils / mountd / mount_xdr.c
1 /*
2  * mount_xdr    XDR procedures for mountd.
3  *
4  * Originally generated by rpcgen; edited to get rid of warnings.
5  */
6
7 #include "config.h"
8
9 #include "mount.h"
10
11 inline bool_t
12 xdr_fhandle(XDR *xdrs, fhandle objp)
13 {
14         return xdr_opaque(xdrs, objp, FHSIZE);
15 }
16
17 bool_t
18 xdr_fhstatus(XDR *xdrs, fhstatus *objp)
19 {
20         return xdr_u_int(xdrs, &objp->fhs_status) &&
21                (objp->fhs_status != 0 ||
22                 xdr_fhandle(xdrs, objp->fhstatus_u.fhs_fhandle));
23 }
24
25 bool_t
26 xdr_dirpath(XDR *xdrs, dirpath *objp)
27 {
28         return xdr_string(xdrs, objp, MNTPATHLEN);
29 }
30
31 inline bool_t
32 xdr_name(XDR *xdrs, name *objp)
33 {
34         return xdr_string(xdrs, objp, MNTPATHLEN);
35 }
36
37 bool_t
38 xdr_mountlist(XDR *xdrs, mountlist *objp)
39 {
40         return xdr_pointer(xdrs, (char **)objp, sizeof(struct mountbody),
41                         (xdrproc_t)xdr_mountbody);
42 }
43
44 bool_t
45 xdr_mountbody(XDR *xdrs, mountbody *objp)
46 {
47         return xdr_name(xdrs, &objp->ml_hostname) &&
48                xdr_dirpath(xdrs, &objp->ml_directory) &&
49                xdr_mountlist(xdrs, &objp->ml_next);
50 }
51
52 bool_t
53 xdr_groups(XDR *xdrs, groups *objp)
54 {
55         return xdr_pointer(xdrs, (char **)objp, sizeof(struct groupnode),
56                         (xdrproc_t)xdr_groupnode);
57 }
58
59 bool_t
60 xdr_groupnode(XDR *xdrs, groupnode *objp)
61 {
62         return xdr_name(xdrs, &objp->gr_name) &&
63                xdr_groups(xdrs, &objp->gr_next);
64 }
65
66 bool_t
67 xdr_exports(XDR *xdrs, exports *objp)
68 {
69         return xdr_pointer(xdrs, (char **)objp, sizeof(struct exportnode),
70                         (xdrproc_t)xdr_exportnode);
71 }
72
73 bool_t
74 xdr_exportnode(XDR *xdrs, exportnode *objp)
75 {
76         return xdr_dirpath(xdrs, &objp->ex_dir) &&
77                xdr_groups(xdrs, &objp->ex_groups) &&
78                xdr_exports(xdrs, &objp->ex_next);
79 }