s3-libads: Use a reducing page size to try and cope with a slow LDAP server
[Samba.git] / librpc / gen_ndr / ndr_epmapper.c
blob389870084c2dc4ddf58cd1b43eea170913092167
1 /* parser auto-generated by pidl */
3 #include "includes.h"
4 #include "../librpc/gen_ndr/ndr_epmapper.h"
6 #include "librpc/gen_ndr/ndr_misc.h"
7 static enum ndr_err_code ndr_push_epm_protocol(struct ndr_push *ndr, int ndr_flags, enum epm_protocol r)
9 NDR_CHECK(ndr_push_enum_uint8(ndr, NDR_SCALARS, r));
10 return NDR_ERR_SUCCESS;
13 static enum ndr_err_code ndr_pull_epm_protocol(struct ndr_pull *ndr, int ndr_flags, enum epm_protocol *r)
15 uint8_t v;
16 NDR_CHECK(ndr_pull_enum_uint8(ndr, NDR_SCALARS, &v));
17 *r = v;
18 return NDR_ERR_SUCCESS;
21 _PUBLIC_ void ndr_print_epm_protocol(struct ndr_print *ndr, const char *name, enum epm_protocol r)
23 const char *val = NULL;
25 switch (r) {
26 case EPM_PROTOCOL_DNET_NSP: val = "EPM_PROTOCOL_DNET_NSP"; break;
27 case EPM_PROTOCOL_OSI_TP4: val = "EPM_PROTOCOL_OSI_TP4"; break;
28 case EPM_PROTOCOL_OSI_CLNS: val = "EPM_PROTOCOL_OSI_CLNS"; break;
29 case EPM_PROTOCOL_TCP: val = "EPM_PROTOCOL_TCP"; break;
30 case EPM_PROTOCOL_UDP: val = "EPM_PROTOCOL_UDP"; break;
31 case EPM_PROTOCOL_IP: val = "EPM_PROTOCOL_IP"; break;
32 case EPM_PROTOCOL_NCADG: val = "EPM_PROTOCOL_NCADG"; break;
33 case EPM_PROTOCOL_NCACN: val = "EPM_PROTOCOL_NCACN"; break;
34 case EPM_PROTOCOL_NCALRPC: val = "EPM_PROTOCOL_NCALRPC"; break;
35 case EPM_PROTOCOL_UUID: val = "EPM_PROTOCOL_UUID"; break;
36 case EPM_PROTOCOL_IPX: val = "EPM_PROTOCOL_IPX"; break;
37 case EPM_PROTOCOL_SMB: val = "EPM_PROTOCOL_SMB"; break;
38 case EPM_PROTOCOL_NAMED_PIPE: val = "EPM_PROTOCOL_NAMED_PIPE"; break;
39 case EPM_PROTOCOL_NETBIOS: val = "EPM_PROTOCOL_NETBIOS"; break;
40 case EPM_PROTOCOL_NETBEUI: val = "EPM_PROTOCOL_NETBEUI"; break;
41 case EPM_PROTOCOL_SPX: val = "EPM_PROTOCOL_SPX"; break;
42 case EPM_PROTOCOL_NB_IPX: val = "EPM_PROTOCOL_NB_IPX"; break;
43 case EPM_PROTOCOL_DSP: val = "EPM_PROTOCOL_DSP"; break;
44 case EPM_PROTOCOL_DDP: val = "EPM_PROTOCOL_DDP"; break;
45 case EPM_PROTOCOL_APPLETALK: val = "EPM_PROTOCOL_APPLETALK"; break;
46 case EPM_PROTOCOL_VINES_SPP: val = "EPM_PROTOCOL_VINES_SPP"; break;
47 case EPM_PROTOCOL_VINES_IPC: val = "EPM_PROTOCOL_VINES_IPC"; break;
48 case EPM_PROTOCOL_STREETTALK: val = "EPM_PROTOCOL_STREETTALK"; break;
49 case EPM_PROTOCOL_HTTP: val = "EPM_PROTOCOL_HTTP"; break;
50 case EPM_PROTOCOL_UNIX_DS: val = "EPM_PROTOCOL_UNIX_DS"; break;
51 case EPM_PROTOCOL_NULL: val = "EPM_PROTOCOL_NULL"; break;
53 ndr_print_enum(ndr, name, "ENUM", val, r);
56 static enum ndr_err_code ndr_push_epm_rhs_dnet_nsp(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_dnet_nsp *r)
58 if (ndr_flags & NDR_SCALARS) {
59 NDR_CHECK(ndr_push_align(ndr, 1));
60 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
62 if (ndr_flags & NDR_BUFFERS) {
64 return NDR_ERR_SUCCESS;
67 static enum ndr_err_code ndr_pull_epm_rhs_dnet_nsp(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_dnet_nsp *r)
69 if (ndr_flags & NDR_SCALARS) {
70 NDR_CHECK(ndr_pull_align(ndr, 1));
71 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
73 if (ndr_flags & NDR_BUFFERS) {
75 return NDR_ERR_SUCCESS;
78 _PUBLIC_ void ndr_print_epm_rhs_dnet_nsp(struct ndr_print *ndr, const char *name, const struct epm_rhs_dnet_nsp *r)
80 ndr_print_struct(ndr, name, "epm_rhs_dnet_nsp");
81 ndr->depth++;
82 ndr->depth--;
85 static enum ndr_err_code ndr_push_epm_rhs_osi_tp4(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_osi_tp4 *r)
87 if (ndr_flags & NDR_SCALARS) {
88 NDR_CHECK(ndr_push_align(ndr, 1));
89 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
91 if (ndr_flags & NDR_BUFFERS) {
93 return NDR_ERR_SUCCESS;
96 static enum ndr_err_code ndr_pull_epm_rhs_osi_tp4(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_osi_tp4 *r)
98 if (ndr_flags & NDR_SCALARS) {
99 NDR_CHECK(ndr_pull_align(ndr, 1));
100 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
102 if (ndr_flags & NDR_BUFFERS) {
104 return NDR_ERR_SUCCESS;
107 _PUBLIC_ void ndr_print_epm_rhs_osi_tp4(struct ndr_print *ndr, const char *name, const struct epm_rhs_osi_tp4 *r)
109 ndr_print_struct(ndr, name, "epm_rhs_osi_tp4");
110 ndr->depth++;
111 ndr->depth--;
114 static enum ndr_err_code ndr_push_epm_rhs_osi_clns(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_osi_clns *r)
116 if (ndr_flags & NDR_SCALARS) {
117 NDR_CHECK(ndr_push_align(ndr, 1));
118 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
120 if (ndr_flags & NDR_BUFFERS) {
122 return NDR_ERR_SUCCESS;
125 static enum ndr_err_code ndr_pull_epm_rhs_osi_clns(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_osi_clns *r)
127 if (ndr_flags & NDR_SCALARS) {
128 NDR_CHECK(ndr_pull_align(ndr, 1));
129 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
131 if (ndr_flags & NDR_BUFFERS) {
133 return NDR_ERR_SUCCESS;
136 _PUBLIC_ void ndr_print_epm_rhs_osi_clns(struct ndr_print *ndr, const char *name, const struct epm_rhs_osi_clns *r)
138 ndr_print_struct(ndr, name, "epm_rhs_osi_clns");
139 ndr->depth++;
140 ndr->depth--;
143 static enum ndr_err_code ndr_push_epm_rhs_udp(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_udp *r)
145 if (ndr_flags & NDR_SCALARS) {
146 NDR_CHECK(ndr_push_align(ndr, 2));
147 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
148 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
150 if (ndr_flags & NDR_BUFFERS) {
152 return NDR_ERR_SUCCESS;
155 static enum ndr_err_code ndr_pull_epm_rhs_udp(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_udp *r)
157 if (ndr_flags & NDR_SCALARS) {
158 NDR_CHECK(ndr_pull_align(ndr, 2));
159 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
160 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
162 if (ndr_flags & NDR_BUFFERS) {
164 return NDR_ERR_SUCCESS;
167 _PUBLIC_ void ndr_print_epm_rhs_udp(struct ndr_print *ndr, const char *name, const struct epm_rhs_udp *r)
169 ndr_print_struct(ndr, name, "epm_rhs_udp");
170 ndr->depth++;
171 ndr_print_uint16(ndr, "port", r->port);
172 ndr->depth--;
175 static enum ndr_err_code ndr_push_epm_rhs_tcp(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_tcp *r)
177 if (ndr_flags & NDR_SCALARS) {
178 NDR_CHECK(ndr_push_align(ndr, 2));
179 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
180 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
182 if (ndr_flags & NDR_BUFFERS) {
184 return NDR_ERR_SUCCESS;
187 static enum ndr_err_code ndr_pull_epm_rhs_tcp(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_tcp *r)
189 if (ndr_flags & NDR_SCALARS) {
190 NDR_CHECK(ndr_pull_align(ndr, 2));
191 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
192 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
194 if (ndr_flags & NDR_BUFFERS) {
196 return NDR_ERR_SUCCESS;
199 _PUBLIC_ void ndr_print_epm_rhs_tcp(struct ndr_print *ndr, const char *name, const struct epm_rhs_tcp *r)
201 ndr_print_struct(ndr, name, "epm_rhs_tcp");
202 ndr->depth++;
203 ndr_print_uint16(ndr, "port", r->port);
204 ndr->depth--;
207 static enum ndr_err_code ndr_push_epm_rhs_ip(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ip *r)
209 if (ndr_flags & NDR_SCALARS) {
210 NDR_CHECK(ndr_push_align(ndr, 4));
211 NDR_CHECK(ndr_push_ipv4address(ndr, NDR_SCALARS, r->ipaddr));
212 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
214 if (ndr_flags & NDR_BUFFERS) {
216 return NDR_ERR_SUCCESS;
219 static enum ndr_err_code ndr_pull_epm_rhs_ip(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ip *r)
221 if (ndr_flags & NDR_SCALARS) {
222 NDR_CHECK(ndr_pull_align(ndr, 4));
223 NDR_CHECK(ndr_pull_ipv4address(ndr, NDR_SCALARS, &r->ipaddr));
224 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
226 if (ndr_flags & NDR_BUFFERS) {
228 return NDR_ERR_SUCCESS;
231 _PUBLIC_ void ndr_print_epm_rhs_ip(struct ndr_print *ndr, const char *name, const struct epm_rhs_ip *r)
233 ndr_print_struct(ndr, name, "epm_rhs_ip");
234 ndr->depth++;
235 ndr_print_ipv4address(ndr, "ipaddr", r->ipaddr);
236 ndr->depth--;
239 static enum ndr_err_code ndr_push_epm_rhs_ncadg(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ncadg *r)
241 if (ndr_flags & NDR_SCALARS) {
242 NDR_CHECK(ndr_push_align(ndr, 2));
243 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->minor_version));
244 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
246 if (ndr_flags & NDR_BUFFERS) {
248 return NDR_ERR_SUCCESS;
251 static enum ndr_err_code ndr_pull_epm_rhs_ncadg(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ncadg *r)
253 if (ndr_flags & NDR_SCALARS) {
254 NDR_CHECK(ndr_pull_align(ndr, 2));
255 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->minor_version));
256 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
258 if (ndr_flags & NDR_BUFFERS) {
260 return NDR_ERR_SUCCESS;
263 _PUBLIC_ void ndr_print_epm_rhs_ncadg(struct ndr_print *ndr, const char *name, const struct epm_rhs_ncadg *r)
265 ndr_print_struct(ndr, name, "epm_rhs_ncadg");
266 ndr->depth++;
267 ndr_print_uint16(ndr, "minor_version", r->minor_version);
268 ndr->depth--;
271 static enum ndr_err_code ndr_push_epm_rhs_ncacn(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ncacn *r)
273 if (ndr_flags & NDR_SCALARS) {
274 NDR_CHECK(ndr_push_align(ndr, 2));
275 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->minor_version));
276 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
278 if (ndr_flags & NDR_BUFFERS) {
280 return NDR_ERR_SUCCESS;
283 static enum ndr_err_code ndr_pull_epm_rhs_ncacn(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ncacn *r)
285 if (ndr_flags & NDR_SCALARS) {
286 NDR_CHECK(ndr_pull_align(ndr, 2));
287 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->minor_version));
288 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
290 if (ndr_flags & NDR_BUFFERS) {
292 return NDR_ERR_SUCCESS;
295 _PUBLIC_ void ndr_print_epm_rhs_ncacn(struct ndr_print *ndr, const char *name, const struct epm_rhs_ncacn *r)
297 ndr_print_struct(ndr, name, "epm_rhs_ncacn");
298 ndr->depth++;
299 ndr_print_uint16(ndr, "minor_version", r->minor_version);
300 ndr->depth--;
303 static enum ndr_err_code ndr_push_epm_rhs_uuid(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_uuid *r)
305 if (ndr_flags & NDR_SCALARS) {
306 NDR_CHECK(ndr_push_align(ndr, 4));
308 uint32_t _flags_save_DATA_BLOB = ndr->flags;
309 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
310 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->unknown));
311 ndr->flags = _flags_save_DATA_BLOB;
313 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
315 if (ndr_flags & NDR_BUFFERS) {
317 return NDR_ERR_SUCCESS;
320 static enum ndr_err_code ndr_pull_epm_rhs_uuid(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_uuid *r)
322 if (ndr_flags & NDR_SCALARS) {
323 NDR_CHECK(ndr_pull_align(ndr, 4));
325 uint32_t _flags_save_DATA_BLOB = ndr->flags;
326 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
327 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->unknown));
328 ndr->flags = _flags_save_DATA_BLOB;
330 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
332 if (ndr_flags & NDR_BUFFERS) {
334 return NDR_ERR_SUCCESS;
337 _PUBLIC_ void ndr_print_epm_rhs_uuid(struct ndr_print *ndr, const char *name, const struct epm_rhs_uuid *r)
339 ndr_print_struct(ndr, name, "epm_rhs_uuid");
340 ndr->depth++;
341 ndr_print_DATA_BLOB(ndr, "unknown", r->unknown);
342 ndr->depth--;
345 static enum ndr_err_code ndr_push_epm_rhs_ipx(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ipx *r)
347 if (ndr_flags & NDR_SCALARS) {
348 NDR_CHECK(ndr_push_align(ndr, 1));
349 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
351 if (ndr_flags & NDR_BUFFERS) {
353 return NDR_ERR_SUCCESS;
356 static enum ndr_err_code ndr_pull_epm_rhs_ipx(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ipx *r)
358 if (ndr_flags & NDR_SCALARS) {
359 NDR_CHECK(ndr_pull_align(ndr, 1));
360 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
362 if (ndr_flags & NDR_BUFFERS) {
364 return NDR_ERR_SUCCESS;
367 _PUBLIC_ void ndr_print_epm_rhs_ipx(struct ndr_print *ndr, const char *name, const struct epm_rhs_ipx *r)
369 ndr_print_struct(ndr, name, "epm_rhs_ipx");
370 ndr->depth++;
371 ndr->depth--;
374 static enum ndr_err_code ndr_push_epm_rhs_smb(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_smb *r)
376 if (ndr_flags & NDR_SCALARS) {
377 NDR_CHECK(ndr_push_align(ndr, 4));
379 uint32_t _flags_save_string = ndr->flags;
380 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
381 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unc));
382 ndr->flags = _flags_save_string;
384 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
386 if (ndr_flags & NDR_BUFFERS) {
388 return NDR_ERR_SUCCESS;
391 static enum ndr_err_code ndr_pull_epm_rhs_smb(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_smb *r)
393 if (ndr_flags & NDR_SCALARS) {
394 NDR_CHECK(ndr_pull_align(ndr, 4));
396 uint32_t _flags_save_string = ndr->flags;
397 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
398 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unc));
399 ndr->flags = _flags_save_string;
401 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
403 if (ndr_flags & NDR_BUFFERS) {
405 return NDR_ERR_SUCCESS;
408 _PUBLIC_ void ndr_print_epm_rhs_smb(struct ndr_print *ndr, const char *name, const struct epm_rhs_smb *r)
410 ndr_print_struct(ndr, name, "epm_rhs_smb");
411 ndr->depth++;
412 ndr_print_string(ndr, "unc", r->unc);
413 ndr->depth--;
416 static enum ndr_err_code ndr_push_epm_rhs_named_pipe(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_named_pipe *r)
418 if (ndr_flags & NDR_SCALARS) {
419 NDR_CHECK(ndr_push_align(ndr, 4));
421 uint32_t _flags_save_string = ndr->flags;
422 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
423 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->path));
424 ndr->flags = _flags_save_string;
426 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
428 if (ndr_flags & NDR_BUFFERS) {
430 return NDR_ERR_SUCCESS;
433 static enum ndr_err_code ndr_pull_epm_rhs_named_pipe(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_named_pipe *r)
435 if (ndr_flags & NDR_SCALARS) {
436 NDR_CHECK(ndr_pull_align(ndr, 4));
438 uint32_t _flags_save_string = ndr->flags;
439 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
440 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->path));
441 ndr->flags = _flags_save_string;
443 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
445 if (ndr_flags & NDR_BUFFERS) {
447 return NDR_ERR_SUCCESS;
450 _PUBLIC_ void ndr_print_epm_rhs_named_pipe(struct ndr_print *ndr, const char *name, const struct epm_rhs_named_pipe *r)
452 ndr_print_struct(ndr, name, "epm_rhs_named_pipe");
453 ndr->depth++;
454 ndr_print_string(ndr, "path", r->path);
455 ndr->depth--;
458 static enum ndr_err_code ndr_push_epm_rhs_netbios(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_netbios *r)
460 if (ndr_flags & NDR_SCALARS) {
461 NDR_CHECK(ndr_push_align(ndr, 4));
463 uint32_t _flags_save_string = ndr->flags;
464 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
465 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->name));
466 ndr->flags = _flags_save_string;
468 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
470 if (ndr_flags & NDR_BUFFERS) {
472 return NDR_ERR_SUCCESS;
475 static enum ndr_err_code ndr_pull_epm_rhs_netbios(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_netbios *r)
477 if (ndr_flags & NDR_SCALARS) {
478 NDR_CHECK(ndr_pull_align(ndr, 4));
480 uint32_t _flags_save_string = ndr->flags;
481 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
482 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->name));
483 ndr->flags = _flags_save_string;
485 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
487 if (ndr_flags & NDR_BUFFERS) {
489 return NDR_ERR_SUCCESS;
492 _PUBLIC_ void ndr_print_epm_rhs_netbios(struct ndr_print *ndr, const char *name, const struct epm_rhs_netbios *r)
494 ndr_print_struct(ndr, name, "epm_rhs_netbios");
495 ndr->depth++;
496 ndr_print_string(ndr, "name", r->name);
497 ndr->depth--;
500 static enum ndr_err_code ndr_push_epm_rhs_netbeui(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_netbeui *r)
502 if (ndr_flags & NDR_SCALARS) {
503 NDR_CHECK(ndr_push_align(ndr, 1));
504 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
506 if (ndr_flags & NDR_BUFFERS) {
508 return NDR_ERR_SUCCESS;
511 static enum ndr_err_code ndr_pull_epm_rhs_netbeui(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_netbeui *r)
513 if (ndr_flags & NDR_SCALARS) {
514 NDR_CHECK(ndr_pull_align(ndr, 1));
515 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
517 if (ndr_flags & NDR_BUFFERS) {
519 return NDR_ERR_SUCCESS;
522 _PUBLIC_ void ndr_print_epm_rhs_netbeui(struct ndr_print *ndr, const char *name, const struct epm_rhs_netbeui *r)
524 ndr_print_struct(ndr, name, "epm_rhs_netbeui");
525 ndr->depth++;
526 ndr->depth--;
529 static enum ndr_err_code ndr_push_epm_rhs_spx(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_spx *r)
531 if (ndr_flags & NDR_SCALARS) {
532 NDR_CHECK(ndr_push_align(ndr, 1));
533 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
535 if (ndr_flags & NDR_BUFFERS) {
537 return NDR_ERR_SUCCESS;
540 static enum ndr_err_code ndr_pull_epm_rhs_spx(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_spx *r)
542 if (ndr_flags & NDR_SCALARS) {
543 NDR_CHECK(ndr_pull_align(ndr, 1));
544 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
546 if (ndr_flags & NDR_BUFFERS) {
548 return NDR_ERR_SUCCESS;
551 _PUBLIC_ void ndr_print_epm_rhs_spx(struct ndr_print *ndr, const char *name, const struct epm_rhs_spx *r)
553 ndr_print_struct(ndr, name, "epm_rhs_spx");
554 ndr->depth++;
555 ndr->depth--;
558 static enum ndr_err_code ndr_push_epm_rhs_nb_ipx(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_nb_ipx *r)
560 if (ndr_flags & NDR_SCALARS) {
561 NDR_CHECK(ndr_push_align(ndr, 1));
562 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
564 if (ndr_flags & NDR_BUFFERS) {
566 return NDR_ERR_SUCCESS;
569 static enum ndr_err_code ndr_pull_epm_rhs_nb_ipx(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_nb_ipx *r)
571 if (ndr_flags & NDR_SCALARS) {
572 NDR_CHECK(ndr_pull_align(ndr, 1));
573 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
575 if (ndr_flags & NDR_BUFFERS) {
577 return NDR_ERR_SUCCESS;
580 _PUBLIC_ void ndr_print_epm_rhs_nb_ipx(struct ndr_print *ndr, const char *name, const struct epm_rhs_nb_ipx *r)
582 ndr_print_struct(ndr, name, "epm_rhs_nb_ipx");
583 ndr->depth++;
584 ndr->depth--;
587 static enum ndr_err_code ndr_push_epm_rhs_http(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_http *r)
589 if (ndr_flags & NDR_SCALARS) {
590 NDR_CHECK(ndr_push_align(ndr, 2));
591 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
592 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
594 if (ndr_flags & NDR_BUFFERS) {
596 return NDR_ERR_SUCCESS;
599 static enum ndr_err_code ndr_pull_epm_rhs_http(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_http *r)
601 if (ndr_flags & NDR_SCALARS) {
602 NDR_CHECK(ndr_pull_align(ndr, 2));
603 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
604 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
606 if (ndr_flags & NDR_BUFFERS) {
608 return NDR_ERR_SUCCESS;
611 _PUBLIC_ void ndr_print_epm_rhs_http(struct ndr_print *ndr, const char *name, const struct epm_rhs_http *r)
613 ndr_print_struct(ndr, name, "epm_rhs_http");
614 ndr->depth++;
615 ndr_print_uint16(ndr, "port", r->port);
616 ndr->depth--;
619 static enum ndr_err_code ndr_push_epm_rhs_unix_ds(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_unix_ds *r)
621 if (ndr_flags & NDR_SCALARS) {
622 NDR_CHECK(ndr_push_align(ndr, 4));
624 uint32_t _flags_save_string = ndr->flags;
625 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
626 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->path));
627 ndr->flags = _flags_save_string;
629 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
631 if (ndr_flags & NDR_BUFFERS) {
633 return NDR_ERR_SUCCESS;
636 static enum ndr_err_code ndr_pull_epm_rhs_unix_ds(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_unix_ds *r)
638 if (ndr_flags & NDR_SCALARS) {
639 NDR_CHECK(ndr_pull_align(ndr, 4));
641 uint32_t _flags_save_string = ndr->flags;
642 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
643 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->path));
644 ndr->flags = _flags_save_string;
646 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
648 if (ndr_flags & NDR_BUFFERS) {
650 return NDR_ERR_SUCCESS;
653 _PUBLIC_ void ndr_print_epm_rhs_unix_ds(struct ndr_print *ndr, const char *name, const struct epm_rhs_unix_ds *r)
655 ndr_print_struct(ndr, name, "epm_rhs_unix_ds");
656 ndr->depth++;
657 ndr_print_string(ndr, "path", r->path);
658 ndr->depth--;
661 static enum ndr_err_code ndr_push_epm_rhs_null(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_null *r)
663 if (ndr_flags & NDR_SCALARS) {
664 NDR_CHECK(ndr_push_align(ndr, 1));
665 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
667 if (ndr_flags & NDR_BUFFERS) {
669 return NDR_ERR_SUCCESS;
672 static enum ndr_err_code ndr_pull_epm_rhs_null(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_null *r)
674 if (ndr_flags & NDR_SCALARS) {
675 NDR_CHECK(ndr_pull_align(ndr, 1));
676 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
678 if (ndr_flags & NDR_BUFFERS) {
680 return NDR_ERR_SUCCESS;
683 _PUBLIC_ void ndr_print_epm_rhs_null(struct ndr_print *ndr, const char *name, const struct epm_rhs_null *r)
685 ndr_print_struct(ndr, name, "epm_rhs_null");
686 ndr->depth++;
687 ndr->depth--;
690 static enum ndr_err_code ndr_push_epm_rhs_ncalrpc(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ncalrpc *r)
692 if (ndr_flags & NDR_SCALARS) {
693 NDR_CHECK(ndr_push_align(ndr, 2));
694 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->minor_version));
695 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
697 if (ndr_flags & NDR_BUFFERS) {
699 return NDR_ERR_SUCCESS;
702 static enum ndr_err_code ndr_pull_epm_rhs_ncalrpc(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ncalrpc *r)
704 if (ndr_flags & NDR_SCALARS) {
705 NDR_CHECK(ndr_pull_align(ndr, 2));
706 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->minor_version));
707 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
709 if (ndr_flags & NDR_BUFFERS) {
711 return NDR_ERR_SUCCESS;
714 _PUBLIC_ void ndr_print_epm_rhs_ncalrpc(struct ndr_print *ndr, const char *name, const struct epm_rhs_ncalrpc *r)
716 ndr_print_struct(ndr, name, "epm_rhs_ncalrpc");
717 ndr->depth++;
718 ndr_print_uint16(ndr, "minor_version", r->minor_version);
719 ndr->depth--;
722 static enum ndr_err_code ndr_push_epm_rhs_appletalk(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_appletalk *r)
724 if (ndr_flags & NDR_SCALARS) {
725 NDR_CHECK(ndr_push_align(ndr, 1));
726 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
728 if (ndr_flags & NDR_BUFFERS) {
730 return NDR_ERR_SUCCESS;
733 static enum ndr_err_code ndr_pull_epm_rhs_appletalk(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_appletalk *r)
735 if (ndr_flags & NDR_SCALARS) {
736 NDR_CHECK(ndr_pull_align(ndr, 1));
737 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
739 if (ndr_flags & NDR_BUFFERS) {
741 return NDR_ERR_SUCCESS;
744 _PUBLIC_ void ndr_print_epm_rhs_appletalk(struct ndr_print *ndr, const char *name, const struct epm_rhs_appletalk *r)
746 ndr_print_struct(ndr, name, "epm_rhs_appletalk");
747 ndr->depth++;
748 ndr->depth--;
751 static enum ndr_err_code ndr_push_epm_rhs_atalk_stream(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_atalk_stream *r)
753 if (ndr_flags & NDR_SCALARS) {
754 NDR_CHECK(ndr_push_align(ndr, 1));
755 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
757 if (ndr_flags & NDR_BUFFERS) {
759 return NDR_ERR_SUCCESS;
762 static enum ndr_err_code ndr_pull_epm_rhs_atalk_stream(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_atalk_stream *r)
764 if (ndr_flags & NDR_SCALARS) {
765 NDR_CHECK(ndr_pull_align(ndr, 1));
766 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
768 if (ndr_flags & NDR_BUFFERS) {
770 return NDR_ERR_SUCCESS;
773 _PUBLIC_ void ndr_print_epm_rhs_atalk_stream(struct ndr_print *ndr, const char *name, const struct epm_rhs_atalk_stream *r)
775 ndr_print_struct(ndr, name, "epm_rhs_atalk_stream");
776 ndr->depth++;
777 ndr->depth--;
780 static enum ndr_err_code ndr_push_epm_rhs_atalk_datagram(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_atalk_datagram *r)
782 if (ndr_flags & NDR_SCALARS) {
783 NDR_CHECK(ndr_push_align(ndr, 1));
784 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
786 if (ndr_flags & NDR_BUFFERS) {
788 return NDR_ERR_SUCCESS;
791 static enum ndr_err_code ndr_pull_epm_rhs_atalk_datagram(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_atalk_datagram *r)
793 if (ndr_flags & NDR_SCALARS) {
794 NDR_CHECK(ndr_pull_align(ndr, 1));
795 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
797 if (ndr_flags & NDR_BUFFERS) {
799 return NDR_ERR_SUCCESS;
802 _PUBLIC_ void ndr_print_epm_rhs_atalk_datagram(struct ndr_print *ndr, const char *name, const struct epm_rhs_atalk_datagram *r)
804 ndr_print_struct(ndr, name, "epm_rhs_atalk_datagram");
805 ndr->depth++;
806 ndr->depth--;
809 static enum ndr_err_code ndr_push_epm_rhs_vines_spp(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_vines_spp *r)
811 if (ndr_flags & NDR_SCALARS) {
812 NDR_CHECK(ndr_push_align(ndr, 2));
813 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
814 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
816 if (ndr_flags & NDR_BUFFERS) {
818 return NDR_ERR_SUCCESS;
821 static enum ndr_err_code ndr_pull_epm_rhs_vines_spp(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_vines_spp *r)
823 if (ndr_flags & NDR_SCALARS) {
824 NDR_CHECK(ndr_pull_align(ndr, 2));
825 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
826 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
828 if (ndr_flags & NDR_BUFFERS) {
830 return NDR_ERR_SUCCESS;
833 _PUBLIC_ void ndr_print_epm_rhs_vines_spp(struct ndr_print *ndr, const char *name, const struct epm_rhs_vines_spp *r)
835 ndr_print_struct(ndr, name, "epm_rhs_vines_spp");
836 ndr->depth++;
837 ndr_print_uint16(ndr, "port", r->port);
838 ndr->depth--;
841 static enum ndr_err_code ndr_push_epm_rhs_vines_ipc(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_vines_ipc *r)
843 if (ndr_flags & NDR_SCALARS) {
844 NDR_CHECK(ndr_push_align(ndr, 2));
845 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
846 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
848 if (ndr_flags & NDR_BUFFERS) {
850 return NDR_ERR_SUCCESS;
853 static enum ndr_err_code ndr_pull_epm_rhs_vines_ipc(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_vines_ipc *r)
855 if (ndr_flags & NDR_SCALARS) {
856 NDR_CHECK(ndr_pull_align(ndr, 2));
857 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
858 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
860 if (ndr_flags & NDR_BUFFERS) {
862 return NDR_ERR_SUCCESS;
865 _PUBLIC_ void ndr_print_epm_rhs_vines_ipc(struct ndr_print *ndr, const char *name, const struct epm_rhs_vines_ipc *r)
867 ndr_print_struct(ndr, name, "epm_rhs_vines_ipc");
868 ndr->depth++;
869 ndr_print_uint16(ndr, "port", r->port);
870 ndr->depth--;
873 static enum ndr_err_code ndr_push_epm_rhs_streettalk(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_streettalk *r)
875 if (ndr_flags & NDR_SCALARS) {
876 NDR_CHECK(ndr_push_align(ndr, 4));
878 uint32_t _flags_save_string = ndr->flags;
879 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
880 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->streettalk));
881 ndr->flags = _flags_save_string;
883 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
885 if (ndr_flags & NDR_BUFFERS) {
887 return NDR_ERR_SUCCESS;
890 static enum ndr_err_code ndr_pull_epm_rhs_streettalk(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_streettalk *r)
892 if (ndr_flags & NDR_SCALARS) {
893 NDR_CHECK(ndr_pull_align(ndr, 4));
895 uint32_t _flags_save_string = ndr->flags;
896 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
897 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->streettalk));
898 ndr->flags = _flags_save_string;
900 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
902 if (ndr_flags & NDR_BUFFERS) {
904 return NDR_ERR_SUCCESS;
907 _PUBLIC_ void ndr_print_epm_rhs_streettalk(struct ndr_print *ndr, const char *name, const struct epm_rhs_streettalk *r)
909 ndr_print_struct(ndr, name, "epm_rhs_streettalk");
910 ndr->depth++;
911 ndr_print_string(ndr, "streettalk", r->streettalk);
912 ndr->depth--;
915 static enum ndr_err_code ndr_push_epm_rhs(struct ndr_push *ndr, int ndr_flags, const union epm_rhs *r)
918 uint32_t _flags_save_UNION = ndr->flags;
919 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
920 if (ndr_flags & NDR_SCALARS) {
921 int level = ndr_push_get_switch_value(ndr, r);
922 NDR_CHECK(ndr_push_union_align(ndr, 4));
923 switch (level) {
924 case EPM_PROTOCOL_DNET_NSP: {
925 NDR_CHECK(ndr_push_epm_rhs_dnet_nsp(ndr, NDR_SCALARS, &r->dnet_nsp));
926 break; }
928 case EPM_PROTOCOL_OSI_TP4: {
929 NDR_CHECK(ndr_push_epm_rhs_osi_tp4(ndr, NDR_SCALARS, &r->osi_tp4));
930 break; }
932 case EPM_PROTOCOL_OSI_CLNS: {
933 NDR_CHECK(ndr_push_epm_rhs_osi_clns(ndr, NDR_SCALARS, &r->osi_clns));
934 break; }
936 case EPM_PROTOCOL_TCP: {
937 NDR_CHECK(ndr_push_epm_rhs_tcp(ndr, NDR_SCALARS, &r->tcp));
938 break; }
940 case EPM_PROTOCOL_UDP: {
941 NDR_CHECK(ndr_push_epm_rhs_udp(ndr, NDR_SCALARS, &r->udp));
942 break; }
944 case EPM_PROTOCOL_IP: {
945 NDR_CHECK(ndr_push_epm_rhs_ip(ndr, NDR_SCALARS, &r->ip));
946 break; }
948 case EPM_PROTOCOL_NCADG: {
949 NDR_CHECK(ndr_push_epm_rhs_ncadg(ndr, NDR_SCALARS, &r->ncadg));
950 break; }
952 case EPM_PROTOCOL_NCACN: {
953 NDR_CHECK(ndr_push_epm_rhs_ncacn(ndr, NDR_SCALARS, &r->ncacn));
954 break; }
956 case EPM_PROTOCOL_NCALRPC: {
957 NDR_CHECK(ndr_push_epm_rhs_ncalrpc(ndr, NDR_SCALARS, &r->ncalrpc));
958 break; }
960 case EPM_PROTOCOL_UUID: {
961 NDR_CHECK(ndr_push_epm_rhs_uuid(ndr, NDR_SCALARS, &r->uuid));
962 break; }
964 case EPM_PROTOCOL_IPX: {
965 NDR_CHECK(ndr_push_epm_rhs_ipx(ndr, NDR_SCALARS, &r->ipx));
966 break; }
968 case EPM_PROTOCOL_SMB: {
969 NDR_CHECK(ndr_push_epm_rhs_smb(ndr, NDR_SCALARS, &r->smb));
970 break; }
972 case EPM_PROTOCOL_NAMED_PIPE: {
973 NDR_CHECK(ndr_push_epm_rhs_named_pipe(ndr, NDR_SCALARS, &r->named_pipe));
974 break; }
976 case EPM_PROTOCOL_NETBIOS: {
977 NDR_CHECK(ndr_push_epm_rhs_netbios(ndr, NDR_SCALARS, &r->netbios));
978 break; }
980 case EPM_PROTOCOL_NETBEUI: {
981 NDR_CHECK(ndr_push_epm_rhs_netbeui(ndr, NDR_SCALARS, &r->netbeui));
982 break; }
984 case EPM_PROTOCOL_SPX: {
985 NDR_CHECK(ndr_push_epm_rhs_spx(ndr, NDR_SCALARS, &r->spx));
986 break; }
988 case EPM_PROTOCOL_NB_IPX: {
989 NDR_CHECK(ndr_push_epm_rhs_nb_ipx(ndr, NDR_SCALARS, &r->nb_ipx));
990 break; }
992 case EPM_PROTOCOL_DSP: {
993 NDR_CHECK(ndr_push_epm_rhs_atalk_stream(ndr, NDR_SCALARS, &r->atalk_stream));
994 break; }
996 case EPM_PROTOCOL_DDP: {
997 NDR_CHECK(ndr_push_epm_rhs_atalk_datagram(ndr, NDR_SCALARS, &r->atalk_datagram));
998 break; }
1000 case EPM_PROTOCOL_APPLETALK: {
1001 NDR_CHECK(ndr_push_epm_rhs_appletalk(ndr, NDR_SCALARS, &r->appletalk));
1002 break; }
1004 case EPM_PROTOCOL_VINES_SPP: {
1005 NDR_CHECK(ndr_push_epm_rhs_vines_spp(ndr, NDR_SCALARS, &r->vines_spp));
1006 break; }
1008 case EPM_PROTOCOL_VINES_IPC: {
1009 NDR_CHECK(ndr_push_epm_rhs_vines_ipc(ndr, NDR_SCALARS, &r->vines_ipc));
1010 break; }
1012 case EPM_PROTOCOL_STREETTALK: {
1013 NDR_CHECK(ndr_push_epm_rhs_streettalk(ndr, NDR_SCALARS, &r->streettalk));
1014 break; }
1016 case EPM_PROTOCOL_HTTP: {
1017 NDR_CHECK(ndr_push_epm_rhs_http(ndr, NDR_SCALARS, &r->http));
1018 break; }
1020 case EPM_PROTOCOL_UNIX_DS: {
1021 NDR_CHECK(ndr_push_epm_rhs_unix_ds(ndr, NDR_SCALARS, &r->unix_ds));
1022 break; }
1024 case EPM_PROTOCOL_NULL: {
1025 NDR_CHECK(ndr_push_epm_rhs_null(ndr, NDR_SCALARS, &r->null));
1026 break; }
1028 default: {
1030 uint32_t _flags_save_DATA_BLOB = ndr->flags;
1031 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
1032 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->unknown));
1033 ndr->flags = _flags_save_DATA_BLOB;
1035 break; }
1039 if (ndr_flags & NDR_BUFFERS) {
1040 int level = ndr_push_get_switch_value(ndr, r);
1041 switch (level) {
1042 case EPM_PROTOCOL_DNET_NSP:
1043 break;
1045 case EPM_PROTOCOL_OSI_TP4:
1046 break;
1048 case EPM_PROTOCOL_OSI_CLNS:
1049 break;
1051 case EPM_PROTOCOL_TCP:
1052 break;
1054 case EPM_PROTOCOL_UDP:
1055 break;
1057 case EPM_PROTOCOL_IP:
1058 break;
1060 case EPM_PROTOCOL_NCADG:
1061 break;
1063 case EPM_PROTOCOL_NCACN:
1064 break;
1066 case EPM_PROTOCOL_NCALRPC:
1067 break;
1069 case EPM_PROTOCOL_UUID:
1070 break;
1072 case EPM_PROTOCOL_IPX:
1073 break;
1075 case EPM_PROTOCOL_SMB:
1076 break;
1078 case EPM_PROTOCOL_NAMED_PIPE:
1079 break;
1081 case EPM_PROTOCOL_NETBIOS:
1082 break;
1084 case EPM_PROTOCOL_NETBEUI:
1085 break;
1087 case EPM_PROTOCOL_SPX:
1088 break;
1090 case EPM_PROTOCOL_NB_IPX:
1091 break;
1093 case EPM_PROTOCOL_DSP:
1094 break;
1096 case EPM_PROTOCOL_DDP:
1097 break;
1099 case EPM_PROTOCOL_APPLETALK:
1100 break;
1102 case EPM_PROTOCOL_VINES_SPP:
1103 break;
1105 case EPM_PROTOCOL_VINES_IPC:
1106 break;
1108 case EPM_PROTOCOL_STREETTALK:
1109 break;
1111 case EPM_PROTOCOL_HTTP:
1112 break;
1114 case EPM_PROTOCOL_UNIX_DS:
1115 break;
1117 case EPM_PROTOCOL_NULL:
1118 break;
1120 default:
1121 break;
1125 ndr->flags = _flags_save_UNION;
1127 return NDR_ERR_SUCCESS;
1130 static enum ndr_err_code ndr_pull_epm_rhs(struct ndr_pull *ndr, int ndr_flags, union epm_rhs *r)
1132 int level;
1134 uint32_t _flags_save_UNION = ndr->flags;
1135 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
1136 level = ndr_pull_get_switch_value(ndr, r);
1137 if (ndr_flags & NDR_SCALARS) {
1138 NDR_CHECK(ndr_pull_union_align(ndr, 4));
1139 switch (level) {
1140 case EPM_PROTOCOL_DNET_NSP: {
1141 NDR_CHECK(ndr_pull_epm_rhs_dnet_nsp(ndr, NDR_SCALARS, &r->dnet_nsp));
1142 break; }
1144 case EPM_PROTOCOL_OSI_TP4: {
1145 NDR_CHECK(ndr_pull_epm_rhs_osi_tp4(ndr, NDR_SCALARS, &r->osi_tp4));
1146 break; }
1148 case EPM_PROTOCOL_OSI_CLNS: {
1149 NDR_CHECK(ndr_pull_epm_rhs_osi_clns(ndr, NDR_SCALARS, &r->osi_clns));
1150 break; }
1152 case EPM_PROTOCOL_TCP: {
1153 NDR_CHECK(ndr_pull_epm_rhs_tcp(ndr, NDR_SCALARS, &r->tcp));
1154 break; }
1156 case EPM_PROTOCOL_UDP: {
1157 NDR_CHECK(ndr_pull_epm_rhs_udp(ndr, NDR_SCALARS, &r->udp));
1158 break; }
1160 case EPM_PROTOCOL_IP: {
1161 NDR_CHECK(ndr_pull_epm_rhs_ip(ndr, NDR_SCALARS, &r->ip));
1162 break; }
1164 case EPM_PROTOCOL_NCADG: {
1165 NDR_CHECK(ndr_pull_epm_rhs_ncadg(ndr, NDR_SCALARS, &r->ncadg));
1166 break; }
1168 case EPM_PROTOCOL_NCACN: {
1169 NDR_CHECK(ndr_pull_epm_rhs_ncacn(ndr, NDR_SCALARS, &r->ncacn));
1170 break; }
1172 case EPM_PROTOCOL_NCALRPC: {
1173 NDR_CHECK(ndr_pull_epm_rhs_ncalrpc(ndr, NDR_SCALARS, &r->ncalrpc));
1174 break; }
1176 case EPM_PROTOCOL_UUID: {
1177 NDR_CHECK(ndr_pull_epm_rhs_uuid(ndr, NDR_SCALARS, &r->uuid));
1178 break; }
1180 case EPM_PROTOCOL_IPX: {
1181 NDR_CHECK(ndr_pull_epm_rhs_ipx(ndr, NDR_SCALARS, &r->ipx));
1182 break; }
1184 case EPM_PROTOCOL_SMB: {
1185 NDR_CHECK(ndr_pull_epm_rhs_smb(ndr, NDR_SCALARS, &r->smb));
1186 break; }
1188 case EPM_PROTOCOL_NAMED_PIPE: {
1189 NDR_CHECK(ndr_pull_epm_rhs_named_pipe(ndr, NDR_SCALARS, &r->named_pipe));
1190 break; }
1192 case EPM_PROTOCOL_NETBIOS: {
1193 NDR_CHECK(ndr_pull_epm_rhs_netbios(ndr, NDR_SCALARS, &r->netbios));
1194 break; }
1196 case EPM_PROTOCOL_NETBEUI: {
1197 NDR_CHECK(ndr_pull_epm_rhs_netbeui(ndr, NDR_SCALARS, &r->netbeui));
1198 break; }
1200 case EPM_PROTOCOL_SPX: {
1201 NDR_CHECK(ndr_pull_epm_rhs_spx(ndr, NDR_SCALARS, &r->spx));
1202 break; }
1204 case EPM_PROTOCOL_NB_IPX: {
1205 NDR_CHECK(ndr_pull_epm_rhs_nb_ipx(ndr, NDR_SCALARS, &r->nb_ipx));
1206 break; }
1208 case EPM_PROTOCOL_DSP: {
1209 NDR_CHECK(ndr_pull_epm_rhs_atalk_stream(ndr, NDR_SCALARS, &r->atalk_stream));
1210 break; }
1212 case EPM_PROTOCOL_DDP: {
1213 NDR_CHECK(ndr_pull_epm_rhs_atalk_datagram(ndr, NDR_SCALARS, &r->atalk_datagram));
1214 break; }
1216 case EPM_PROTOCOL_APPLETALK: {
1217 NDR_CHECK(ndr_pull_epm_rhs_appletalk(ndr, NDR_SCALARS, &r->appletalk));
1218 break; }
1220 case EPM_PROTOCOL_VINES_SPP: {
1221 NDR_CHECK(ndr_pull_epm_rhs_vines_spp(ndr, NDR_SCALARS, &r->vines_spp));
1222 break; }
1224 case EPM_PROTOCOL_VINES_IPC: {
1225 NDR_CHECK(ndr_pull_epm_rhs_vines_ipc(ndr, NDR_SCALARS, &r->vines_ipc));
1226 break; }
1228 case EPM_PROTOCOL_STREETTALK: {
1229 NDR_CHECK(ndr_pull_epm_rhs_streettalk(ndr, NDR_SCALARS, &r->streettalk));
1230 break; }
1232 case EPM_PROTOCOL_HTTP: {
1233 NDR_CHECK(ndr_pull_epm_rhs_http(ndr, NDR_SCALARS, &r->http));
1234 break; }
1236 case EPM_PROTOCOL_UNIX_DS: {
1237 NDR_CHECK(ndr_pull_epm_rhs_unix_ds(ndr, NDR_SCALARS, &r->unix_ds));
1238 break; }
1240 case EPM_PROTOCOL_NULL: {
1241 NDR_CHECK(ndr_pull_epm_rhs_null(ndr, NDR_SCALARS, &r->null));
1242 break; }
1244 default: {
1246 uint32_t _flags_save_DATA_BLOB = ndr->flags;
1247 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
1248 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->unknown));
1249 ndr->flags = _flags_save_DATA_BLOB;
1251 break; }
1255 if (ndr_flags & NDR_BUFFERS) {
1256 switch (level) {
1257 case EPM_PROTOCOL_DNET_NSP:
1258 break;
1260 case EPM_PROTOCOL_OSI_TP4:
1261 break;
1263 case EPM_PROTOCOL_OSI_CLNS:
1264 break;
1266 case EPM_PROTOCOL_TCP:
1267 break;
1269 case EPM_PROTOCOL_UDP:
1270 break;
1272 case EPM_PROTOCOL_IP:
1273 break;
1275 case EPM_PROTOCOL_NCADG:
1276 break;
1278 case EPM_PROTOCOL_NCACN:
1279 break;
1281 case EPM_PROTOCOL_NCALRPC:
1282 break;
1284 case EPM_PROTOCOL_UUID:
1285 break;
1287 case EPM_PROTOCOL_IPX:
1288 break;
1290 case EPM_PROTOCOL_SMB:
1291 break;
1293 case EPM_PROTOCOL_NAMED_PIPE:
1294 break;
1296 case EPM_PROTOCOL_NETBIOS:
1297 break;
1299 case EPM_PROTOCOL_NETBEUI:
1300 break;
1302 case EPM_PROTOCOL_SPX:
1303 break;
1305 case EPM_PROTOCOL_NB_IPX:
1306 break;
1308 case EPM_PROTOCOL_DSP:
1309 break;
1311 case EPM_PROTOCOL_DDP:
1312 break;
1314 case EPM_PROTOCOL_APPLETALK:
1315 break;
1317 case EPM_PROTOCOL_VINES_SPP:
1318 break;
1320 case EPM_PROTOCOL_VINES_IPC:
1321 break;
1323 case EPM_PROTOCOL_STREETTALK:
1324 break;
1326 case EPM_PROTOCOL_HTTP:
1327 break;
1329 case EPM_PROTOCOL_UNIX_DS:
1330 break;
1332 case EPM_PROTOCOL_NULL:
1333 break;
1335 default:
1336 break;
1340 ndr->flags = _flags_save_UNION;
1342 return NDR_ERR_SUCCESS;
1345 _PUBLIC_ void ndr_print_epm_rhs(struct ndr_print *ndr, const char *name, const union epm_rhs *r)
1347 int level;
1349 uint32_t _flags_save_UNION = ndr->flags;
1350 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
1351 level = ndr_print_get_switch_value(ndr, r);
1352 ndr_print_union(ndr, name, level, "epm_rhs");
1353 switch (level) {
1354 case EPM_PROTOCOL_DNET_NSP:
1355 ndr_print_epm_rhs_dnet_nsp(ndr, "dnet_nsp", &r->dnet_nsp);
1356 break;
1358 case EPM_PROTOCOL_OSI_TP4:
1359 ndr_print_epm_rhs_osi_tp4(ndr, "osi_tp4", &r->osi_tp4);
1360 break;
1362 case EPM_PROTOCOL_OSI_CLNS:
1363 ndr_print_epm_rhs_osi_clns(ndr, "osi_clns", &r->osi_clns);
1364 break;
1366 case EPM_PROTOCOL_TCP:
1367 ndr_print_epm_rhs_tcp(ndr, "tcp", &r->tcp);
1368 break;
1370 case EPM_PROTOCOL_UDP:
1371 ndr_print_epm_rhs_udp(ndr, "udp", &r->udp);
1372 break;
1374 case EPM_PROTOCOL_IP:
1375 ndr_print_epm_rhs_ip(ndr, "ip", &r->ip);
1376 break;
1378 case EPM_PROTOCOL_NCADG:
1379 ndr_print_epm_rhs_ncadg(ndr, "ncadg", &r->ncadg);
1380 break;
1382 case EPM_PROTOCOL_NCACN:
1383 ndr_print_epm_rhs_ncacn(ndr, "ncacn", &r->ncacn);
1384 break;
1386 case EPM_PROTOCOL_NCALRPC:
1387 ndr_print_epm_rhs_ncalrpc(ndr, "ncalrpc", &r->ncalrpc);
1388 break;
1390 case EPM_PROTOCOL_UUID:
1391 ndr_print_epm_rhs_uuid(ndr, "uuid", &r->uuid);
1392 break;
1394 case EPM_PROTOCOL_IPX:
1395 ndr_print_epm_rhs_ipx(ndr, "ipx", &r->ipx);
1396 break;
1398 case EPM_PROTOCOL_SMB:
1399 ndr_print_epm_rhs_smb(ndr, "smb", &r->smb);
1400 break;
1402 case EPM_PROTOCOL_NAMED_PIPE:
1403 ndr_print_epm_rhs_named_pipe(ndr, "named_pipe", &r->named_pipe);
1404 break;
1406 case EPM_PROTOCOL_NETBIOS:
1407 ndr_print_epm_rhs_netbios(ndr, "netbios", &r->netbios);
1408 break;
1410 case EPM_PROTOCOL_NETBEUI:
1411 ndr_print_epm_rhs_netbeui(ndr, "netbeui", &r->netbeui);
1412 break;
1414 case EPM_PROTOCOL_SPX:
1415 ndr_print_epm_rhs_spx(ndr, "spx", &r->spx);
1416 break;
1418 case EPM_PROTOCOL_NB_IPX:
1419 ndr_print_epm_rhs_nb_ipx(ndr, "nb_ipx", &r->nb_ipx);
1420 break;
1422 case EPM_PROTOCOL_DSP:
1423 ndr_print_epm_rhs_atalk_stream(ndr, "atalk_stream", &r->atalk_stream);
1424 break;
1426 case EPM_PROTOCOL_DDP:
1427 ndr_print_epm_rhs_atalk_datagram(ndr, "atalk_datagram", &r->atalk_datagram);
1428 break;
1430 case EPM_PROTOCOL_APPLETALK:
1431 ndr_print_epm_rhs_appletalk(ndr, "appletalk", &r->appletalk);
1432 break;
1434 case EPM_PROTOCOL_VINES_SPP:
1435 ndr_print_epm_rhs_vines_spp(ndr, "vines_spp", &r->vines_spp);
1436 break;
1438 case EPM_PROTOCOL_VINES_IPC:
1439 ndr_print_epm_rhs_vines_ipc(ndr, "vines_ipc", &r->vines_ipc);
1440 break;
1442 case EPM_PROTOCOL_STREETTALK:
1443 ndr_print_epm_rhs_streettalk(ndr, "streettalk", &r->streettalk);
1444 break;
1446 case EPM_PROTOCOL_HTTP:
1447 ndr_print_epm_rhs_http(ndr, "http", &r->http);
1448 break;
1450 case EPM_PROTOCOL_UNIX_DS:
1451 ndr_print_epm_rhs_unix_ds(ndr, "unix_ds", &r->unix_ds);
1452 break;
1454 case EPM_PROTOCOL_NULL:
1455 ndr_print_epm_rhs_null(ndr, "null", &r->null);
1456 break;
1458 default:
1459 ndr_print_DATA_BLOB(ndr, "unknown", r->unknown);
1460 break;
1463 ndr->flags = _flags_save_UNION;
1467 static enum ndr_err_code ndr_push_epm_lhs(struct ndr_push *ndr, int ndr_flags, const struct epm_lhs *r)
1469 if (ndr_flags & NDR_SCALARS) {
1470 NDR_CHECK(ndr_push_align(ndr, 4));
1471 NDR_CHECK(ndr_push_epm_protocol(ndr, NDR_SCALARS, r->protocol));
1473 uint32_t _flags_save_DATA_BLOB = ndr->flags;
1474 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
1475 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->lhs_data));
1476 ndr->flags = _flags_save_DATA_BLOB;
1478 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1480 if (ndr_flags & NDR_BUFFERS) {
1482 return NDR_ERR_SUCCESS;
1485 static enum ndr_err_code ndr_pull_epm_lhs(struct ndr_pull *ndr, int ndr_flags, struct epm_lhs *r)
1487 if (ndr_flags & NDR_SCALARS) {
1488 NDR_CHECK(ndr_pull_align(ndr, 4));
1489 NDR_CHECK(ndr_pull_epm_protocol(ndr, NDR_SCALARS, &r->protocol));
1491 uint32_t _flags_save_DATA_BLOB = ndr->flags;
1492 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
1493 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->lhs_data));
1494 ndr->flags = _flags_save_DATA_BLOB;
1496 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1498 if (ndr_flags & NDR_BUFFERS) {
1500 return NDR_ERR_SUCCESS;
1503 _PUBLIC_ void ndr_print_epm_lhs(struct ndr_print *ndr, const char *name, const struct epm_lhs *r)
1505 ndr_print_struct(ndr, name, "epm_lhs");
1506 ndr->depth++;
1507 ndr_print_epm_protocol(ndr, "protocol", r->protocol);
1508 ndr_print_DATA_BLOB(ndr, "lhs_data", r->lhs_data);
1509 ndr->depth--;
1512 static enum ndr_err_code ndr_push_epm_floor(struct ndr_push *ndr, int ndr_flags, const struct epm_floor *r)
1514 if (ndr_flags & NDR_SCALARS) {
1515 NDR_CHECK(ndr_push_align(ndr, 1));
1517 struct ndr_push *_ndr_lhs;
1518 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_lhs, 2, -1));
1519 NDR_CHECK(ndr_push_epm_lhs(_ndr_lhs, NDR_SCALARS, &r->lhs));
1520 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_lhs, 2, -1));
1523 struct ndr_push *_ndr_rhs;
1524 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_rhs, 2, -1));
1525 NDR_CHECK(ndr_push_set_switch_value(_ndr_rhs, &r->rhs, r->lhs.protocol));
1526 NDR_CHECK(ndr_push_epm_rhs(_ndr_rhs, NDR_SCALARS, &r->rhs));
1527 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_rhs, 2, -1));
1529 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
1531 if (ndr_flags & NDR_BUFFERS) {
1533 return NDR_ERR_SUCCESS;
1536 static enum ndr_err_code ndr_pull_epm_floor(struct ndr_pull *ndr, int ndr_flags, struct epm_floor *r)
1538 if (ndr_flags & NDR_SCALARS) {
1539 NDR_CHECK(ndr_pull_align(ndr, 1));
1541 struct ndr_pull *_ndr_lhs;
1542 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_lhs, 2, -1));
1543 NDR_CHECK(ndr_pull_epm_lhs(_ndr_lhs, NDR_SCALARS, &r->lhs));
1544 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_lhs, 2, -1));
1547 struct ndr_pull *_ndr_rhs;
1548 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_rhs, 2, -1));
1549 NDR_CHECK(ndr_pull_set_switch_value(_ndr_rhs, &r->rhs, r->lhs.protocol));
1550 NDR_CHECK(ndr_pull_epm_rhs(_ndr_rhs, NDR_SCALARS, &r->rhs));
1551 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_rhs, 2, -1));
1553 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
1555 if (ndr_flags & NDR_BUFFERS) {
1557 return NDR_ERR_SUCCESS;
1560 _PUBLIC_ void ndr_print_epm_floor(struct ndr_print *ndr, const char *name, const struct epm_floor *r)
1562 ndr_print_struct(ndr, name, "epm_floor");
1563 ndr->depth++;
1564 ndr_print_epm_lhs(ndr, "lhs", &r->lhs);
1565 ndr_print_set_switch_value(ndr, &r->rhs, r->lhs.protocol);
1566 ndr_print_epm_rhs(ndr, "rhs", &r->rhs);
1567 ndr->depth--;
1570 static enum ndr_err_code ndr_push_epm_tower(struct ndr_push *ndr, int ndr_flags, const struct epm_tower *r)
1572 uint32_t cntr_floors_0;
1574 uint32_t _flags_save_STRUCT = ndr->flags;
1575 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN);
1576 if (ndr_flags & NDR_SCALARS) {
1577 NDR_CHECK(ndr_push_align(ndr, 2));
1578 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_floors));
1579 for (cntr_floors_0 = 0; cntr_floors_0 < r->num_floors; cntr_floors_0++) {
1580 NDR_CHECK(ndr_push_epm_floor(ndr, NDR_SCALARS, &r->floors[cntr_floors_0]));
1582 NDR_CHECK(ndr_push_trailer_align(ndr, 2));
1584 if (ndr_flags & NDR_BUFFERS) {
1586 ndr->flags = _flags_save_STRUCT;
1588 return NDR_ERR_SUCCESS;
1591 static enum ndr_err_code ndr_pull_epm_tower(struct ndr_pull *ndr, int ndr_flags, struct epm_tower *r)
1593 uint32_t size_floors_0 = 0;
1594 uint32_t cntr_floors_0;
1595 TALLOC_CTX *_mem_save_floors_0;
1597 uint32_t _flags_save_STRUCT = ndr->flags;
1598 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN);
1599 if (ndr_flags & NDR_SCALARS) {
1600 NDR_CHECK(ndr_pull_align(ndr, 2));
1601 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_floors));
1602 size_floors_0 = r->num_floors;
1603 NDR_PULL_ALLOC_N(ndr, r->floors, size_floors_0);
1604 _mem_save_floors_0 = NDR_PULL_GET_MEM_CTX(ndr);
1605 NDR_PULL_SET_MEM_CTX(ndr, r->floors, 0);
1606 for (cntr_floors_0 = 0; cntr_floors_0 < size_floors_0; cntr_floors_0++) {
1607 NDR_CHECK(ndr_pull_epm_floor(ndr, NDR_SCALARS, &r->floors[cntr_floors_0]));
1609 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_floors_0, 0);
1610 NDR_CHECK(ndr_pull_trailer_align(ndr, 2));
1612 if (ndr_flags & NDR_BUFFERS) {
1614 ndr->flags = _flags_save_STRUCT;
1616 return NDR_ERR_SUCCESS;
1619 _PUBLIC_ void ndr_print_epm_tower(struct ndr_print *ndr, const char *name, const struct epm_tower *r)
1621 uint32_t cntr_floors_0;
1622 ndr_print_struct(ndr, name, "epm_tower");
1624 uint32_t _flags_save_STRUCT = ndr->flags;
1625 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN);
1626 ndr->depth++;
1627 ndr_print_uint16(ndr, "num_floors", r->num_floors);
1628 ndr->print(ndr, "%s: ARRAY(%d)", "floors", (int)r->num_floors);
1629 ndr->depth++;
1630 for (cntr_floors_0=0;cntr_floors_0<r->num_floors;cntr_floors_0++) {
1631 char *idx_0=NULL;
1632 if (asprintf(&idx_0, "[%d]", cntr_floors_0) != -1) {
1633 ndr_print_epm_floor(ndr, "floors", &r->floors[cntr_floors_0]);
1634 free(idx_0);
1637 ndr->depth--;
1638 ndr->depth--;
1639 ndr->flags = _flags_save_STRUCT;
1643 static size_t ndr_size_epm_tower(const struct epm_tower *r, struct smb_iconv_convenience *ic, int flags)
1645 flags |= LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN;
1646 return ndr_size_struct(r, flags, (ndr_push_flags_fn_t)ndr_push_epm_tower, ic);
1649 static enum ndr_err_code ndr_push_epm_twr_t(struct ndr_push *ndr, int ndr_flags, const struct epm_twr_t *r)
1651 if (ndr_flags & NDR_SCALARS) {
1652 NDR_CHECK(ndr_push_align(ndr, 4));
1653 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_epm_tower(&r->tower, ndr->iconv_convenience, ndr->flags)));
1655 struct ndr_push *_ndr_tower;
1656 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_tower, 4, -1));
1657 NDR_CHECK(ndr_push_epm_tower(_ndr_tower, NDR_SCALARS, &r->tower));
1658 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_tower, 4, -1));
1660 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1662 if (ndr_flags & NDR_BUFFERS) {
1664 return NDR_ERR_SUCCESS;
1667 static enum ndr_err_code ndr_pull_epm_twr_t(struct ndr_pull *ndr, int ndr_flags, struct epm_twr_t *r)
1669 if (ndr_flags & NDR_SCALARS) {
1670 NDR_CHECK(ndr_pull_align(ndr, 4));
1671 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->tower_length));
1673 struct ndr_pull *_ndr_tower;
1674 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_tower, 4, -1));
1675 NDR_CHECK(ndr_pull_epm_tower(_ndr_tower, NDR_SCALARS, &r->tower));
1676 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_tower, 4, -1));
1678 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1680 if (ndr_flags & NDR_BUFFERS) {
1682 return NDR_ERR_SUCCESS;
1685 _PUBLIC_ void ndr_print_epm_twr_t(struct ndr_print *ndr, const char *name, const struct epm_twr_t *r)
1687 ndr_print_struct(ndr, name, "epm_twr_t");
1688 ndr->depth++;
1689 ndr_print_uint32(ndr, "tower_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?ndr_size_epm_tower(&r->tower, ndr->iconv_convenience, ndr->flags):r->tower_length);
1690 ndr_print_epm_tower(ndr, "tower", &r->tower);
1691 ndr->depth--;
1694 static enum ndr_err_code ndr_push_epm_entry_t(struct ndr_push *ndr, int ndr_flags, const struct epm_entry_t *r)
1696 if (ndr_flags & NDR_SCALARS) {
1697 NDR_CHECK(ndr_push_align(ndr, 5));
1698 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->object));
1699 NDR_CHECK(ndr_push_full_ptr(ndr, r->tower));
1700 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1701 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen(r->annotation) + 1));
1702 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->annotation, strlen(r->annotation) + 1, sizeof(uint8_t), CH_DOS));
1703 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
1705 if (ndr_flags & NDR_BUFFERS) {
1706 if (r->tower) {
1707 NDR_CHECK(ndr_push_epm_twr_t(ndr, NDR_SCALARS, r->tower));
1710 return NDR_ERR_SUCCESS;
1713 static enum ndr_err_code ndr_pull_epm_entry_t(struct ndr_pull *ndr, int ndr_flags, struct epm_entry_t *r)
1715 uint32_t _ptr_tower;
1716 TALLOC_CTX *_mem_save_tower_0;
1717 uint32_t size_annotation_0 = 0;
1718 if (ndr_flags & NDR_SCALARS) {
1719 NDR_CHECK(ndr_pull_align(ndr, 5));
1720 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->object));
1721 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_tower));
1722 if (_ptr_tower) {
1723 NDR_PULL_ALLOC(ndr, r->tower);
1724 } else {
1725 r->tower = NULL;
1727 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->__annotation_offset));
1728 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->__annotation_length));
1729 size_annotation_0 = r->__annotation_length;
1730 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->annotation, size_annotation_0, sizeof(uint8_t), CH_DOS));
1731 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
1733 if (ndr_flags & NDR_BUFFERS) {
1734 if (r->tower) {
1735 _mem_save_tower_0 = NDR_PULL_GET_MEM_CTX(ndr);
1736 NDR_PULL_SET_MEM_CTX(ndr, r->tower, 0);
1737 NDR_CHECK(ndr_pull_epm_twr_t(ndr, NDR_SCALARS, r->tower));
1738 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_tower_0, 0);
1741 return NDR_ERR_SUCCESS;
1744 _PUBLIC_ void ndr_print_epm_entry_t(struct ndr_print *ndr, const char *name, const struct epm_entry_t *r)
1746 ndr_print_struct(ndr, name, "epm_entry_t");
1747 ndr->depth++;
1748 ndr_print_GUID(ndr, "object", &r->object);
1749 ndr_print_ptr(ndr, "tower", r->tower);
1750 ndr->depth++;
1751 if (r->tower) {
1752 ndr_print_epm_twr_t(ndr, "tower", r->tower);
1754 ndr->depth--;
1755 ndr_print_uint32(ndr, "__annotation_offset", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->__annotation_offset);
1756 ndr_print_uint32(ndr, "__annotation_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen(r->annotation) + 1:r->__annotation_length);
1757 ndr_print_string(ndr, "annotation", r->annotation);
1758 ndr->depth--;
1761 static enum ndr_err_code ndr_push_rpc_if_id_t(struct ndr_push *ndr, int ndr_flags, const struct rpc_if_id_t *r)
1763 if (ndr_flags & NDR_SCALARS) {
1764 NDR_CHECK(ndr_push_align(ndr, 4));
1765 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->uuid));
1766 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->vers_major));
1767 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->vers_minor));
1768 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1770 if (ndr_flags & NDR_BUFFERS) {
1772 return NDR_ERR_SUCCESS;
1775 static enum ndr_err_code ndr_pull_rpc_if_id_t(struct ndr_pull *ndr, int ndr_flags, struct rpc_if_id_t *r)
1777 if (ndr_flags & NDR_SCALARS) {
1778 NDR_CHECK(ndr_pull_align(ndr, 4));
1779 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->uuid));
1780 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->vers_major));
1781 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->vers_minor));
1782 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1784 if (ndr_flags & NDR_BUFFERS) {
1786 return NDR_ERR_SUCCESS;
1789 _PUBLIC_ void ndr_print_rpc_if_id_t(struct ndr_print *ndr, const char *name, const struct rpc_if_id_t *r)
1791 ndr_print_struct(ndr, name, "rpc_if_id_t");
1792 ndr->depth++;
1793 ndr_print_GUID(ndr, "uuid", &r->uuid);
1794 ndr_print_uint16(ndr, "vers_major", r->vers_major);
1795 ndr_print_uint16(ndr, "vers_minor", r->vers_minor);
1796 ndr->depth--;
1799 static enum ndr_err_code ndr_push_epm_twr_p_t(struct ndr_push *ndr, int ndr_flags, const struct epm_twr_p_t *r)
1801 if (ndr_flags & NDR_SCALARS) {
1802 NDR_CHECK(ndr_push_align(ndr, 5));
1803 NDR_CHECK(ndr_push_full_ptr(ndr, r->twr));
1804 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
1806 if (ndr_flags & NDR_BUFFERS) {
1807 if (r->twr) {
1808 NDR_CHECK(ndr_push_epm_twr_t(ndr, NDR_SCALARS, r->twr));
1811 return NDR_ERR_SUCCESS;
1814 static enum ndr_err_code ndr_pull_epm_twr_p_t(struct ndr_pull *ndr, int ndr_flags, struct epm_twr_p_t *r)
1816 uint32_t _ptr_twr;
1817 TALLOC_CTX *_mem_save_twr_0;
1818 if (ndr_flags & NDR_SCALARS) {
1819 NDR_CHECK(ndr_pull_align(ndr, 5));
1820 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_twr));
1821 if (_ptr_twr) {
1822 NDR_PULL_ALLOC(ndr, r->twr);
1823 } else {
1824 r->twr = NULL;
1826 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
1828 if (ndr_flags & NDR_BUFFERS) {
1829 if (r->twr) {
1830 _mem_save_twr_0 = NDR_PULL_GET_MEM_CTX(ndr);
1831 NDR_PULL_SET_MEM_CTX(ndr, r->twr, 0);
1832 NDR_CHECK(ndr_pull_epm_twr_t(ndr, NDR_SCALARS, r->twr));
1833 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_twr_0, 0);
1836 return NDR_ERR_SUCCESS;
1839 _PUBLIC_ void ndr_print_epm_twr_p_t(struct ndr_print *ndr, const char *name, const struct epm_twr_p_t *r)
1841 ndr_print_struct(ndr, name, "epm_twr_p_t");
1842 ndr->depth++;
1843 ndr_print_ptr(ndr, "twr", r->twr);
1844 ndr->depth++;
1845 if (r->twr) {
1846 ndr_print_epm_twr_t(ndr, "twr", r->twr);
1848 ndr->depth--;
1849 ndr->depth--;
1852 static enum ndr_err_code ndr_push_epm_Insert(struct ndr_push *ndr, int flags, const struct epm_Insert *r)
1854 uint32_t cntr_entries_0;
1855 if (flags & NDR_IN) {
1856 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_ents));
1857 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.num_ents));
1858 for (cntr_entries_0 = 0; cntr_entries_0 < r->in.num_ents; cntr_entries_0++) {
1859 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_SCALARS, &r->in.entries[cntr_entries_0]));
1861 for (cntr_entries_0 = 0; cntr_entries_0 < r->in.num_ents; cntr_entries_0++) {
1862 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_BUFFERS, &r->in.entries[cntr_entries_0]));
1864 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.replace));
1866 if (flags & NDR_OUT) {
1867 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
1869 return NDR_ERR_SUCCESS;
1872 static enum ndr_err_code ndr_pull_epm_Insert(struct ndr_pull *ndr, int flags, struct epm_Insert *r)
1874 uint32_t size_entries_0 = 0;
1875 uint32_t cntr_entries_0;
1876 TALLOC_CTX *_mem_save_entries_0;
1877 if (flags & NDR_IN) {
1878 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_ents));
1879 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.entries));
1880 size_entries_0 = ndr_get_array_size(ndr, &r->in.entries);
1881 NDR_PULL_ALLOC_N(ndr, r->in.entries, size_entries_0);
1882 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
1883 NDR_PULL_SET_MEM_CTX(ndr, r->in.entries, 0);
1884 for (cntr_entries_0 = 0; cntr_entries_0 < size_entries_0; cntr_entries_0++) {
1885 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_SCALARS, &r->in.entries[cntr_entries_0]));
1887 for (cntr_entries_0 = 0; cntr_entries_0 < size_entries_0; cntr_entries_0++) {
1888 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_BUFFERS, &r->in.entries[cntr_entries_0]));
1890 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
1891 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.replace));
1892 if (r->in.entries) {
1893 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.entries, r->in.num_ents));
1896 if (flags & NDR_OUT) {
1897 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
1899 return NDR_ERR_SUCCESS;
1902 _PUBLIC_ void ndr_print_epm_Insert(struct ndr_print *ndr, const char *name, int flags, const struct epm_Insert *r)
1904 uint32_t cntr_entries_0;
1905 ndr_print_struct(ndr, name, "epm_Insert");
1906 ndr->depth++;
1907 if (flags & NDR_SET_VALUES) {
1908 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
1910 if (flags & NDR_IN) {
1911 ndr_print_struct(ndr, "in", "epm_Insert");
1912 ndr->depth++;
1913 ndr_print_uint32(ndr, "num_ents", r->in.num_ents);
1914 ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->in.num_ents);
1915 ndr->depth++;
1916 for (cntr_entries_0=0;cntr_entries_0<r->in.num_ents;cntr_entries_0++) {
1917 char *idx_0=NULL;
1918 if (asprintf(&idx_0, "[%d]", cntr_entries_0) != -1) {
1919 ndr_print_epm_entry_t(ndr, "entries", &r->in.entries[cntr_entries_0]);
1920 free(idx_0);
1923 ndr->depth--;
1924 ndr_print_uint32(ndr, "replace", r->in.replace);
1925 ndr->depth--;
1927 if (flags & NDR_OUT) {
1928 ndr_print_struct(ndr, "out", "epm_Insert");
1929 ndr->depth++;
1930 ndr_print_uint32(ndr, "result", r->out.result);
1931 ndr->depth--;
1933 ndr->depth--;
1936 static enum ndr_err_code ndr_push_epm_Delete(struct ndr_push *ndr, int flags, const struct epm_Delete *r)
1938 uint32_t cntr_entries_0;
1939 if (flags & NDR_IN) {
1940 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_ents));
1941 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.num_ents));
1942 for (cntr_entries_0 = 0; cntr_entries_0 < r->in.num_ents; cntr_entries_0++) {
1943 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_SCALARS, &r->in.entries[cntr_entries_0]));
1945 for (cntr_entries_0 = 0; cntr_entries_0 < r->in.num_ents; cntr_entries_0++) {
1946 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_BUFFERS, &r->in.entries[cntr_entries_0]));
1949 if (flags & NDR_OUT) {
1950 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
1952 return NDR_ERR_SUCCESS;
1955 static enum ndr_err_code ndr_pull_epm_Delete(struct ndr_pull *ndr, int flags, struct epm_Delete *r)
1957 uint32_t size_entries_0 = 0;
1958 uint32_t cntr_entries_0;
1959 TALLOC_CTX *_mem_save_entries_0;
1960 if (flags & NDR_IN) {
1961 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_ents));
1962 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.entries));
1963 size_entries_0 = ndr_get_array_size(ndr, &r->in.entries);
1964 NDR_PULL_ALLOC_N(ndr, r->in.entries, size_entries_0);
1965 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
1966 NDR_PULL_SET_MEM_CTX(ndr, r->in.entries, 0);
1967 for (cntr_entries_0 = 0; cntr_entries_0 < size_entries_0; cntr_entries_0++) {
1968 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_SCALARS, &r->in.entries[cntr_entries_0]));
1970 for (cntr_entries_0 = 0; cntr_entries_0 < size_entries_0; cntr_entries_0++) {
1971 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_BUFFERS, &r->in.entries[cntr_entries_0]));
1973 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
1974 if (r->in.entries) {
1975 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.entries, r->in.num_ents));
1978 if (flags & NDR_OUT) {
1979 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
1981 return NDR_ERR_SUCCESS;
1984 _PUBLIC_ void ndr_print_epm_Delete(struct ndr_print *ndr, const char *name, int flags, const struct epm_Delete *r)
1986 uint32_t cntr_entries_0;
1987 ndr_print_struct(ndr, name, "epm_Delete");
1988 ndr->depth++;
1989 if (flags & NDR_SET_VALUES) {
1990 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
1992 if (flags & NDR_IN) {
1993 ndr_print_struct(ndr, "in", "epm_Delete");
1994 ndr->depth++;
1995 ndr_print_uint32(ndr, "num_ents", r->in.num_ents);
1996 ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->in.num_ents);
1997 ndr->depth++;
1998 for (cntr_entries_0=0;cntr_entries_0<r->in.num_ents;cntr_entries_0++) {
1999 char *idx_0=NULL;
2000 if (asprintf(&idx_0, "[%d]", cntr_entries_0) != -1) {
2001 ndr_print_epm_entry_t(ndr, "entries", &r->in.entries[cntr_entries_0]);
2002 free(idx_0);
2005 ndr->depth--;
2006 ndr->depth--;
2008 if (flags & NDR_OUT) {
2009 ndr_print_struct(ndr, "out", "epm_Delete");
2010 ndr->depth++;
2011 ndr_print_uint32(ndr, "result", r->out.result);
2012 ndr->depth--;
2014 ndr->depth--;
2017 static enum ndr_err_code ndr_push_epm_Lookup(struct ndr_push *ndr, int flags, const struct epm_Lookup *r)
2019 uint32_t cntr_entries_0;
2020 if (flags & NDR_IN) {
2021 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.inquiry_type));
2022 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.object));
2023 if (r->in.object) {
2024 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->in.object));
2026 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.interface_id));
2027 if (r->in.interface_id) {
2028 NDR_CHECK(ndr_push_rpc_if_id_t(ndr, NDR_SCALARS, r->in.interface_id));
2030 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.vers_option));
2031 if (r->in.entry_handle == NULL) {
2032 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2034 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2035 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_ents));
2037 if (flags & NDR_OUT) {
2038 if (r->out.entry_handle == NULL) {
2039 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2041 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2042 if (r->out.num_ents == NULL) {
2043 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2045 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ents));
2046 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.max_ents));
2047 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
2048 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, *r->out.num_ents));
2049 for (cntr_entries_0 = 0; cntr_entries_0 < *r->out.num_ents; cntr_entries_0++) {
2050 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_SCALARS, &r->out.entries[cntr_entries_0]));
2052 for (cntr_entries_0 = 0; cntr_entries_0 < *r->out.num_ents; cntr_entries_0++) {
2053 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_BUFFERS, &r->out.entries[cntr_entries_0]));
2055 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2057 return NDR_ERR_SUCCESS;
2060 static enum ndr_err_code ndr_pull_epm_Lookup(struct ndr_pull *ndr, int flags, struct epm_Lookup *r)
2062 uint32_t _ptr_object;
2063 uint32_t _ptr_interface_id;
2064 uint32_t size_entries_0 = 0;
2065 uint32_t length_entries_0 = 0;
2066 uint32_t cntr_entries_0;
2067 TALLOC_CTX *_mem_save_object_0;
2068 TALLOC_CTX *_mem_save_interface_id_0;
2069 TALLOC_CTX *_mem_save_entry_handle_0;
2070 TALLOC_CTX *_mem_save_num_ents_0;
2071 TALLOC_CTX *_mem_save_entries_0;
2072 if (flags & NDR_IN) {
2073 ZERO_STRUCT(r->out);
2075 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.inquiry_type));
2076 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object));
2077 if (_ptr_object) {
2078 NDR_PULL_ALLOC(ndr, r->in.object);
2079 } else {
2080 r->in.object = NULL;
2082 if (r->in.object) {
2083 _mem_save_object_0 = NDR_PULL_GET_MEM_CTX(ndr);
2084 NDR_PULL_SET_MEM_CTX(ndr, r->in.object, 0);
2085 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->in.object));
2086 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_0, 0);
2088 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_interface_id));
2089 if (_ptr_interface_id) {
2090 NDR_PULL_ALLOC(ndr, r->in.interface_id);
2091 } else {
2092 r->in.interface_id = NULL;
2094 if (r->in.interface_id) {
2095 _mem_save_interface_id_0 = NDR_PULL_GET_MEM_CTX(ndr);
2096 NDR_PULL_SET_MEM_CTX(ndr, r->in.interface_id, 0);
2097 NDR_CHECK(ndr_pull_rpc_if_id_t(ndr, NDR_SCALARS, r->in.interface_id));
2098 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_interface_id_0, 0);
2100 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.vers_option));
2101 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2102 NDR_PULL_ALLOC(ndr, r->in.entry_handle);
2104 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2105 NDR_PULL_SET_MEM_CTX(ndr, r->in.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2106 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2107 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2108 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_ents));
2109 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2110 *r->out.entry_handle = *r->in.entry_handle;
2111 NDR_PULL_ALLOC(ndr, r->out.num_ents);
2112 ZERO_STRUCTP(r->out.num_ents);
2114 if (flags & NDR_OUT) {
2115 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2116 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2118 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2119 NDR_PULL_SET_MEM_CTX(ndr, r->out.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2120 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2121 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2122 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2123 NDR_PULL_ALLOC(ndr, r->out.num_ents);
2125 _mem_save_num_ents_0 = NDR_PULL_GET_MEM_CTX(ndr);
2126 NDR_PULL_SET_MEM_CTX(ndr, r->out.num_ents, LIBNDR_FLAG_REF_ALLOC);
2127 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_ents));
2128 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ents_0, LIBNDR_FLAG_REF_ALLOC);
2129 NDR_CHECK(ndr_pull_array_size(ndr, &r->out.entries));
2130 NDR_CHECK(ndr_pull_array_length(ndr, &r->out.entries));
2131 size_entries_0 = ndr_get_array_size(ndr, &r->out.entries);
2132 length_entries_0 = ndr_get_array_length(ndr, &r->out.entries);
2133 if (length_entries_0 > size_entries_0) {
2134 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_entries_0, length_entries_0);
2136 NDR_PULL_ALLOC_N(ndr, r->out.entries, size_entries_0);
2137 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
2138 NDR_PULL_SET_MEM_CTX(ndr, r->out.entries, 0);
2139 for (cntr_entries_0 = 0; cntr_entries_0 < length_entries_0; cntr_entries_0++) {
2140 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_SCALARS, &r->out.entries[cntr_entries_0]));
2142 for (cntr_entries_0 = 0; cntr_entries_0 < length_entries_0; cntr_entries_0++) {
2143 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_BUFFERS, &r->out.entries[cntr_entries_0]));
2145 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
2146 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2147 if (r->out.entries) {
2148 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->out.entries, r->in.max_ents));
2150 if (r->out.entries) {
2151 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->out.entries, *r->out.num_ents));
2154 return NDR_ERR_SUCCESS;
2157 _PUBLIC_ void ndr_print_epm_Lookup(struct ndr_print *ndr, const char *name, int flags, const struct epm_Lookup *r)
2159 uint32_t cntr_entries_0;
2160 ndr_print_struct(ndr, name, "epm_Lookup");
2161 ndr->depth++;
2162 if (flags & NDR_SET_VALUES) {
2163 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2165 if (flags & NDR_IN) {
2166 ndr_print_struct(ndr, "in", "epm_Lookup");
2167 ndr->depth++;
2168 ndr_print_uint32(ndr, "inquiry_type", r->in.inquiry_type);
2169 ndr_print_ptr(ndr, "object", r->in.object);
2170 ndr->depth++;
2171 if (r->in.object) {
2172 ndr_print_GUID(ndr, "object", r->in.object);
2174 ndr->depth--;
2175 ndr_print_ptr(ndr, "interface_id", r->in.interface_id);
2176 ndr->depth++;
2177 if (r->in.interface_id) {
2178 ndr_print_rpc_if_id_t(ndr, "interface_id", r->in.interface_id);
2180 ndr->depth--;
2181 ndr_print_uint32(ndr, "vers_option", r->in.vers_option);
2182 ndr_print_ptr(ndr, "entry_handle", r->in.entry_handle);
2183 ndr->depth++;
2184 ndr_print_policy_handle(ndr, "entry_handle", r->in.entry_handle);
2185 ndr->depth--;
2186 ndr_print_uint32(ndr, "max_ents", r->in.max_ents);
2187 ndr->depth--;
2189 if (flags & NDR_OUT) {
2190 ndr_print_struct(ndr, "out", "epm_Lookup");
2191 ndr->depth++;
2192 ndr_print_ptr(ndr, "entry_handle", r->out.entry_handle);
2193 ndr->depth++;
2194 ndr_print_policy_handle(ndr, "entry_handle", r->out.entry_handle);
2195 ndr->depth--;
2196 ndr_print_ptr(ndr, "num_ents", r->out.num_ents);
2197 ndr->depth++;
2198 ndr_print_uint32(ndr, "num_ents", *r->out.num_ents);
2199 ndr->depth--;
2200 ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)*r->out.num_ents);
2201 ndr->depth++;
2202 for (cntr_entries_0=0;cntr_entries_0<*r->out.num_ents;cntr_entries_0++) {
2203 char *idx_0=NULL;
2204 if (asprintf(&idx_0, "[%d]", cntr_entries_0) != -1) {
2205 ndr_print_epm_entry_t(ndr, "entries", &r->out.entries[cntr_entries_0]);
2206 free(idx_0);
2209 ndr->depth--;
2210 ndr_print_uint32(ndr, "result", r->out.result);
2211 ndr->depth--;
2213 ndr->depth--;
2216 _PUBLIC_ enum ndr_err_code ndr_push_epm_Map(struct ndr_push *ndr, int flags, const struct epm_Map *r)
2218 uint32_t cntr_towers_0;
2219 if (flags & NDR_IN) {
2220 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.object));
2221 if (r->in.object) {
2222 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->in.object));
2224 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.map_tower));
2225 if (r->in.map_tower) {
2226 NDR_CHECK(ndr_push_epm_twr_t(ndr, NDR_SCALARS, r->in.map_tower));
2228 if (r->in.entry_handle == NULL) {
2229 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2231 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2232 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_towers));
2234 if (flags & NDR_OUT) {
2235 if (r->out.entry_handle == NULL) {
2236 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2238 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2239 if (r->out.num_towers == NULL) {
2240 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2242 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_towers));
2243 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.max_towers));
2244 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
2245 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, *r->out.num_towers));
2246 for (cntr_towers_0 = 0; cntr_towers_0 < *r->out.num_towers; cntr_towers_0++) {
2247 NDR_CHECK(ndr_push_epm_twr_p_t(ndr, NDR_SCALARS, &r->out.towers[cntr_towers_0]));
2249 for (cntr_towers_0 = 0; cntr_towers_0 < *r->out.num_towers; cntr_towers_0++) {
2250 NDR_CHECK(ndr_push_epm_twr_p_t(ndr, NDR_BUFFERS, &r->out.towers[cntr_towers_0]));
2252 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2254 return NDR_ERR_SUCCESS;
2257 _PUBLIC_ enum ndr_err_code ndr_pull_epm_Map(struct ndr_pull *ndr, int flags, struct epm_Map *r)
2259 uint32_t _ptr_object;
2260 uint32_t _ptr_map_tower;
2261 uint32_t size_towers_0 = 0;
2262 uint32_t length_towers_0 = 0;
2263 uint32_t cntr_towers_0;
2264 TALLOC_CTX *_mem_save_object_0;
2265 TALLOC_CTX *_mem_save_map_tower_0;
2266 TALLOC_CTX *_mem_save_entry_handle_0;
2267 TALLOC_CTX *_mem_save_num_towers_0;
2268 TALLOC_CTX *_mem_save_towers_0;
2269 if (flags & NDR_IN) {
2270 ZERO_STRUCT(r->out);
2272 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object));
2273 if (_ptr_object) {
2274 NDR_PULL_ALLOC(ndr, r->in.object);
2275 } else {
2276 r->in.object = NULL;
2278 if (r->in.object) {
2279 _mem_save_object_0 = NDR_PULL_GET_MEM_CTX(ndr);
2280 NDR_PULL_SET_MEM_CTX(ndr, r->in.object, 0);
2281 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->in.object));
2282 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_0, 0);
2284 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_map_tower));
2285 if (_ptr_map_tower) {
2286 NDR_PULL_ALLOC(ndr, r->in.map_tower);
2287 } else {
2288 r->in.map_tower = NULL;
2290 if (r->in.map_tower) {
2291 _mem_save_map_tower_0 = NDR_PULL_GET_MEM_CTX(ndr);
2292 NDR_PULL_SET_MEM_CTX(ndr, r->in.map_tower, 0);
2293 NDR_CHECK(ndr_pull_epm_twr_t(ndr, NDR_SCALARS, r->in.map_tower));
2294 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_map_tower_0, 0);
2296 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2297 NDR_PULL_ALLOC(ndr, r->in.entry_handle);
2299 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2300 NDR_PULL_SET_MEM_CTX(ndr, r->in.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2301 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2302 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2303 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_towers));
2304 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2305 *r->out.entry_handle = *r->in.entry_handle;
2306 NDR_PULL_ALLOC(ndr, r->out.num_towers);
2307 ZERO_STRUCTP(r->out.num_towers);
2309 if (flags & NDR_OUT) {
2310 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2311 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2313 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2314 NDR_PULL_SET_MEM_CTX(ndr, r->out.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2315 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2316 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2317 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2318 NDR_PULL_ALLOC(ndr, r->out.num_towers);
2320 _mem_save_num_towers_0 = NDR_PULL_GET_MEM_CTX(ndr);
2321 NDR_PULL_SET_MEM_CTX(ndr, r->out.num_towers, LIBNDR_FLAG_REF_ALLOC);
2322 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_towers));
2323 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_towers_0, LIBNDR_FLAG_REF_ALLOC);
2324 NDR_CHECK(ndr_pull_array_size(ndr, &r->out.towers));
2325 NDR_CHECK(ndr_pull_array_length(ndr, &r->out.towers));
2326 size_towers_0 = ndr_get_array_size(ndr, &r->out.towers);
2327 length_towers_0 = ndr_get_array_length(ndr, &r->out.towers);
2328 if (length_towers_0 > size_towers_0) {
2329 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_towers_0, length_towers_0);
2331 NDR_PULL_ALLOC_N(ndr, r->out.towers, size_towers_0);
2332 _mem_save_towers_0 = NDR_PULL_GET_MEM_CTX(ndr);
2333 NDR_PULL_SET_MEM_CTX(ndr, r->out.towers, 0);
2334 for (cntr_towers_0 = 0; cntr_towers_0 < length_towers_0; cntr_towers_0++) {
2335 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr, NDR_SCALARS, &r->out.towers[cntr_towers_0]));
2337 for (cntr_towers_0 = 0; cntr_towers_0 < length_towers_0; cntr_towers_0++) {
2338 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr, NDR_BUFFERS, &r->out.towers[cntr_towers_0]));
2340 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_towers_0, 0);
2341 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2342 if (r->out.towers) {
2343 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->out.towers, r->in.max_towers));
2345 if (r->out.towers) {
2346 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->out.towers, *r->out.num_towers));
2349 return NDR_ERR_SUCCESS;
2352 _PUBLIC_ void ndr_print_epm_Map(struct ndr_print *ndr, const char *name, int flags, const struct epm_Map *r)
2354 uint32_t cntr_towers_0;
2355 ndr_print_struct(ndr, name, "epm_Map");
2356 ndr->depth++;
2357 if (flags & NDR_SET_VALUES) {
2358 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2360 if (flags & NDR_IN) {
2361 ndr_print_struct(ndr, "in", "epm_Map");
2362 ndr->depth++;
2363 ndr_print_ptr(ndr, "object", r->in.object);
2364 ndr->depth++;
2365 if (r->in.object) {
2366 ndr_print_GUID(ndr, "object", r->in.object);
2368 ndr->depth--;
2369 ndr_print_ptr(ndr, "map_tower", r->in.map_tower);
2370 ndr->depth++;
2371 if (r->in.map_tower) {
2372 ndr_print_epm_twr_t(ndr, "map_tower", r->in.map_tower);
2374 ndr->depth--;
2375 ndr_print_ptr(ndr, "entry_handle", r->in.entry_handle);
2376 ndr->depth++;
2377 ndr_print_policy_handle(ndr, "entry_handle", r->in.entry_handle);
2378 ndr->depth--;
2379 ndr_print_uint32(ndr, "max_towers", r->in.max_towers);
2380 ndr->depth--;
2382 if (flags & NDR_OUT) {
2383 ndr_print_struct(ndr, "out", "epm_Map");
2384 ndr->depth++;
2385 ndr_print_ptr(ndr, "entry_handle", r->out.entry_handle);
2386 ndr->depth++;
2387 ndr_print_policy_handle(ndr, "entry_handle", r->out.entry_handle);
2388 ndr->depth--;
2389 ndr_print_ptr(ndr, "num_towers", r->out.num_towers);
2390 ndr->depth++;
2391 ndr_print_uint32(ndr, "num_towers", *r->out.num_towers);
2392 ndr->depth--;
2393 ndr->print(ndr, "%s: ARRAY(%d)", "towers", (int)*r->out.num_towers);
2394 ndr->depth++;
2395 for (cntr_towers_0=0;cntr_towers_0<*r->out.num_towers;cntr_towers_0++) {
2396 char *idx_0=NULL;
2397 if (asprintf(&idx_0, "[%d]", cntr_towers_0) != -1) {
2398 ndr_print_epm_twr_p_t(ndr, "towers", &r->out.towers[cntr_towers_0]);
2399 free(idx_0);
2402 ndr->depth--;
2403 ndr_print_uint32(ndr, "result", r->out.result);
2404 ndr->depth--;
2406 ndr->depth--;
2409 static enum ndr_err_code ndr_push_epm_LookupHandleFree(struct ndr_push *ndr, int flags, const struct epm_LookupHandleFree *r)
2411 if (flags & NDR_IN) {
2412 if (r->in.entry_handle == NULL) {
2413 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2415 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2417 if (flags & NDR_OUT) {
2418 if (r->out.entry_handle == NULL) {
2419 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2421 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2422 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2424 return NDR_ERR_SUCCESS;
2427 static enum ndr_err_code ndr_pull_epm_LookupHandleFree(struct ndr_pull *ndr, int flags, struct epm_LookupHandleFree *r)
2429 TALLOC_CTX *_mem_save_entry_handle_0;
2430 if (flags & NDR_IN) {
2431 ZERO_STRUCT(r->out);
2433 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2434 NDR_PULL_ALLOC(ndr, r->in.entry_handle);
2436 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2437 NDR_PULL_SET_MEM_CTX(ndr, r->in.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2438 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2439 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2440 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2441 *r->out.entry_handle = *r->in.entry_handle;
2443 if (flags & NDR_OUT) {
2444 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2445 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2447 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2448 NDR_PULL_SET_MEM_CTX(ndr, r->out.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2449 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2450 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2451 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2453 return NDR_ERR_SUCCESS;
2456 _PUBLIC_ void ndr_print_epm_LookupHandleFree(struct ndr_print *ndr, const char *name, int flags, const struct epm_LookupHandleFree *r)
2458 ndr_print_struct(ndr, name, "epm_LookupHandleFree");
2459 ndr->depth++;
2460 if (flags & NDR_SET_VALUES) {
2461 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2463 if (flags & NDR_IN) {
2464 ndr_print_struct(ndr, "in", "epm_LookupHandleFree");
2465 ndr->depth++;
2466 ndr_print_ptr(ndr, "entry_handle", r->in.entry_handle);
2467 ndr->depth++;
2468 ndr_print_policy_handle(ndr, "entry_handle", r->in.entry_handle);
2469 ndr->depth--;
2470 ndr->depth--;
2472 if (flags & NDR_OUT) {
2473 ndr_print_struct(ndr, "out", "epm_LookupHandleFree");
2474 ndr->depth++;
2475 ndr_print_ptr(ndr, "entry_handle", r->out.entry_handle);
2476 ndr->depth++;
2477 ndr_print_policy_handle(ndr, "entry_handle", r->out.entry_handle);
2478 ndr->depth--;
2479 ndr_print_uint32(ndr, "result", r->out.result);
2480 ndr->depth--;
2482 ndr->depth--;
2485 static enum ndr_err_code ndr_push_epm_InqObject(struct ndr_push *ndr, int flags, const struct epm_InqObject *r)
2487 if (flags & NDR_IN) {
2488 if (r->in.epm_object == NULL) {
2489 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2491 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->in.epm_object));
2493 if (flags & NDR_OUT) {
2494 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2496 return NDR_ERR_SUCCESS;
2499 static enum ndr_err_code ndr_pull_epm_InqObject(struct ndr_pull *ndr, int flags, struct epm_InqObject *r)
2501 TALLOC_CTX *_mem_save_epm_object_0;
2502 if (flags & NDR_IN) {
2503 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2504 NDR_PULL_ALLOC(ndr, r->in.epm_object);
2506 _mem_save_epm_object_0 = NDR_PULL_GET_MEM_CTX(ndr);
2507 NDR_PULL_SET_MEM_CTX(ndr, r->in.epm_object, LIBNDR_FLAG_REF_ALLOC);
2508 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->in.epm_object));
2509 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_epm_object_0, LIBNDR_FLAG_REF_ALLOC);
2511 if (flags & NDR_OUT) {
2512 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2514 return NDR_ERR_SUCCESS;
2517 _PUBLIC_ void ndr_print_epm_InqObject(struct ndr_print *ndr, const char *name, int flags, const struct epm_InqObject *r)
2519 ndr_print_struct(ndr, name, "epm_InqObject");
2520 ndr->depth++;
2521 if (flags & NDR_SET_VALUES) {
2522 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2524 if (flags & NDR_IN) {
2525 ndr_print_struct(ndr, "in", "epm_InqObject");
2526 ndr->depth++;
2527 ndr_print_ptr(ndr, "epm_object", r->in.epm_object);
2528 ndr->depth++;
2529 ndr_print_GUID(ndr, "epm_object", r->in.epm_object);
2530 ndr->depth--;
2531 ndr->depth--;
2533 if (flags & NDR_OUT) {
2534 ndr_print_struct(ndr, "out", "epm_InqObject");
2535 ndr->depth++;
2536 ndr_print_uint32(ndr, "result", r->out.result);
2537 ndr->depth--;
2539 ndr->depth--;
2542 static enum ndr_err_code ndr_push_epm_MgmtDelete(struct ndr_push *ndr, int flags, const struct epm_MgmtDelete *r)
2544 if (flags & NDR_IN) {
2545 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.object_speced));
2546 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.object));
2547 if (r->in.object) {
2548 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->in.object));
2550 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.tower));
2551 if (r->in.tower) {
2552 NDR_CHECK(ndr_push_epm_twr_t(ndr, NDR_SCALARS, r->in.tower));
2555 if (flags & NDR_OUT) {
2556 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2558 return NDR_ERR_SUCCESS;
2561 static enum ndr_err_code ndr_pull_epm_MgmtDelete(struct ndr_pull *ndr, int flags, struct epm_MgmtDelete *r)
2563 uint32_t _ptr_object;
2564 uint32_t _ptr_tower;
2565 TALLOC_CTX *_mem_save_object_0;
2566 TALLOC_CTX *_mem_save_tower_0;
2567 if (flags & NDR_IN) {
2568 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.object_speced));
2569 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object));
2570 if (_ptr_object) {
2571 NDR_PULL_ALLOC(ndr, r->in.object);
2572 } else {
2573 r->in.object = NULL;
2575 if (r->in.object) {
2576 _mem_save_object_0 = NDR_PULL_GET_MEM_CTX(ndr);
2577 NDR_PULL_SET_MEM_CTX(ndr, r->in.object, 0);
2578 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->in.object));
2579 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_0, 0);
2581 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_tower));
2582 if (_ptr_tower) {
2583 NDR_PULL_ALLOC(ndr, r->in.tower);
2584 } else {
2585 r->in.tower = NULL;
2587 if (r->in.tower) {
2588 _mem_save_tower_0 = NDR_PULL_GET_MEM_CTX(ndr);
2589 NDR_PULL_SET_MEM_CTX(ndr, r->in.tower, 0);
2590 NDR_CHECK(ndr_pull_epm_twr_t(ndr, NDR_SCALARS, r->in.tower));
2591 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_tower_0, 0);
2594 if (flags & NDR_OUT) {
2595 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2597 return NDR_ERR_SUCCESS;
2600 _PUBLIC_ void ndr_print_epm_MgmtDelete(struct ndr_print *ndr, const char *name, int flags, const struct epm_MgmtDelete *r)
2602 ndr_print_struct(ndr, name, "epm_MgmtDelete");
2603 ndr->depth++;
2604 if (flags & NDR_SET_VALUES) {
2605 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2607 if (flags & NDR_IN) {
2608 ndr_print_struct(ndr, "in", "epm_MgmtDelete");
2609 ndr->depth++;
2610 ndr_print_uint32(ndr, "object_speced", r->in.object_speced);
2611 ndr_print_ptr(ndr, "object", r->in.object);
2612 ndr->depth++;
2613 if (r->in.object) {
2614 ndr_print_GUID(ndr, "object", r->in.object);
2616 ndr->depth--;
2617 ndr_print_ptr(ndr, "tower", r->in.tower);
2618 ndr->depth++;
2619 if (r->in.tower) {
2620 ndr_print_epm_twr_t(ndr, "tower", r->in.tower);
2622 ndr->depth--;
2623 ndr->depth--;
2625 if (flags & NDR_OUT) {
2626 ndr_print_struct(ndr, "out", "epm_MgmtDelete");
2627 ndr->depth++;
2628 ndr_print_uint32(ndr, "result", r->out.result);
2629 ndr->depth--;
2631 ndr->depth--;
2634 static enum ndr_err_code ndr_push_epm_MapAuth(struct ndr_push *ndr, int flags, const struct epm_MapAuth *r)
2636 if (flags & NDR_IN) {
2638 if (flags & NDR_OUT) {
2639 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2641 return NDR_ERR_SUCCESS;
2644 static enum ndr_err_code ndr_pull_epm_MapAuth(struct ndr_pull *ndr, int flags, struct epm_MapAuth *r)
2646 if (flags & NDR_IN) {
2648 if (flags & NDR_OUT) {
2649 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2651 return NDR_ERR_SUCCESS;
2654 _PUBLIC_ void ndr_print_epm_MapAuth(struct ndr_print *ndr, const char *name, int flags, const struct epm_MapAuth *r)
2656 ndr_print_struct(ndr, name, "epm_MapAuth");
2657 ndr->depth++;
2658 if (flags & NDR_SET_VALUES) {
2659 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2661 if (flags & NDR_IN) {
2662 ndr_print_struct(ndr, "in", "epm_MapAuth");
2663 ndr->depth++;
2664 ndr->depth--;
2666 if (flags & NDR_OUT) {
2667 ndr_print_struct(ndr, "out", "epm_MapAuth");
2668 ndr->depth++;
2669 ndr_print_uint32(ndr, "result", r->out.result);
2670 ndr->depth--;
2672 ndr->depth--;
2675 static const struct ndr_interface_call epmapper_calls[] = {
2677 "epm_Insert",
2678 sizeof(struct epm_Insert),
2679 (ndr_push_flags_fn_t) ndr_push_epm_Insert,
2680 (ndr_pull_flags_fn_t) ndr_pull_epm_Insert,
2681 (ndr_print_function_t) ndr_print_epm_Insert,
2682 false,
2685 "epm_Delete",
2686 sizeof(struct epm_Delete),
2687 (ndr_push_flags_fn_t) ndr_push_epm_Delete,
2688 (ndr_pull_flags_fn_t) ndr_pull_epm_Delete,
2689 (ndr_print_function_t) ndr_print_epm_Delete,
2690 false,
2693 "epm_Lookup",
2694 sizeof(struct epm_Lookup),
2695 (ndr_push_flags_fn_t) ndr_push_epm_Lookup,
2696 (ndr_pull_flags_fn_t) ndr_pull_epm_Lookup,
2697 (ndr_print_function_t) ndr_print_epm_Lookup,
2698 false,
2701 "epm_Map",
2702 sizeof(struct epm_Map),
2703 (ndr_push_flags_fn_t) ndr_push_epm_Map,
2704 (ndr_pull_flags_fn_t) ndr_pull_epm_Map,
2705 (ndr_print_function_t) ndr_print_epm_Map,
2706 false,
2709 "epm_LookupHandleFree",
2710 sizeof(struct epm_LookupHandleFree),
2711 (ndr_push_flags_fn_t) ndr_push_epm_LookupHandleFree,
2712 (ndr_pull_flags_fn_t) ndr_pull_epm_LookupHandleFree,
2713 (ndr_print_function_t) ndr_print_epm_LookupHandleFree,
2714 false,
2717 "epm_InqObject",
2718 sizeof(struct epm_InqObject),
2719 (ndr_push_flags_fn_t) ndr_push_epm_InqObject,
2720 (ndr_pull_flags_fn_t) ndr_pull_epm_InqObject,
2721 (ndr_print_function_t) ndr_print_epm_InqObject,
2722 false,
2725 "epm_MgmtDelete",
2726 sizeof(struct epm_MgmtDelete),
2727 (ndr_push_flags_fn_t) ndr_push_epm_MgmtDelete,
2728 (ndr_pull_flags_fn_t) ndr_pull_epm_MgmtDelete,
2729 (ndr_print_function_t) ndr_print_epm_MgmtDelete,
2730 false,
2733 "epm_MapAuth",
2734 sizeof(struct epm_MapAuth),
2735 (ndr_push_flags_fn_t) ndr_push_epm_MapAuth,
2736 (ndr_pull_flags_fn_t) ndr_pull_epm_MapAuth,
2737 (ndr_print_function_t) ndr_print_epm_MapAuth,
2738 false,
2740 { NULL, 0, NULL, NULL, NULL, false }
2743 static const char * const epmapper_endpoint_strings[] = {
2744 "ncacn_np:[\\pipe\\epmapper]",
2745 "ncacn_ip_tcp:[135]",
2746 "ncalrpc:[EPMAPPER]",
2749 static const struct ndr_interface_string_array epmapper_endpoints = {
2750 .count = 3,
2751 .names = epmapper_endpoint_strings
2754 static const char * const epmapper_authservice_strings[] = {
2755 "host",
2758 static const struct ndr_interface_string_array epmapper_authservices = {
2759 .count = 1,
2760 .names = epmapper_authservice_strings
2764 const struct ndr_interface_table ndr_table_epmapper = {
2765 .name = "epmapper",
2766 .syntax_id = {
2767 {0xe1af8308,0x5d1f,0x11c9,{0x91,0xa4},{0x08,0x00,0x2b,0x14,0xa0,0xfa}},
2768 NDR_EPMAPPER_VERSION
2770 .helpstring = NDR_EPMAPPER_HELPSTRING,
2771 .num_calls = 8,
2772 .calls = epmapper_calls,
2773 .endpoints = &epmapper_endpoints,
2774 .authservices = &epmapper_authservices