xref: /nrf52832-nimble/rt-thread/components/dfs/filesystems/nfs/mount_xdr.c (revision 104654410c56c573564690304ae786df310c91fc)
1 /*
2  * Copyright (c) 2006-2018, RT-Thread Development Team
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  *
6  * Change Logs:
7  * Date           Author       Notes
8  */
9 /*
10  * Please do not edit this file.
11  * It was generated using rpcgen.
12  */
13 
14 #include "mount.h"
15 /* This file is copied from RFC1813
16  * Copyright 1995 Sun Micrososystems (I assume)
17  */
18 
19 bool_t
xdr_fhandle3(register XDR * xdrs,fhandle3 * objp)20 xdr_fhandle3(register XDR *xdrs, fhandle3 *objp)
21 {
22 	if (!xdr_bytes(xdrs, (char **)&objp->fhandle3_val, (unsigned int *) &objp->fhandle3_len, FHSIZE3))
23 		return (FALSE);
24 	return (TRUE);
25 }
26 
27 bool_t
xdr_dirpath(register XDR * xdrs,dirpath * objp)28 xdr_dirpath(register XDR *xdrs, dirpath *objp)
29 {
30 	if (!xdr_string(xdrs, objp, MNTPATHLEN))
31 		return (FALSE);
32 	return (TRUE);
33 }
34 
35 bool_t
xdr_name(register XDR * xdrs,name * objp)36 xdr_name(register XDR *xdrs, name *objp)
37 {
38 	if (!xdr_string(xdrs, objp, MNTNAMLEN))
39 		return (FALSE);
40 	return (TRUE);
41 }
42 
43 bool_t
xdr_exports(register XDR * xdrs,exports * objp)44 xdr_exports(register XDR *xdrs, exports *objp)
45 {
46 	if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct exportnode), (xdrproc_t) xdr_exportnode))
47 		return (FALSE);
48 	return (TRUE);
49 }
50 
51 bool_t
xdr_groups(register XDR * xdrs,groups * objp)52 xdr_groups(register XDR *xdrs, groups *objp)
53 {
54 	if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct groupnode), (xdrproc_t) xdr_groupnode))
55 		return (FALSE);
56 	return (TRUE);
57 }
58 
59 bool_t
xdr_mountlist(register XDR * xdrs,mountlist * objp)60 xdr_mountlist(register XDR *xdrs, mountlist *objp)
61 {
62 	if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct mountbody), (xdrproc_t) xdr_mountbody))
63 		return (FALSE);
64 	return (TRUE);
65 }
66 
67 bool_t
xdr_mountstat3(register XDR * xdrs,mountstat3 * objp)68 xdr_mountstat3(register XDR *xdrs, mountstat3 *objp)
69 {
70 	int enum_objp;
71 
72 	enum_objp = *objp;
73 
74 	if (!xdr_enum(xdrs, (enum_t *)&enum_objp))
75 	{
76 		*objp = (mountstat3)enum_objp;
77 		return (FALSE);
78 	}
79 
80 	return (TRUE);
81 }
82 
83 bool_t
xdr_mountres3_ok(register XDR * xdrs,mountres3_ok * objp)84 xdr_mountres3_ok(register XDR *xdrs, mountres3_ok *objp)
85 {
86 	if (!xdr_fhandle3(xdrs, &objp->fhandle))
87 		return (FALSE);
88 	if (!xdr_array(xdrs, (char **)&objp->auth_flavors.auth_flavors_val, (unsigned int *) &objp->auth_flavors.auth_flavors_len, ~0,
89 		sizeof (int), (xdrproc_t) xdr_int))
90 		return (FALSE);
91 	return (TRUE);
92 }
93 
94 bool_t
xdr_mountres3(register XDR * xdrs,mountres3 * objp)95 xdr_mountres3(register XDR *xdrs, mountres3 *objp)
96 {
97 	if (!xdr_mountstat3(xdrs, &objp->fhs_status))
98 		return (FALSE);
99 	switch (objp->fhs_status) {
100 	case MNT3_OK:
101 		if (!xdr_mountres3_ok(xdrs, &objp->mountres3_u.mountinfo))
102 			return (FALSE);
103 		break;
104 	}
105 	return (TRUE);
106 }
107 
108 bool_t
xdr_mountbody(register XDR * xdrs,mountbody * objp)109 xdr_mountbody(register XDR *xdrs, mountbody *objp)
110 {
111 	if (!xdr_name(xdrs, &objp->ml_hostname))
112 		return (FALSE);
113 	if (!xdr_dirpath(xdrs, &objp->ml_directory))
114 		return (FALSE);
115 	if (!xdr_mountlist(xdrs, &objp->ml_next))
116 		return (FALSE);
117 	return (TRUE);
118 }
119 
120 bool_t
xdr_groupnode(register XDR * xdrs,groupnode * objp)121 xdr_groupnode(register XDR *xdrs, groupnode *objp)
122 {
123 	if (!xdr_name(xdrs, &objp->gr_name))
124 		return (FALSE);
125 	if (!xdr_groups(xdrs, &objp->gr_next))
126 		return (FALSE);
127 	return (TRUE);
128 }
129 
130 bool_t
xdr_exportnode(register XDR * xdrs,exportnode * objp)131 xdr_exportnode(register XDR *xdrs, exportnode *objp)
132 {
133 	if (!xdr_dirpath(xdrs, &objp->ex_dir))
134 		return (FALSE);
135 	if (!xdr_groups(xdrs, &objp->ex_groups))
136 		return (FALSE);
137 	if (!xdr_exports(xdrs, &objp->ex_next))
138 		return (FALSE);
139 	return (TRUE);
140 }
141