1 /*
2  * Please do not edit this file.
3  * It was generated using rpcgen.
4  */
5 
6 #include "db_dictionary_c.h"
7 
8 #ifndef _KERNEL
9 #include <stdlib.h>
10 #endif /* !_KERNEL */
11 
12 #include "xdr_nullptr.h"
13 
14 bool_t
15 xdr_db_table_desc(xdrs, objp)
16 	XDR *xdrs;
17 	db_table_desc *objp;
18 {
19 
20 	rpc_inline_t *buf;
21 
22 	db_table_desc *tmp_db_table_desc;
23 	bool_t more_data = TRUE;
24 	bool_t first_objp = TRUE;
25 
26 
27 	if (xdrs->x_op == XDR_DECODE) {
28 
29 		while (more_data) {
30 
31 			void bzero();
32 
33 			if (!xdr_string(xdrs, &objp->table_name, NIS_MAXNAMELEN))
34 				return (FALSE);
35 			if (!xdr_u_long(xdrs, &objp->hashval))
36 				return (FALSE);
37 			if (!xdr_pointer(xdrs, (char **)&objp->scheme, sizeof (db_scheme), (xdrproc_t)xdr_db_scheme))
38 				return (FALSE);
39 			if (!xdr_nullptr(xdrs, &objp->database))
40 				return (FALSE);
41 			if (!xdr_bool(xdrs, &more_data))
42 				return (FALSE);
43 
44 			if (!more_data) {
45 				objp->next = NULL;
46 				break;
47 			}
48 
49 			if (objp->next == NULL) {
50 				objp->next = (db_table_desc *)
51 					mem_alloc(sizeof (db_table_desc));
52 				if (objp->next == NULL)
53 					return (FALSE);
54 				bzero(objp->next, sizeof (db_table_desc));
55 			}
56 			objp = objp->next;
57 		}
58 
59 	} else if (xdrs->x_op == XDR_ENCODE) {
60 
61 		while (more_data) {
62 			if (!xdr_string(xdrs, &objp->table_name, NIS_MAXNAMELEN))
63 				return (FALSE);
64 			if (!xdr_u_long(xdrs, &objp->hashval))
65 				return (FALSE);
66 			if (!xdr_pointer(xdrs, (char **)&objp->scheme, sizeof (db_scheme), (xdrproc_t)xdr_db_scheme))
67 				return (FALSE);
68 			if (!xdr_nullptr(xdrs, &objp->database))
69 				return (FALSE);
70 			objp = objp->next;
71 			if (objp == NULL)
72 				more_data = FALSE;
73 			if (!xdr_bool(xdrs, &more_data))
74 				return (FALSE);
75 		}
76 
77 	} else {
78 
79 		while (more_data) {
80 			if (!xdr_string(xdrs, &objp->table_name, NIS_MAXNAMELEN))
81 				return (FALSE);
82 			if (!xdr_u_long(xdrs, &objp->hashval))
83 				return (FALSE);
84 			if (!xdr_pointer(xdrs, (char **)&objp->scheme, sizeof (db_scheme), (xdrproc_t)xdr_db_scheme))
85 				return (FALSE);
86 			if (!xdr_nullptr(xdrs, &objp->database))
87 				return (FALSE);
88 			tmp_db_table_desc = objp;
89 			objp = objp->next;
90 			if (objp == NULL)
91 				more_data = FALSE;
92 			if (!first_objp)
93 				mem_free(tmp_db_table_desc, sizeof (db_table_desc));
94 			else
95 				first_objp = FALSE;
96 		}
97 
98 	}
99 	return (TRUE);
100 }
101 
102 bool_t
103 xdr_db_table_desc_p(xdrs, objp)
104 	XDR *xdrs;
105 	db_table_desc_p *objp;
106 {
107 
108 	rpc_inline_t *buf;
109 
110 	if (!xdr_pointer(xdrs, (char **)objp, sizeof (db_table_desc), (xdrproc_t)xdr_db_table_desc))
111 		return (FALSE);
112 	return (TRUE);
113 }
114 
115 bool_t
116 xdr_db_dict_desc_p(xdrs, objp)
117 	XDR *xdrs;
118 	db_dict_desc_p *objp;
119 {
120 
121 	rpc_inline_t *buf;
122 
123 	if (!xdr_pointer(xdrs, (char **)objp, sizeof (struct db_dict_desc), (xdrproc_t)xdr_db_dict_desc))
124 		return (FALSE);
125 	return (TRUE);
126 }
127