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_enum_uint8(ndr
, NDR_SCALARS
, r
));
10 return NDR_ERR_SUCCESS
;
13 static enum ndr_err_code
ndr_pull_epm_protocol(struct ndr_pull
*ndr
, int ndr_flags
, enum epm_protocol
*r
)
16 NDR_CHECK(ndr_pull_enum_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_NAMED_PIPE
: val
= "EPM_PROTOCOL_NAMED_PIPE"; break;
39 case EPM_PROTOCOL_NETBIOS
: val
= "EPM_PROTOCOL_NETBIOS"; break;
40 case EPM_PROTOCOL_NETBEUI
: val
= "EPM_PROTOCOL_NETBEUI"; break;
41 case EPM_PROTOCOL_SPX
: val
= "EPM_PROTOCOL_SPX"; break;
42 case EPM_PROTOCOL_NB_IPX
: val
= "EPM_PROTOCOL_NB_IPX"; break;
43 case EPM_PROTOCOL_DSP
: val
= "EPM_PROTOCOL_DSP"; break;
44 case EPM_PROTOCOL_DDP
: val
= "EPM_PROTOCOL_DDP"; break;
45 case EPM_PROTOCOL_APPLETALK
: val
= "EPM_PROTOCOL_APPLETALK"; break;
46 case EPM_PROTOCOL_VINES_SPP
: val
= "EPM_PROTOCOL_VINES_SPP"; break;
47 case EPM_PROTOCOL_VINES_IPC
: val
= "EPM_PROTOCOL_VINES_IPC"; break;
48 case EPM_PROTOCOL_STREETTALK
: val
= "EPM_PROTOCOL_STREETTALK"; break;
49 case EPM_PROTOCOL_HTTP
: val
= "EPM_PROTOCOL_HTTP"; break;
50 case EPM_PROTOCOL_UNIX_DS
: val
= "EPM_PROTOCOL_UNIX_DS"; break;
51 case EPM_PROTOCOL_NULL
: val
= "EPM_PROTOCOL_NULL"; break;
53 ndr_print_enum(ndr
, name
, "ENUM", val
, r
);
56 static enum ndr_err_code
ndr_push_epm_rhs_dnet_nsp(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_dnet_nsp
*r
)
58 if (ndr_flags
& NDR_SCALARS
) {
59 NDR_CHECK(ndr_push_align(ndr
, 1));
60 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
62 if (ndr_flags
& NDR_BUFFERS
) {
64 return NDR_ERR_SUCCESS
;
67 static enum ndr_err_code
ndr_pull_epm_rhs_dnet_nsp(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_dnet_nsp
*r
)
69 if (ndr_flags
& NDR_SCALARS
) {
70 NDR_CHECK(ndr_pull_align(ndr
, 1));
71 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
73 if (ndr_flags
& NDR_BUFFERS
) {
75 return NDR_ERR_SUCCESS
;
78 _PUBLIC_
void ndr_print_epm_rhs_dnet_nsp(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_dnet_nsp
*r
)
80 ndr_print_struct(ndr
, name
, "epm_rhs_dnet_nsp");
85 static enum ndr_err_code
ndr_push_epm_rhs_osi_tp4(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_osi_tp4
*r
)
87 if (ndr_flags
& NDR_SCALARS
) {
88 NDR_CHECK(ndr_push_align(ndr
, 1));
89 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
91 if (ndr_flags
& NDR_BUFFERS
) {
93 return NDR_ERR_SUCCESS
;
96 static enum ndr_err_code
ndr_pull_epm_rhs_osi_tp4(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_osi_tp4
*r
)
98 if (ndr_flags
& NDR_SCALARS
) {
99 NDR_CHECK(ndr_pull_align(ndr
, 1));
100 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
102 if (ndr_flags
& NDR_BUFFERS
) {
104 return NDR_ERR_SUCCESS
;
107 _PUBLIC_
void ndr_print_epm_rhs_osi_tp4(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_osi_tp4
*r
)
109 ndr_print_struct(ndr
, name
, "epm_rhs_osi_tp4");
114 static enum ndr_err_code
ndr_push_epm_rhs_osi_clns(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_osi_clns
*r
)
116 if (ndr_flags
& NDR_SCALARS
) {
117 NDR_CHECK(ndr_push_align(ndr
, 1));
118 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
120 if (ndr_flags
& NDR_BUFFERS
) {
122 return NDR_ERR_SUCCESS
;
125 static enum ndr_err_code
ndr_pull_epm_rhs_osi_clns(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_osi_clns
*r
)
127 if (ndr_flags
& NDR_SCALARS
) {
128 NDR_CHECK(ndr_pull_align(ndr
, 1));
129 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
131 if (ndr_flags
& NDR_BUFFERS
) {
133 return NDR_ERR_SUCCESS
;
136 _PUBLIC_
void ndr_print_epm_rhs_osi_clns(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_osi_clns
*r
)
138 ndr_print_struct(ndr
, name
, "epm_rhs_osi_clns");
143 static enum ndr_err_code
ndr_push_epm_rhs_udp(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_udp
*r
)
145 if (ndr_flags
& NDR_SCALARS
) {
146 NDR_CHECK(ndr_push_align(ndr
, 2));
147 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
148 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
150 if (ndr_flags
& NDR_BUFFERS
) {
152 return NDR_ERR_SUCCESS
;
155 static enum ndr_err_code
ndr_pull_epm_rhs_udp(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_udp
*r
)
157 if (ndr_flags
& NDR_SCALARS
) {
158 NDR_CHECK(ndr_pull_align(ndr
, 2));
159 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
160 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
162 if (ndr_flags
& NDR_BUFFERS
) {
164 return NDR_ERR_SUCCESS
;
167 _PUBLIC_
void ndr_print_epm_rhs_udp(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_udp
*r
)
169 ndr_print_struct(ndr
, name
, "epm_rhs_udp");
171 ndr_print_uint16(ndr
, "port", r
->port
);
175 static enum ndr_err_code
ndr_push_epm_rhs_tcp(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_tcp
*r
)
177 if (ndr_flags
& NDR_SCALARS
) {
178 NDR_CHECK(ndr_push_align(ndr
, 2));
179 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
180 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
182 if (ndr_flags
& NDR_BUFFERS
) {
184 return NDR_ERR_SUCCESS
;
187 static enum ndr_err_code
ndr_pull_epm_rhs_tcp(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_tcp
*r
)
189 if (ndr_flags
& NDR_SCALARS
) {
190 NDR_CHECK(ndr_pull_align(ndr
, 2));
191 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
192 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
194 if (ndr_flags
& NDR_BUFFERS
) {
196 return NDR_ERR_SUCCESS
;
199 _PUBLIC_
void ndr_print_epm_rhs_tcp(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_tcp
*r
)
201 ndr_print_struct(ndr
, name
, "epm_rhs_tcp");
203 ndr_print_uint16(ndr
, "port", r
->port
);
207 static enum ndr_err_code
ndr_push_epm_rhs_ip(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ip
*r
)
209 if (ndr_flags
& NDR_SCALARS
) {
210 NDR_CHECK(ndr_push_align(ndr
, 4));
211 NDR_CHECK(ndr_push_ipv4address(ndr
, NDR_SCALARS
, r
->ipaddr
));
212 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
214 if (ndr_flags
& NDR_BUFFERS
) {
216 return NDR_ERR_SUCCESS
;
219 static enum ndr_err_code
ndr_pull_epm_rhs_ip(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ip
*r
)
221 if (ndr_flags
& NDR_SCALARS
) {
222 NDR_CHECK(ndr_pull_align(ndr
, 4));
223 NDR_CHECK(ndr_pull_ipv4address(ndr
, NDR_SCALARS
, &r
->ipaddr
));
224 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
226 if (ndr_flags
& NDR_BUFFERS
) {
228 return NDR_ERR_SUCCESS
;
231 _PUBLIC_
void ndr_print_epm_rhs_ip(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ip
*r
)
233 ndr_print_struct(ndr
, name
, "epm_rhs_ip");
235 ndr_print_ipv4address(ndr
, "ipaddr", r
->ipaddr
);
239 static enum ndr_err_code
ndr_push_epm_rhs_ncadg(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ncadg
*r
)
241 if (ndr_flags
& NDR_SCALARS
) {
242 NDR_CHECK(ndr_push_align(ndr
, 2));
243 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->minor_version
));
244 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
246 if (ndr_flags
& NDR_BUFFERS
) {
248 return NDR_ERR_SUCCESS
;
251 static enum ndr_err_code
ndr_pull_epm_rhs_ncadg(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ncadg
*r
)
253 if (ndr_flags
& NDR_SCALARS
) {
254 NDR_CHECK(ndr_pull_align(ndr
, 2));
255 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->minor_version
));
256 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
258 if (ndr_flags
& NDR_BUFFERS
) {
260 return NDR_ERR_SUCCESS
;
263 _PUBLIC_
void ndr_print_epm_rhs_ncadg(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ncadg
*r
)
265 ndr_print_struct(ndr
, name
, "epm_rhs_ncadg");
267 ndr_print_uint16(ndr
, "minor_version", r
->minor_version
);
271 static enum ndr_err_code
ndr_push_epm_rhs_ncacn(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ncacn
*r
)
273 if (ndr_flags
& NDR_SCALARS
) {
274 NDR_CHECK(ndr_push_align(ndr
, 2));
275 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->minor_version
));
276 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
278 if (ndr_flags
& NDR_BUFFERS
) {
280 return NDR_ERR_SUCCESS
;
283 static enum ndr_err_code
ndr_pull_epm_rhs_ncacn(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ncacn
*r
)
285 if (ndr_flags
& NDR_SCALARS
) {
286 NDR_CHECK(ndr_pull_align(ndr
, 2));
287 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->minor_version
));
288 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
290 if (ndr_flags
& NDR_BUFFERS
) {
292 return NDR_ERR_SUCCESS
;
295 _PUBLIC_
void ndr_print_epm_rhs_ncacn(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ncacn
*r
)
297 ndr_print_struct(ndr
, name
, "epm_rhs_ncacn");
299 ndr_print_uint16(ndr
, "minor_version", r
->minor_version
);
303 static enum ndr_err_code
ndr_push_epm_rhs_uuid(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_uuid
*r
)
305 if (ndr_flags
& NDR_SCALARS
) {
306 NDR_CHECK(ndr_push_align(ndr
, 4));
308 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
309 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
310 NDR_CHECK(ndr_push_DATA_BLOB(ndr
, NDR_SCALARS
, r
->unknown
));
311 ndr
->flags
= _flags_save_DATA_BLOB
;
313 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
315 if (ndr_flags
& NDR_BUFFERS
) {
317 return NDR_ERR_SUCCESS
;
320 static enum ndr_err_code
ndr_pull_epm_rhs_uuid(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_uuid
*r
)
322 if (ndr_flags
& NDR_SCALARS
) {
323 NDR_CHECK(ndr_pull_align(ndr
, 4));
325 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
326 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
327 NDR_CHECK(ndr_pull_DATA_BLOB(ndr
, NDR_SCALARS
, &r
->unknown
));
328 ndr
->flags
= _flags_save_DATA_BLOB
;
330 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
332 if (ndr_flags
& NDR_BUFFERS
) {
334 return NDR_ERR_SUCCESS
;
337 _PUBLIC_
void ndr_print_epm_rhs_uuid(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_uuid
*r
)
339 ndr_print_struct(ndr
, name
, "epm_rhs_uuid");
341 ndr_print_DATA_BLOB(ndr
, "unknown", r
->unknown
);
345 static enum ndr_err_code
ndr_push_epm_rhs_ipx(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ipx
*r
)
347 if (ndr_flags
& NDR_SCALARS
) {
348 NDR_CHECK(ndr_push_align(ndr
, 1));
349 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
351 if (ndr_flags
& NDR_BUFFERS
) {
353 return NDR_ERR_SUCCESS
;
356 static enum ndr_err_code
ndr_pull_epm_rhs_ipx(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ipx
*r
)
358 if (ndr_flags
& NDR_SCALARS
) {
359 NDR_CHECK(ndr_pull_align(ndr
, 1));
360 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
362 if (ndr_flags
& NDR_BUFFERS
) {
364 return NDR_ERR_SUCCESS
;
367 _PUBLIC_
void ndr_print_epm_rhs_ipx(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ipx
*r
)
369 ndr_print_struct(ndr
, name
, "epm_rhs_ipx");
374 static enum ndr_err_code
ndr_push_epm_rhs_smb(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_smb
*r
)
376 if (ndr_flags
& NDR_SCALARS
) {
377 NDR_CHECK(ndr_push_align(ndr
, 4));
379 uint32_t _flags_save_string
= ndr
->flags
;
380 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
381 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->unc
));
382 ndr
->flags
= _flags_save_string
;
384 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
386 if (ndr_flags
& NDR_BUFFERS
) {
388 return NDR_ERR_SUCCESS
;
391 static enum ndr_err_code
ndr_pull_epm_rhs_smb(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_smb
*r
)
393 if (ndr_flags
& NDR_SCALARS
) {
394 NDR_CHECK(ndr_pull_align(ndr
, 4));
396 uint32_t _flags_save_string
= ndr
->flags
;
397 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
398 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->unc
));
399 ndr
->flags
= _flags_save_string
;
401 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
403 if (ndr_flags
& NDR_BUFFERS
) {
405 return NDR_ERR_SUCCESS
;
408 _PUBLIC_
void ndr_print_epm_rhs_smb(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_smb
*r
)
410 ndr_print_struct(ndr
, name
, "epm_rhs_smb");
412 ndr_print_string(ndr
, "unc", r
->unc
);
416 static enum ndr_err_code
ndr_push_epm_rhs_named_pipe(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_named_pipe
*r
)
418 if (ndr_flags
& NDR_SCALARS
) {
419 NDR_CHECK(ndr_push_align(ndr
, 4));
421 uint32_t _flags_save_string
= ndr
->flags
;
422 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
423 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->path
));
424 ndr
->flags
= _flags_save_string
;
426 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
428 if (ndr_flags
& NDR_BUFFERS
) {
430 return NDR_ERR_SUCCESS
;
433 static enum ndr_err_code
ndr_pull_epm_rhs_named_pipe(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_named_pipe
*r
)
435 if (ndr_flags
& NDR_SCALARS
) {
436 NDR_CHECK(ndr_pull_align(ndr
, 4));
438 uint32_t _flags_save_string
= ndr
->flags
;
439 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
440 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->path
));
441 ndr
->flags
= _flags_save_string
;
443 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
445 if (ndr_flags
& NDR_BUFFERS
) {
447 return NDR_ERR_SUCCESS
;
450 _PUBLIC_
void ndr_print_epm_rhs_named_pipe(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_named_pipe
*r
)
452 ndr_print_struct(ndr
, name
, "epm_rhs_named_pipe");
454 ndr_print_string(ndr
, "path", r
->path
);
458 static enum ndr_err_code
ndr_push_epm_rhs_netbios(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_netbios
*r
)
460 if (ndr_flags
& NDR_SCALARS
) {
461 NDR_CHECK(ndr_push_align(ndr
, 4));
463 uint32_t _flags_save_string
= ndr
->flags
;
464 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
465 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->name
));
466 ndr
->flags
= _flags_save_string
;
468 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
470 if (ndr_flags
& NDR_BUFFERS
) {
472 return NDR_ERR_SUCCESS
;
475 static enum ndr_err_code
ndr_pull_epm_rhs_netbios(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_netbios
*r
)
477 if (ndr_flags
& NDR_SCALARS
) {
478 NDR_CHECK(ndr_pull_align(ndr
, 4));
480 uint32_t _flags_save_string
= ndr
->flags
;
481 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
482 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->name
));
483 ndr
->flags
= _flags_save_string
;
485 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
487 if (ndr_flags
& NDR_BUFFERS
) {
489 return NDR_ERR_SUCCESS
;
492 _PUBLIC_
void ndr_print_epm_rhs_netbios(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_netbios
*r
)
494 ndr_print_struct(ndr
, name
, "epm_rhs_netbios");
496 ndr_print_string(ndr
, "name", r
->name
);
500 static enum ndr_err_code
ndr_push_epm_rhs_netbeui(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_netbeui
*r
)
502 if (ndr_flags
& NDR_SCALARS
) {
503 NDR_CHECK(ndr_push_align(ndr
, 1));
504 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
506 if (ndr_flags
& NDR_BUFFERS
) {
508 return NDR_ERR_SUCCESS
;
511 static enum ndr_err_code
ndr_pull_epm_rhs_netbeui(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_netbeui
*r
)
513 if (ndr_flags
& NDR_SCALARS
) {
514 NDR_CHECK(ndr_pull_align(ndr
, 1));
515 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
517 if (ndr_flags
& NDR_BUFFERS
) {
519 return NDR_ERR_SUCCESS
;
522 _PUBLIC_
void ndr_print_epm_rhs_netbeui(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_netbeui
*r
)
524 ndr_print_struct(ndr
, name
, "epm_rhs_netbeui");
529 static enum ndr_err_code
ndr_push_epm_rhs_spx(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_spx
*r
)
531 if (ndr_flags
& NDR_SCALARS
) {
532 NDR_CHECK(ndr_push_align(ndr
, 1));
533 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
535 if (ndr_flags
& NDR_BUFFERS
) {
537 return NDR_ERR_SUCCESS
;
540 static enum ndr_err_code
ndr_pull_epm_rhs_spx(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_spx
*r
)
542 if (ndr_flags
& NDR_SCALARS
) {
543 NDR_CHECK(ndr_pull_align(ndr
, 1));
544 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
546 if (ndr_flags
& NDR_BUFFERS
) {
548 return NDR_ERR_SUCCESS
;
551 _PUBLIC_
void ndr_print_epm_rhs_spx(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_spx
*r
)
553 ndr_print_struct(ndr
, name
, "epm_rhs_spx");
558 static enum ndr_err_code
ndr_push_epm_rhs_nb_ipx(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_nb_ipx
*r
)
560 if (ndr_flags
& NDR_SCALARS
) {
561 NDR_CHECK(ndr_push_align(ndr
, 1));
562 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
564 if (ndr_flags
& NDR_BUFFERS
) {
566 return NDR_ERR_SUCCESS
;
569 static enum ndr_err_code
ndr_pull_epm_rhs_nb_ipx(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_nb_ipx
*r
)
571 if (ndr_flags
& NDR_SCALARS
) {
572 NDR_CHECK(ndr_pull_align(ndr
, 1));
573 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
575 if (ndr_flags
& NDR_BUFFERS
) {
577 return NDR_ERR_SUCCESS
;
580 _PUBLIC_
void ndr_print_epm_rhs_nb_ipx(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_nb_ipx
*r
)
582 ndr_print_struct(ndr
, name
, "epm_rhs_nb_ipx");
587 static enum ndr_err_code
ndr_push_epm_rhs_http(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_http
*r
)
589 if (ndr_flags
& NDR_SCALARS
) {
590 NDR_CHECK(ndr_push_align(ndr
, 2));
591 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
592 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
594 if (ndr_flags
& NDR_BUFFERS
) {
596 return NDR_ERR_SUCCESS
;
599 static enum ndr_err_code
ndr_pull_epm_rhs_http(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_http
*r
)
601 if (ndr_flags
& NDR_SCALARS
) {
602 NDR_CHECK(ndr_pull_align(ndr
, 2));
603 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
604 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
606 if (ndr_flags
& NDR_BUFFERS
) {
608 return NDR_ERR_SUCCESS
;
611 _PUBLIC_
void ndr_print_epm_rhs_http(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_http
*r
)
613 ndr_print_struct(ndr
, name
, "epm_rhs_http");
615 ndr_print_uint16(ndr
, "port", r
->port
);
619 static enum ndr_err_code
ndr_push_epm_rhs_unix_ds(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_unix_ds
*r
)
621 if (ndr_flags
& NDR_SCALARS
) {
622 NDR_CHECK(ndr_push_align(ndr
, 4));
624 uint32_t _flags_save_string
= ndr
->flags
;
625 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
626 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->path
));
627 ndr
->flags
= _flags_save_string
;
629 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
631 if (ndr_flags
& NDR_BUFFERS
) {
633 return NDR_ERR_SUCCESS
;
636 static enum ndr_err_code
ndr_pull_epm_rhs_unix_ds(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_unix_ds
*r
)
638 if (ndr_flags
& NDR_SCALARS
) {
639 NDR_CHECK(ndr_pull_align(ndr
, 4));
641 uint32_t _flags_save_string
= ndr
->flags
;
642 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
643 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->path
));
644 ndr
->flags
= _flags_save_string
;
646 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
648 if (ndr_flags
& NDR_BUFFERS
) {
650 return NDR_ERR_SUCCESS
;
653 _PUBLIC_
void ndr_print_epm_rhs_unix_ds(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_unix_ds
*r
)
655 ndr_print_struct(ndr
, name
, "epm_rhs_unix_ds");
657 ndr_print_string(ndr
, "path", r
->path
);
661 static enum ndr_err_code
ndr_push_epm_rhs_null(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_null
*r
)
663 if (ndr_flags
& NDR_SCALARS
) {
664 NDR_CHECK(ndr_push_align(ndr
, 1));
665 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
667 if (ndr_flags
& NDR_BUFFERS
) {
669 return NDR_ERR_SUCCESS
;
672 static enum ndr_err_code
ndr_pull_epm_rhs_null(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_null
*r
)
674 if (ndr_flags
& NDR_SCALARS
) {
675 NDR_CHECK(ndr_pull_align(ndr
, 1));
676 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
678 if (ndr_flags
& NDR_BUFFERS
) {
680 return NDR_ERR_SUCCESS
;
683 _PUBLIC_
void ndr_print_epm_rhs_null(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_null
*r
)
685 ndr_print_struct(ndr
, name
, "epm_rhs_null");
690 static enum ndr_err_code
ndr_push_epm_rhs_ncalrpc(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ncalrpc
*r
)
692 if (ndr_flags
& NDR_SCALARS
) {
693 NDR_CHECK(ndr_push_align(ndr
, 2));
694 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->minor_version
));
695 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
697 if (ndr_flags
& NDR_BUFFERS
) {
699 return NDR_ERR_SUCCESS
;
702 static enum ndr_err_code
ndr_pull_epm_rhs_ncalrpc(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ncalrpc
*r
)
704 if (ndr_flags
& NDR_SCALARS
) {
705 NDR_CHECK(ndr_pull_align(ndr
, 2));
706 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->minor_version
));
707 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
709 if (ndr_flags
& NDR_BUFFERS
) {
711 return NDR_ERR_SUCCESS
;
714 _PUBLIC_
void ndr_print_epm_rhs_ncalrpc(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ncalrpc
*r
)
716 ndr_print_struct(ndr
, name
, "epm_rhs_ncalrpc");
718 ndr_print_uint16(ndr
, "minor_version", r
->minor_version
);
722 static enum ndr_err_code
ndr_push_epm_rhs_appletalk(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_appletalk
*r
)
724 if (ndr_flags
& NDR_SCALARS
) {
725 NDR_CHECK(ndr_push_align(ndr
, 1));
726 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
728 if (ndr_flags
& NDR_BUFFERS
) {
730 return NDR_ERR_SUCCESS
;
733 static enum ndr_err_code
ndr_pull_epm_rhs_appletalk(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_appletalk
*r
)
735 if (ndr_flags
& NDR_SCALARS
) {
736 NDR_CHECK(ndr_pull_align(ndr
, 1));
737 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
739 if (ndr_flags
& NDR_BUFFERS
) {
741 return NDR_ERR_SUCCESS
;
744 _PUBLIC_
void ndr_print_epm_rhs_appletalk(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_appletalk
*r
)
746 ndr_print_struct(ndr
, name
, "epm_rhs_appletalk");
751 static enum ndr_err_code
ndr_push_epm_rhs_atalk_stream(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_atalk_stream
*r
)
753 if (ndr_flags
& NDR_SCALARS
) {
754 NDR_CHECK(ndr_push_align(ndr
, 1));
755 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
757 if (ndr_flags
& NDR_BUFFERS
) {
759 return NDR_ERR_SUCCESS
;
762 static enum ndr_err_code
ndr_pull_epm_rhs_atalk_stream(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_atalk_stream
*r
)
764 if (ndr_flags
& NDR_SCALARS
) {
765 NDR_CHECK(ndr_pull_align(ndr
, 1));
766 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
768 if (ndr_flags
& NDR_BUFFERS
) {
770 return NDR_ERR_SUCCESS
;
773 _PUBLIC_
void ndr_print_epm_rhs_atalk_stream(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_atalk_stream
*r
)
775 ndr_print_struct(ndr
, name
, "epm_rhs_atalk_stream");
780 static enum ndr_err_code
ndr_push_epm_rhs_atalk_datagram(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_atalk_datagram
*r
)
782 if (ndr_flags
& NDR_SCALARS
) {
783 NDR_CHECK(ndr_push_align(ndr
, 1));
784 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
786 if (ndr_flags
& NDR_BUFFERS
) {
788 return NDR_ERR_SUCCESS
;
791 static enum ndr_err_code
ndr_pull_epm_rhs_atalk_datagram(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_atalk_datagram
*r
)
793 if (ndr_flags
& NDR_SCALARS
) {
794 NDR_CHECK(ndr_pull_align(ndr
, 1));
795 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
797 if (ndr_flags
& NDR_BUFFERS
) {
799 return NDR_ERR_SUCCESS
;
802 _PUBLIC_
void ndr_print_epm_rhs_atalk_datagram(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_atalk_datagram
*r
)
804 ndr_print_struct(ndr
, name
, "epm_rhs_atalk_datagram");
809 static enum ndr_err_code
ndr_push_epm_rhs_vines_spp(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_vines_spp
*r
)
811 if (ndr_flags
& NDR_SCALARS
) {
812 NDR_CHECK(ndr_push_align(ndr
, 2));
813 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
814 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
816 if (ndr_flags
& NDR_BUFFERS
) {
818 return NDR_ERR_SUCCESS
;
821 static enum ndr_err_code
ndr_pull_epm_rhs_vines_spp(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_vines_spp
*r
)
823 if (ndr_flags
& NDR_SCALARS
) {
824 NDR_CHECK(ndr_pull_align(ndr
, 2));
825 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
826 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
828 if (ndr_flags
& NDR_BUFFERS
) {
830 return NDR_ERR_SUCCESS
;
833 _PUBLIC_
void ndr_print_epm_rhs_vines_spp(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_vines_spp
*r
)
835 ndr_print_struct(ndr
, name
, "epm_rhs_vines_spp");
837 ndr_print_uint16(ndr
, "port", r
->port
);
841 static enum ndr_err_code
ndr_push_epm_rhs_vines_ipc(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_vines_ipc
*r
)
843 if (ndr_flags
& NDR_SCALARS
) {
844 NDR_CHECK(ndr_push_align(ndr
, 2));
845 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
846 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
848 if (ndr_flags
& NDR_BUFFERS
) {
850 return NDR_ERR_SUCCESS
;
853 static enum ndr_err_code
ndr_pull_epm_rhs_vines_ipc(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_vines_ipc
*r
)
855 if (ndr_flags
& NDR_SCALARS
) {
856 NDR_CHECK(ndr_pull_align(ndr
, 2));
857 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
858 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
860 if (ndr_flags
& NDR_BUFFERS
) {
862 return NDR_ERR_SUCCESS
;
865 _PUBLIC_
void ndr_print_epm_rhs_vines_ipc(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_vines_ipc
*r
)
867 ndr_print_struct(ndr
, name
, "epm_rhs_vines_ipc");
869 ndr_print_uint16(ndr
, "port", r
->port
);
873 static enum ndr_err_code
ndr_push_epm_rhs_streettalk(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_streettalk
*r
)
875 if (ndr_flags
& NDR_SCALARS
) {
876 NDR_CHECK(ndr_push_align(ndr
, 4));
878 uint32_t _flags_save_string
= ndr
->flags
;
879 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
880 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->streettalk
));
881 ndr
->flags
= _flags_save_string
;
883 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
885 if (ndr_flags
& NDR_BUFFERS
) {
887 return NDR_ERR_SUCCESS
;
890 static enum ndr_err_code
ndr_pull_epm_rhs_streettalk(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_streettalk
*r
)
892 if (ndr_flags
& NDR_SCALARS
) {
893 NDR_CHECK(ndr_pull_align(ndr
, 4));
895 uint32_t _flags_save_string
= ndr
->flags
;
896 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
897 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->streettalk
));
898 ndr
->flags
= _flags_save_string
;
900 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
902 if (ndr_flags
& NDR_BUFFERS
) {
904 return NDR_ERR_SUCCESS
;
907 _PUBLIC_
void ndr_print_epm_rhs_streettalk(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_streettalk
*r
)
909 ndr_print_struct(ndr
, name
, "epm_rhs_streettalk");
911 ndr_print_string(ndr
, "streettalk", r
->streettalk
);
915 static enum ndr_err_code
ndr_push_epm_rhs(struct ndr_push
*ndr
, int ndr_flags
, const union epm_rhs
*r
)
918 uint32_t _flags_save_UNION
= ndr
->flags
;
919 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_BIGENDIAN
);
920 if (ndr_flags
& NDR_SCALARS
) {
921 int level
= ndr_push_get_switch_value(ndr
, r
);
922 NDR_CHECK(ndr_push_union_align(ndr
, 4));
924 case EPM_PROTOCOL_DNET_NSP
: {
925 NDR_CHECK(ndr_push_epm_rhs_dnet_nsp(ndr
, NDR_SCALARS
, &r
->dnet_nsp
));
928 case EPM_PROTOCOL_OSI_TP4
: {
929 NDR_CHECK(ndr_push_epm_rhs_osi_tp4(ndr
, NDR_SCALARS
, &r
->osi_tp4
));
932 case EPM_PROTOCOL_OSI_CLNS
: {
933 NDR_CHECK(ndr_push_epm_rhs_osi_clns(ndr
, NDR_SCALARS
, &r
->osi_clns
));
936 case EPM_PROTOCOL_TCP
: {
937 NDR_CHECK(ndr_push_epm_rhs_tcp(ndr
, NDR_SCALARS
, &r
->tcp
));
940 case EPM_PROTOCOL_UDP
: {
941 NDR_CHECK(ndr_push_epm_rhs_udp(ndr
, NDR_SCALARS
, &r
->udp
));
944 case EPM_PROTOCOL_IP
: {
945 NDR_CHECK(ndr_push_epm_rhs_ip(ndr
, NDR_SCALARS
, &r
->ip
));
948 case EPM_PROTOCOL_NCADG
: {
949 NDR_CHECK(ndr_push_epm_rhs_ncadg(ndr
, NDR_SCALARS
, &r
->ncadg
));
952 case EPM_PROTOCOL_NCACN
: {
953 NDR_CHECK(ndr_push_epm_rhs_ncacn(ndr
, NDR_SCALARS
, &r
->ncacn
));
956 case EPM_PROTOCOL_NCALRPC
: {
957 NDR_CHECK(ndr_push_epm_rhs_ncalrpc(ndr
, NDR_SCALARS
, &r
->ncalrpc
));
960 case EPM_PROTOCOL_UUID
: {
961 NDR_CHECK(ndr_push_epm_rhs_uuid(ndr
, NDR_SCALARS
, &r
->uuid
));
964 case EPM_PROTOCOL_IPX
: {
965 NDR_CHECK(ndr_push_epm_rhs_ipx(ndr
, NDR_SCALARS
, &r
->ipx
));
968 case EPM_PROTOCOL_SMB
: {
969 NDR_CHECK(ndr_push_epm_rhs_smb(ndr
, NDR_SCALARS
, &r
->smb
));
972 case EPM_PROTOCOL_NAMED_PIPE
: {
973 NDR_CHECK(ndr_push_epm_rhs_named_pipe(ndr
, NDR_SCALARS
, &r
->named_pipe
));
976 case EPM_PROTOCOL_NETBIOS
: {
977 NDR_CHECK(ndr_push_epm_rhs_netbios(ndr
, NDR_SCALARS
, &r
->netbios
));
980 case EPM_PROTOCOL_NETBEUI
: {
981 NDR_CHECK(ndr_push_epm_rhs_netbeui(ndr
, NDR_SCALARS
, &r
->netbeui
));
984 case EPM_PROTOCOL_SPX
: {
985 NDR_CHECK(ndr_push_epm_rhs_spx(ndr
, NDR_SCALARS
, &r
->spx
));
988 case EPM_PROTOCOL_NB_IPX
: {
989 NDR_CHECK(ndr_push_epm_rhs_nb_ipx(ndr
, NDR_SCALARS
, &r
->nb_ipx
));
992 case EPM_PROTOCOL_DSP
: {
993 NDR_CHECK(ndr_push_epm_rhs_atalk_stream(ndr
, NDR_SCALARS
, &r
->atalk_stream
));
996 case EPM_PROTOCOL_DDP
: {
997 NDR_CHECK(ndr_push_epm_rhs_atalk_datagram(ndr
, NDR_SCALARS
, &r
->atalk_datagram
));
1000 case EPM_PROTOCOL_APPLETALK
: {
1001 NDR_CHECK(ndr_push_epm_rhs_appletalk(ndr
, NDR_SCALARS
, &r
->appletalk
));
1004 case EPM_PROTOCOL_VINES_SPP
: {
1005 NDR_CHECK(ndr_push_epm_rhs_vines_spp(ndr
, NDR_SCALARS
, &r
->vines_spp
));
1008 case EPM_PROTOCOL_VINES_IPC
: {
1009 NDR_CHECK(ndr_push_epm_rhs_vines_ipc(ndr
, NDR_SCALARS
, &r
->vines_ipc
));
1012 case EPM_PROTOCOL_STREETTALK
: {
1013 NDR_CHECK(ndr_push_epm_rhs_streettalk(ndr
, NDR_SCALARS
, &r
->streettalk
));
1016 case EPM_PROTOCOL_HTTP
: {
1017 NDR_CHECK(ndr_push_epm_rhs_http(ndr
, NDR_SCALARS
, &r
->http
));
1020 case EPM_PROTOCOL_UNIX_DS
: {
1021 NDR_CHECK(ndr_push_epm_rhs_unix_ds(ndr
, NDR_SCALARS
, &r
->unix_ds
));
1024 case EPM_PROTOCOL_NULL
: {
1025 NDR_CHECK(ndr_push_epm_rhs_null(ndr
, NDR_SCALARS
, &r
->null
));
1030 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
1031 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
1032 NDR_CHECK(ndr_push_DATA_BLOB(ndr
, NDR_SCALARS
, r
->unknown
));
1033 ndr
->flags
= _flags_save_DATA_BLOB
;
1039 if (ndr_flags
& NDR_BUFFERS
) {
1040 int level
= ndr_push_get_switch_value(ndr
, r
);
1042 case EPM_PROTOCOL_DNET_NSP
:
1045 case EPM_PROTOCOL_OSI_TP4
:
1048 case EPM_PROTOCOL_OSI_CLNS
:
1051 case EPM_PROTOCOL_TCP
:
1054 case EPM_PROTOCOL_UDP
:
1057 case EPM_PROTOCOL_IP
:
1060 case EPM_PROTOCOL_NCADG
:
1063 case EPM_PROTOCOL_NCACN
:
1066 case EPM_PROTOCOL_NCALRPC
:
1069 case EPM_PROTOCOL_UUID
:
1072 case EPM_PROTOCOL_IPX
:
1075 case EPM_PROTOCOL_SMB
:
1078 case EPM_PROTOCOL_NAMED_PIPE
:
1081 case EPM_PROTOCOL_NETBIOS
:
1084 case EPM_PROTOCOL_NETBEUI
:
1087 case EPM_PROTOCOL_SPX
:
1090 case EPM_PROTOCOL_NB_IPX
:
1093 case EPM_PROTOCOL_DSP
:
1096 case EPM_PROTOCOL_DDP
:
1099 case EPM_PROTOCOL_APPLETALK
:
1102 case EPM_PROTOCOL_VINES_SPP
:
1105 case EPM_PROTOCOL_VINES_IPC
:
1108 case EPM_PROTOCOL_STREETTALK
:
1111 case EPM_PROTOCOL_HTTP
:
1114 case EPM_PROTOCOL_UNIX_DS
:
1117 case EPM_PROTOCOL_NULL
:
1125 ndr
->flags
= _flags_save_UNION
;
1127 return NDR_ERR_SUCCESS
;
1130 static enum ndr_err_code
ndr_pull_epm_rhs(struct ndr_pull
*ndr
, int ndr_flags
, union epm_rhs
*r
)
1134 uint32_t _flags_save_UNION
= ndr
->flags
;
1135 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_BIGENDIAN
);
1136 level
= ndr_pull_get_switch_value(ndr
, r
);
1137 if (ndr_flags
& NDR_SCALARS
) {
1138 NDR_CHECK(ndr_pull_union_align(ndr
, 4));
1140 case EPM_PROTOCOL_DNET_NSP
: {
1141 NDR_CHECK(ndr_pull_epm_rhs_dnet_nsp(ndr
, NDR_SCALARS
, &r
->dnet_nsp
));
1144 case EPM_PROTOCOL_OSI_TP4
: {
1145 NDR_CHECK(ndr_pull_epm_rhs_osi_tp4(ndr
, NDR_SCALARS
, &r
->osi_tp4
));
1148 case EPM_PROTOCOL_OSI_CLNS
: {
1149 NDR_CHECK(ndr_pull_epm_rhs_osi_clns(ndr
, NDR_SCALARS
, &r
->osi_clns
));
1152 case EPM_PROTOCOL_TCP
: {
1153 NDR_CHECK(ndr_pull_epm_rhs_tcp(ndr
, NDR_SCALARS
, &r
->tcp
));
1156 case EPM_PROTOCOL_UDP
: {
1157 NDR_CHECK(ndr_pull_epm_rhs_udp(ndr
, NDR_SCALARS
, &r
->udp
));
1160 case EPM_PROTOCOL_IP
: {
1161 NDR_CHECK(ndr_pull_epm_rhs_ip(ndr
, NDR_SCALARS
, &r
->ip
));
1164 case EPM_PROTOCOL_NCADG
: {
1165 NDR_CHECK(ndr_pull_epm_rhs_ncadg(ndr
, NDR_SCALARS
, &r
->ncadg
));
1168 case EPM_PROTOCOL_NCACN
: {
1169 NDR_CHECK(ndr_pull_epm_rhs_ncacn(ndr
, NDR_SCALARS
, &r
->ncacn
));
1172 case EPM_PROTOCOL_NCALRPC
: {
1173 NDR_CHECK(ndr_pull_epm_rhs_ncalrpc(ndr
, NDR_SCALARS
, &r
->ncalrpc
));
1176 case EPM_PROTOCOL_UUID
: {
1177 NDR_CHECK(ndr_pull_epm_rhs_uuid(ndr
, NDR_SCALARS
, &r
->uuid
));
1180 case EPM_PROTOCOL_IPX
: {
1181 NDR_CHECK(ndr_pull_epm_rhs_ipx(ndr
, NDR_SCALARS
, &r
->ipx
));
1184 case EPM_PROTOCOL_SMB
: {
1185 NDR_CHECK(ndr_pull_epm_rhs_smb(ndr
, NDR_SCALARS
, &r
->smb
));
1188 case EPM_PROTOCOL_NAMED_PIPE
: {
1189 NDR_CHECK(ndr_pull_epm_rhs_named_pipe(ndr
, NDR_SCALARS
, &r
->named_pipe
));
1192 case EPM_PROTOCOL_NETBIOS
: {
1193 NDR_CHECK(ndr_pull_epm_rhs_netbios(ndr
, NDR_SCALARS
, &r
->netbios
));
1196 case EPM_PROTOCOL_NETBEUI
: {
1197 NDR_CHECK(ndr_pull_epm_rhs_netbeui(ndr
, NDR_SCALARS
, &r
->netbeui
));
1200 case EPM_PROTOCOL_SPX
: {
1201 NDR_CHECK(ndr_pull_epm_rhs_spx(ndr
, NDR_SCALARS
, &r
->spx
));
1204 case EPM_PROTOCOL_NB_IPX
: {
1205 NDR_CHECK(ndr_pull_epm_rhs_nb_ipx(ndr
, NDR_SCALARS
, &r
->nb_ipx
));
1208 case EPM_PROTOCOL_DSP
: {
1209 NDR_CHECK(ndr_pull_epm_rhs_atalk_stream(ndr
, NDR_SCALARS
, &r
->atalk_stream
));
1212 case EPM_PROTOCOL_DDP
: {
1213 NDR_CHECK(ndr_pull_epm_rhs_atalk_datagram(ndr
, NDR_SCALARS
, &r
->atalk_datagram
));
1216 case EPM_PROTOCOL_APPLETALK
: {
1217 NDR_CHECK(ndr_pull_epm_rhs_appletalk(ndr
, NDR_SCALARS
, &r
->appletalk
));
1220 case EPM_PROTOCOL_VINES_SPP
: {
1221 NDR_CHECK(ndr_pull_epm_rhs_vines_spp(ndr
, NDR_SCALARS
, &r
->vines_spp
));
1224 case EPM_PROTOCOL_VINES_IPC
: {
1225 NDR_CHECK(ndr_pull_epm_rhs_vines_ipc(ndr
, NDR_SCALARS
, &r
->vines_ipc
));
1228 case EPM_PROTOCOL_STREETTALK
: {
1229 NDR_CHECK(ndr_pull_epm_rhs_streettalk(ndr
, NDR_SCALARS
, &r
->streettalk
));
1232 case EPM_PROTOCOL_HTTP
: {
1233 NDR_CHECK(ndr_pull_epm_rhs_http(ndr
, NDR_SCALARS
, &r
->http
));
1236 case EPM_PROTOCOL_UNIX_DS
: {
1237 NDR_CHECK(ndr_pull_epm_rhs_unix_ds(ndr
, NDR_SCALARS
, &r
->unix_ds
));
1240 case EPM_PROTOCOL_NULL
: {
1241 NDR_CHECK(ndr_pull_epm_rhs_null(ndr
, NDR_SCALARS
, &r
->null
));
1246 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
1247 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
1248 NDR_CHECK(ndr_pull_DATA_BLOB(ndr
, NDR_SCALARS
, &r
->unknown
));
1249 ndr
->flags
= _flags_save_DATA_BLOB
;
1255 if (ndr_flags
& NDR_BUFFERS
) {
1257 case EPM_PROTOCOL_DNET_NSP
:
1260 case EPM_PROTOCOL_OSI_TP4
:
1263 case EPM_PROTOCOL_OSI_CLNS
:
1266 case EPM_PROTOCOL_TCP
:
1269 case EPM_PROTOCOL_UDP
:
1272 case EPM_PROTOCOL_IP
:
1275 case EPM_PROTOCOL_NCADG
:
1278 case EPM_PROTOCOL_NCACN
:
1281 case EPM_PROTOCOL_NCALRPC
:
1284 case EPM_PROTOCOL_UUID
:
1287 case EPM_PROTOCOL_IPX
:
1290 case EPM_PROTOCOL_SMB
:
1293 case EPM_PROTOCOL_NAMED_PIPE
:
1296 case EPM_PROTOCOL_NETBIOS
:
1299 case EPM_PROTOCOL_NETBEUI
:
1302 case EPM_PROTOCOL_SPX
:
1305 case EPM_PROTOCOL_NB_IPX
:
1308 case EPM_PROTOCOL_DSP
:
1311 case EPM_PROTOCOL_DDP
:
1314 case EPM_PROTOCOL_APPLETALK
:
1317 case EPM_PROTOCOL_VINES_SPP
:
1320 case EPM_PROTOCOL_VINES_IPC
:
1323 case EPM_PROTOCOL_STREETTALK
:
1326 case EPM_PROTOCOL_HTTP
:
1329 case EPM_PROTOCOL_UNIX_DS
:
1332 case EPM_PROTOCOL_NULL
:
1340 ndr
->flags
= _flags_save_UNION
;
1342 return NDR_ERR_SUCCESS
;
1345 _PUBLIC_
void ndr_print_epm_rhs(struct ndr_print
*ndr
, const char *name
, const union epm_rhs
*r
)
1349 uint32_t _flags_save_UNION
= ndr
->flags
;
1350 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_BIGENDIAN
);
1351 level
= ndr_print_get_switch_value(ndr
, r
);
1352 ndr_print_union(ndr
, name
, level
, "epm_rhs");
1354 case EPM_PROTOCOL_DNET_NSP
:
1355 ndr_print_epm_rhs_dnet_nsp(ndr
, "dnet_nsp", &r
->dnet_nsp
);
1358 case EPM_PROTOCOL_OSI_TP4
:
1359 ndr_print_epm_rhs_osi_tp4(ndr
, "osi_tp4", &r
->osi_tp4
);
1362 case EPM_PROTOCOL_OSI_CLNS
:
1363 ndr_print_epm_rhs_osi_clns(ndr
, "osi_clns", &r
->osi_clns
);
1366 case EPM_PROTOCOL_TCP
:
1367 ndr_print_epm_rhs_tcp(ndr
, "tcp", &r
->tcp
);
1370 case EPM_PROTOCOL_UDP
:
1371 ndr_print_epm_rhs_udp(ndr
, "udp", &r
->udp
);
1374 case EPM_PROTOCOL_IP
:
1375 ndr_print_epm_rhs_ip(ndr
, "ip", &r
->ip
);
1378 case EPM_PROTOCOL_NCADG
:
1379 ndr_print_epm_rhs_ncadg(ndr
, "ncadg", &r
->ncadg
);
1382 case EPM_PROTOCOL_NCACN
:
1383 ndr_print_epm_rhs_ncacn(ndr
, "ncacn", &r
->ncacn
);
1386 case EPM_PROTOCOL_NCALRPC
:
1387 ndr_print_epm_rhs_ncalrpc(ndr
, "ncalrpc", &r
->ncalrpc
);
1390 case EPM_PROTOCOL_UUID
:
1391 ndr_print_epm_rhs_uuid(ndr
, "uuid", &r
->uuid
);
1394 case EPM_PROTOCOL_IPX
:
1395 ndr_print_epm_rhs_ipx(ndr
, "ipx", &r
->ipx
);
1398 case EPM_PROTOCOL_SMB
:
1399 ndr_print_epm_rhs_smb(ndr
, "smb", &r
->smb
);
1402 case EPM_PROTOCOL_NAMED_PIPE
:
1403 ndr_print_epm_rhs_named_pipe(ndr
, "named_pipe", &r
->named_pipe
);
1406 case EPM_PROTOCOL_NETBIOS
:
1407 ndr_print_epm_rhs_netbios(ndr
, "netbios", &r
->netbios
);
1410 case EPM_PROTOCOL_NETBEUI
:
1411 ndr_print_epm_rhs_netbeui(ndr
, "netbeui", &r
->netbeui
);
1414 case EPM_PROTOCOL_SPX
:
1415 ndr_print_epm_rhs_spx(ndr
, "spx", &r
->spx
);
1418 case EPM_PROTOCOL_NB_IPX
:
1419 ndr_print_epm_rhs_nb_ipx(ndr
, "nb_ipx", &r
->nb_ipx
);
1422 case EPM_PROTOCOL_DSP
:
1423 ndr_print_epm_rhs_atalk_stream(ndr
, "atalk_stream", &r
->atalk_stream
);
1426 case EPM_PROTOCOL_DDP
:
1427 ndr_print_epm_rhs_atalk_datagram(ndr
, "atalk_datagram", &r
->atalk_datagram
);
1430 case EPM_PROTOCOL_APPLETALK
:
1431 ndr_print_epm_rhs_appletalk(ndr
, "appletalk", &r
->appletalk
);
1434 case EPM_PROTOCOL_VINES_SPP
:
1435 ndr_print_epm_rhs_vines_spp(ndr
, "vines_spp", &r
->vines_spp
);
1438 case EPM_PROTOCOL_VINES_IPC
:
1439 ndr_print_epm_rhs_vines_ipc(ndr
, "vines_ipc", &r
->vines_ipc
);
1442 case EPM_PROTOCOL_STREETTALK
:
1443 ndr_print_epm_rhs_streettalk(ndr
, "streettalk", &r
->streettalk
);
1446 case EPM_PROTOCOL_HTTP
:
1447 ndr_print_epm_rhs_http(ndr
, "http", &r
->http
);
1450 case EPM_PROTOCOL_UNIX_DS
:
1451 ndr_print_epm_rhs_unix_ds(ndr
, "unix_ds", &r
->unix_ds
);
1454 case EPM_PROTOCOL_NULL
:
1455 ndr_print_epm_rhs_null(ndr
, "null", &r
->null
);
1459 ndr_print_DATA_BLOB(ndr
, "unknown", r
->unknown
);
1463 ndr
->flags
= _flags_save_UNION
;
1467 static enum ndr_err_code
ndr_push_epm_lhs(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_lhs
*r
)
1469 if (ndr_flags
& NDR_SCALARS
) {
1470 NDR_CHECK(ndr_push_align(ndr
, 4));
1471 NDR_CHECK(ndr_push_epm_protocol(ndr
, NDR_SCALARS
, r
->protocol
));
1473 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
1474 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
1475 NDR_CHECK(ndr_push_DATA_BLOB(ndr
, NDR_SCALARS
, r
->lhs_data
));
1476 ndr
->flags
= _flags_save_DATA_BLOB
;
1478 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
1480 if (ndr_flags
& NDR_BUFFERS
) {
1482 return NDR_ERR_SUCCESS
;
1485 static enum ndr_err_code
ndr_pull_epm_lhs(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_lhs
*r
)
1487 if (ndr_flags
& NDR_SCALARS
) {
1488 NDR_CHECK(ndr_pull_align(ndr
, 4));
1489 NDR_CHECK(ndr_pull_epm_protocol(ndr
, NDR_SCALARS
, &r
->protocol
));
1491 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
1492 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
1493 NDR_CHECK(ndr_pull_DATA_BLOB(ndr
, NDR_SCALARS
, &r
->lhs_data
));
1494 ndr
->flags
= _flags_save_DATA_BLOB
;
1496 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
1498 if (ndr_flags
& NDR_BUFFERS
) {
1500 return NDR_ERR_SUCCESS
;
1503 _PUBLIC_
void ndr_print_epm_lhs(struct ndr_print
*ndr
, const char *name
, const struct epm_lhs
*r
)
1505 ndr_print_struct(ndr
, name
, "epm_lhs");
1507 ndr_print_epm_protocol(ndr
, "protocol", r
->protocol
);
1508 ndr_print_DATA_BLOB(ndr
, "lhs_data", r
->lhs_data
);
1512 static enum ndr_err_code
ndr_push_epm_floor(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_floor
*r
)
1514 if (ndr_flags
& NDR_SCALARS
) {
1515 NDR_CHECK(ndr_push_align(ndr
, 1));
1517 struct ndr_push
*_ndr_lhs
;
1518 NDR_CHECK(ndr_push_subcontext_start(ndr
, &_ndr_lhs
, 2, -1));
1519 NDR_CHECK(ndr_push_epm_lhs(_ndr_lhs
, NDR_SCALARS
, &r
->lhs
));
1520 NDR_CHECK(ndr_push_subcontext_end(ndr
, _ndr_lhs
, 2, -1));
1523 struct ndr_push
*_ndr_rhs
;
1524 NDR_CHECK(ndr_push_subcontext_start(ndr
, &_ndr_rhs
, 2, -1));
1525 NDR_CHECK(ndr_push_set_switch_value(_ndr_rhs
, &r
->rhs
, r
->lhs
.protocol
));
1526 NDR_CHECK(ndr_push_epm_rhs(_ndr_rhs
, NDR_SCALARS
, &r
->rhs
));
1527 NDR_CHECK(ndr_push_subcontext_end(ndr
, _ndr_rhs
, 2, -1));
1529 NDR_CHECK(ndr_push_trailer_align(ndr
, 1));
1531 if (ndr_flags
& NDR_BUFFERS
) {
1533 return NDR_ERR_SUCCESS
;
1536 static enum ndr_err_code
ndr_pull_epm_floor(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_floor
*r
)
1538 if (ndr_flags
& NDR_SCALARS
) {
1539 NDR_CHECK(ndr_pull_align(ndr
, 1));
1541 struct ndr_pull
*_ndr_lhs
;
1542 NDR_CHECK(ndr_pull_subcontext_start(ndr
, &_ndr_lhs
, 2, -1));
1543 NDR_CHECK(ndr_pull_epm_lhs(_ndr_lhs
, NDR_SCALARS
, &r
->lhs
));
1544 NDR_CHECK(ndr_pull_subcontext_end(ndr
, _ndr_lhs
, 2, -1));
1547 struct ndr_pull
*_ndr_rhs
;
1548 NDR_CHECK(ndr_pull_subcontext_start(ndr
, &_ndr_rhs
, 2, -1));
1549 NDR_CHECK(ndr_pull_set_switch_value(_ndr_rhs
, &r
->rhs
, r
->lhs
.protocol
));
1550 NDR_CHECK(ndr_pull_epm_rhs(_ndr_rhs
, NDR_SCALARS
, &r
->rhs
));
1551 NDR_CHECK(ndr_pull_subcontext_end(ndr
, _ndr_rhs
, 2, -1));
1553 NDR_CHECK(ndr_pull_trailer_align(ndr
, 1));
1555 if (ndr_flags
& NDR_BUFFERS
) {
1557 return NDR_ERR_SUCCESS
;
1560 _PUBLIC_
void ndr_print_epm_floor(struct ndr_print
*ndr
, const char *name
, const struct epm_floor
*r
)
1562 ndr_print_struct(ndr
, name
, "epm_floor");
1564 ndr_print_epm_lhs(ndr
, "lhs", &r
->lhs
);
1565 ndr_print_set_switch_value(ndr
, &r
->rhs
, r
->lhs
.protocol
);
1566 ndr_print_epm_rhs(ndr
, "rhs", &r
->rhs
);
1570 static enum ndr_err_code
ndr_push_epm_tower(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_tower
*r
)
1572 uint32_t cntr_floors_0
;
1574 uint32_t _flags_save_STRUCT
= ndr
->flags
;
1575 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
);
1576 if (ndr_flags
& NDR_SCALARS
) {
1577 NDR_CHECK(ndr_push_align(ndr
, 2));
1578 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->num_floors
));
1579 for (cntr_floors_0
= 0; cntr_floors_0
< r
->num_floors
; cntr_floors_0
++) {
1580 NDR_CHECK(ndr_push_epm_floor(ndr
, NDR_SCALARS
, &r
->floors
[cntr_floors_0
]));
1582 NDR_CHECK(ndr_push_trailer_align(ndr
, 2));
1584 if (ndr_flags
& NDR_BUFFERS
) {
1586 ndr
->flags
= _flags_save_STRUCT
;
1588 return NDR_ERR_SUCCESS
;
1591 static enum ndr_err_code
ndr_pull_epm_tower(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_tower
*r
)
1593 uint32_t cntr_floors_0
;
1594 TALLOC_CTX
*_mem_save_floors_0
;
1596 uint32_t _flags_save_STRUCT
= ndr
->flags
;
1597 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
);
1598 if (ndr_flags
& NDR_SCALARS
) {
1599 NDR_CHECK(ndr_pull_align(ndr
, 2));
1600 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->num_floors
));
1601 NDR_PULL_ALLOC_N(ndr
, r
->floors
, r
->num_floors
);
1602 _mem_save_floors_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1603 NDR_PULL_SET_MEM_CTX(ndr
, r
->floors
, 0);
1604 for (cntr_floors_0
= 0; cntr_floors_0
< r
->num_floors
; cntr_floors_0
++) {
1605 NDR_CHECK(ndr_pull_epm_floor(ndr
, NDR_SCALARS
, &r
->floors
[cntr_floors_0
]));
1607 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_floors_0
, 0);
1608 NDR_CHECK(ndr_pull_trailer_align(ndr
, 2));
1610 if (ndr_flags
& NDR_BUFFERS
) {
1612 ndr
->flags
= _flags_save_STRUCT
;
1614 return NDR_ERR_SUCCESS
;
1617 _PUBLIC_
void ndr_print_epm_tower(struct ndr_print
*ndr
, const char *name
, const struct epm_tower
*r
)
1619 uint32_t cntr_floors_0
;
1620 ndr_print_struct(ndr
, name
, "epm_tower");
1622 uint32_t _flags_save_STRUCT
= ndr
->flags
;
1623 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
);
1625 ndr_print_uint16(ndr
, "num_floors", r
->num_floors
);
1626 ndr
->print(ndr
, "%s: ARRAY(%d)", "floors", (int)r
->num_floors
);
1628 for (cntr_floors_0
=0;cntr_floors_0
<r
->num_floors
;cntr_floors_0
++) {
1630 if (asprintf(&idx_0
, "[%d]", cntr_floors_0
) != -1) {
1631 ndr_print_epm_floor(ndr
, "floors", &r
->floors
[cntr_floors_0
]);
1637 ndr
->flags
= _flags_save_STRUCT
;
1641 static size_t ndr_size_epm_tower(const struct epm_tower
*r
, struct smb_iconv_convenience
*ic
, int flags
)
1643 flags
|= LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
;
1644 return ndr_size_struct(r
, flags
, (ndr_push_flags_fn_t
)ndr_push_epm_tower
, ic
);
1647 static enum ndr_err_code
ndr_push_epm_twr_t(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_twr_t
*r
)
1649 if (ndr_flags
& NDR_SCALARS
) {
1650 NDR_CHECK(ndr_push_align(ndr
, 4));
1651 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, ndr_size_epm_tower(&r
->tower
, ndr
->iconv_convenience
, ndr
->flags
)));
1653 struct ndr_push
*_ndr_tower
;
1654 NDR_CHECK(ndr_push_subcontext_start(ndr
, &_ndr_tower
, 4, -1));
1655 NDR_CHECK(ndr_push_epm_tower(_ndr_tower
, NDR_SCALARS
, &r
->tower
));
1656 NDR_CHECK(ndr_push_subcontext_end(ndr
, _ndr_tower
, 4, -1));
1658 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
1660 if (ndr_flags
& NDR_BUFFERS
) {
1662 return NDR_ERR_SUCCESS
;
1665 static enum ndr_err_code
ndr_pull_epm_twr_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_twr_t
*r
)
1667 if (ndr_flags
& NDR_SCALARS
) {
1668 NDR_CHECK(ndr_pull_align(ndr
, 4));
1669 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->tower_length
));
1671 struct ndr_pull
*_ndr_tower
;
1672 NDR_CHECK(ndr_pull_subcontext_start(ndr
, &_ndr_tower
, 4, -1));
1673 NDR_CHECK(ndr_pull_epm_tower(_ndr_tower
, NDR_SCALARS
, &r
->tower
));
1674 NDR_CHECK(ndr_pull_subcontext_end(ndr
, _ndr_tower
, 4, -1));
1676 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
1678 if (ndr_flags
& NDR_BUFFERS
) {
1680 return NDR_ERR_SUCCESS
;
1683 _PUBLIC_
void ndr_print_epm_twr_t(struct ndr_print
*ndr
, const char *name
, const struct epm_twr_t
*r
)
1685 ndr_print_struct(ndr
, name
, "epm_twr_t");
1687 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
);
1688 ndr_print_epm_tower(ndr
, "tower", &r
->tower
);
1692 static enum ndr_err_code
ndr_push_epm_entry_t(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_entry_t
*r
)
1694 if (ndr_flags
& NDR_SCALARS
) {
1695 NDR_CHECK(ndr_push_align(ndr
, 5));
1696 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, &r
->object
));
1697 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->tower
));
1698 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
1699 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, strlen(r
->annotation
) + 1));
1700 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->annotation
, strlen(r
->annotation
) + 1, sizeof(uint8_t), CH_DOS
));
1701 NDR_CHECK(ndr_push_trailer_align(ndr
, 5));
1703 if (ndr_flags
& NDR_BUFFERS
) {
1705 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->tower
));
1708 return NDR_ERR_SUCCESS
;
1711 static enum ndr_err_code
ndr_pull_epm_entry_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_entry_t
*r
)
1713 uint32_t _ptr_tower
;
1714 TALLOC_CTX
*_mem_save_tower_0
;
1715 if (ndr_flags
& NDR_SCALARS
) {
1716 NDR_CHECK(ndr_pull_align(ndr
, 5));
1717 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, &r
->object
));
1718 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_tower
));
1720 NDR_PULL_ALLOC(ndr
, r
->tower
);
1724 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->__annotation_offset
));
1725 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->__annotation_length
));
1726 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->annotation
, r
->__annotation_length
, sizeof(uint8_t), CH_DOS
));
1727 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
1729 if (ndr_flags
& NDR_BUFFERS
) {
1731 _mem_save_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1732 NDR_PULL_SET_MEM_CTX(ndr
, r
->tower
, 0);
1733 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->tower
));
1734 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_tower_0
, 0);
1737 return NDR_ERR_SUCCESS
;
1740 _PUBLIC_
void ndr_print_epm_entry_t(struct ndr_print
*ndr
, const char *name
, const struct epm_entry_t
*r
)
1742 ndr_print_struct(ndr
, name
, "epm_entry_t");
1744 ndr_print_GUID(ndr
, "object", &r
->object
);
1745 ndr_print_ptr(ndr
, "tower", r
->tower
);
1748 ndr_print_epm_twr_t(ndr
, "tower", r
->tower
);
1751 ndr_print_uint32(ndr
, "__annotation_offset", (ndr
->flags
& LIBNDR_PRINT_SET_VALUES
)?0:r
->__annotation_offset
);
1752 ndr_print_uint32(ndr
, "__annotation_length", (ndr
->flags
& LIBNDR_PRINT_SET_VALUES
)?strlen(r
->annotation
) + 1:r
->__annotation_length
);
1753 ndr_print_string(ndr
, "annotation", r
->annotation
);
1757 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
)
1759 if (ndr_flags
& NDR_SCALARS
) {
1760 NDR_CHECK(ndr_push_align(ndr
, 4));
1761 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, &r
->uuid
));
1762 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->vers_major
));
1763 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->vers_minor
));
1764 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
1766 if (ndr_flags
& NDR_BUFFERS
) {
1768 return NDR_ERR_SUCCESS
;
1771 static enum ndr_err_code
ndr_pull_rpc_if_id_t(struct ndr_pull
*ndr
, int ndr_flags
, struct rpc_if_id_t
*r
)
1773 if (ndr_flags
& NDR_SCALARS
) {
1774 NDR_CHECK(ndr_pull_align(ndr
, 4));
1775 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, &r
->uuid
));
1776 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->vers_major
));
1777 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->vers_minor
));
1778 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
1780 if (ndr_flags
& NDR_BUFFERS
) {
1782 return NDR_ERR_SUCCESS
;
1785 _PUBLIC_
void ndr_print_rpc_if_id_t(struct ndr_print
*ndr
, const char *name
, const struct rpc_if_id_t
*r
)
1787 ndr_print_struct(ndr
, name
, "rpc_if_id_t");
1789 ndr_print_GUID(ndr
, "uuid", &r
->uuid
);
1790 ndr_print_uint16(ndr
, "vers_major", r
->vers_major
);
1791 ndr_print_uint16(ndr
, "vers_minor", r
->vers_minor
);
1795 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
)
1797 if (ndr_flags
& NDR_SCALARS
) {
1798 NDR_CHECK(ndr_push_align(ndr
, 5));
1799 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->twr
));
1800 NDR_CHECK(ndr_push_trailer_align(ndr
, 5));
1802 if (ndr_flags
& NDR_BUFFERS
) {
1804 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->twr
));
1807 return NDR_ERR_SUCCESS
;
1810 static enum ndr_err_code
ndr_pull_epm_twr_p_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_twr_p_t
*r
)
1813 TALLOC_CTX
*_mem_save_twr_0
;
1814 if (ndr_flags
& NDR_SCALARS
) {
1815 NDR_CHECK(ndr_pull_align(ndr
, 5));
1816 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_twr
));
1818 NDR_PULL_ALLOC(ndr
, r
->twr
);
1822 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
1824 if (ndr_flags
& NDR_BUFFERS
) {
1826 _mem_save_twr_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1827 NDR_PULL_SET_MEM_CTX(ndr
, r
->twr
, 0);
1828 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->twr
));
1829 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_twr_0
, 0);
1832 return NDR_ERR_SUCCESS
;
1835 _PUBLIC_
void ndr_print_epm_twr_p_t(struct ndr_print
*ndr
, const char *name
, const struct epm_twr_p_t
*r
)
1837 ndr_print_struct(ndr
, name
, "epm_twr_p_t");
1839 ndr_print_ptr(ndr
, "twr", r
->twr
);
1842 ndr_print_epm_twr_t(ndr
, "twr", r
->twr
);
1848 static enum ndr_err_code
ndr_push_epm_Insert(struct ndr_push
*ndr
, int flags
, const struct epm_Insert
*r
)
1850 uint32_t cntr_entries_0
;
1851 if (flags
& NDR_IN
) {
1852 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1853 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1854 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1855 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1857 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1858 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1860 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.replace
));
1862 if (flags
& NDR_OUT
) {
1863 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
1865 return NDR_ERR_SUCCESS
;
1868 static enum ndr_err_code
ndr_pull_epm_Insert(struct ndr_pull
*ndr
, int flags
, struct epm_Insert
*r
)
1870 uint32_t cntr_entries_0
;
1871 TALLOC_CTX
*_mem_save_entries_0
;
1872 if (flags
& NDR_IN
) {
1873 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_ents
));
1874 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.entries
));
1875 NDR_PULL_ALLOC_N(ndr
, r
->in
.entries
, ndr_get_array_size(ndr
, &r
->in
.entries
));
1876 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1877 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entries
, 0);
1878 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1879 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1881 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1882 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1884 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
1885 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.replace
));
1886 if (r
->in
.entries
) {
1887 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.entries
, r
->in
.num_ents
));
1890 if (flags
& NDR_OUT
) {
1891 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
1893 return NDR_ERR_SUCCESS
;
1896 _PUBLIC_
void ndr_print_epm_Insert(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Insert
*r
)
1898 uint32_t cntr_entries_0
;
1899 ndr_print_struct(ndr
, name
, "epm_Insert");
1901 if (flags
& NDR_SET_VALUES
) {
1902 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1904 if (flags
& NDR_IN
) {
1905 ndr_print_struct(ndr
, "in", "epm_Insert");
1907 ndr_print_uint32(ndr
, "num_ents", r
->in
.num_ents
);
1908 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)r
->in
.num_ents
);
1910 for (cntr_entries_0
=0;cntr_entries_0
<r
->in
.num_ents
;cntr_entries_0
++) {
1912 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
1913 ndr_print_epm_entry_t(ndr
, "entries", &r
->in
.entries
[cntr_entries_0
]);
1918 ndr_print_uint32(ndr
, "replace", r
->in
.replace
);
1921 if (flags
& NDR_OUT
) {
1922 ndr_print_struct(ndr
, "out", "epm_Insert");
1924 ndr_print_uint32(ndr
, "result", r
->out
.result
);
1930 static enum ndr_err_code
ndr_push_epm_Delete(struct ndr_push
*ndr
, int flags
, const struct epm_Delete
*r
)
1932 uint32_t cntr_entries_0
;
1933 if (flags
& NDR_IN
) {
1934 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1935 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1936 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1937 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1939 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1940 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1943 if (flags
& NDR_OUT
) {
1944 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
1946 return NDR_ERR_SUCCESS
;
1949 static enum ndr_err_code
ndr_pull_epm_Delete(struct ndr_pull
*ndr
, int flags
, struct epm_Delete
*r
)
1951 uint32_t cntr_entries_0
;
1952 TALLOC_CTX
*_mem_save_entries_0
;
1953 if (flags
& NDR_IN
) {
1954 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_ents
));
1955 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.entries
));
1956 NDR_PULL_ALLOC_N(ndr
, r
->in
.entries
, ndr_get_array_size(ndr
, &r
->in
.entries
));
1957 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1958 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entries
, 0);
1959 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1960 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1962 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1963 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1965 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
1966 if (r
->in
.entries
) {
1967 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.entries
, r
->in
.num_ents
));
1970 if (flags
& NDR_OUT
) {
1971 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
1973 return NDR_ERR_SUCCESS
;
1976 _PUBLIC_
void ndr_print_epm_Delete(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Delete
*r
)
1978 uint32_t cntr_entries_0
;
1979 ndr_print_struct(ndr
, name
, "epm_Delete");
1981 if (flags
& NDR_SET_VALUES
) {
1982 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1984 if (flags
& NDR_IN
) {
1985 ndr_print_struct(ndr
, "in", "epm_Delete");
1987 ndr_print_uint32(ndr
, "num_ents", r
->in
.num_ents
);
1988 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)r
->in
.num_ents
);
1990 for (cntr_entries_0
=0;cntr_entries_0
<r
->in
.num_ents
;cntr_entries_0
++) {
1992 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
1993 ndr_print_epm_entry_t(ndr
, "entries", &r
->in
.entries
[cntr_entries_0
]);
2000 if (flags
& NDR_OUT
) {
2001 ndr_print_struct(ndr
, "out", "epm_Delete");
2003 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2009 static enum ndr_err_code
ndr_push_epm_Lookup(struct ndr_push
*ndr
, int flags
, const struct epm_Lookup
*r
)
2011 uint32_t cntr_entries_0
;
2012 if (flags
& NDR_IN
) {
2013 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.inquiry_type
));
2014 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
2016 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2018 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.interface_id
));
2019 if (r
->in
.interface_id
) {
2020 NDR_CHECK(ndr_push_rpc_if_id_t(ndr
, NDR_SCALARS
, r
->in
.interface_id
));
2022 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.vers_option
));
2023 if (r
->in
.entry_handle
== NULL
) {
2024 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2026 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2027 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_ents
));
2029 if (flags
& NDR_OUT
) {
2030 if (r
->out
.entry_handle
== NULL
) {
2031 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2033 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2034 if (r
->out
.num_ents
== NULL
) {
2035 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2037 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_ents
));
2038 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, r
->in
.max_ents
));
2039 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
2040 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, *r
->out
.num_ents
));
2041 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
2042 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->out
.entries
[cntr_entries_0
]));
2044 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
2045 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->out
.entries
[cntr_entries_0
]));
2047 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2049 return NDR_ERR_SUCCESS
;
2052 static enum ndr_err_code
ndr_pull_epm_Lookup(struct ndr_pull
*ndr
, int flags
, struct epm_Lookup
*r
)
2054 uint32_t _ptr_object
;
2055 uint32_t _ptr_interface_id
;
2056 uint32_t cntr_entries_0
;
2057 TALLOC_CTX
*_mem_save_object_0
;
2058 TALLOC_CTX
*_mem_save_interface_id_0
;
2059 TALLOC_CTX
*_mem_save_entry_handle_0
;
2060 TALLOC_CTX
*_mem_save_num_ents_0
;
2061 TALLOC_CTX
*_mem_save_entries_0
;
2062 if (flags
& NDR_IN
) {
2063 ZERO_STRUCT(r
->out
);
2065 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.inquiry_type
));
2066 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2068 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2070 r
->in
.object
= NULL
;
2073 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2074 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2075 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2076 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2078 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_interface_id
));
2079 if (_ptr_interface_id
) {
2080 NDR_PULL_ALLOC(ndr
, r
->in
.interface_id
);
2082 r
->in
.interface_id
= NULL
;
2084 if (r
->in
.interface_id
) {
2085 _mem_save_interface_id_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2086 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.interface_id
, 0);
2087 NDR_CHECK(ndr_pull_rpc_if_id_t(ndr
, NDR_SCALARS
, r
->in
.interface_id
));
2088 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_interface_id_0
, 0);
2090 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.vers_option
));
2091 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2092 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2094 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2095 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2096 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2097 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2098 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_ents
));
2099 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2100 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2101 NDR_PULL_ALLOC(ndr
, r
->out
.num_ents
);
2102 ZERO_STRUCTP(r
->out
.num_ents
);
2104 if (flags
& NDR_OUT
) {
2105 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2106 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2108 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2109 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2110 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2111 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2112 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2113 NDR_PULL_ALLOC(ndr
, r
->out
.num_ents
);
2115 _mem_save_num_ents_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2116 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.num_ents
, LIBNDR_FLAG_REF_ALLOC
);
2117 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.num_ents
));
2118 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_num_ents_0
, LIBNDR_FLAG_REF_ALLOC
);
2119 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->out
.entries
));
2120 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->out
.entries
));
2121 if (ndr_get_array_length(ndr
, &r
->out
.entries
) > ndr_get_array_size(ndr
, &r
->out
.entries
)) {
2122 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
));
2124 NDR_PULL_ALLOC_N(ndr
, r
->out
.entries
, ndr_get_array_size(ndr
, &r
->out
.entries
));
2125 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2126 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entries
, 0);
2127 for (cntr_entries_0
= 0; cntr_entries_0
< ndr_get_array_length(ndr
, &r
->out
.entries
); cntr_entries_0
++) {
2128 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->out
.entries
[cntr_entries_0
]));
2130 for (cntr_entries_0
= 0; cntr_entries_0
< ndr_get_array_length(ndr
, &r
->out
.entries
); cntr_entries_0
++) {
2131 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->out
.entries
[cntr_entries_0
]));
2133 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
2134 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2135 if (r
->out
.entries
) {
2136 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->out
.entries
, r
->in
.max_ents
));
2138 if (r
->out
.entries
) {
2139 NDR_CHECK(ndr_check_array_length(ndr
, (void*)&r
->out
.entries
, *r
->out
.num_ents
));
2142 return NDR_ERR_SUCCESS
;
2145 _PUBLIC_
void ndr_print_epm_Lookup(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Lookup
*r
)
2147 uint32_t cntr_entries_0
;
2148 ndr_print_struct(ndr
, name
, "epm_Lookup");
2150 if (flags
& NDR_SET_VALUES
) {
2151 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2153 if (flags
& NDR_IN
) {
2154 ndr_print_struct(ndr
, "in", "epm_Lookup");
2156 ndr_print_uint32(ndr
, "inquiry_type", r
->in
.inquiry_type
);
2157 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2160 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2163 ndr_print_ptr(ndr
, "interface_id", r
->in
.interface_id
);
2165 if (r
->in
.interface_id
) {
2166 ndr_print_rpc_if_id_t(ndr
, "interface_id", r
->in
.interface_id
);
2169 ndr_print_uint32(ndr
, "vers_option", r
->in
.vers_option
);
2170 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2172 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2174 ndr_print_uint32(ndr
, "max_ents", r
->in
.max_ents
);
2177 if (flags
& NDR_OUT
) {
2178 ndr_print_struct(ndr
, "out", "epm_Lookup");
2180 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2182 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2184 ndr_print_ptr(ndr
, "num_ents", r
->out
.num_ents
);
2186 ndr_print_uint32(ndr
, "num_ents", *r
->out
.num_ents
);
2188 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)*r
->out
.num_ents
);
2190 for (cntr_entries_0
=0;cntr_entries_0
<*r
->out
.num_ents
;cntr_entries_0
++) {
2192 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
2193 ndr_print_epm_entry_t(ndr
, "entries", &r
->out
.entries
[cntr_entries_0
]);
2198 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2204 _PUBLIC_
enum ndr_err_code
ndr_push_epm_Map(struct ndr_push
*ndr
, int flags
, const struct epm_Map
*r
)
2206 uint32_t cntr_towers_0
;
2207 if (flags
& NDR_IN
) {
2208 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
2210 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2212 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.map_tower
));
2213 if (r
->in
.map_tower
) {
2214 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.map_tower
));
2216 if (r
->in
.entry_handle
== NULL
) {
2217 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2219 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2220 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_towers
));
2222 if (flags
& NDR_OUT
) {
2223 if (r
->out
.entry_handle
== NULL
) {
2224 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2226 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2227 if (r
->out
.num_towers
== NULL
) {
2228 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2230 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_towers
));
2231 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, r
->in
.max_towers
));
2232 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
2233 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, *r
->out
.num_towers
));
2234 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2235 NDR_CHECK(ndr_push_epm_twr_p_t(ndr
, NDR_SCALARS
, &r
->out
.towers
[cntr_towers_0
]));
2237 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2238 NDR_CHECK(ndr_push_epm_twr_p_t(ndr
, NDR_BUFFERS
, &r
->out
.towers
[cntr_towers_0
]));
2240 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2242 return NDR_ERR_SUCCESS
;
2245 _PUBLIC_
enum ndr_err_code
ndr_pull_epm_Map(struct ndr_pull
*ndr
, int flags
, struct epm_Map
*r
)
2247 uint32_t _ptr_object
;
2248 uint32_t _ptr_map_tower
;
2249 uint32_t cntr_towers_0
;
2250 TALLOC_CTX
*_mem_save_object_0
;
2251 TALLOC_CTX
*_mem_save_map_tower_0
;
2252 TALLOC_CTX
*_mem_save_entry_handle_0
;
2253 TALLOC_CTX
*_mem_save_num_towers_0
;
2254 TALLOC_CTX
*_mem_save_towers_0
;
2255 if (flags
& NDR_IN
) {
2256 ZERO_STRUCT(r
->out
);
2258 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2260 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2262 r
->in
.object
= NULL
;
2265 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2266 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2267 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2268 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2270 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_map_tower
));
2271 if (_ptr_map_tower
) {
2272 NDR_PULL_ALLOC(ndr
, r
->in
.map_tower
);
2274 r
->in
.map_tower
= NULL
;
2276 if (r
->in
.map_tower
) {
2277 _mem_save_map_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2278 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.map_tower
, 0);
2279 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.map_tower
));
2280 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_map_tower_0
, 0);
2282 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2283 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2285 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2286 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2287 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2288 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2289 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_towers
));
2290 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2291 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2292 NDR_PULL_ALLOC(ndr
, r
->out
.num_towers
);
2293 ZERO_STRUCTP(r
->out
.num_towers
);
2295 if (flags
& NDR_OUT
) {
2296 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2297 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2299 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2300 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2301 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2302 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2303 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2304 NDR_PULL_ALLOC(ndr
, r
->out
.num_towers
);
2306 _mem_save_num_towers_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2307 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.num_towers
, LIBNDR_FLAG_REF_ALLOC
);
2308 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.num_towers
));
2309 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_num_towers_0
, LIBNDR_FLAG_REF_ALLOC
);
2310 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->out
.towers
));
2311 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->out
.towers
));
2312 if (ndr_get_array_length(ndr
, &r
->out
.towers
) > ndr_get_array_size(ndr
, &r
->out
.towers
)) {
2313 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
));
2315 NDR_PULL_ALLOC_N(ndr
, r
->out
.towers
, ndr_get_array_size(ndr
, &r
->out
.towers
));
2316 _mem_save_towers_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2317 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.towers
, 0);
2318 for (cntr_towers_0
= 0; cntr_towers_0
< ndr_get_array_length(ndr
, &r
->out
.towers
); cntr_towers_0
++) {
2319 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr
, NDR_SCALARS
, &r
->out
.towers
[cntr_towers_0
]));
2321 for (cntr_towers_0
= 0; cntr_towers_0
< ndr_get_array_length(ndr
, &r
->out
.towers
); cntr_towers_0
++) {
2322 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr
, NDR_BUFFERS
, &r
->out
.towers
[cntr_towers_0
]));
2324 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_towers_0
, 0);
2325 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2326 if (r
->out
.towers
) {
2327 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->out
.towers
, r
->in
.max_towers
));
2329 if (r
->out
.towers
) {
2330 NDR_CHECK(ndr_check_array_length(ndr
, (void*)&r
->out
.towers
, *r
->out
.num_towers
));
2333 return NDR_ERR_SUCCESS
;
2336 _PUBLIC_
void ndr_print_epm_Map(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Map
*r
)
2338 uint32_t cntr_towers_0
;
2339 ndr_print_struct(ndr
, name
, "epm_Map");
2341 if (flags
& NDR_SET_VALUES
) {
2342 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2344 if (flags
& NDR_IN
) {
2345 ndr_print_struct(ndr
, "in", "epm_Map");
2347 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2350 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2353 ndr_print_ptr(ndr
, "map_tower", r
->in
.map_tower
);
2355 if (r
->in
.map_tower
) {
2356 ndr_print_epm_twr_t(ndr
, "map_tower", r
->in
.map_tower
);
2359 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2361 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2363 ndr_print_uint32(ndr
, "max_towers", r
->in
.max_towers
);
2366 if (flags
& NDR_OUT
) {
2367 ndr_print_struct(ndr
, "out", "epm_Map");
2369 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2371 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2373 ndr_print_ptr(ndr
, "num_towers", r
->out
.num_towers
);
2375 ndr_print_uint32(ndr
, "num_towers", *r
->out
.num_towers
);
2377 ndr
->print(ndr
, "%s: ARRAY(%d)", "towers", (int)*r
->out
.num_towers
);
2379 for (cntr_towers_0
=0;cntr_towers_0
<*r
->out
.num_towers
;cntr_towers_0
++) {
2381 if (asprintf(&idx_0
, "[%d]", cntr_towers_0
) != -1) {
2382 ndr_print_epm_twr_p_t(ndr
, "towers", &r
->out
.towers
[cntr_towers_0
]);
2387 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2393 static enum ndr_err_code
ndr_push_epm_LookupHandleFree(struct ndr_push
*ndr
, int flags
, const struct epm_LookupHandleFree
*r
)
2395 if (flags
& NDR_IN
) {
2396 if (r
->in
.entry_handle
== NULL
) {
2397 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2399 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2401 if (flags
& NDR_OUT
) {
2402 if (r
->out
.entry_handle
== NULL
) {
2403 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2405 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2406 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2408 return NDR_ERR_SUCCESS
;
2411 static enum ndr_err_code
ndr_pull_epm_LookupHandleFree(struct ndr_pull
*ndr
, int flags
, struct epm_LookupHandleFree
*r
)
2413 TALLOC_CTX
*_mem_save_entry_handle_0
;
2414 if (flags
& NDR_IN
) {
2415 ZERO_STRUCT(r
->out
);
2417 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2418 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2420 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2421 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2422 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->in
.entry_handle
));
2423 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2424 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2425 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2427 if (flags
& NDR_OUT
) {
2428 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2429 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2431 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2432 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2433 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
, r
->out
.entry_handle
));
2434 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2435 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2437 return NDR_ERR_SUCCESS
;
2440 _PUBLIC_
void ndr_print_epm_LookupHandleFree(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_LookupHandleFree
*r
)
2442 ndr_print_struct(ndr
, name
, "epm_LookupHandleFree");
2444 if (flags
& NDR_SET_VALUES
) {
2445 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2447 if (flags
& NDR_IN
) {
2448 ndr_print_struct(ndr
, "in", "epm_LookupHandleFree");
2450 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2452 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2456 if (flags
& NDR_OUT
) {
2457 ndr_print_struct(ndr
, "out", "epm_LookupHandleFree");
2459 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2461 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2463 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2469 static enum ndr_err_code
ndr_push_epm_InqObject(struct ndr_push
*ndr
, int flags
, const struct epm_InqObject
*r
)
2471 if (flags
& NDR_IN
) {
2472 if (r
->in
.epm_object
== NULL
) {
2473 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2475 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.epm_object
));
2477 if (flags
& NDR_OUT
) {
2478 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2480 return NDR_ERR_SUCCESS
;
2483 static enum ndr_err_code
ndr_pull_epm_InqObject(struct ndr_pull
*ndr
, int flags
, struct epm_InqObject
*r
)
2485 TALLOC_CTX
*_mem_save_epm_object_0
;
2486 if (flags
& NDR_IN
) {
2487 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2488 NDR_PULL_ALLOC(ndr
, r
->in
.epm_object
);
2490 _mem_save_epm_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2491 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.epm_object
, LIBNDR_FLAG_REF_ALLOC
);
2492 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.epm_object
));
2493 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_epm_object_0
, LIBNDR_FLAG_REF_ALLOC
);
2495 if (flags
& NDR_OUT
) {
2496 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2498 return NDR_ERR_SUCCESS
;
2501 _PUBLIC_
void ndr_print_epm_InqObject(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_InqObject
*r
)
2503 ndr_print_struct(ndr
, name
, "epm_InqObject");
2505 if (flags
& NDR_SET_VALUES
) {
2506 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2508 if (flags
& NDR_IN
) {
2509 ndr_print_struct(ndr
, "in", "epm_InqObject");
2511 ndr_print_ptr(ndr
, "epm_object", r
->in
.epm_object
);
2513 ndr_print_GUID(ndr
, "epm_object", r
->in
.epm_object
);
2517 if (flags
& NDR_OUT
) {
2518 ndr_print_struct(ndr
, "out", "epm_InqObject");
2520 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2526 static enum ndr_err_code
ndr_push_epm_MgmtDelete(struct ndr_push
*ndr
, int flags
, const struct epm_MgmtDelete
*r
)
2528 if (flags
& NDR_IN
) {
2529 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.object_speced
));
2530 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
2532 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2534 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.tower
));
2536 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.tower
));
2539 if (flags
& NDR_OUT
) {
2540 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2542 return NDR_ERR_SUCCESS
;
2545 static enum ndr_err_code
ndr_pull_epm_MgmtDelete(struct ndr_pull
*ndr
, int flags
, struct epm_MgmtDelete
*r
)
2547 uint32_t _ptr_object
;
2548 uint32_t _ptr_tower
;
2549 TALLOC_CTX
*_mem_save_object_0
;
2550 TALLOC_CTX
*_mem_save_tower_0
;
2551 if (flags
& NDR_IN
) {
2552 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.object_speced
));
2553 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2555 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2557 r
->in
.object
= NULL
;
2560 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2561 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2562 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.object
));
2563 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2565 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_tower
));
2567 NDR_PULL_ALLOC(ndr
, r
->in
.tower
);
2572 _mem_save_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2573 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.tower
, 0);
2574 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.tower
));
2575 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_tower_0
, 0);
2578 if (flags
& NDR_OUT
) {
2579 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2581 return NDR_ERR_SUCCESS
;
2584 _PUBLIC_
void ndr_print_epm_MgmtDelete(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_MgmtDelete
*r
)
2586 ndr_print_struct(ndr
, name
, "epm_MgmtDelete");
2588 if (flags
& NDR_SET_VALUES
) {
2589 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2591 if (flags
& NDR_IN
) {
2592 ndr_print_struct(ndr
, "in", "epm_MgmtDelete");
2594 ndr_print_uint32(ndr
, "object_speced", r
->in
.object_speced
);
2595 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2598 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2601 ndr_print_ptr(ndr
, "tower", r
->in
.tower
);
2604 ndr_print_epm_twr_t(ndr
, "tower", r
->in
.tower
);
2609 if (flags
& NDR_OUT
) {
2610 ndr_print_struct(ndr
, "out", "epm_MgmtDelete");
2612 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2618 static enum ndr_err_code
ndr_push_epm_MapAuth(struct ndr_push
*ndr
, int flags
, const struct epm_MapAuth
*r
)
2620 if (flags
& NDR_IN
) {
2622 if (flags
& NDR_OUT
) {
2623 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2625 return NDR_ERR_SUCCESS
;
2628 static enum ndr_err_code
ndr_pull_epm_MapAuth(struct ndr_pull
*ndr
, int flags
, struct epm_MapAuth
*r
)
2630 if (flags
& NDR_IN
) {
2632 if (flags
& NDR_OUT
) {
2633 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2635 return NDR_ERR_SUCCESS
;
2638 _PUBLIC_
void ndr_print_epm_MapAuth(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_MapAuth
*r
)
2640 ndr_print_struct(ndr
, name
, "epm_MapAuth");
2642 if (flags
& NDR_SET_VALUES
) {
2643 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2645 if (flags
& NDR_IN
) {
2646 ndr_print_struct(ndr
, "in", "epm_MapAuth");
2650 if (flags
& NDR_OUT
) {
2651 ndr_print_struct(ndr
, "out", "epm_MapAuth");
2653 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2659 static const struct ndr_interface_call epmapper_calls
[] = {
2662 sizeof(struct epm_Insert
),
2663 (ndr_push_flags_fn_t
) ndr_push_epm_Insert
,
2664 (ndr_pull_flags_fn_t
) ndr_pull_epm_Insert
,
2665 (ndr_print_function_t
) ndr_print_epm_Insert
,
2670 sizeof(struct epm_Delete
),
2671 (ndr_push_flags_fn_t
) ndr_push_epm_Delete
,
2672 (ndr_pull_flags_fn_t
) ndr_pull_epm_Delete
,
2673 (ndr_print_function_t
) ndr_print_epm_Delete
,
2678 sizeof(struct epm_Lookup
),
2679 (ndr_push_flags_fn_t
) ndr_push_epm_Lookup
,
2680 (ndr_pull_flags_fn_t
) ndr_pull_epm_Lookup
,
2681 (ndr_print_function_t
) ndr_print_epm_Lookup
,
2686 sizeof(struct epm_Map
),
2687 (ndr_push_flags_fn_t
) ndr_push_epm_Map
,
2688 (ndr_pull_flags_fn_t
) ndr_pull_epm_Map
,
2689 (ndr_print_function_t
) ndr_print_epm_Map
,
2693 "epm_LookupHandleFree",
2694 sizeof(struct epm_LookupHandleFree
),
2695 (ndr_push_flags_fn_t
) ndr_push_epm_LookupHandleFree
,
2696 (ndr_pull_flags_fn_t
) ndr_pull_epm_LookupHandleFree
,
2697 (ndr_print_function_t
) ndr_print_epm_LookupHandleFree
,
2702 sizeof(struct epm_InqObject
),
2703 (ndr_push_flags_fn_t
) ndr_push_epm_InqObject
,
2704 (ndr_pull_flags_fn_t
) ndr_pull_epm_InqObject
,
2705 (ndr_print_function_t
) ndr_print_epm_InqObject
,
2710 sizeof(struct epm_MgmtDelete
),
2711 (ndr_push_flags_fn_t
) ndr_push_epm_MgmtDelete
,
2712 (ndr_pull_flags_fn_t
) ndr_pull_epm_MgmtDelete
,
2713 (ndr_print_function_t
) ndr_print_epm_MgmtDelete
,
2718 sizeof(struct epm_MapAuth
),
2719 (ndr_push_flags_fn_t
) ndr_push_epm_MapAuth
,
2720 (ndr_pull_flags_fn_t
) ndr_pull_epm_MapAuth
,
2721 (ndr_print_function_t
) ndr_print_epm_MapAuth
,
2724 { NULL
, 0, NULL
, NULL
, NULL
, false }
2727 static const char * const epmapper_endpoint_strings
[] = {
2728 "ncacn_np:[\\pipe\\epmapper]",
2729 "ncacn_ip_tcp:[135]",
2730 "ncalrpc:[EPMAPPER]",
2733 static const struct ndr_interface_string_array epmapper_endpoints
= {
2735 .names
= epmapper_endpoint_strings
2738 static const char * const epmapper_authservice_strings
[] = {
2742 static const struct ndr_interface_string_array epmapper_authservices
= {
2744 .names
= epmapper_authservice_strings
2748 const struct ndr_interface_table ndr_table_epmapper
= {
2751 {0xe1af8308,0x5d1f,0x11c9,{0x91,0xa4},{0x08,0x00,0x2b,0x14,0xa0,0xfa}},
2752 NDR_EPMAPPER_VERSION
2754 .helpstring
= NDR_EPMAPPER_HELPSTRING
,
2756 .calls
= epmapper_calls
,
2757 .endpoints
= &epmapper_endpoints
,
2758 .authservices
= &epmapper_authservices