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 cntr_floors_0
;
1535 TALLOC_CTX
*_mem_save_floors_0
;
1537 uint32_t _flags_save_STRUCT
= ndr
->flags
;
1538 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
);
1539 if (ndr_flags
& NDR_SCALARS
) {
1540 NDR_CHECK(ndr_pull_align(ndr
, 2));
1541 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->num_floors
));
1542 NDR_PULL_ALLOC_N(ndr
, r
->floors
, r
->num_floors
);
1543 _mem_save_floors_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1544 NDR_PULL_SET_MEM_CTX(ndr
, r
->floors
, 0);
1545 for (cntr_floors_0
= 0; cntr_floors_0
< r
->num_floors
; cntr_floors_0
++) {
1546 NDR_CHECK(ndr_pull_epm_floor(ndr
, NDR_SCALARS
, &r
->floors
[cntr_floors_0
]));
1548 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_floors_0
, 0);
1550 if (ndr_flags
& NDR_BUFFERS
) {
1552 ndr
->flags
= _flags_save_STRUCT
;
1554 return NDR_ERR_SUCCESS
;
1557 _PUBLIC_
void ndr_print_epm_tower(struct ndr_print
*ndr
, const char *name
, const struct epm_tower
*r
)
1559 uint32_t cntr_floors_0
;
1560 ndr_print_struct(ndr
, name
, "epm_tower");
1562 uint32_t _flags_save_STRUCT
= ndr
->flags
;
1563 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
);
1565 ndr_print_uint16(ndr
, "num_floors", r
->num_floors
);
1566 ndr
->print(ndr
, "%s: ARRAY(%d)", "floors", (int)r
->num_floors
);
1568 for (cntr_floors_0
=0;cntr_floors_0
<r
->num_floors
;cntr_floors_0
++) {
1570 if (asprintf(&idx_0
, "[%d]", cntr_floors_0
) != -1) {
1571 ndr_print_epm_floor(ndr
, "floors", &r
->floors
[cntr_floors_0
]);
1577 ndr
->flags
= _flags_save_STRUCT
;
1581 static size_t ndr_size_epm_tower(const struct epm_tower
*r
, struct smb_iconv_convenience
*ic
, int flags
)
1583 flags
|= LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
;
1584 return ndr_size_struct(r
, flags
, (ndr_push_flags_fn_t
)ndr_push_epm_tower
, ic
);
1587 static enum ndr_err_code
ndr_push_epm_twr_t(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_twr_t
*r
)
1589 if (ndr_flags
& NDR_SCALARS
) {
1590 NDR_CHECK(ndr_push_align(ndr
, 4));
1591 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, ndr_size_epm_tower(&r
->tower
, ndr
->iconv_convenience
, ndr
->flags
)));
1593 struct ndr_push
*_ndr_tower
;
1594 NDR_CHECK(ndr_push_subcontext_start(ndr
, &_ndr_tower
, 4, -1));
1595 NDR_CHECK(ndr_push_epm_tower(_ndr_tower
, NDR_SCALARS
, &r
->tower
));
1596 NDR_CHECK(ndr_push_subcontext_end(ndr
, _ndr_tower
, 4, -1));
1599 if (ndr_flags
& NDR_BUFFERS
) {
1601 return NDR_ERR_SUCCESS
;
1604 static enum ndr_err_code
ndr_pull_epm_twr_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_twr_t
*r
)
1606 if (ndr_flags
& NDR_SCALARS
) {
1607 NDR_CHECK(ndr_pull_align(ndr
, 4));
1608 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->tower_length
));
1610 struct ndr_pull
*_ndr_tower
;
1611 NDR_CHECK(ndr_pull_subcontext_start(ndr
, &_ndr_tower
, 4, -1));
1612 NDR_CHECK(ndr_pull_epm_tower(_ndr_tower
, NDR_SCALARS
, &r
->tower
));
1613 NDR_CHECK(ndr_pull_subcontext_end(ndr
, _ndr_tower
, 4, -1));
1616 if (ndr_flags
& NDR_BUFFERS
) {
1618 return NDR_ERR_SUCCESS
;
1621 _PUBLIC_
void ndr_print_epm_twr_t(struct ndr_print
*ndr
, const char *name
, const struct epm_twr_t
*r
)
1623 ndr_print_struct(ndr
, name
, "epm_twr_t");
1625 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
);
1626 ndr_print_epm_tower(ndr
, "tower", &r
->tower
);
1630 static enum ndr_err_code
ndr_push_epm_entry_t(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_entry_t
*r
)
1632 if (ndr_flags
& NDR_SCALARS
) {
1633 NDR_CHECK(ndr_push_align(ndr
, 4));
1634 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, &r
->object
));
1635 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->tower
));
1636 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
1637 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, strlen(r
->annotation
) + 1));
1638 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->annotation
, strlen(r
->annotation
) + 1, sizeof(uint8_t), CH_DOS
));
1640 if (ndr_flags
& NDR_BUFFERS
) {
1642 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->tower
));
1645 return NDR_ERR_SUCCESS
;
1648 static enum ndr_err_code
ndr_pull_epm_entry_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_entry_t
*r
)
1650 uint32_t _ptr_tower
;
1651 TALLOC_CTX
*_mem_save_tower_0
;
1652 if (ndr_flags
& NDR_SCALARS
) {
1653 NDR_CHECK(ndr_pull_align(ndr
, 4));
1654 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, &r
->object
));
1655 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_tower
));
1657 NDR_PULL_ALLOC(ndr
, r
->tower
);
1661 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->__annotation_offset
));
1662 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->__annotation_length
));
1663 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->annotation
, r
->__annotation_length
, sizeof(uint8_t), CH_DOS
));
1665 if (ndr_flags
& NDR_BUFFERS
) {
1667 _mem_save_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1668 NDR_PULL_SET_MEM_CTX(ndr
, r
->tower
, 0);
1669 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->tower
));
1670 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_tower_0
, 0);
1673 return NDR_ERR_SUCCESS
;
1676 _PUBLIC_
void ndr_print_epm_entry_t(struct ndr_print
*ndr
, const char *name
, const struct epm_entry_t
*r
)
1678 ndr_print_struct(ndr
, name
, "epm_entry_t");
1680 ndr_print_GUID(ndr
, "object", &r
->object
);
1681 ndr_print_ptr(ndr
, "tower", r
->tower
);
1684 ndr_print_epm_twr_t(ndr
, "tower", r
->tower
);
1687 ndr_print_uint32(ndr
, "__annotation_offset", (ndr
->flags
& LIBNDR_PRINT_SET_VALUES
)?0:r
->__annotation_offset
);
1688 ndr_print_uint32(ndr
, "__annotation_length", (ndr
->flags
& LIBNDR_PRINT_SET_VALUES
)?strlen(r
->annotation
) + 1:r
->__annotation_length
);
1689 ndr_print_string(ndr
, "annotation", r
->annotation
);
1693 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
)
1695 if (ndr_flags
& NDR_SCALARS
) {
1696 NDR_CHECK(ndr_push_align(ndr
, 4));
1697 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, &r
->uuid
));
1698 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->vers_major
));
1699 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->vers_minor
));
1701 if (ndr_flags
& NDR_BUFFERS
) {
1703 return NDR_ERR_SUCCESS
;
1706 static enum ndr_err_code
ndr_pull_rpc_if_id_t(struct ndr_pull
*ndr
, int ndr_flags
, struct rpc_if_id_t
*r
)
1708 if (ndr_flags
& NDR_SCALARS
) {
1709 NDR_CHECK(ndr_pull_align(ndr
, 4));
1710 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, &r
->uuid
));
1711 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->vers_major
));
1712 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->vers_minor
));
1714 if (ndr_flags
& NDR_BUFFERS
) {
1716 return NDR_ERR_SUCCESS
;
1719 _PUBLIC_
void ndr_print_rpc_if_id_t(struct ndr_print
*ndr
, const char *name
, const struct rpc_if_id_t
*r
)
1721 ndr_print_struct(ndr
, name
, "rpc_if_id_t");
1723 ndr_print_GUID(ndr
, "uuid", &r
->uuid
);
1724 ndr_print_uint16(ndr
, "vers_major", r
->vers_major
);
1725 ndr_print_uint16(ndr
, "vers_minor", r
->vers_minor
);
1729 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
)
1731 if (ndr_flags
& NDR_SCALARS
) {
1732 NDR_CHECK(ndr_push_align(ndr
, 4));
1733 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->twr
));
1735 if (ndr_flags
& NDR_BUFFERS
) {
1737 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->twr
));
1740 return NDR_ERR_SUCCESS
;
1743 static enum ndr_err_code
ndr_pull_epm_twr_p_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_twr_p_t
*r
)
1746 TALLOC_CTX
*_mem_save_twr_0
;
1747 if (ndr_flags
& NDR_SCALARS
) {
1748 NDR_CHECK(ndr_pull_align(ndr
, 4));
1749 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_twr
));
1751 NDR_PULL_ALLOC(ndr
, r
->twr
);
1756 if (ndr_flags
& NDR_BUFFERS
) {
1758 _mem_save_twr_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1759 NDR_PULL_SET_MEM_CTX(ndr
, r
->twr
, 0);
1760 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->twr
));
1761 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_twr_0
, 0);
1764 return NDR_ERR_SUCCESS
;
1767 _PUBLIC_
void ndr_print_epm_twr_p_t(struct ndr_print
*ndr
, const char *name
, const struct epm_twr_p_t
*r
)
1769 ndr_print_struct(ndr
, name
, "epm_twr_p_t");
1771 ndr_print_ptr(ndr
, "twr", r
->twr
);
1774 ndr_print_epm_twr_t(ndr
, "twr", r
->twr
);
1780 static enum ndr_err_code
ndr_push_epm_Insert(struct ndr_push
*ndr
, int flags
, const struct epm_Insert
*r
)
1782 uint32_t cntr_entries_0
;
1783 if (flags
& NDR_IN
) {
1784 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1785 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1786 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1787 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1789 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1790 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1792 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.replace
));
1794 if (flags
& NDR_OUT
) {
1795 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
1797 return NDR_ERR_SUCCESS
;
1800 static enum ndr_err_code
ndr_pull_epm_Insert(struct ndr_pull
*ndr
, int flags
, struct epm_Insert
*r
)
1802 uint32_t cntr_entries_0
;
1803 TALLOC_CTX
*_mem_save_entries_0
;
1804 if (flags
& NDR_IN
) {
1805 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_ents
));
1806 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.entries
));
1807 NDR_PULL_ALLOC_N(ndr
, r
->in
.entries
, ndr_get_array_size(ndr
, &r
->in
.entries
));
1808 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1809 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entries
, 0);
1810 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1811 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1813 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1814 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1816 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
1817 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.replace
));
1818 if (r
->in
.entries
) {
1819 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.entries
, r
->in
.num_ents
));
1822 if (flags
& NDR_OUT
) {
1823 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
1825 return NDR_ERR_SUCCESS
;
1828 _PUBLIC_
void ndr_print_epm_Insert(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Insert
*r
)
1830 uint32_t cntr_entries_0
;
1831 ndr_print_struct(ndr
, name
, "epm_Insert");
1833 if (flags
& NDR_SET_VALUES
) {
1834 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1836 if (flags
& NDR_IN
) {
1837 ndr_print_struct(ndr
, "in", "epm_Insert");
1839 ndr_print_uint32(ndr
, "num_ents", r
->in
.num_ents
);
1840 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)r
->in
.num_ents
);
1842 for (cntr_entries_0
=0;cntr_entries_0
<r
->in
.num_ents
;cntr_entries_0
++) {
1844 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
1845 ndr_print_epm_entry_t(ndr
, "entries", &r
->in
.entries
[cntr_entries_0
]);
1850 ndr_print_uint32(ndr
, "replace", r
->in
.replace
);
1853 if (flags
& NDR_OUT
) {
1854 ndr_print_struct(ndr
, "out", "epm_Insert");
1856 ndr_print_uint32(ndr
, "result", r
->out
.result
);
1862 static enum ndr_err_code
ndr_push_epm_Delete(struct ndr_push
*ndr
, int flags
, const struct epm_Delete
*r
)
1864 uint32_t cntr_entries_0
;
1865 if (flags
& NDR_IN
) {
1866 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1867 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1868 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1869 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1871 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1872 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1875 if (flags
& NDR_OUT
) {
1876 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
1878 return NDR_ERR_SUCCESS
;
1881 static enum ndr_err_code
ndr_pull_epm_Delete(struct ndr_pull
*ndr
, int flags
, struct epm_Delete
*r
)
1883 uint32_t cntr_entries_0
;
1884 TALLOC_CTX
*_mem_save_entries_0
;
1885 if (flags
& NDR_IN
) {
1886 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_ents
));
1887 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.entries
));
1888 NDR_PULL_ALLOC_N(ndr
, r
->in
.entries
, ndr_get_array_size(ndr
, &r
->in
.entries
));
1889 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1890 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entries
, 0);
1891 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1892 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1894 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1895 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1897 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
1898 if (r
->in
.entries
) {
1899 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.entries
, r
->in
.num_ents
));
1902 if (flags
& NDR_OUT
) {
1903 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
1905 return NDR_ERR_SUCCESS
;
1908 _PUBLIC_
void ndr_print_epm_Delete(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Delete
*r
)
1910 uint32_t cntr_entries_0
;
1911 ndr_print_struct(ndr
, name
, "epm_Delete");
1913 if (flags
& NDR_SET_VALUES
) {
1914 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1916 if (flags
& NDR_IN
) {
1917 ndr_print_struct(ndr
, "in", "epm_Delete");
1919 ndr_print_uint32(ndr
, "num_ents", r
->in
.num_ents
);
1920 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)r
->in
.num_ents
);
1922 for (cntr_entries_0
=0;cntr_entries_0
<r
->in
.num_ents
;cntr_entries_0
++) {
1924 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
1925 ndr_print_epm_entry_t(ndr
, "entries", &r
->in
.entries
[cntr_entries_0
]);
1932 if (flags
& NDR_OUT
) {
1933 ndr_print_struct(ndr
, "out", "epm_Delete");
1935 ndr_print_uint32(ndr
, "result", r
->out
.result
);
1941 static enum ndr_err_code
ndr_push_epm_Lookup(struct ndr_push
*ndr
, int flags
, const struct epm_Lookup
*r
)
1943 uint32_t cntr_entries_0
;
1944 if (flags
& NDR_IN
) {
1945 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.inquiry_type
));
1946 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
1948 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
1950 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.interface_id
));
1951 if (r
->in
.interface_id
) {
1952 NDR_CHECK(ndr_push_rpc_if_id_t(ndr
, NDR_SCALARS
, r
->in
.interface_id
));
1954 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.vers_option
));
1955 if (r
->in
.entry_handle
== NULL
) {
1956 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1958 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
1959 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_ents
));
1961 if (flags
& NDR_OUT
) {
1962 if (r
->out
.entry_handle
== NULL
) {
1963 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1965 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
1966 if (r
->out
.num_ents
== NULL
) {
1967 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1969 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_ents
));
1970 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_ents
));
1971 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
1972 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_ents
));
1973 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
1974 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->out
.entries
[cntr_entries_0
]));
1976 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
1977 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->out
.entries
[cntr_entries_0
]));
1979 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
1981 return NDR_ERR_SUCCESS
;
1984 static enum ndr_err_code
ndr_pull_epm_Lookup(struct ndr_pull
*ndr
, int flags
, struct epm_Lookup
*r
)
1986 uint32_t _ptr_object
;
1987 uint32_t _ptr_interface_id
;
1988 uint32_t cntr_entries_0
;
1989 TALLOC_CTX
*_mem_save_object_0
;
1990 TALLOC_CTX
*_mem_save_interface_id_0
;
1991 TALLOC_CTX
*_mem_save_entry_handle_0
;
1992 TALLOC_CTX
*_mem_save_num_ents_0
;
1993 TALLOC_CTX
*_mem_save_entries_0
;
1994 if (flags
& NDR_IN
) {
1995 ZERO_STRUCT(r
->out
);
1997 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.inquiry_type
));
1998 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2000 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2002 r
->in
.object
= NULL
;
2005 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2006 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2007 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2008 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2010 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_interface_id
));
2011 if (_ptr_interface_id
) {
2012 NDR_PULL_ALLOC(ndr
, r
->in
.interface_id
);
2014 r
->in
.interface_id
= NULL
;
2016 if (r
->in
.interface_id
) {
2017 _mem_save_interface_id_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2018 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.interface_id
, 0);
2019 NDR_CHECK(ndr_pull_rpc_if_id_t(ndr
, NDR_SCALARS
, r
->in
.interface_id
));
2020 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_interface_id_0
, 0);
2022 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.vers_option
));
2023 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2024 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2026 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2027 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2028 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2029 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2030 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_ents
));
2031 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2032 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2033 NDR_PULL_ALLOC(ndr
, r
->out
.num_ents
);
2034 ZERO_STRUCTP(r
->out
.num_ents
);
2036 if (flags
& NDR_OUT
) {
2037 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2038 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2040 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2041 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2042 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2043 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2044 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2045 NDR_PULL_ALLOC(ndr
, r
->out
.num_ents
);
2047 _mem_save_num_ents_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2048 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.num_ents
, LIBNDR_FLAG_REF_ALLOC
);
2049 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.num_ents
));
2050 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_num_ents_0
, LIBNDR_FLAG_REF_ALLOC
);
2051 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->out
.entries
));
2052 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->out
.entries
));
2053 if (ndr_get_array_length(ndr
, &r
->out
.entries
) > ndr_get_array_size(ndr
, &r
->out
.entries
)) {
2054 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->out
.entries
), ndr_get_array_length(ndr
, &r
->out
.entries
));
2056 NDR_PULL_ALLOC_N(ndr
, r
->out
.entries
, ndr_get_array_size(ndr
, &r
->out
.entries
));
2057 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2058 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entries
, 0);
2059 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
2060 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->out
.entries
[cntr_entries_0
]));
2062 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
2063 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->out
.entries
[cntr_entries_0
]));
2065 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
2066 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2067 if (r
->out
.entries
) {
2068 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->out
.entries
, r
->in
.max_ents
));
2070 if (r
->out
.entries
) {
2071 NDR_CHECK(ndr_check_array_length(ndr
, (void*)&r
->out
.entries
, *r
->out
.num_ents
));
2074 return NDR_ERR_SUCCESS
;
2077 _PUBLIC_
void ndr_print_epm_Lookup(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Lookup
*r
)
2079 uint32_t cntr_entries_0
;
2080 ndr_print_struct(ndr
, name
, "epm_Lookup");
2082 if (flags
& NDR_SET_VALUES
) {
2083 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2085 if (flags
& NDR_IN
) {
2086 ndr_print_struct(ndr
, "in", "epm_Lookup");
2088 ndr_print_uint32(ndr
, "inquiry_type", r
->in
.inquiry_type
);
2089 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2092 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2095 ndr_print_ptr(ndr
, "interface_id", r
->in
.interface_id
);
2097 if (r
->in
.interface_id
) {
2098 ndr_print_rpc_if_id_t(ndr
, "interface_id", r
->in
.interface_id
);
2101 ndr_print_uint32(ndr
, "vers_option", r
->in
.vers_option
);
2102 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2104 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2106 ndr_print_uint32(ndr
, "max_ents", r
->in
.max_ents
);
2109 if (flags
& NDR_OUT
) {
2110 ndr_print_struct(ndr
, "out", "epm_Lookup");
2112 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2114 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2116 ndr_print_ptr(ndr
, "num_ents", r
->out
.num_ents
);
2118 ndr_print_uint32(ndr
, "num_ents", *r
->out
.num_ents
);
2120 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)*r
->out
.num_ents
);
2122 for (cntr_entries_0
=0;cntr_entries_0
<*r
->out
.num_ents
;cntr_entries_0
++) {
2124 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
2125 ndr_print_epm_entry_t(ndr
, "entries", &r
->out
.entries
[cntr_entries_0
]);
2130 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2136 _PUBLIC_
enum ndr_err_code
ndr_push_epm_Map(struct ndr_push
*ndr
, int flags
, const struct epm_Map
*r
)
2138 uint32_t cntr_towers_0
;
2139 if (flags
& NDR_IN
) {
2140 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
2142 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2144 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.map_tower
));
2145 if (r
->in
.map_tower
) {
2146 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.map_tower
));
2148 if (r
->in
.entry_handle
== NULL
) {
2149 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2151 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2152 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_towers
));
2154 if (flags
& NDR_OUT
) {
2155 if (r
->out
.entry_handle
== NULL
) {
2156 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2158 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2159 if (r
->out
.num_towers
== NULL
) {
2160 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2162 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_towers
));
2163 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_towers
));
2164 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
2165 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_towers
));
2166 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2167 NDR_CHECK(ndr_push_epm_twr_p_t(ndr
, NDR_SCALARS
, &r
->out
.towers
[cntr_towers_0
]));
2169 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2170 NDR_CHECK(ndr_push_epm_twr_p_t(ndr
, NDR_BUFFERS
, &r
->out
.towers
[cntr_towers_0
]));
2172 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2174 return NDR_ERR_SUCCESS
;
2177 _PUBLIC_
enum ndr_err_code
ndr_pull_epm_Map(struct ndr_pull
*ndr
, int flags
, struct epm_Map
*r
)
2179 uint32_t _ptr_object
;
2180 uint32_t _ptr_map_tower
;
2181 uint32_t cntr_towers_0
;
2182 TALLOC_CTX
*_mem_save_object_0
;
2183 TALLOC_CTX
*_mem_save_map_tower_0
;
2184 TALLOC_CTX
*_mem_save_entry_handle_0
;
2185 TALLOC_CTX
*_mem_save_num_towers_0
;
2186 TALLOC_CTX
*_mem_save_towers_0
;
2187 if (flags
& NDR_IN
) {
2188 ZERO_STRUCT(r
->out
);
2190 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2192 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2194 r
->in
.object
= NULL
;
2197 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2198 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2199 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2200 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2202 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_map_tower
));
2203 if (_ptr_map_tower
) {
2204 NDR_PULL_ALLOC(ndr
, r
->in
.map_tower
);
2206 r
->in
.map_tower
= NULL
;
2208 if (r
->in
.map_tower
) {
2209 _mem_save_map_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2210 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.map_tower
, 0);
2211 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.map_tower
));
2212 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_map_tower_0
, 0);
2214 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2215 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2217 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2218 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2219 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2220 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2221 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_towers
));
2222 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2223 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2224 NDR_PULL_ALLOC(ndr
, r
->out
.num_towers
);
2225 ZERO_STRUCTP(r
->out
.num_towers
);
2227 if (flags
& NDR_OUT
) {
2228 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2229 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2231 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2232 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2233 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2234 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2235 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2236 NDR_PULL_ALLOC(ndr
, r
->out
.num_towers
);
2238 _mem_save_num_towers_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2239 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.num_towers
, LIBNDR_FLAG_REF_ALLOC
);
2240 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.num_towers
));
2241 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_num_towers_0
, LIBNDR_FLAG_REF_ALLOC
);
2242 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->out
.towers
));
2243 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->out
.towers
));
2244 if (ndr_get_array_length(ndr
, &r
->out
.towers
) > ndr_get_array_size(ndr
, &r
->out
.towers
)) {
2245 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->out
.towers
), ndr_get_array_length(ndr
, &r
->out
.towers
));
2247 NDR_PULL_ALLOC_N(ndr
, r
->out
.towers
, ndr_get_array_size(ndr
, &r
->out
.towers
));
2248 _mem_save_towers_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2249 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.towers
, 0);
2250 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2251 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr
, NDR_SCALARS
, &r
->out
.towers
[cntr_towers_0
]));
2253 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2254 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr
, NDR_BUFFERS
, &r
->out
.towers
[cntr_towers_0
]));
2256 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_towers_0
, 0);
2257 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2258 if (r
->out
.towers
) {
2259 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->out
.towers
, r
->in
.max_towers
));
2261 if (r
->out
.towers
) {
2262 NDR_CHECK(ndr_check_array_length(ndr
, (void*)&r
->out
.towers
, *r
->out
.num_towers
));
2265 return NDR_ERR_SUCCESS
;
2268 _PUBLIC_
void ndr_print_epm_Map(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Map
*r
)
2270 uint32_t cntr_towers_0
;
2271 ndr_print_struct(ndr
, name
, "epm_Map");
2273 if (flags
& NDR_SET_VALUES
) {
2274 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2276 if (flags
& NDR_IN
) {
2277 ndr_print_struct(ndr
, "in", "epm_Map");
2279 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2282 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2285 ndr_print_ptr(ndr
, "map_tower", r
->in
.map_tower
);
2287 if (r
->in
.map_tower
) {
2288 ndr_print_epm_twr_t(ndr
, "map_tower", r
->in
.map_tower
);
2291 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2293 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2295 ndr_print_uint32(ndr
, "max_towers", r
->in
.max_towers
);
2298 if (flags
& NDR_OUT
) {
2299 ndr_print_struct(ndr
, "out", "epm_Map");
2301 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2303 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2305 ndr_print_ptr(ndr
, "num_towers", r
->out
.num_towers
);
2307 ndr_print_uint32(ndr
, "num_towers", *r
->out
.num_towers
);
2309 ndr
->print(ndr
, "%s: ARRAY(%d)", "towers", (int)*r
->out
.num_towers
);
2311 for (cntr_towers_0
=0;cntr_towers_0
<*r
->out
.num_towers
;cntr_towers_0
++) {
2313 if (asprintf(&idx_0
, "[%d]", cntr_towers_0
) != -1) {
2314 ndr_print_epm_twr_p_t(ndr
, "towers", &r
->out
.towers
[cntr_towers_0
]);
2319 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2325 static enum ndr_err_code
ndr_push_epm_LookupHandleFree(struct ndr_push
*ndr
, int flags
, const struct epm_LookupHandleFree
*r
)
2327 if (flags
& NDR_IN
) {
2328 if (r
->in
.entry_handle
== NULL
) {
2329 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2331 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2333 if (flags
& NDR_OUT
) {
2334 if (r
->out
.entry_handle
== NULL
) {
2335 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2337 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2338 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2340 return NDR_ERR_SUCCESS
;
2343 static enum ndr_err_code
ndr_pull_epm_LookupHandleFree(struct ndr_pull
*ndr
, int flags
, struct epm_LookupHandleFree
*r
)
2345 TALLOC_CTX
*_mem_save_entry_handle_0
;
2346 if (flags
& NDR_IN
) {
2347 ZERO_STRUCT(r
->out
);
2349 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2350 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2352 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2353 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2354 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2355 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2356 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2357 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2359 if (flags
& NDR_OUT
) {
2360 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2361 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2363 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2364 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2365 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2366 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2367 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2369 return NDR_ERR_SUCCESS
;
2372 _PUBLIC_
void ndr_print_epm_LookupHandleFree(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_LookupHandleFree
*r
)
2374 ndr_print_struct(ndr
, name
, "epm_LookupHandleFree");
2376 if (flags
& NDR_SET_VALUES
) {
2377 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2379 if (flags
& NDR_IN
) {
2380 ndr_print_struct(ndr
, "in", "epm_LookupHandleFree");
2382 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2384 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2388 if (flags
& NDR_OUT
) {
2389 ndr_print_struct(ndr
, "out", "epm_LookupHandleFree");
2391 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2393 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2395 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2401 static enum ndr_err_code
ndr_push_epm_InqObject(struct ndr_push
*ndr
, int flags
, const struct epm_InqObject
*r
)
2403 if (flags
& NDR_IN
) {
2404 if (r
->in
.epm_object
== NULL
) {
2405 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2407 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.epm_object
));
2409 if (flags
& NDR_OUT
) {
2410 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2412 return NDR_ERR_SUCCESS
;
2415 static enum ndr_err_code
ndr_pull_epm_InqObject(struct ndr_pull
*ndr
, int flags
, struct epm_InqObject
*r
)
2417 TALLOC_CTX
*_mem_save_epm_object_0
;
2418 if (flags
& NDR_IN
) {
2419 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2420 NDR_PULL_ALLOC(ndr
, r
->in
.epm_object
);
2422 _mem_save_epm_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2423 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.epm_object
, LIBNDR_FLAG_REF_ALLOC
);
2424 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.epm_object
));
2425 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_epm_object_0
, LIBNDR_FLAG_REF_ALLOC
);
2427 if (flags
& NDR_OUT
) {
2428 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2430 return NDR_ERR_SUCCESS
;
2433 _PUBLIC_
void ndr_print_epm_InqObject(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_InqObject
*r
)
2435 ndr_print_struct(ndr
, name
, "epm_InqObject");
2437 if (flags
& NDR_SET_VALUES
) {
2438 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2440 if (flags
& NDR_IN
) {
2441 ndr_print_struct(ndr
, "in", "epm_InqObject");
2443 ndr_print_ptr(ndr
, "epm_object", r
->in
.epm_object
);
2445 ndr_print_GUID(ndr
, "epm_object", r
->in
.epm_object
);
2449 if (flags
& NDR_OUT
) {
2450 ndr_print_struct(ndr
, "out", "epm_InqObject");
2452 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2458 static enum ndr_err_code
ndr_push_epm_MgmtDelete(struct ndr_push
*ndr
, int flags
, const struct epm_MgmtDelete
*r
)
2460 if (flags
& NDR_IN
) {
2461 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.object_speced
));
2462 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
2464 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2466 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.tower
));
2468 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.tower
));
2471 if (flags
& NDR_OUT
) {
2472 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2474 return NDR_ERR_SUCCESS
;
2477 static enum ndr_err_code
ndr_pull_epm_MgmtDelete(struct ndr_pull
*ndr
, int flags
, struct epm_MgmtDelete
*r
)
2479 uint32_t _ptr_object
;
2480 uint32_t _ptr_tower
;
2481 TALLOC_CTX
*_mem_save_object_0
;
2482 TALLOC_CTX
*_mem_save_tower_0
;
2483 if (flags
& NDR_IN
) {
2484 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.object_speced
));
2485 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2487 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2489 r
->in
.object
= NULL
;
2492 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2493 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2494 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2495 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2497 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_tower
));
2499 NDR_PULL_ALLOC(ndr
, r
->in
.tower
);
2504 _mem_save_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2505 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.tower
, 0);
2506 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.tower
));
2507 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_tower_0
, 0);
2510 if (flags
& NDR_OUT
) {
2511 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2513 return NDR_ERR_SUCCESS
;
2516 _PUBLIC_
void ndr_print_epm_MgmtDelete(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_MgmtDelete
*r
)
2518 ndr_print_struct(ndr
, name
, "epm_MgmtDelete");
2520 if (flags
& NDR_SET_VALUES
) {
2521 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2523 if (flags
& NDR_IN
) {
2524 ndr_print_struct(ndr
, "in", "epm_MgmtDelete");
2526 ndr_print_uint32(ndr
, "object_speced", r
->in
.object_speced
);
2527 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2530 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2533 ndr_print_ptr(ndr
, "tower", r
->in
.tower
);
2536 ndr_print_epm_twr_t(ndr
, "tower", r
->in
.tower
);
2541 if (flags
& NDR_OUT
) {
2542 ndr_print_struct(ndr
, "out", "epm_MgmtDelete");
2544 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2550 static enum ndr_err_code
ndr_push_epm_MapAuth(struct ndr_push
*ndr
, int flags
, const struct epm_MapAuth
*r
)
2552 if (flags
& NDR_IN
) {
2554 if (flags
& NDR_OUT
) {
2555 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2557 return NDR_ERR_SUCCESS
;
2560 static enum ndr_err_code
ndr_pull_epm_MapAuth(struct ndr_pull
*ndr
, int flags
, struct epm_MapAuth
*r
)
2562 if (flags
& NDR_IN
) {
2564 if (flags
& NDR_OUT
) {
2565 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2567 return NDR_ERR_SUCCESS
;
2570 _PUBLIC_
void ndr_print_epm_MapAuth(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_MapAuth
*r
)
2572 ndr_print_struct(ndr
, name
, "epm_MapAuth");
2574 if (flags
& NDR_SET_VALUES
) {
2575 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2577 if (flags
& NDR_IN
) {
2578 ndr_print_struct(ndr
, "in", "epm_MapAuth");
2582 if (flags
& NDR_OUT
) {
2583 ndr_print_struct(ndr
, "out", "epm_MapAuth");
2585 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2591 static const struct ndr_interface_call epmapper_calls
[] = {
2594 sizeof(struct epm_Insert
),
2595 (ndr_push_flags_fn_t
) ndr_push_epm_Insert
,
2596 (ndr_pull_flags_fn_t
) ndr_pull_epm_Insert
,
2597 (ndr_print_function_t
) ndr_print_epm_Insert
,
2602 sizeof(struct epm_Delete
),
2603 (ndr_push_flags_fn_t
) ndr_push_epm_Delete
,
2604 (ndr_pull_flags_fn_t
) ndr_pull_epm_Delete
,
2605 (ndr_print_function_t
) ndr_print_epm_Delete
,
2610 sizeof(struct epm_Lookup
),
2611 (ndr_push_flags_fn_t
) ndr_push_epm_Lookup
,
2612 (ndr_pull_flags_fn_t
) ndr_pull_epm_Lookup
,
2613 (ndr_print_function_t
) ndr_print_epm_Lookup
,
2618 sizeof(struct epm_Map
),
2619 (ndr_push_flags_fn_t
) ndr_push_epm_Map
,
2620 (ndr_pull_flags_fn_t
) ndr_pull_epm_Map
,
2621 (ndr_print_function_t
) ndr_print_epm_Map
,
2625 "epm_LookupHandleFree",
2626 sizeof(struct epm_LookupHandleFree
),
2627 (ndr_push_flags_fn_t
) ndr_push_epm_LookupHandleFree
,
2628 (ndr_pull_flags_fn_t
) ndr_pull_epm_LookupHandleFree
,
2629 (ndr_print_function_t
) ndr_print_epm_LookupHandleFree
,
2634 sizeof(struct epm_InqObject
),
2635 (ndr_push_flags_fn_t
) ndr_push_epm_InqObject
,
2636 (ndr_pull_flags_fn_t
) ndr_pull_epm_InqObject
,
2637 (ndr_print_function_t
) ndr_print_epm_InqObject
,
2642 sizeof(struct epm_MgmtDelete
),
2643 (ndr_push_flags_fn_t
) ndr_push_epm_MgmtDelete
,
2644 (ndr_pull_flags_fn_t
) ndr_pull_epm_MgmtDelete
,
2645 (ndr_print_function_t
) ndr_print_epm_MgmtDelete
,
2650 sizeof(struct epm_MapAuth
),
2651 (ndr_push_flags_fn_t
) ndr_push_epm_MapAuth
,
2652 (ndr_pull_flags_fn_t
) ndr_pull_epm_MapAuth
,
2653 (ndr_print_function_t
) ndr_print_epm_MapAuth
,
2656 { NULL
, 0, NULL
, NULL
, NULL
, false }
2659 static const char * const epmapper_endpoint_strings
[] = {
2660 "ncacn_np:[\\pipe\\epmapper]",
2661 "ncacn_ip_tcp:[135]",
2662 "ncalrpc:[EPMAPPER]",
2665 static const struct ndr_interface_string_array epmapper_endpoints
= {
2667 .names
= epmapper_endpoint_strings
2670 static const char * const epmapper_authservice_strings
[] = {
2674 static const struct ndr_interface_string_array epmapper_authservices
= {
2676 .names
= epmapper_authservice_strings
2680 const struct ndr_interface_table ndr_table_epmapper
= {
2683 {0xe1af8308,0x5d1f,0x11c9,{0x91,0xa4},{0x08,0x00,0x2b,0x14,0xa0,0xfa}},
2684 NDR_EPMAPPER_VERSION
2686 .helpstring
= NDR_EPMAPPER_HELPSTRING
,
2688 .calls
= epmapper_calls
,
2689 .endpoints
= &epmapper_endpoints
,
2690 .authservices
= &epmapper_authservices