1 /* parser auto-generated by pidl */
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_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)
16 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &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;
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_PIPE: val = "EPM_PROTOCOL_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));
61 if (ndr_flags & NDR_BUFFERS) {
63 return NDR_ERR_SUCCESS;
66 static enum ndr_err_code ndr_pull_epm_rhs_dnet_nsp(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_dnet_nsp *r)
68 if (ndr_flags & NDR_SCALARS) {
69 NDR_CHECK(ndr_pull_align(ndr, 1));
71 if (ndr_flags & NDR_BUFFERS) {
73 return NDR_ERR_SUCCESS;
76 _PUBLIC_ void ndr_print_epm_rhs_dnet_nsp(struct ndr_print *ndr, const char *name, const struct epm_rhs_dnet_nsp *r)
78 ndr_print_struct(ndr, name, "epm_rhs_dnet_nsp");
83 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)
85 if (ndr_flags & NDR_SCALARS) {
86 NDR_CHECK(ndr_push_align(ndr, 1));
88 if (ndr_flags & NDR_BUFFERS) {
90 return NDR_ERR_SUCCESS;
93 static enum ndr_err_code ndr_pull_epm_rhs_osi_tp4(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_osi_tp4 *r)
95 if (ndr_flags & NDR_SCALARS) {
96 NDR_CHECK(ndr_pull_align(ndr, 1));
98 if (ndr_flags & NDR_BUFFERS) {
100 return NDR_ERR_SUCCESS;
103 _PUBLIC_ void ndr_print_epm_rhs_osi_tp4(struct ndr_print *ndr, const char *name, const struct epm_rhs_osi_tp4 *r)
105 ndr_print_struct(ndr, name, "epm_rhs_osi_tp4");
110 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)
112 if (ndr_flags & NDR_SCALARS) {
113 NDR_CHECK(ndr_push_align(ndr, 1));
115 if (ndr_flags & NDR_BUFFERS) {
117 return NDR_ERR_SUCCESS;
120 static enum ndr_err_code ndr_pull_epm_rhs_osi_clns(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_osi_clns *r)
122 if (ndr_flags & NDR_SCALARS) {
123 NDR_CHECK(ndr_pull_align(ndr, 1));
125 if (ndr_flags & NDR_BUFFERS) {
127 return NDR_ERR_SUCCESS;
130 _PUBLIC_ void ndr_print_epm_rhs_osi_clns(struct ndr_print *ndr, const char *name, const struct epm_rhs_osi_clns *r)
132 ndr_print_struct(ndr, name, "epm_rhs_osi_clns");
137 static enum ndr_err_code ndr_push_epm_rhs_udp(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_udp *r)
139 if (ndr_flags & NDR_SCALARS) {
140 NDR_CHECK(ndr_push_align(ndr, 2));
141 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
143 if (ndr_flags & NDR_BUFFERS) {
145 return NDR_ERR_SUCCESS;
148 static enum ndr_err_code ndr_pull_epm_rhs_udp(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_udp *r)
150 if (ndr_flags & NDR_SCALARS) {
151 NDR_CHECK(ndr_pull_align(ndr, 2));
152 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
154 if (ndr_flags & NDR_BUFFERS) {
156 return NDR_ERR_SUCCESS;
159 _PUBLIC_ void ndr_print_epm_rhs_udp(struct ndr_print *ndr, const char *name, const struct epm_rhs_udp *r)
161 ndr_print_struct(ndr, name, "epm_rhs_udp");
163 ndr_print_uint16(ndr, "port", r->port);
167 static enum ndr_err_code ndr_push_epm_rhs_tcp(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_tcp *r)
169 if (ndr_flags & NDR_SCALARS) {
170 NDR_CHECK(ndr_push_align(ndr, 2));
171 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
173 if (ndr_flags & NDR_BUFFERS) {
175 return NDR_ERR_SUCCESS;
178 static enum ndr_err_code ndr_pull_epm_rhs_tcp(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_tcp *r)
180 if (ndr_flags & NDR_SCALARS) {
181 NDR_CHECK(ndr_pull_align(ndr, 2));
182 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
184 if (ndr_flags & NDR_BUFFERS) {
186 return NDR_ERR_SUCCESS;
189 _PUBLIC_ void ndr_print_epm_rhs_tcp(struct ndr_print *ndr, const char *name, const struct epm_rhs_tcp *r)
191 ndr_print_struct(ndr, name, "epm_rhs_tcp");
193 ndr_print_uint16(ndr, "port", r->port);
197 static enum ndr_err_code ndr_push_epm_rhs_ip(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ip *r)
199 if (ndr_flags & NDR_SCALARS) {
200 NDR_CHECK(ndr_push_align(ndr, 4));
201 NDR_CHECK(ndr_push_ipv4address(ndr, NDR_SCALARS, r->ipaddr));
203 if (ndr_flags & NDR_BUFFERS) {
205 return NDR_ERR_SUCCESS;
208 static enum ndr_err_code ndr_pull_epm_rhs_ip(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ip *r)
210 if (ndr_flags & NDR_SCALARS) {
211 NDR_CHECK(ndr_pull_align(ndr, 4));
212 NDR_CHECK(ndr_pull_ipv4address(ndr, NDR_SCALARS, &r->ipaddr));
214 if (ndr_flags & NDR_BUFFERS) {
216 return NDR_ERR_SUCCESS;
219 _PUBLIC_ void ndr_print_epm_rhs_ip(struct ndr_print *ndr, const char *name, const struct epm_rhs_ip *r)
221 ndr_print_struct(ndr, name, "epm_rhs_ip");
223 ndr_print_ipv4address(ndr, "ipaddr", r->ipaddr);
227 static enum ndr_err_code ndr_push_epm_rhs_ncadg(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ncadg *r)
229 if (ndr_flags & NDR_SCALARS) {
230 NDR_CHECK(ndr_push_align(ndr, 2));
231 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->minor_version));
233 if (ndr_flags & NDR_BUFFERS) {
235 return NDR_ERR_SUCCESS;
238 static enum ndr_err_code ndr_pull_epm_rhs_ncadg(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ncadg *r)
240 if (ndr_flags & NDR_SCALARS) {
241 NDR_CHECK(ndr_pull_align(ndr, 2));
242 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->minor_version));
244 if (ndr_flags & NDR_BUFFERS) {
246 return NDR_ERR_SUCCESS;
249 _PUBLIC_ void ndr_print_epm_rhs_ncadg(struct ndr_print *ndr, const char *name, const struct epm_rhs_ncadg *r)
251 ndr_print_struct(ndr, name, "epm_rhs_ncadg");
253 ndr_print_uint16(ndr, "minor_version", r->minor_version);
257 static enum ndr_err_code ndr_push_epm_rhs_ncacn(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ncacn *r)
259 if (ndr_flags & NDR_SCALARS) {
260 NDR_CHECK(ndr_push_align(ndr, 2));
261 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->minor_version));
263 if (ndr_flags & NDR_BUFFERS) {
265 return NDR_ERR_SUCCESS;
268 static enum ndr_err_code ndr_pull_epm_rhs_ncacn(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ncacn *r)
270 if (ndr_flags & NDR_SCALARS) {
271 NDR_CHECK(ndr_pull_align(ndr, 2));
272 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->minor_version));
274 if (ndr_flags & NDR_BUFFERS) {
276 return NDR_ERR_SUCCESS;
279 _PUBLIC_ void ndr_print_epm_rhs_ncacn(struct ndr_print *ndr, const char *name, const struct epm_rhs_ncacn *r)
281 ndr_print_struct(ndr, name, "epm_rhs_ncacn");
283 ndr_print_uint16(ndr, "minor_version", r->minor_version);
287 static enum ndr_err_code ndr_push_epm_rhs_uuid(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_uuid *r)
289 if (ndr_flags & NDR_SCALARS) {
290 NDR_CHECK(ndr_push_align(ndr, 4));
292 uint32_t _flags_save_DATA_BLOB = ndr->flags;
293 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
294 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->unknown));
295 ndr->flags = _flags_save_DATA_BLOB;
298 if (ndr_flags & NDR_BUFFERS) {
300 return NDR_ERR_SUCCESS;
303 static enum ndr_err_code ndr_pull_epm_rhs_uuid(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_uuid *r)
305 if (ndr_flags & NDR_SCALARS) {
306 NDR_CHECK(ndr_pull_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_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->unknown));
311 ndr->flags = _flags_save_DATA_BLOB;
314 if (ndr_flags & NDR_BUFFERS) {
316 return NDR_ERR_SUCCESS;
319 _PUBLIC_ void ndr_print_epm_rhs_uuid(struct ndr_print *ndr, const char *name, const struct epm_rhs_uuid *r)
321 ndr_print_struct(ndr, name, "epm_rhs_uuid");
323 ndr_print_DATA_BLOB(ndr, "unknown", r->unknown);
327 static enum ndr_err_code ndr_push_epm_rhs_ipx(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ipx *r)
329 if (ndr_flags & NDR_SCALARS) {
330 NDR_CHECK(ndr_push_align(ndr, 1));
332 if (ndr_flags & NDR_BUFFERS) {
334 return NDR_ERR_SUCCESS;
337 static enum ndr_err_code ndr_pull_epm_rhs_ipx(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ipx *r)
339 if (ndr_flags & NDR_SCALARS) {
340 NDR_CHECK(ndr_pull_align(ndr, 1));
342 if (ndr_flags & NDR_BUFFERS) {
344 return NDR_ERR_SUCCESS;
347 _PUBLIC_ void ndr_print_epm_rhs_ipx(struct ndr_print *ndr, const char *name, const struct epm_rhs_ipx *r)
349 ndr_print_struct(ndr, name, "epm_rhs_ipx");
354 static enum ndr_err_code ndr_push_epm_rhs_smb(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_smb *r)
356 if (ndr_flags & NDR_SCALARS) {
357 NDR_CHECK(ndr_push_align(ndr, 4));
359 uint32_t _flags_save_string = ndr->flags;
360 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
361 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unc));
362 ndr->flags = _flags_save_string;
365 if (ndr_flags & NDR_BUFFERS) {
367 return NDR_ERR_SUCCESS;
370 static enum ndr_err_code ndr_pull_epm_rhs_smb(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_smb *r)
372 if (ndr_flags & NDR_SCALARS) {
373 NDR_CHECK(ndr_pull_align(ndr, 4));
375 uint32_t _flags_save_string = ndr->flags;
376 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
377 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unc));
378 ndr->flags = _flags_save_string;
381 if (ndr_flags & NDR_BUFFERS) {
383 return NDR_ERR_SUCCESS;
386 _PUBLIC_ void ndr_print_epm_rhs_smb(struct ndr_print *ndr, const char *name, const struct epm_rhs_smb *r)
388 ndr_print_struct(ndr, name, "epm_rhs_smb");
390 ndr_print_string(ndr, "unc", r->unc);
394 static enum ndr_err_code ndr_push_epm_rhs_pipe(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_pipe *r)
396 if (ndr_flags & NDR_SCALARS) {
397 NDR_CHECK(ndr_push_align(ndr, 4));
399 uint32_t _flags_save_string = ndr->flags;
400 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
401 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->path));
402 ndr->flags = _flags_save_string;
405 if (ndr_flags & NDR_BUFFERS) {
407 return NDR_ERR_SUCCESS;
410 static enum ndr_err_code ndr_pull_epm_rhs_pipe(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_pipe *r)
412 if (ndr_flags & NDR_SCALARS) {
413 NDR_CHECK(ndr_pull_align(ndr, 4));
415 uint32_t _flags_save_string = ndr->flags;
416 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
417 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->path));
418 ndr->flags = _flags_save_string;
421 if (ndr_flags & NDR_BUFFERS) {
423 return NDR_ERR_SUCCESS;
426 _PUBLIC_ void ndr_print_epm_rhs_pipe(struct ndr_print *ndr, const char *name, const struct epm_rhs_pipe *r)
428 ndr_print_struct(ndr, name, "epm_rhs_pipe");
430 ndr_print_string(ndr, "path", r->path);
434 static enum ndr_err_code ndr_push_epm_rhs_netbios(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_netbios *r)
436 if (ndr_flags & NDR_SCALARS) {
437 NDR_CHECK(ndr_push_align(ndr, 4));
439 uint32_t _flags_save_string = ndr->flags;
440 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
441 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->name));
442 ndr->flags = _flags_save_string;
445 if (ndr_flags & NDR_BUFFERS) {
447 return NDR_ERR_SUCCESS;
450 static enum ndr_err_code ndr_pull_epm_rhs_netbios(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_netbios *r)
452 if (ndr_flags & NDR_SCALARS) {
453 NDR_CHECK(ndr_pull_align(ndr, 4));
455 uint32_t _flags_save_string = ndr->flags;
456 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
457 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->name));
458 ndr->flags = _flags_save_string;
461 if (ndr_flags & NDR_BUFFERS) {
463 return NDR_ERR_SUCCESS;
466 _PUBLIC_ void ndr_print_epm_rhs_netbios(struct ndr_print *ndr, const char *name, const struct epm_rhs_netbios *r)
468 ndr_print_struct(ndr, name, "epm_rhs_netbios");
470 ndr_print_string(ndr, "name", r->name);
474 static enum ndr_err_code ndr_push_epm_rhs_netbeui(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_netbeui *r)
476 if (ndr_flags & NDR_SCALARS) {
477 NDR_CHECK(ndr_push_align(ndr, 1));
479 if (ndr_flags & NDR_BUFFERS) {
481 return NDR_ERR_SUCCESS;
484 static enum ndr_err_code ndr_pull_epm_rhs_netbeui(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_netbeui *r)
486 if (ndr_flags & NDR_SCALARS) {
487 NDR_CHECK(ndr_pull_align(ndr, 1));
489 if (ndr_flags & NDR_BUFFERS) {
491 return NDR_ERR_SUCCESS;
494 _PUBLIC_ void ndr_print_epm_rhs_netbeui(struct ndr_print *ndr, const char *name, const struct epm_rhs_netbeui *r)
496 ndr_print_struct(ndr, name, "epm_rhs_netbeui");
501 static enum ndr_err_code ndr_push_epm_rhs_spx(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_spx *r)
503 if (ndr_flags & NDR_SCALARS) {
504 NDR_CHECK(ndr_push_align(ndr, 1));
506 if (ndr_flags & NDR_BUFFERS) {
508 return NDR_ERR_SUCCESS;
511 static enum ndr_err_code ndr_pull_epm_rhs_spx(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_spx *r)
513 if (ndr_flags & NDR_SCALARS) {
514 NDR_CHECK(ndr_pull_align(ndr, 1));
516 if (ndr_flags & NDR_BUFFERS) {
518 return NDR_ERR_SUCCESS;
521 _PUBLIC_ void ndr_print_epm_rhs_spx(struct ndr_print *ndr, const char *name, const struct epm_rhs_spx *r)
523 ndr_print_struct(ndr, name, "epm_rhs_spx");
528 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)
530 if (ndr_flags & NDR_SCALARS) {
531 NDR_CHECK(ndr_push_align(ndr, 1));
533 if (ndr_flags & NDR_BUFFERS) {
535 return NDR_ERR_SUCCESS;
538 static enum ndr_err_code ndr_pull_epm_rhs_nb_ipx(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_nb_ipx *r)
540 if (ndr_flags & NDR_SCALARS) {
541 NDR_CHECK(ndr_pull_align(ndr, 1));
543 if (ndr_flags & NDR_BUFFERS) {
545 return NDR_ERR_SUCCESS;
548 _PUBLIC_ void ndr_print_epm_rhs_nb_ipx(struct ndr_print *ndr, const char *name, const struct epm_rhs_nb_ipx *r)
550 ndr_print_struct(ndr, name, "epm_rhs_nb_ipx");
555 static enum ndr_err_code ndr_push_epm_rhs_http(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_http *r)
557 if (ndr_flags & NDR_SCALARS) {
558 NDR_CHECK(ndr_push_align(ndr, 2));
559 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
561 if (ndr_flags & NDR_BUFFERS) {
563 return NDR_ERR_SUCCESS;
566 static enum ndr_err_code ndr_pull_epm_rhs_http(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_http *r)
568 if (ndr_flags & NDR_SCALARS) {
569 NDR_CHECK(ndr_pull_align(ndr, 2));
570 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
572 if (ndr_flags & NDR_BUFFERS) {
574 return NDR_ERR_SUCCESS;
577 _PUBLIC_ void ndr_print_epm_rhs_http(struct ndr_print *ndr, const char *name, const struct epm_rhs_http *r)
579 ndr_print_struct(ndr, name, "epm_rhs_http");
581 ndr_print_uint16(ndr, "port", r->port);
585 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)
587 if (ndr_flags & NDR_SCALARS) {
588 NDR_CHECK(ndr_push_align(ndr, 4));
590 uint32_t _flags_save_string = ndr->flags;
591 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
592 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->path));
593 ndr->flags = _flags_save_string;
596 if (ndr_flags & NDR_BUFFERS) {
598 return NDR_ERR_SUCCESS;
601 static enum ndr_err_code ndr_pull_epm_rhs_unix_ds(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_unix_ds *r)
603 if (ndr_flags & NDR_SCALARS) {
604 NDR_CHECK(ndr_pull_align(ndr, 4));
606 uint32_t _flags_save_string = ndr->flags;
607 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
608 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->path));
609 ndr->flags = _flags_save_string;
612 if (ndr_flags & NDR_BUFFERS) {
614 return NDR_ERR_SUCCESS;
617 _PUBLIC_ void ndr_print_epm_rhs_unix_ds(struct ndr_print *ndr, const char *name, const struct epm_rhs_unix_ds *r)
619 ndr_print_struct(ndr, name, "epm_rhs_unix_ds");
621 ndr_print_string(ndr, "path", r->path);
625 static enum ndr_err_code ndr_push_epm_rhs_null(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_null *r)
627 if (ndr_flags & NDR_SCALARS) {
628 NDR_CHECK(ndr_push_align(ndr, 1));
630 if (ndr_flags & NDR_BUFFERS) {
632 return NDR_ERR_SUCCESS;
635 static enum ndr_err_code ndr_pull_epm_rhs_null(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_null *r)
637 if (ndr_flags & NDR_SCALARS) {
638 NDR_CHECK(ndr_pull_align(ndr, 1));
640 if (ndr_flags & NDR_BUFFERS) {
642 return NDR_ERR_SUCCESS;
645 _PUBLIC_ void ndr_print_epm_rhs_null(struct ndr_print *ndr, const char *name, const struct epm_rhs_null *r)
647 ndr_print_struct(ndr, name, "epm_rhs_null");
652 static enum ndr_err_code ndr_push_epm_rhs_ncalrpc(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_ncalrpc *r)
654 if (ndr_flags & NDR_SCALARS) {
655 NDR_CHECK(ndr_push_align(ndr, 2));
656 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->minor_version));
658 if (ndr_flags & NDR_BUFFERS) {
660 return NDR_ERR_SUCCESS;
663 static enum ndr_err_code ndr_pull_epm_rhs_ncalrpc(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_ncalrpc *r)
665 if (ndr_flags & NDR_SCALARS) {
666 NDR_CHECK(ndr_pull_align(ndr, 2));
667 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->minor_version));
669 if (ndr_flags & NDR_BUFFERS) {
671 return NDR_ERR_SUCCESS;
674 _PUBLIC_ void ndr_print_epm_rhs_ncalrpc(struct ndr_print *ndr, const char *name, const struct epm_rhs_ncalrpc *r)
676 ndr_print_struct(ndr, name, "epm_rhs_ncalrpc");
678 ndr_print_uint16(ndr, "minor_version", r->minor_version);
682 static enum ndr_err_code ndr_push_epm_rhs_appletalk(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_appletalk *r)
684 if (ndr_flags & NDR_SCALARS) {
685 NDR_CHECK(ndr_push_align(ndr, 1));
687 if (ndr_flags & NDR_BUFFERS) {
689 return NDR_ERR_SUCCESS;
692 static enum ndr_err_code ndr_pull_epm_rhs_appletalk(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_appletalk *r)
694 if (ndr_flags & NDR_SCALARS) {
695 NDR_CHECK(ndr_pull_align(ndr, 1));
697 if (ndr_flags & NDR_BUFFERS) {
699 return NDR_ERR_SUCCESS;
702 _PUBLIC_ void ndr_print_epm_rhs_appletalk(struct ndr_print *ndr, const char *name, const struct epm_rhs_appletalk *r)
704 ndr_print_struct(ndr, name, "epm_rhs_appletalk");
709 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)
711 if (ndr_flags & NDR_SCALARS) {
712 NDR_CHECK(ndr_push_align(ndr, 1));
714 if (ndr_flags & NDR_BUFFERS) {
716 return NDR_ERR_SUCCESS;
719 static enum ndr_err_code ndr_pull_epm_rhs_atalk_stream(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_atalk_stream *r)
721 if (ndr_flags & NDR_SCALARS) {
722 NDR_CHECK(ndr_pull_align(ndr, 1));
724 if (ndr_flags & NDR_BUFFERS) {
726 return NDR_ERR_SUCCESS;
729 _PUBLIC_ void ndr_print_epm_rhs_atalk_stream(struct ndr_print *ndr, const char *name, const struct epm_rhs_atalk_stream *r)
731 ndr_print_struct(ndr, name, "epm_rhs_atalk_stream");
736 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)
738 if (ndr_flags & NDR_SCALARS) {
739 NDR_CHECK(ndr_push_align(ndr, 1));
741 if (ndr_flags & NDR_BUFFERS) {
743 return NDR_ERR_SUCCESS;
746 static enum ndr_err_code ndr_pull_epm_rhs_atalk_datagram(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_atalk_datagram *r)
748 if (ndr_flags & NDR_SCALARS) {
749 NDR_CHECK(ndr_pull_align(ndr, 1));
751 if (ndr_flags & NDR_BUFFERS) {
753 return NDR_ERR_SUCCESS;
756 _PUBLIC_ void ndr_print_epm_rhs_atalk_datagram(struct ndr_print *ndr, const char *name, const struct epm_rhs_atalk_datagram *r)
758 ndr_print_struct(ndr, name, "epm_rhs_atalk_datagram");
763 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)
765 if (ndr_flags & NDR_SCALARS) {
766 NDR_CHECK(ndr_push_align(ndr, 2));
767 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
769 if (ndr_flags & NDR_BUFFERS) {
771 return NDR_ERR_SUCCESS;
774 static enum ndr_err_code ndr_pull_epm_rhs_vines_spp(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_vines_spp *r)
776 if (ndr_flags & NDR_SCALARS) {
777 NDR_CHECK(ndr_pull_align(ndr, 2));
778 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
780 if (ndr_flags & NDR_BUFFERS) {
782 return NDR_ERR_SUCCESS;
785 _PUBLIC_ void ndr_print_epm_rhs_vines_spp(struct ndr_print *ndr, const char *name, const struct epm_rhs_vines_spp *r)
787 ndr_print_struct(ndr, name, "epm_rhs_vines_spp");
789 ndr_print_uint16(ndr, "port", r->port);
793 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)
795 if (ndr_flags & NDR_SCALARS) {
796 NDR_CHECK(ndr_push_align(ndr, 2));
797 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->port));
799 if (ndr_flags & NDR_BUFFERS) {
801 return NDR_ERR_SUCCESS;
804 static enum ndr_err_code ndr_pull_epm_rhs_vines_ipc(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_vines_ipc *r)
806 if (ndr_flags & NDR_SCALARS) {
807 NDR_CHECK(ndr_pull_align(ndr, 2));
808 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->port));
810 if (ndr_flags & NDR_BUFFERS) {
812 return NDR_ERR_SUCCESS;
815 _PUBLIC_ void ndr_print_epm_rhs_vines_ipc(struct ndr_print *ndr, const char *name, const struct epm_rhs_vines_ipc *r)
817 ndr_print_struct(ndr, name, "epm_rhs_vines_ipc");
819 ndr_print_uint16(ndr, "port", r->port);
823 static enum ndr_err_code ndr_push_epm_rhs_streettalk(struct ndr_push *ndr, int ndr_flags, const struct epm_rhs_streettalk *r)
825 if (ndr_flags & NDR_SCALARS) {
826 NDR_CHECK(ndr_push_align(ndr, 4));
828 uint32_t _flags_save_string = ndr->flags;
829 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
830 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->streettalk));
831 ndr->flags = _flags_save_string;
834 if (ndr_flags & NDR_BUFFERS) {
836 return NDR_ERR_SUCCESS;
839 static enum ndr_err_code ndr_pull_epm_rhs_streettalk(struct ndr_pull *ndr, int ndr_flags, struct epm_rhs_streettalk *r)
841 if (ndr_flags & NDR_SCALARS) {
842 NDR_CHECK(ndr_pull_align(ndr, 4));
844 uint32_t _flags_save_string = ndr->flags;
845 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
846 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->streettalk));
847 ndr->flags = _flags_save_string;
850 if (ndr_flags & NDR_BUFFERS) {
852 return NDR_ERR_SUCCESS;
855 _PUBLIC_ void ndr_print_epm_rhs_streettalk(struct ndr_print *ndr, const char *name, const struct epm_rhs_streettalk *r)
857 ndr_print_struct(ndr, name, "epm_rhs_streettalk");
859 ndr_print_string(ndr, "streettalk", r->streettalk);
863 static enum ndr_err_code ndr_push_epm_rhs(struct ndr_push *ndr, int ndr_flags, const union epm_rhs *r)
866 uint32_t _flags_save_UNION = ndr->flags;
867 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
868 if (ndr_flags & NDR_SCALARS) {
869 int level = ndr_push_get_switch_value(ndr, r);
871 case EPM_PROTOCOL_DNET_NSP: {
872 NDR_CHECK(ndr_push_epm_rhs_dnet_nsp(ndr, NDR_SCALARS, &r->dnet_nsp));
875 case EPM_PROTOCOL_OSI_TP4: {
876 NDR_CHECK(ndr_push_epm_rhs_osi_tp4(ndr, NDR_SCALARS, &r->osi_tp4));
879 case EPM_PROTOCOL_OSI_CLNS: {
880 NDR_CHECK(ndr_push_epm_rhs_osi_clns(ndr, NDR_SCALARS, &r->osi_clns));
883 case EPM_PROTOCOL_TCP: {
884 NDR_CHECK(ndr_push_epm_rhs_tcp(ndr, NDR_SCALARS, &r->tcp));
887 case EPM_PROTOCOL_UDP: {
888 NDR_CHECK(ndr_push_epm_rhs_udp(ndr, NDR_SCALARS, &r->udp));
891 case EPM_PROTOCOL_IP: {
892 NDR_CHECK(ndr_push_epm_rhs_ip(ndr, NDR_SCALARS, &r->ip));
895 case EPM_PROTOCOL_NCADG: {
896 NDR_CHECK(ndr_push_epm_rhs_ncadg(ndr, NDR_SCALARS, &r->ncadg));
899 case EPM_PROTOCOL_NCACN: {
900 NDR_CHECK(ndr_push_epm_rhs_ncacn(ndr, NDR_SCALARS, &r->ncacn));
903 case EPM_PROTOCOL_NCALRPC: {
904 NDR_CHECK(ndr_push_epm_rhs_ncalrpc(ndr, NDR_SCALARS, &r->ncalrpc));
907 case EPM_PROTOCOL_UUID: {
908 NDR_CHECK(ndr_push_epm_rhs_uuid(ndr, NDR_SCALARS, &r->uuid));
911 case EPM_PROTOCOL_IPX: {
912 NDR_CHECK(ndr_push_epm_rhs_ipx(ndr, NDR_SCALARS, &r->ipx));
915 case EPM_PROTOCOL_SMB: {
916 NDR_CHECK(ndr_push_epm_rhs_smb(ndr, NDR_SCALARS, &r->smb));
919 case EPM_PROTOCOL_PIPE: {
920 NDR_CHECK(ndr_push_epm_rhs_pipe(ndr, NDR_SCALARS, &r->pipe));
923 case EPM_PROTOCOL_NETBIOS: {
924 NDR_CHECK(ndr_push_epm_rhs_netbios(ndr, NDR_SCALARS, &r->netbios));
927 case EPM_PROTOCOL_NETBEUI: {
928 NDR_CHECK(ndr_push_epm_rhs_netbeui(ndr, NDR_SCALARS, &r->netbeui));
931 case EPM_PROTOCOL_SPX: {
932 NDR_CHECK(ndr_push_epm_rhs_spx(ndr, NDR_SCALARS, &r->spx));
935 case EPM_PROTOCOL_NB_IPX: {
936 NDR_CHECK(ndr_push_epm_rhs_nb_ipx(ndr, NDR_SCALARS, &r->nb_ipx));
939 case EPM_PROTOCOL_DSP: {
940 NDR_CHECK(ndr_push_epm_rhs_atalk_stream(ndr, NDR_SCALARS, &r->atalk_stream));
943 case EPM_PROTOCOL_DDP: {
944 NDR_CHECK(ndr_push_epm_rhs_atalk_datagram(ndr, NDR_SCALARS, &r->atalk_datagram));
947 case EPM_PROTOCOL_APPLETALK: {
948 NDR_CHECK(ndr_push_epm_rhs_appletalk(ndr, NDR_SCALARS, &r->appletalk));
951 case EPM_PROTOCOL_VINES_SPP: {
952 NDR_CHECK(ndr_push_epm_rhs_vines_spp(ndr, NDR_SCALARS, &r->vines_spp));
955 case EPM_PROTOCOL_VINES_IPC: {
956 NDR_CHECK(ndr_push_epm_rhs_vines_ipc(ndr, NDR_SCALARS, &r->vines_ipc));
959 case EPM_PROTOCOL_STREETTALK: {
960 NDR_CHECK(ndr_push_epm_rhs_streettalk(ndr, NDR_SCALARS, &r->streettalk));
963 case EPM_PROTOCOL_HTTP: {
964 NDR_CHECK(ndr_push_epm_rhs_http(ndr, NDR_SCALARS, &r->http));
967 case EPM_PROTOCOL_UNIX_DS: {
968 NDR_CHECK(ndr_push_epm_rhs_unix_ds(ndr, NDR_SCALARS, &r->unix_ds));
971 case EPM_PROTOCOL_NULL: {
972 NDR_CHECK(ndr_push_epm_rhs_null(ndr, NDR_SCALARS, &r->null));
977 uint32_t _flags_save_DATA_BLOB = ndr->flags;
978 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
979 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->unknown));
980 ndr->flags = _flags_save_DATA_BLOB;
986 if (ndr_flags & NDR_BUFFERS) {
987 int level = ndr_push_get_switch_value(ndr, r);
989 case EPM_PROTOCOL_DNET_NSP:
992 case EPM_PROTOCOL_OSI_TP4:
995 case EPM_PROTOCOL_OSI_CLNS:
998 case EPM_PROTOCOL_TCP:
1001 case EPM_PROTOCOL_UDP:
1004 case EPM_PROTOCOL_IP:
1007 case EPM_PROTOCOL_NCADG:
1010 case EPM_PROTOCOL_NCACN:
1013 case EPM_PROTOCOL_NCALRPC:
1016 case EPM_PROTOCOL_UUID:
1019 case EPM_PROTOCOL_IPX:
1022 case EPM_PROTOCOL_SMB:
1025 case EPM_PROTOCOL_PIPE:
1028 case EPM_PROTOCOL_NETBIOS:
1031 case EPM_PROTOCOL_NETBEUI:
1034 case EPM_PROTOCOL_SPX:
1037 case EPM_PROTOCOL_NB_IPX:
1040 case EPM_PROTOCOL_DSP:
1043 case EPM_PROTOCOL_DDP:
1046 case EPM_PROTOCOL_APPLETALK:
1049 case EPM_PROTOCOL_VINES_SPP:
1052 case EPM_PROTOCOL_VINES_IPC:
1055 case EPM_PROTOCOL_STREETTALK:
1058 case EPM_PROTOCOL_HTTP:
1061 case EPM_PROTOCOL_UNIX_DS:
1064 case EPM_PROTOCOL_NULL:
1072 ndr->flags = _flags_save_UNION;
1074 return NDR_ERR_SUCCESS;
1077 static enum ndr_err_code ndr_pull_epm_rhs(struct ndr_pull *ndr, int ndr_flags, union epm_rhs *r)
1081 uint32_t _flags_save_UNION = ndr->flags;
1082 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
1083 level = ndr_pull_get_switch_value(ndr, r);
1084 if (ndr_flags & NDR_SCALARS) {
1086 case EPM_PROTOCOL_DNET_NSP: {
1087 NDR_CHECK(ndr_pull_epm_rhs_dnet_nsp(ndr, NDR_SCALARS, &r->dnet_nsp));
1090 case EPM_PROTOCOL_OSI_TP4: {
1091 NDR_CHECK(ndr_pull_epm_rhs_osi_tp4(ndr, NDR_SCALARS, &r->osi_tp4));
1094 case EPM_PROTOCOL_OSI_CLNS: {
1095 NDR_CHECK(ndr_pull_epm_rhs_osi_clns(ndr, NDR_SCALARS, &r->osi_clns));
1098 case EPM_PROTOCOL_TCP: {
1099 NDR_CHECK(ndr_pull_epm_rhs_tcp(ndr, NDR_SCALARS, &r->tcp));
1102 case EPM_PROTOCOL_UDP: {
1103 NDR_CHECK(ndr_pull_epm_rhs_udp(ndr, NDR_SCALARS, &r->udp));
1106 case EPM_PROTOCOL_IP: {
1107 NDR_CHECK(ndr_pull_epm_rhs_ip(ndr, NDR_SCALARS, &r->ip));
1110 case EPM_PROTOCOL_NCADG: {
1111 NDR_CHECK(ndr_pull_epm_rhs_ncadg(ndr, NDR_SCALARS, &r->ncadg));
1114 case EPM_PROTOCOL_NCACN: {
1115 NDR_CHECK(ndr_pull_epm_rhs_ncacn(ndr, NDR_SCALARS, &r->ncacn));
1118 case EPM_PROTOCOL_NCALRPC: {
1119 NDR_CHECK(ndr_pull_epm_rhs_ncalrpc(ndr, NDR_SCALARS, &r->ncalrpc));
1122 case EPM_PROTOCOL_UUID: {
1123 NDR_CHECK(ndr_pull_epm_rhs_uuid(ndr, NDR_SCALARS, &r->uuid));
1126 case EPM_PROTOCOL_IPX: {
1127 NDR_CHECK(ndr_pull_epm_rhs_ipx(ndr, NDR_SCALARS, &r->ipx));
1130 case EPM_PROTOCOL_SMB: {
1131 NDR_CHECK(ndr_pull_epm_rhs_smb(ndr, NDR_SCALARS, &r->smb));
1134 case EPM_PROTOCOL_PIPE: {
1135 NDR_CHECK(ndr_pull_epm_rhs_pipe(ndr, NDR_SCALARS, &r->pipe));
1138 case EPM_PROTOCOL_NETBIOS: {
1139 NDR_CHECK(ndr_pull_epm_rhs_netbios(ndr, NDR_SCALARS, &r->netbios));
1142 case EPM_PROTOCOL_NETBEUI: {
1143 NDR_CHECK(ndr_pull_epm_rhs_netbeui(ndr, NDR_SCALARS, &r->netbeui));
1146 case EPM_PROTOCOL_SPX: {
1147 NDR_CHECK(ndr_pull_epm_rhs_spx(ndr, NDR_SCALARS, &r->spx));
1150 case EPM_PROTOCOL_NB_IPX: {
1151 NDR_CHECK(ndr_pull_epm_rhs_nb_ipx(ndr, NDR_SCALARS, &r->nb_ipx));
1154 case EPM_PROTOCOL_DSP: {
1155 NDR_CHECK(ndr_pull_epm_rhs_atalk_stream(ndr, NDR_SCALARS, &r->atalk_stream));
1158 case EPM_PROTOCOL_DDP: {
1159 NDR_CHECK(ndr_pull_epm_rhs_atalk_datagram(ndr, NDR_SCALARS, &r->atalk_datagram));
1162 case EPM_PROTOCOL_APPLETALK: {
1163 NDR_CHECK(ndr_pull_epm_rhs_appletalk(ndr, NDR_SCALARS, &r->appletalk));
1166 case EPM_PROTOCOL_VINES_SPP: {
1167 NDR_CHECK(ndr_pull_epm_rhs_vines_spp(ndr, NDR_SCALARS, &r->vines_spp));
1170 case EPM_PROTOCOL_VINES_IPC: {
1171 NDR_CHECK(ndr_pull_epm_rhs_vines_ipc(ndr, NDR_SCALARS, &r->vines_ipc));
1174 case EPM_PROTOCOL_STREETTALK: {
1175 NDR_CHECK(ndr_pull_epm_rhs_streettalk(ndr, NDR_SCALARS, &r->streettalk));
1178 case EPM_PROTOCOL_HTTP: {
1179 NDR_CHECK(ndr_pull_epm_rhs_http(ndr, NDR_SCALARS, &r->http));
1182 case EPM_PROTOCOL_UNIX_DS: {
1183 NDR_CHECK(ndr_pull_epm_rhs_unix_ds(ndr, NDR_SCALARS, &r->unix_ds));
1186 case EPM_PROTOCOL_NULL: {
1187 NDR_CHECK(ndr_pull_epm_rhs_null(ndr, NDR_SCALARS, &r->null));
1192 uint32_t _flags_save_DATA_BLOB = ndr->flags;
1193 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
1194 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->unknown));
1195 ndr->flags = _flags_save_DATA_BLOB;
1201 if (ndr_flags & NDR_BUFFERS) {
1203 case EPM_PROTOCOL_DNET_NSP:
1206 case EPM_PROTOCOL_OSI_TP4:
1209 case EPM_PROTOCOL_OSI_CLNS:
1212 case EPM_PROTOCOL_TCP:
1215 case EPM_PROTOCOL_UDP:
1218 case EPM_PROTOCOL_IP:
1221 case EPM_PROTOCOL_NCADG:
1224 case EPM_PROTOCOL_NCACN:
1227 case EPM_PROTOCOL_NCALRPC:
1230 case EPM_PROTOCOL_UUID:
1233 case EPM_PROTOCOL_IPX:
1236 case EPM_PROTOCOL_SMB:
1239 case EPM_PROTOCOL_PIPE:
1242 case EPM_PROTOCOL_NETBIOS:
1245 case EPM_PROTOCOL_NETBEUI:
1248 case EPM_PROTOCOL_SPX:
1251 case EPM_PROTOCOL_NB_IPX:
1254 case EPM_PROTOCOL_DSP:
1257 case EPM_PROTOCOL_DDP:
1260 case EPM_PROTOCOL_APPLETALK:
1263 case EPM_PROTOCOL_VINES_SPP:
1266 case EPM_PROTOCOL_VINES_IPC:
1269 case EPM_PROTOCOL_STREETTALK:
1272 case EPM_PROTOCOL_HTTP:
1275 case EPM_PROTOCOL_UNIX_DS:
1278 case EPM_PROTOCOL_NULL:
1286 ndr->flags = _flags_save_UNION;
1288 return NDR_ERR_SUCCESS;
1291 _PUBLIC_ void ndr_print_epm_rhs(struct ndr_print *ndr, const char *name, const union epm_rhs *r)
1295 uint32_t _flags_save_UNION = ndr->flags;
1296 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_BIGENDIAN);
1297 level = ndr_print_get_switch_value(ndr, r);
1298 ndr_print_union(ndr, name, level, "epm_rhs");
1300 case EPM_PROTOCOL_DNET_NSP:
1301 ndr_print_epm_rhs_dnet_nsp(ndr, "dnet_nsp", &r->dnet_nsp);
1304 case EPM_PROTOCOL_OSI_TP4:
1305 ndr_print_epm_rhs_osi_tp4(ndr, "osi_tp4", &r->osi_tp4);
1308 case EPM_PROTOCOL_OSI_CLNS:
1309 ndr_print_epm_rhs_osi_clns(ndr, "osi_clns", &r->osi_clns);
1312 case EPM_PROTOCOL_TCP:
1313 ndr_print_epm_rhs_tcp(ndr, "tcp", &r->tcp);
1316 case EPM_PROTOCOL_UDP:
1317 ndr_print_epm_rhs_udp(ndr, "udp", &r->udp);
1320 case EPM_PROTOCOL_IP:
1321 ndr_print_epm_rhs_ip(ndr, "ip", &r->ip);
1324 case EPM_PROTOCOL_NCADG:
1325 ndr_print_epm_rhs_ncadg(ndr, "ncadg", &r->ncadg);
1328 case EPM_PROTOCOL_NCACN:
1329 ndr_print_epm_rhs_ncacn(ndr, "ncacn", &r->ncacn);
1332 case EPM_PROTOCOL_NCALRPC:
1333 ndr_print_epm_rhs_ncalrpc(ndr, "ncalrpc", &r->ncalrpc);
1336 case EPM_PROTOCOL_UUID:
1337 ndr_print_epm_rhs_uuid(ndr, "uuid", &r->uuid);
1340 case EPM_PROTOCOL_IPX:
1341 ndr_print_epm_rhs_ipx(ndr, "ipx", &r->ipx);
1344 case EPM_PROTOCOL_SMB:
1345 ndr_print_epm_rhs_smb(ndr, "smb", &r->smb);
1348 case EPM_PROTOCOL_PIPE:
1349 ndr_print_epm_rhs_pipe(ndr, "pipe", &r->pipe);
1352 case EPM_PROTOCOL_NETBIOS:
1353 ndr_print_epm_rhs_netbios(ndr, "netbios", &r->netbios);
1356 case EPM_PROTOCOL_NETBEUI:
1357 ndr_print_epm_rhs_netbeui(ndr, "netbeui", &r->netbeui);
1360 case EPM_PROTOCOL_SPX:
1361 ndr_print_epm_rhs_spx(ndr, "spx", &r->spx);
1364 case EPM_PROTOCOL_NB_IPX:
1365 ndr_print_epm_rhs_nb_ipx(ndr, "nb_ipx", &r->nb_ipx);
1368 case EPM_PROTOCOL_DSP:
1369 ndr_print_epm_rhs_atalk_stream(ndr, "atalk_stream", &r->atalk_stream);
1372 case EPM_PROTOCOL_DDP:
1373 ndr_print_epm_rhs_atalk_datagram(ndr, "atalk_datagram", &r->atalk_datagram);
1376 case EPM_PROTOCOL_APPLETALK:
1377 ndr_print_epm_rhs_appletalk(ndr, "appletalk", &r->appletalk);
1380 case EPM_PROTOCOL_VINES_SPP:
1381 ndr_print_epm_rhs_vines_spp(ndr, "vines_spp", &r->vines_spp);
1384 case EPM_PROTOCOL_VINES_IPC:
1385 ndr_print_epm_rhs_vines_ipc(ndr, "vines_ipc", &r->vines_ipc);
1388 case EPM_PROTOCOL_STREETTALK:
1389 ndr_print_epm_rhs_streettalk(ndr, "streettalk", &r->streettalk);
1392 case EPM_PROTOCOL_HTTP:
1393 ndr_print_epm_rhs_http(ndr, "http", &r->http);
1396 case EPM_PROTOCOL_UNIX_DS:
1397 ndr_print_epm_rhs_unix_ds(ndr, "unix_ds", &r->unix_ds);
1400 case EPM_PROTOCOL_NULL:
1401 ndr_print_epm_rhs_null(ndr, "null", &r->null);
1405 ndr_print_DATA_BLOB(ndr, "unknown", r->unknown);
1409 ndr->flags = _flags_save_UNION;
1413 static enum ndr_err_code ndr_push_epm_lhs(struct ndr_push *ndr, int ndr_flags, const struct epm_lhs *r)
1415 if (ndr_flags & NDR_SCALARS) {
1416 NDR_CHECK(ndr_push_align(ndr, 4));
1417 NDR_CHECK(ndr_push_epm_protocol(ndr, NDR_SCALARS, r->protocol));
1419 uint32_t _flags_save_DATA_BLOB = ndr->flags;
1420 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
1421 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->lhs_data));
1422 ndr->flags = _flags_save_DATA_BLOB;
1425 if (ndr_flags & NDR_BUFFERS) {
1427 return NDR_ERR_SUCCESS;
1430 static enum ndr_err_code ndr_pull_epm_lhs(struct ndr_pull *ndr, int ndr_flags, struct epm_lhs *r)
1432 if (ndr_flags & NDR_SCALARS) {
1433 NDR_CHECK(ndr_pull_align(ndr, 4));
1434 NDR_CHECK(ndr_pull_epm_protocol(ndr, NDR_SCALARS, &r->protocol));
1436 uint32_t _flags_save_DATA_BLOB = ndr->flags;
1437 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
1438 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->lhs_data));
1439 ndr->flags = _flags_save_DATA_BLOB;
1442 if (ndr_flags & NDR_BUFFERS) {
1444 return NDR_ERR_SUCCESS;
1447 _PUBLIC_ void ndr_print_epm_lhs(struct ndr_print *ndr, const char *name, const struct epm_lhs *r)
1449 ndr_print_struct(ndr, name, "epm_lhs");
1451 ndr_print_epm_protocol(ndr, "protocol", r->protocol);
1452 ndr_print_DATA_BLOB(ndr, "lhs_data", r->lhs_data);
1456 static enum ndr_err_code ndr_push_epm_floor(struct ndr_push *ndr, int ndr_flags, const struct epm_floor *r)
1458 if (ndr_flags & NDR_SCALARS) {
1459 NDR_CHECK(ndr_push_align(ndr, 1));
1461 struct ndr_push *_ndr_lhs;
1462 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_lhs, 2, -1));
1463 NDR_CHECK(ndr_push_epm_lhs(_ndr_lhs, NDR_SCALARS, &r->lhs));
1464 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_lhs, 2, -1));
1467 struct ndr_push *_ndr_rhs;
1468 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_rhs, 2, -1));
1469 NDR_CHECK(ndr_push_set_switch_value(_ndr_rhs, &r->rhs, r->lhs.protocol));
1470 NDR_CHECK(ndr_push_epm_rhs(_ndr_rhs, NDR_SCALARS, &r->rhs));
1471 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_rhs, 2, -1));
1474 if (ndr_flags & NDR_BUFFERS) {
1476 return NDR_ERR_SUCCESS;
1479 static enum ndr_err_code ndr_pull_epm_floor(struct ndr_pull *ndr, int ndr_flags, struct epm_floor *r)
1481 if (ndr_flags & NDR_SCALARS) {
1482 NDR_CHECK(ndr_pull_align(ndr, 1));
1484 struct ndr_pull *_ndr_lhs;
1485 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_lhs, 2, -1));
1486 NDR_CHECK(ndr_pull_epm_lhs(_ndr_lhs, NDR_SCALARS, &r->lhs));
1487 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_lhs, 2, -1));
1490 struct ndr_pull *_ndr_rhs;
1491 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_rhs, 2, -1));
1492 NDR_CHECK(ndr_pull_set_switch_value(_ndr_rhs, &r->rhs, r->lhs.protocol));
1493 NDR_CHECK(ndr_pull_epm_rhs(_ndr_rhs, NDR_SCALARS, &r->rhs));
1494 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_rhs, 2, -1));
1497 if (ndr_flags & NDR_BUFFERS) {
1499 return NDR_ERR_SUCCESS;
1502 _PUBLIC_ void ndr_print_epm_floor(struct ndr_print *ndr, const char *name, const struct epm_floor *r)
1504 ndr_print_struct(ndr, name, "epm_floor");
1506 ndr_print_epm_lhs(ndr, "lhs", &r->lhs);
1507 ndr_print_set_switch_value(ndr, &r->rhs, r->lhs.protocol);
1508 ndr_print_epm_rhs(ndr, "rhs", &r->rhs);
1512 static enum ndr_err_code ndr_push_epm_tower(struct ndr_push *ndr, int ndr_flags, const struct epm_tower *r)
1514 uint32_t cntr_floors_0;
1516 uint32_t _flags_save_STRUCT = ndr->flags;
1517 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN);
1518 if (ndr_flags & NDR_SCALARS) {
1519 NDR_CHECK(ndr_push_align(ndr, 2));
1520 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_floors));
1521 for (cntr_floors_0 = 0; cntr_floors_0 < r->num_floors; cntr_floors_0++) {
1522 NDR_CHECK(ndr_push_epm_floor(ndr, NDR_SCALARS, &r->floors[cntr_floors_0]));
1525 if (ndr_flags & NDR_BUFFERS) {
1527 ndr->flags = _flags_save_STRUCT;
1529 return NDR_ERR_SUCCESS;
1532 static enum ndr_err_code ndr_pull_epm_tower(struct ndr_pull *ndr, int ndr_flags, struct epm_tower *r)
1534 uint32_t size_floors_0 = 0;
1535 uint32_t cntr_floors_0;
1536 TALLOC_CTX *_mem_save_floors_0;
1538 uint32_t _flags_save_STRUCT = ndr->flags;
1539 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN);
1540 if (ndr_flags & NDR_SCALARS) {
1541 NDR_CHECK(ndr_pull_align(ndr, 2));
1542 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_floors));
1543 size_floors_0 = r->num_floors;
1544 NDR_PULL_ALLOC_N(ndr, r->floors, size_floors_0);
1545 _mem_save_floors_0 = NDR_PULL_GET_MEM_CTX(ndr);
1546 NDR_PULL_SET_MEM_CTX(ndr, r->floors, 0);
1547 for (cntr_floors_0 = 0; cntr_floors_0 < size_floors_0; cntr_floors_0++) {
1548 NDR_CHECK(ndr_pull_epm_floor(ndr, NDR_SCALARS, &r->floors[cntr_floors_0]));
1550 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_floors_0, 0);
1552 if (ndr_flags & NDR_BUFFERS) {
1554 ndr->flags = _flags_save_STRUCT;
1556 return NDR_ERR_SUCCESS;
1559 _PUBLIC_ void ndr_print_epm_tower(struct ndr_print *ndr, const char *name, const struct epm_tower *r)
1561 uint32_t cntr_floors_0;
1562 ndr_print_struct(ndr, name, "epm_tower");
1564 uint32_t _flags_save_STRUCT = ndr->flags;
1565 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN);
1567 ndr_print_uint16(ndr, "num_floors", r->num_floors);
1568 ndr->print(ndr, "%s: ARRAY(%d)", "floors", (int)r->num_floors);
1570 for (cntr_floors_0=0;cntr_floors_0<r->num_floors;cntr_floors_0++) {
1572 if (asprintf(&idx_0, "[%d]", cntr_floors_0) != -1) {
1573 ndr_print_epm_floor(ndr, "floors", &r->floors[cntr_floors_0]);
1579 ndr->flags = _flags_save_STRUCT;
1583 static size_t ndr_size_epm_tower(const struct epm_tower *r, struct smb_iconv_convenience *ic, int flags)
1585 flags |= LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN;
1586 return ndr_size_struct(r, flags, (ndr_push_flags_fn_t)ndr_push_epm_tower, ic);
1589 static enum ndr_err_code ndr_push_epm_twr_t(struct ndr_push *ndr, int ndr_flags, const struct epm_twr_t *r)
1591 if (ndr_flags & NDR_SCALARS) {
1592 NDR_CHECK(ndr_push_align(ndr, 4));
1593 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_epm_tower(&r->tower, ndr->iconv_convenience, ndr->flags)));
1595 struct ndr_push *_ndr_tower;
1596 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_tower, 4, -1));
1597 NDR_CHECK(ndr_push_epm_tower(_ndr_tower, NDR_SCALARS, &r->tower));
1598 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_tower, 4, -1));
1601 if (ndr_flags & NDR_BUFFERS) {
1603 return NDR_ERR_SUCCESS;
1606 static enum ndr_err_code ndr_pull_epm_twr_t(struct ndr_pull *ndr, int ndr_flags, struct epm_twr_t *r)
1608 if (ndr_flags & NDR_SCALARS) {
1609 NDR_CHECK(ndr_pull_align(ndr, 4));
1610 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->tower_length));
1612 struct ndr_pull *_ndr_tower;
1613 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_tower, 4, -1));
1614 NDR_CHECK(ndr_pull_epm_tower(_ndr_tower, NDR_SCALARS, &r->tower));
1615 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_tower, 4, -1));
1618 if (ndr_flags & NDR_BUFFERS) {
1620 return NDR_ERR_SUCCESS;
1623 _PUBLIC_ void ndr_print_epm_twr_t(struct ndr_print *ndr, const char *name, const struct epm_twr_t *r)
1625 ndr_print_struct(ndr, name, "epm_twr_t");
1627 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);
1628 ndr_print_epm_tower(ndr, "tower", &r->tower);
1632 static enum ndr_err_code ndr_push_epm_entry_t(struct ndr_push *ndr, int ndr_flags, const struct epm_entry_t *r)
1634 if (ndr_flags & NDR_SCALARS) {
1635 NDR_CHECK(ndr_push_align(ndr, 4));
1636 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->object));
1637 NDR_CHECK(ndr_push_full_ptr(ndr, r->tower));
1638 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1639 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen(r->annotation) + 1));
1640 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->annotation, strlen(r->annotation) + 1, sizeof(uint8_t), CH_DOS));
1642 if (ndr_flags & NDR_BUFFERS) {
1644 NDR_CHECK(ndr_push_epm_twr_t(ndr, NDR_SCALARS, r->tower));
1647 return NDR_ERR_SUCCESS;
1650 static enum ndr_err_code ndr_pull_epm_entry_t(struct ndr_pull *ndr, int ndr_flags, struct epm_entry_t *r)
1652 uint32_t _ptr_tower;
1653 TALLOC_CTX *_mem_save_tower_0;
1654 uint32_t size_annotation_0 = 0;
1655 if (ndr_flags & NDR_SCALARS) {
1656 NDR_CHECK(ndr_pull_align(ndr, 4));
1657 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->object));
1658 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_tower));
1660 NDR_PULL_ALLOC(ndr, r->tower);
1664 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->__annotation_offset));
1665 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->__annotation_length));
1666 size_annotation_0 = r->__annotation_length;
1667 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->annotation, size_annotation_0, sizeof(uint8_t), CH_DOS));
1669 if (ndr_flags & NDR_BUFFERS) {
1671 _mem_save_tower_0 = NDR_PULL_GET_MEM_CTX(ndr);
1672 NDR_PULL_SET_MEM_CTX(ndr, r->tower, 0);
1673 NDR_CHECK(ndr_pull_epm_twr_t(ndr, NDR_SCALARS, r->tower));
1674 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_tower_0, 0);
1677 return NDR_ERR_SUCCESS;
1680 _PUBLIC_ void ndr_print_epm_entry_t(struct ndr_print *ndr, const char *name, const struct epm_entry_t *r)
1682 ndr_print_struct(ndr, name, "epm_entry_t");
1684 ndr_print_GUID(ndr, "object", &r->object);
1685 ndr_print_ptr(ndr, "tower", r->tower);
1688 ndr_print_epm_twr_t(ndr, "tower", r->tower);
1691 ndr_print_uint32(ndr, "__annotation_offset", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->__annotation_offset);
1692 ndr_print_uint32(ndr, "__annotation_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen(r->annotation) + 1:r->__annotation_length);
1693 ndr_print_string(ndr, "annotation", r->annotation);
1697 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)
1699 if (ndr_flags & NDR_SCALARS) {
1700 NDR_CHECK(ndr_push_align(ndr, 4));
1701 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->uuid));
1702 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->vers_major));
1703 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->vers_minor));
1705 if (ndr_flags & NDR_BUFFERS) {
1707 return NDR_ERR_SUCCESS;
1710 static enum ndr_err_code ndr_pull_rpc_if_id_t(struct ndr_pull *ndr, int ndr_flags, struct rpc_if_id_t *r)
1712 if (ndr_flags & NDR_SCALARS) {
1713 NDR_CHECK(ndr_pull_align(ndr, 4));
1714 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->uuid));
1715 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->vers_major));
1716 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->vers_minor));
1718 if (ndr_flags & NDR_BUFFERS) {
1720 return NDR_ERR_SUCCESS;
1723 _PUBLIC_ void ndr_print_rpc_if_id_t(struct ndr_print *ndr, const char *name, const struct rpc_if_id_t *r)
1725 ndr_print_struct(ndr, name, "rpc_if_id_t");
1727 ndr_print_GUID(ndr, "uuid", &r->uuid);
1728 ndr_print_uint16(ndr, "vers_major", r->vers_major);
1729 ndr_print_uint16(ndr, "vers_minor", r->vers_minor);
1733 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)
1735 if (ndr_flags & NDR_SCALARS) {
1736 NDR_CHECK(ndr_push_align(ndr, 4));
1737 NDR_CHECK(ndr_push_full_ptr(ndr, r->twr));
1739 if (ndr_flags & NDR_BUFFERS) {
1741 NDR_CHECK(ndr_push_epm_twr_t(ndr, NDR_SCALARS, r->twr));
1744 return NDR_ERR_SUCCESS;
1747 static enum ndr_err_code ndr_pull_epm_twr_p_t(struct ndr_pull *ndr, int ndr_flags, struct epm_twr_p_t *r)
1750 TALLOC_CTX *_mem_save_twr_0;
1751 if (ndr_flags & NDR_SCALARS) {
1752 NDR_CHECK(ndr_pull_align(ndr, 4));
1753 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_twr));
1755 NDR_PULL_ALLOC(ndr, r->twr);
1760 if (ndr_flags & NDR_BUFFERS) {
1762 _mem_save_twr_0 = NDR_PULL_GET_MEM_CTX(ndr);
1763 NDR_PULL_SET_MEM_CTX(ndr, r->twr, 0);
1764 NDR_CHECK(ndr_pull_epm_twr_t(ndr, NDR_SCALARS, r->twr));
1765 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_twr_0, 0);
1768 return NDR_ERR_SUCCESS;
1771 _PUBLIC_ void ndr_print_epm_twr_p_t(struct ndr_print *ndr, const char *name, const struct epm_twr_p_t *r)
1773 ndr_print_struct(ndr, name, "epm_twr_p_t");
1775 ndr_print_ptr(ndr, "twr", r->twr);
1778 ndr_print_epm_twr_t(ndr, "twr", r->twr);
1784 static enum ndr_err_code ndr_push_epm_Insert(struct ndr_push *ndr, int flags, const struct epm_Insert *r)
1786 uint32_t cntr_entries_0;
1787 if (flags & NDR_IN) {
1788 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_ents));
1789 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_ents));
1790 for (cntr_entries_0 = 0; cntr_entries_0 < r->in.num_ents; cntr_entries_0++) {
1791 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_SCALARS, &r->in.entries[cntr_entries_0]));
1793 for (cntr_entries_0 = 0; cntr_entries_0 < r->in.num_ents; cntr_entries_0++) {
1794 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_BUFFERS, &r->in.entries[cntr_entries_0]));
1796 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.replace));
1798 if (flags & NDR_OUT) {
1799 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
1801 return NDR_ERR_SUCCESS;
1804 static enum ndr_err_code ndr_pull_epm_Insert(struct ndr_pull *ndr, int flags, struct epm_Insert *r)
1806 uint32_t size_entries_0 = 0;
1807 uint32_t cntr_entries_0;
1808 TALLOC_CTX *_mem_save_entries_0;
1809 if (flags & NDR_IN) {
1810 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_ents));
1811 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.entries));
1812 size_entries_0 = ndr_get_array_size(ndr, &r->in.entries);
1813 NDR_PULL_ALLOC_N(ndr, r->in.entries, size_entries_0);
1814 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
1815 NDR_PULL_SET_MEM_CTX(ndr, r->in.entries, 0);
1816 for (cntr_entries_0 = 0; cntr_entries_0 < size_entries_0; cntr_entries_0++) {
1817 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_SCALARS, &r->in.entries[cntr_entries_0]));
1819 for (cntr_entries_0 = 0; cntr_entries_0 < size_entries_0; cntr_entries_0++) {
1820 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_BUFFERS, &r->in.entries[cntr_entries_0]));
1822 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
1823 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.replace));
1824 if (r->in.entries) {
1825 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.entries, r->in.num_ents));
1828 if (flags & NDR_OUT) {
1829 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
1831 return NDR_ERR_SUCCESS;
1834 _PUBLIC_ void ndr_print_epm_Insert(struct ndr_print *ndr, const char *name, int flags, const struct epm_Insert *r)
1836 uint32_t cntr_entries_0;
1837 ndr_print_struct(ndr, name, "epm_Insert");
1839 if (flags & NDR_SET_VALUES) {
1840 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
1842 if (flags & NDR_IN) {
1843 ndr_print_struct(ndr, "in", "epm_Insert");
1845 ndr_print_uint32(ndr, "num_ents", r->in.num_ents);
1846 ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->in.num_ents);
1848 for (cntr_entries_0=0;cntr_entries_0<r->in.num_ents;cntr_entries_0++) {
1850 if (asprintf(&idx_0, "[%d]", cntr_entries_0) != -1) {
1851 ndr_print_epm_entry_t(ndr, "entries", &r->in.entries[cntr_entries_0]);
1856 ndr_print_uint32(ndr, "replace", r->in.replace);
1859 if (flags & NDR_OUT) {
1860 ndr_print_struct(ndr, "out", "epm_Insert");
1862 ndr_print_uint32(ndr, "result", r->out.result);
1868 static enum ndr_err_code ndr_push_epm_Delete(struct ndr_push *ndr, int flags, const struct epm_Delete *r)
1870 uint32_t cntr_entries_0;
1871 if (flags & NDR_IN) {
1872 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_ents));
1873 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_ents));
1874 for (cntr_entries_0 = 0; cntr_entries_0 < r->in.num_ents; cntr_entries_0++) {
1875 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_SCALARS, &r->in.entries[cntr_entries_0]));
1877 for (cntr_entries_0 = 0; cntr_entries_0 < r->in.num_ents; cntr_entries_0++) {
1878 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_BUFFERS, &r->in.entries[cntr_entries_0]));
1881 if (flags & NDR_OUT) {
1882 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
1884 return NDR_ERR_SUCCESS;
1887 static enum ndr_err_code ndr_pull_epm_Delete(struct ndr_pull *ndr, int flags, struct epm_Delete *r)
1889 uint32_t size_entries_0 = 0;
1890 uint32_t cntr_entries_0;
1891 TALLOC_CTX *_mem_save_entries_0;
1892 if (flags & NDR_IN) {
1893 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_ents));
1894 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.entries));
1895 size_entries_0 = ndr_get_array_size(ndr, &r->in.entries);
1896 NDR_PULL_ALLOC_N(ndr, r->in.entries, size_entries_0);
1897 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
1898 NDR_PULL_SET_MEM_CTX(ndr, r->in.entries, 0);
1899 for (cntr_entries_0 = 0; cntr_entries_0 < size_entries_0; cntr_entries_0++) {
1900 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_SCALARS, &r->in.entries[cntr_entries_0]));
1902 for (cntr_entries_0 = 0; cntr_entries_0 < size_entries_0; cntr_entries_0++) {
1903 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_BUFFERS, &r->in.entries[cntr_entries_0]));
1905 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
1906 if (r->in.entries) {
1907 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.entries, r->in.num_ents));
1910 if (flags & NDR_OUT) {
1911 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
1913 return NDR_ERR_SUCCESS;
1916 _PUBLIC_ void ndr_print_epm_Delete(struct ndr_print *ndr, const char *name, int flags, const struct epm_Delete *r)
1918 uint32_t cntr_entries_0;
1919 ndr_print_struct(ndr, name, "epm_Delete");
1921 if (flags & NDR_SET_VALUES) {
1922 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
1924 if (flags & NDR_IN) {
1925 ndr_print_struct(ndr, "in", "epm_Delete");
1927 ndr_print_uint32(ndr, "num_ents", r->in.num_ents);
1928 ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)r->in.num_ents);
1930 for (cntr_entries_0=0;cntr_entries_0<r->in.num_ents;cntr_entries_0++) {
1932 if (asprintf(&idx_0, "[%d]", cntr_entries_0) != -1) {
1933 ndr_print_epm_entry_t(ndr, "entries", &r->in.entries[cntr_entries_0]);
1940 if (flags & NDR_OUT) {
1941 ndr_print_struct(ndr, "out", "epm_Delete");
1943 ndr_print_uint32(ndr, "result", r->out.result);
1949 static enum ndr_err_code ndr_push_epm_Lookup(struct ndr_push *ndr, int flags, const struct epm_Lookup *r)
1951 uint32_t cntr_entries_0;
1952 if (flags & NDR_IN) {
1953 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.inquiry_type));
1954 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.object));
1956 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->in.object));
1958 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.interface_id));
1959 if (r->in.interface_id) {
1960 NDR_CHECK(ndr_push_rpc_if_id_t(ndr, NDR_SCALARS, r->in.interface_id));
1962 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.vers_option));
1963 if (r->in.entry_handle == NULL) {
1964 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
1966 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
1967 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_ents));
1969 if (flags & NDR_OUT) {
1970 if (r->out.entry_handle == NULL) {
1971 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
1973 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
1974 if (r->out.num_ents == NULL) {
1975 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
1977 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ents));
1978 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_ents));
1979 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1980 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ents));
1981 for (cntr_entries_0 = 0; cntr_entries_0 < *r->out.num_ents; cntr_entries_0++) {
1982 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_SCALARS, &r->out.entries[cntr_entries_0]));
1984 for (cntr_entries_0 = 0; cntr_entries_0 < *r->out.num_ents; cntr_entries_0++) {
1985 NDR_CHECK(ndr_push_epm_entry_t(ndr, NDR_BUFFERS, &r->out.entries[cntr_entries_0]));
1987 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
1989 return NDR_ERR_SUCCESS;
1992 static enum ndr_err_code ndr_pull_epm_Lookup(struct ndr_pull *ndr, int flags, struct epm_Lookup *r)
1994 uint32_t _ptr_object;
1995 uint32_t _ptr_interface_id;
1996 uint32_t size_entries_0 = 0;
1997 uint32_t length_entries_0 = 0;
1998 uint32_t cntr_entries_0;
1999 TALLOC_CTX *_mem_save_object_0;
2000 TALLOC_CTX *_mem_save_interface_id_0;
2001 TALLOC_CTX *_mem_save_entry_handle_0;
2002 TALLOC_CTX *_mem_save_num_ents_0;
2003 TALLOC_CTX *_mem_save_entries_0;
2004 if (flags & NDR_IN) {
2005 ZERO_STRUCT(r->out);
2007 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.inquiry_type));
2008 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object));
2010 NDR_PULL_ALLOC(ndr, r->in.object);
2012 r->in.object = NULL;
2015 _mem_save_object_0 = NDR_PULL_GET_MEM_CTX(ndr);
2016 NDR_PULL_SET_MEM_CTX(ndr, r->in.object, 0);
2017 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->in.object));
2018 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_0, 0);
2020 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_interface_id));
2021 if (_ptr_interface_id) {
2022 NDR_PULL_ALLOC(ndr, r->in.interface_id);
2024 r->in.interface_id = NULL;
2026 if (r->in.interface_id) {
2027 _mem_save_interface_id_0 = NDR_PULL_GET_MEM_CTX(ndr);
2028 NDR_PULL_SET_MEM_CTX(ndr, r->in.interface_id, 0);
2029 NDR_CHECK(ndr_pull_rpc_if_id_t(ndr, NDR_SCALARS, r->in.interface_id));
2030 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_interface_id_0, 0);
2032 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.vers_option));
2033 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2034 NDR_PULL_ALLOC(ndr, r->in.entry_handle);
2036 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2037 NDR_PULL_SET_MEM_CTX(ndr, r->in.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2038 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2039 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2040 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_ents));
2041 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2042 *r->out.entry_handle = *r->in.entry_handle;
2043 NDR_PULL_ALLOC(ndr, r->out.num_ents);
2044 ZERO_STRUCTP(r->out.num_ents);
2046 if (flags & NDR_OUT) {
2047 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2048 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2050 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2051 NDR_PULL_SET_MEM_CTX(ndr, r->out.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2052 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2053 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2054 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2055 NDR_PULL_ALLOC(ndr, r->out.num_ents);
2057 _mem_save_num_ents_0 = NDR_PULL_GET_MEM_CTX(ndr);
2058 NDR_PULL_SET_MEM_CTX(ndr, r->out.num_ents, LIBNDR_FLAG_REF_ALLOC);
2059 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_ents));
2060 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ents_0, LIBNDR_FLAG_REF_ALLOC);
2061 NDR_CHECK(ndr_pull_array_size(ndr, &r->out.entries));
2062 NDR_CHECK(ndr_pull_array_length(ndr, &r->out.entries));
2063 size_entries_0 = ndr_get_array_size(ndr, &r->out.entries);
2064 length_entries_0 = ndr_get_array_length(ndr, &r->out.entries);
2065 if (length_entries_0 > size_entries_0) {
2066 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_entries_0, length_entries_0);
2068 NDR_PULL_ALLOC_N(ndr, r->out.entries, size_entries_0);
2069 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
2070 NDR_PULL_SET_MEM_CTX(ndr, r->out.entries, 0);
2071 for (cntr_entries_0 = 0; cntr_entries_0 < length_entries_0; cntr_entries_0++) {
2072 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_SCALARS, &r->out.entries[cntr_entries_0]));
2074 for (cntr_entries_0 = 0; cntr_entries_0 < length_entries_0; cntr_entries_0++) {
2075 NDR_CHECK(ndr_pull_epm_entry_t(ndr, NDR_BUFFERS, &r->out.entries[cntr_entries_0]));
2077 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
2078 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2079 if (r->out.entries) {
2080 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->out.entries, r->in.max_ents));
2082 if (r->out.entries) {
2083 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->out.entries, *r->out.num_ents));
2086 return NDR_ERR_SUCCESS;
2089 _PUBLIC_ void ndr_print_epm_Lookup(struct ndr_print *ndr, const char *name, int flags, const struct epm_Lookup *r)
2091 uint32_t cntr_entries_0;
2092 ndr_print_struct(ndr, name, "epm_Lookup");
2094 if (flags & NDR_SET_VALUES) {
2095 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2097 if (flags & NDR_IN) {
2098 ndr_print_struct(ndr, "in", "epm_Lookup");
2100 ndr_print_uint32(ndr, "inquiry_type", r->in.inquiry_type);
2101 ndr_print_ptr(ndr, "object", r->in.object);
2104 ndr_print_GUID(ndr, "object", r->in.object);
2107 ndr_print_ptr(ndr, "interface_id", r->in.interface_id);
2109 if (r->in.interface_id) {
2110 ndr_print_rpc_if_id_t(ndr, "interface_id", r->in.interface_id);
2113 ndr_print_uint32(ndr, "vers_option", r->in.vers_option);
2114 ndr_print_ptr(ndr, "entry_handle", r->in.entry_handle);
2116 ndr_print_policy_handle(ndr, "entry_handle", r->in.entry_handle);
2118 ndr_print_uint32(ndr, "max_ents", r->in.max_ents);
2121 if (flags & NDR_OUT) {
2122 ndr_print_struct(ndr, "out", "epm_Lookup");
2124 ndr_print_ptr(ndr, "entry_handle", r->out.entry_handle);
2126 ndr_print_policy_handle(ndr, "entry_handle", r->out.entry_handle);
2128 ndr_print_ptr(ndr, "num_ents", r->out.num_ents);
2130 ndr_print_uint32(ndr, "num_ents", *r->out.num_ents);
2132 ndr->print(ndr, "%s: ARRAY(%d)", "entries", (int)*r->out.num_ents);
2134 for (cntr_entries_0=0;cntr_entries_0<*r->out.num_ents;cntr_entries_0++) {
2136 if (asprintf(&idx_0, "[%d]", cntr_entries_0) != -1) {
2137 ndr_print_epm_entry_t(ndr, "entries", &r->out.entries[cntr_entries_0]);
2142 ndr_print_uint32(ndr, "result", r->out.result);
2148 _PUBLIC_ enum ndr_err_code ndr_push_epm_Map(struct ndr_push *ndr, int flags, const struct epm_Map *r)
2150 uint32_t cntr_towers_0;
2151 if (flags & NDR_IN) {
2152 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.object));
2154 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->in.object));
2156 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.map_tower));
2157 if (r->in.map_tower) {
2158 NDR_CHECK(ndr_push_epm_twr_t(ndr, NDR_SCALARS, r->in.map_tower));
2160 if (r->in.entry_handle == NULL) {
2161 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2163 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2164 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_towers));
2166 if (flags & NDR_OUT) {
2167 if (r->out.entry_handle == NULL) {
2168 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2170 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2171 if (r->out.num_towers == NULL) {
2172 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2174 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_towers));
2175 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_towers));
2176 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2177 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_towers));
2178 for (cntr_towers_0 = 0; cntr_towers_0 < *r->out.num_towers; cntr_towers_0++) {
2179 NDR_CHECK(ndr_push_epm_twr_p_t(ndr, NDR_SCALARS, &r->out.towers[cntr_towers_0]));
2181 for (cntr_towers_0 = 0; cntr_towers_0 < *r->out.num_towers; cntr_towers_0++) {
2182 NDR_CHECK(ndr_push_epm_twr_p_t(ndr, NDR_BUFFERS, &r->out.towers[cntr_towers_0]));
2184 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2186 return NDR_ERR_SUCCESS;
2189 _PUBLIC_ enum ndr_err_code ndr_pull_epm_Map(struct ndr_pull *ndr, int flags, struct epm_Map *r)
2191 uint32_t _ptr_object;
2192 uint32_t _ptr_map_tower;
2193 uint32_t size_towers_0 = 0;
2194 uint32_t length_towers_0 = 0;
2195 uint32_t cntr_towers_0;
2196 TALLOC_CTX *_mem_save_object_0;
2197 TALLOC_CTX *_mem_save_map_tower_0;
2198 TALLOC_CTX *_mem_save_entry_handle_0;
2199 TALLOC_CTX *_mem_save_num_towers_0;
2200 TALLOC_CTX *_mem_save_towers_0;
2201 if (flags & NDR_IN) {
2202 ZERO_STRUCT(r->out);
2204 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object));
2206 NDR_PULL_ALLOC(ndr, r->in.object);
2208 r->in.object = NULL;
2211 _mem_save_object_0 = NDR_PULL_GET_MEM_CTX(ndr);
2212 NDR_PULL_SET_MEM_CTX(ndr, r->in.object, 0);
2213 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->in.object));
2214 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_0, 0);
2216 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_map_tower));
2217 if (_ptr_map_tower) {
2218 NDR_PULL_ALLOC(ndr, r->in.map_tower);
2220 r->in.map_tower = NULL;
2222 if (r->in.map_tower) {
2223 _mem_save_map_tower_0 = NDR_PULL_GET_MEM_CTX(ndr);
2224 NDR_PULL_SET_MEM_CTX(ndr, r->in.map_tower, 0);
2225 NDR_CHECK(ndr_pull_epm_twr_t(ndr, NDR_SCALARS, r->in.map_tower));
2226 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_map_tower_0, 0);
2228 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2229 NDR_PULL_ALLOC(ndr, r->in.entry_handle);
2231 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2232 NDR_PULL_SET_MEM_CTX(ndr, r->in.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2233 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2234 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2235 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_towers));
2236 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2237 *r->out.entry_handle = *r->in.entry_handle;
2238 NDR_PULL_ALLOC(ndr, r->out.num_towers);
2239 ZERO_STRUCTP(r->out.num_towers);
2241 if (flags & NDR_OUT) {
2242 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2243 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2245 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2246 NDR_PULL_SET_MEM_CTX(ndr, r->out.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2247 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2248 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2249 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2250 NDR_PULL_ALLOC(ndr, r->out.num_towers);
2252 _mem_save_num_towers_0 = NDR_PULL_GET_MEM_CTX(ndr);
2253 NDR_PULL_SET_MEM_CTX(ndr, r->out.num_towers, LIBNDR_FLAG_REF_ALLOC);
2254 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_towers));
2255 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_towers_0, LIBNDR_FLAG_REF_ALLOC);
2256 NDR_CHECK(ndr_pull_array_size(ndr, &r->out.towers));
2257 NDR_CHECK(ndr_pull_array_length(ndr, &r->out.towers));
2258 size_towers_0 = ndr_get_array_size(ndr, &r->out.towers);
2259 length_towers_0 = ndr_get_array_length(ndr, &r->out.towers);
2260 if (length_towers_0 > size_towers_0) {
2261 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_towers_0, length_towers_0);
2263 NDR_PULL_ALLOC_N(ndr, r->out.towers, size_towers_0);
2264 _mem_save_towers_0 = NDR_PULL_GET_MEM_CTX(ndr);
2265 NDR_PULL_SET_MEM_CTX(ndr, r->out.towers, 0);
2266 for (cntr_towers_0 = 0; cntr_towers_0 < length_towers_0; cntr_towers_0++) {
2267 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr, NDR_SCALARS, &r->out.towers[cntr_towers_0]));
2269 for (cntr_towers_0 = 0; cntr_towers_0 < length_towers_0; cntr_towers_0++) {
2270 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr, NDR_BUFFERS, &r->out.towers[cntr_towers_0]));
2272 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_towers_0, 0);
2273 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2274 if (r->out.towers) {
2275 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->out.towers, r->in.max_towers));
2277 if (r->out.towers) {
2278 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->out.towers, *r->out.num_towers));
2281 return NDR_ERR_SUCCESS;
2284 _PUBLIC_ void ndr_print_epm_Map(struct ndr_print *ndr, const char *name, int flags, const struct epm_Map *r)
2286 uint32_t cntr_towers_0;
2287 ndr_print_struct(ndr, name, "epm_Map");
2289 if (flags & NDR_SET_VALUES) {
2290 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2292 if (flags & NDR_IN) {
2293 ndr_print_struct(ndr, "in", "epm_Map");
2295 ndr_print_ptr(ndr, "object", r->in.object);
2298 ndr_print_GUID(ndr, "object", r->in.object);
2301 ndr_print_ptr(ndr, "map_tower", r->in.map_tower);
2303 if (r->in.map_tower) {
2304 ndr_print_epm_twr_t(ndr, "map_tower", r->in.map_tower);
2307 ndr_print_ptr(ndr, "entry_handle", r->in.entry_handle);
2309 ndr_print_policy_handle(ndr, "entry_handle", r->in.entry_handle);
2311 ndr_print_uint32(ndr, "max_towers", r->in.max_towers);
2314 if (flags & NDR_OUT) {
2315 ndr_print_struct(ndr, "out", "epm_Map");
2317 ndr_print_ptr(ndr, "entry_handle", r->out.entry_handle);
2319 ndr_print_policy_handle(ndr, "entry_handle", r->out.entry_handle);
2321 ndr_print_ptr(ndr, "num_towers", r->out.num_towers);
2323 ndr_print_uint32(ndr, "num_towers", *r->out.num_towers);
2325 ndr->print(ndr, "%s: ARRAY(%d)", "towers", (int)*r->out.num_towers);
2327 for (cntr_towers_0=0;cntr_towers_0<*r->out.num_towers;cntr_towers_0++) {
2329 if (asprintf(&idx_0, "[%d]", cntr_towers_0) != -1) {
2330 ndr_print_epm_twr_p_t(ndr, "towers", &r->out.towers[cntr_towers_0]);
2335 ndr_print_uint32(ndr, "result", r->out.result);
2341 static enum ndr_err_code ndr_push_epm_LookupHandleFree(struct ndr_push *ndr, int flags, const struct epm_LookupHandleFree *r)
2343 if (flags & NDR_IN) {
2344 if (r->in.entry_handle == NULL) {
2345 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2347 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2349 if (flags & NDR_OUT) {
2350 if (r->out.entry_handle == NULL) {
2351 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2353 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2354 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2356 return NDR_ERR_SUCCESS;
2359 static enum ndr_err_code ndr_pull_epm_LookupHandleFree(struct ndr_pull *ndr, int flags, struct epm_LookupHandleFree *r)
2361 TALLOC_CTX *_mem_save_entry_handle_0;
2362 if (flags & NDR_IN) {
2363 ZERO_STRUCT(r->out);
2365 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2366 NDR_PULL_ALLOC(ndr, r->in.entry_handle);
2368 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2369 NDR_PULL_SET_MEM_CTX(ndr, r->in.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2370 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.entry_handle));
2371 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2372 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2373 *r->out.entry_handle = *r->in.entry_handle;
2375 if (flags & NDR_OUT) {
2376 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2377 NDR_PULL_ALLOC(ndr, r->out.entry_handle);
2379 _mem_save_entry_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
2380 NDR_PULL_SET_MEM_CTX(ndr, r->out.entry_handle, LIBNDR_FLAG_REF_ALLOC);
2381 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.entry_handle));
2382 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_handle_0, LIBNDR_FLAG_REF_ALLOC);
2383 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2385 return NDR_ERR_SUCCESS;
2388 _PUBLIC_ void ndr_print_epm_LookupHandleFree(struct ndr_print *ndr, const char *name, int flags, const struct epm_LookupHandleFree *r)
2390 ndr_print_struct(ndr, name, "epm_LookupHandleFree");
2392 if (flags & NDR_SET_VALUES) {
2393 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2395 if (flags & NDR_IN) {
2396 ndr_print_struct(ndr, "in", "epm_LookupHandleFree");
2398 ndr_print_ptr(ndr, "entry_handle", r->in.entry_handle);
2400 ndr_print_policy_handle(ndr, "entry_handle", r->in.entry_handle);
2404 if (flags & NDR_OUT) {
2405 ndr_print_struct(ndr, "out", "epm_LookupHandleFree");
2407 ndr_print_ptr(ndr, "entry_handle", r->out.entry_handle);
2409 ndr_print_policy_handle(ndr, "entry_handle", r->out.entry_handle);
2411 ndr_print_uint32(ndr, "result", r->out.result);
2417 static enum ndr_err_code ndr_push_epm_InqObject(struct ndr_push *ndr, int flags, const struct epm_InqObject *r)
2419 if (flags & NDR_IN) {
2420 if (r->in.epm_object == NULL) {
2421 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
2423 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->in.epm_object));
2425 if (flags & NDR_OUT) {
2426 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2428 return NDR_ERR_SUCCESS;
2431 static enum ndr_err_code ndr_pull_epm_InqObject(struct ndr_pull *ndr, int flags, struct epm_InqObject *r)
2433 TALLOC_CTX *_mem_save_epm_object_0;
2434 if (flags & NDR_IN) {
2435 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
2436 NDR_PULL_ALLOC(ndr, r->in.epm_object);
2438 _mem_save_epm_object_0 = NDR_PULL_GET_MEM_CTX(ndr);
2439 NDR_PULL_SET_MEM_CTX(ndr, r->in.epm_object, LIBNDR_FLAG_REF_ALLOC);
2440 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->in.epm_object));
2441 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_epm_object_0, LIBNDR_FLAG_REF_ALLOC);
2443 if (flags & NDR_OUT) {
2444 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2446 return NDR_ERR_SUCCESS;
2449 _PUBLIC_ void ndr_print_epm_InqObject(struct ndr_print *ndr, const char *name, int flags, const struct epm_InqObject *r)
2451 ndr_print_struct(ndr, name, "epm_InqObject");
2453 if (flags & NDR_SET_VALUES) {
2454 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2456 if (flags & NDR_IN) {
2457 ndr_print_struct(ndr, "in", "epm_InqObject");
2459 ndr_print_ptr(ndr, "epm_object", r->in.epm_object);
2461 ndr_print_GUID(ndr, "epm_object", r->in.epm_object);
2465 if (flags & NDR_OUT) {
2466 ndr_print_struct(ndr, "out", "epm_InqObject");
2468 ndr_print_uint32(ndr, "result", r->out.result);
2474 static enum ndr_err_code ndr_push_epm_MgmtDelete(struct ndr_push *ndr, int flags, const struct epm_MgmtDelete *r)
2476 if (flags & NDR_IN) {
2477 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.object_speced));
2478 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.object));
2480 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->in.object));
2482 NDR_CHECK(ndr_push_full_ptr(ndr, r->in.tower));
2484 NDR_CHECK(ndr_push_epm_twr_t(ndr, NDR_SCALARS, r->in.tower));
2487 if (flags & NDR_OUT) {
2488 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2490 return NDR_ERR_SUCCESS;
2493 static enum ndr_err_code ndr_pull_epm_MgmtDelete(struct ndr_pull *ndr, int flags, struct epm_MgmtDelete *r)
2495 uint32_t _ptr_object;
2496 uint32_t _ptr_tower;
2497 TALLOC_CTX *_mem_save_object_0;
2498 TALLOC_CTX *_mem_save_tower_0;
2499 if (flags & NDR_IN) {
2500 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.object_speced));
2501 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object));
2503 NDR_PULL_ALLOC(ndr, r->in.object);
2505 r->in.object = NULL;
2508 _mem_save_object_0 = NDR_PULL_GET_MEM_CTX(ndr);
2509 NDR_PULL_SET_MEM_CTX(ndr, r->in.object, 0);
2510 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->in.object));
2511 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_0, 0);
2513 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_tower));
2515 NDR_PULL_ALLOC(ndr, r->in.tower);
2520 _mem_save_tower_0 = NDR_PULL_GET_MEM_CTX(ndr);
2521 NDR_PULL_SET_MEM_CTX(ndr, r->in.tower, 0);
2522 NDR_CHECK(ndr_pull_epm_twr_t(ndr, NDR_SCALARS, r->in.tower));
2523 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_tower_0, 0);
2526 if (flags & NDR_OUT) {
2527 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2529 return NDR_ERR_SUCCESS;
2532 _PUBLIC_ void ndr_print_epm_MgmtDelete(struct ndr_print *ndr, const char *name, int flags, const struct epm_MgmtDelete *r)
2534 ndr_print_struct(ndr, name, "epm_MgmtDelete");
2536 if (flags & NDR_SET_VALUES) {
2537 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2539 if (flags & NDR_IN) {
2540 ndr_print_struct(ndr, "in", "epm_MgmtDelete");
2542 ndr_print_uint32(ndr, "object_speced", r->in.object_speced);
2543 ndr_print_ptr(ndr, "object", r->in.object);
2546 ndr_print_GUID(ndr, "object", r->in.object);
2549 ndr_print_ptr(ndr, "tower", r->in.tower);
2552 ndr_print_epm_twr_t(ndr, "tower", r->in.tower);
2557 if (flags & NDR_OUT) {
2558 ndr_print_struct(ndr, "out", "epm_MgmtDelete");
2560 ndr_print_uint32(ndr, "result", r->out.result);
2566 static enum ndr_err_code ndr_push_epm_MapAuth(struct ndr_push *ndr, int flags, const struct epm_MapAuth *r)
2568 if (flags & NDR_IN) {
2570 if (flags & NDR_OUT) {
2571 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
2573 return NDR_ERR_SUCCESS;
2576 static enum ndr_err_code ndr_pull_epm_MapAuth(struct ndr_pull *ndr, int flags, struct epm_MapAuth *r)
2578 if (flags & NDR_IN) {
2580 if (flags & NDR_OUT) {
2581 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
2583 return NDR_ERR_SUCCESS;
2586 _PUBLIC_ void ndr_print_epm_MapAuth(struct ndr_print *ndr, const char *name, int flags, const struct epm_MapAuth *r)
2588 ndr_print_struct(ndr, name, "epm_MapAuth");
2590 if (flags & NDR_SET_VALUES) {
2591 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
2593 if (flags & NDR_IN) {
2594 ndr_print_struct(ndr, "in", "epm_MapAuth");
2598 if (flags & NDR_OUT) {
2599 ndr_print_struct(ndr, "out", "epm_MapAuth");
2601 ndr_print_uint32(ndr, "result", r->out.result);
2607 static const struct ndr_interface_call epmapper_calls[] = {
2610 sizeof(struct epm_Insert),
2611 (ndr_push_flags_fn_t) ndr_push_epm_Insert,
2612 (ndr_pull_flags_fn_t) ndr_pull_epm_Insert,
2613 (ndr_print_function_t) ndr_print_epm_Insert,
2618 sizeof(struct epm_Delete),
2619 (ndr_push_flags_fn_t) ndr_push_epm_Delete,
2620 (ndr_pull_flags_fn_t) ndr_pull_epm_Delete,
2621 (ndr_print_function_t) ndr_print_epm_Delete,
2626 sizeof(struct epm_Lookup),
2627 (ndr_push_flags_fn_t) ndr_push_epm_Lookup,
2628 (ndr_pull_flags_fn_t) ndr_pull_epm_Lookup,
2629 (ndr_print_function_t) ndr_print_epm_Lookup,
2634 sizeof(struct epm_Map),
2635 (ndr_push_flags_fn_t) ndr_push_epm_Map,
2636 (ndr_pull_flags_fn_t) ndr_pull_epm_Map,
2637 (ndr_print_function_t) ndr_print_epm_Map,
2641 "epm_LookupHandleFree",
2642 sizeof(struct epm_LookupHandleFree),
2643 (ndr_push_flags_fn_t) ndr_push_epm_LookupHandleFree,
2644 (ndr_pull_flags_fn_t) ndr_pull_epm_LookupHandleFree,
2645 (ndr_print_function_t) ndr_print_epm_LookupHandleFree,
2650 sizeof(struct epm_InqObject),
2651 (ndr_push_flags_fn_t) ndr_push_epm_InqObject,
2652 (ndr_pull_flags_fn_t) ndr_pull_epm_InqObject,
2653 (ndr_print_function_t) ndr_print_epm_InqObject,
2658 sizeof(struct epm_MgmtDelete),
2659 (ndr_push_flags_fn_t) ndr_push_epm_MgmtDelete,
2660 (ndr_pull_flags_fn_t) ndr_pull_epm_MgmtDelete,
2661 (ndr_print_function_t) ndr_print_epm_MgmtDelete,
2666 sizeof(struct epm_MapAuth),
2667 (ndr_push_flags_fn_t) ndr_push_epm_MapAuth,
2668 (ndr_pull_flags_fn_t) ndr_pull_epm_MapAuth,
2669 (ndr_print_function_t) ndr_print_epm_MapAuth,
2672 { NULL, 0, NULL, NULL, NULL, false }
2675 static const char * const epmapper_endpoint_strings[] = {
2676 "ncacn_np:[\\pipe\\epmapper]",
2677 "ncacn_ip_tcp:[135]",
2678 "ncalrpc:[EPMAPPER]",
2681 static const struct ndr_interface_string_array epmapper_endpoints = {
2683 .names = epmapper_endpoint_strings
2686 static const char * const epmapper_authservice_strings[] = {
2690 static const struct ndr_interface_string_array epmapper_authservices = {
2692 .names = epmapper_authservice_strings
2696 const struct ndr_interface_table ndr_table_epmapper = {
2699 {0xe1af8308,0x5d1f,0x11c9,{0x91,0xa4},{0x08,0x00,0x2b,0x14,0xa0,0xfa}},
2700 NDR_EPMAPPER_VERSION
2702 .helpstring = NDR_EPMAPPER_HELPSTRING,
2704 .calls = epmapper_calls,
2705 .endpoints = &epmapper_endpoints,
2706 .authservices = &epmapper_authservices