xref: /original-bsd/usr.sbin/amd/rpcx/amq_xdr.c (revision 92ab646d)
1 /*
2  * $Id: amq_xdr.c,v 5.2 90/06/23 22:20:14 jsp Rel $
3  *
4  * Copyright (c) 1990 Jan-Simon Pendry
5  * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
6  * Copyright (c) 1990 The Regents of the University of California.
7  * All rights reserved.
8  *
9  * This code is derived from software contributed to Berkeley by
10  * Jan-Simon Pendry at Imperial College, London.
11  *
12  * %sccs.include.redist.c%
13  *
14  *	@(#)amq_xdr.c	5.1 (Berkeley) 07/19/90
15  */
16 
17 #include "am.h"
18 #include "amq.h"
19 
20 
21 bool_t
22 xdr_amq_string(xdrs, objp)
23 	XDR *xdrs;
24 	amq_string *objp;
25 {
26 	if (!xdr_string(xdrs, objp, AMQ_STRLEN)) {
27 		return (FALSE);
28 	}
29 	return (TRUE);
30 }
31 
32 
33 
34 
35 bool_t
36 xdr_time_type(xdrs, objp)
37 	XDR *xdrs;
38 	time_type *objp;
39 {
40 	if (!xdr_long(xdrs, objp)) {
41 		return (FALSE);
42 	}
43 	return (TRUE);
44 }
45 
46 
47 
48 
49 bool_t
50 xdr_amq_mount_tree(xdrs, objp)
51 	XDR *xdrs;
52 	amq_mount_tree *objp;
53 {
54 	if (!xdr_amq_string(xdrs, &objp->mt_mountinfo)) {
55 		return (FALSE);
56 	}
57 	if (!xdr_amq_string(xdrs, &objp->mt_directory)) {
58 		return (FALSE);
59 	}
60 	if (!xdr_amq_string(xdrs, &objp->mt_mountpoint)) {
61 		return (FALSE);
62 	}
63 	if (!xdr_amq_string(xdrs, &objp->mt_type)) {
64 		return (FALSE);
65 	}
66 	if (!xdr_time_type(xdrs, &objp->mt_mounttime)) {
67 		return (FALSE);
68 	}
69 	if (!xdr_u_short(xdrs, &objp->mt_mountuid)) {
70 		return (FALSE);
71 	}
72 	if (!xdr_int(xdrs, &objp->mt_getattr)) {
73 		return (FALSE);
74 	}
75 	if (!xdr_int(xdrs, &objp->mt_lookup)) {
76 		return (FALSE);
77 	}
78 	if (!xdr_int(xdrs, &objp->mt_readdir)) {
79 		return (FALSE);
80 	}
81 	if (!xdr_int(xdrs, &objp->mt_readlink)) {
82 		return (FALSE);
83 	}
84 	if (!xdr_int(xdrs, &objp->mt_statfs)) {
85 		return (FALSE);
86 	}
87 	if (!xdr_pointer(xdrs, (char **)&objp->mt_next, sizeof(amq_mount_tree), xdr_amq_mount_tree)) {
88 		return (FALSE);
89 	}
90 	if (!xdr_pointer(xdrs, (char **)&objp->mt_child, sizeof(amq_mount_tree), xdr_amq_mount_tree)) {
91 		return (FALSE);
92 	}
93 	return (TRUE);
94 }
95 
96 
97 
98 
99 bool_t
100 xdr_amq_mount_tree_p(xdrs, objp)
101 	XDR *xdrs;
102 	amq_mount_tree_p *objp;
103 {
104 	if (!xdr_pointer(xdrs, (char **)objp, sizeof(amq_mount_tree), xdr_amq_mount_tree)) {
105 		return (FALSE);
106 	}
107 	return (TRUE);
108 }
109 
110 
111 
112 bool_t
113 xdr_amq_mount_info(xdrs, objp)
114 	XDR *xdrs;
115 	amq_mount_info *objp;
116 {
117 	if (!xdr_amq_string(xdrs, &objp->mi_type)) {
118 		return (FALSE);
119 	}
120 	if (!xdr_amq_string(xdrs, &objp->mi_mountpt)) {
121 		return (FALSE);
122 	}
123 	if (!xdr_amq_string(xdrs, &objp->mi_mountinfo)) {
124 		return (FALSE);
125 	}
126 	if (!xdr_amq_string(xdrs, &objp->mi_fserver)) {
127 		return (FALSE);
128 	}
129 	if (!xdr_int(xdrs, &objp->mi_error)) {
130 		return (FALSE);
131 	}
132 	if (!xdr_int(xdrs, &objp->mi_refc)) {
133 		return (FALSE);
134 	}
135 	if (!xdr_int(xdrs, &objp->mi_up)) {
136 		return (FALSE);
137 	}
138 	return (TRUE);
139 }
140 
141 
142 
143 bool_t
144 xdr_amq_mount_info_list(xdrs, objp)
145 	XDR *xdrs;
146 	amq_mount_info_list *objp;
147 {
148 	if (!xdr_array(xdrs, (char **)&objp->amq_mount_info_list_val, (u_int *)&objp->amq_mount_info_list_len, ~0, sizeof(amq_mount_info), xdr_amq_mount_info)) {
149 		return (FALSE);
150 	}
151 	return (TRUE);
152 }
153 
154 
155 
156 bool_t
157 xdr_amq_mount_tree_list(xdrs, objp)
158 	XDR *xdrs;
159 	amq_mount_tree_list *objp;
160 {
161 	if (!xdr_array(xdrs, (char **)&objp->amq_mount_tree_list_val, (u_int *)&objp->amq_mount_tree_list_len, ~0, sizeof(amq_mount_tree_p), xdr_amq_mount_tree_p)) {
162 		return (FALSE);
163 	}
164 	return (TRUE);
165 }
166 
167 
168 
169 
170 bool_t
171 xdr_amq_mount_stats(xdrs, objp)
172 	XDR *xdrs;
173 	amq_mount_stats *objp;
174 {
175 	if (!xdr_int(xdrs, &objp->as_drops)) {
176 		return (FALSE);
177 	}
178 	if (!xdr_int(xdrs, &objp->as_stale)) {
179 		return (FALSE);
180 	}
181 	if (!xdr_int(xdrs, &objp->as_mok)) {
182 		return (FALSE);
183 	}
184 	if (!xdr_int(xdrs, &objp->as_merr)) {
185 		return (FALSE);
186 	}
187 	if (!xdr_int(xdrs, &objp->as_uerr)) {
188 		return (FALSE);
189 	}
190 	return (TRUE);
191 }
192 
193 
194 
195 
196 bool_t
197 xdr_amq_opt(xdrs, objp)
198 	XDR *xdrs;
199 	amq_opt *objp;
200 {
201 	if (!xdr_enum(xdrs, (enum_t *)objp)) {
202 		return (FALSE);
203 	}
204 	return (TRUE);
205 }
206 
207 
208 
209 
210 bool_t
211 xdr_amq_setopt(xdrs, objp)
212 	XDR *xdrs;
213 	amq_setopt *objp;
214 {
215 	if (!xdr_amq_opt(xdrs, &objp->as_opt)) {
216 		return (FALSE);
217 	}
218 	if (!xdr_amq_string(xdrs, &objp->as_str)) {
219 		return (FALSE);
220 	}
221 	return (TRUE);
222 }
223 
224 
225