1 /* parser auto-generated by pidl */
4 #include "librpc/gen_ndr/ndr_epmapper.h"
6 static enum ndr_err_code
ndr_push_epm_protocol(struct ndr_push
*ndr
, int ndr_flags
, enum epm_protocol r
)
8 NDR_CHECK(ndr_push_uint8(ndr
, NDR_SCALARS
, r
));
9 return NDR_ERR_SUCCESS
;
12 static enum ndr_err_code
ndr_pull_epm_protocol(struct ndr_pull
*ndr
, int ndr_flags
, enum epm_protocol
*r
)
15 NDR_CHECK(ndr_pull_uint8(ndr
, NDR_SCALARS
, &v
));
17 return NDR_ERR_SUCCESS
;
20 _PUBLIC_
void ndr_print_epm_protocol(struct ndr_print
*ndr
, const char *name
, enum epm_protocol r
)
22 const char *val
= NULL
;
25 case EPM_PROTOCOL_DNET_NSP
: val
= "EPM_PROTOCOL_DNET_NSP"; break;
26 case EPM_PROTOCOL_OSI_TP4
: val
= "EPM_PROTOCOL_OSI_TP4"; break;
27 case EPM_PROTOCOL_OSI_CLNS
: val
= "EPM_PROTOCOL_OSI_CLNS"; break;
28 case EPM_PROTOCOL_TCP
: val
= "EPM_PROTOCOL_TCP"; break;
29 case EPM_PROTOCOL_UDP
: val
= "EPM_PROTOCOL_UDP"; break;
30 case EPM_PROTOCOL_IP
: val
= "EPM_PROTOCOL_IP"; break;
31 case EPM_PROTOCOL_NCADG
: val
= "EPM_PROTOCOL_NCADG"; break;
32 case EPM_PROTOCOL_NCACN
: val
= "EPM_PROTOCOL_NCACN"; break;
33 case EPM_PROTOCOL_NCALRPC
: val
= "EPM_PROTOCOL_NCALRPC"; break;
34 case EPM_PROTOCOL_UUID
: val
= "EPM_PROTOCOL_UUID"; break;
35 case EPM_PROTOCOL_IPX
: val
= "EPM_PROTOCOL_IPX"; break;
36 case EPM_PROTOCOL_SMB
: val
= "EPM_PROTOCOL_SMB"; break;
37 case EPM_PROTOCOL_PIPE
: val
= "EPM_PROTOCOL_PIPE"; break;
38 case EPM_PROTOCOL_NETBIOS
: val
= "EPM_PROTOCOL_NETBIOS"; break;
39 case EPM_PROTOCOL_NETBEUI
: val
= "EPM_PROTOCOL_NETBEUI"; break;
40 case EPM_PROTOCOL_SPX
: val
= "EPM_PROTOCOL_SPX"; break;
41 case EPM_PROTOCOL_NB_IPX
: val
= "EPM_PROTOCOL_NB_IPX"; break;
42 case EPM_PROTOCOL_DSP
: val
= "EPM_PROTOCOL_DSP"; break;
43 case EPM_PROTOCOL_DDP
: val
= "EPM_PROTOCOL_DDP"; break;
44 case EPM_PROTOCOL_APPLETALK
: val
= "EPM_PROTOCOL_APPLETALK"; break;
45 case EPM_PROTOCOL_VINES_SPP
: val
= "EPM_PROTOCOL_VINES_SPP"; break;
46 case EPM_PROTOCOL_VINES_IPC
: val
= "EPM_PROTOCOL_VINES_IPC"; break;
47 case EPM_PROTOCOL_STREETTALK
: val
= "EPM_PROTOCOL_STREETTALK"; break;
48 case EPM_PROTOCOL_HTTP
: val
= "EPM_PROTOCOL_HTTP"; break;
49 case EPM_PROTOCOL_UNIX_DS
: val
= "EPM_PROTOCOL_UNIX_DS"; break;
50 case EPM_PROTOCOL_NULL
: val
= "EPM_PROTOCOL_NULL"; break;
52 ndr_print_enum(ndr
, name
, "ENUM", val
, r
);
55 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
)
57 if (ndr_flags
& NDR_SCALARS
) {
58 NDR_CHECK(ndr_push_align(ndr
, 1));
60 if (ndr_flags
& NDR_BUFFERS
) {
62 return NDR_ERR_SUCCESS
;
65 static enum ndr_err_code
ndr_pull_epm_rhs_dnet_nsp(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_dnet_nsp
*r
)
67 if (ndr_flags
& NDR_SCALARS
) {
68 NDR_CHECK(ndr_pull_align(ndr
, 1));
70 if (ndr_flags
& NDR_BUFFERS
) {
72 return NDR_ERR_SUCCESS
;
75 _PUBLIC_
void ndr_print_epm_rhs_dnet_nsp(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_dnet_nsp
*r
)
77 ndr_print_struct(ndr
, name
, "epm_rhs_dnet_nsp");
82 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
)
84 if (ndr_flags
& NDR_SCALARS
) {
85 NDR_CHECK(ndr_push_align(ndr
, 1));
87 if (ndr_flags
& NDR_BUFFERS
) {
89 return NDR_ERR_SUCCESS
;
92 static enum ndr_err_code
ndr_pull_epm_rhs_osi_tp4(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_osi_tp4
*r
)
94 if (ndr_flags
& NDR_SCALARS
) {
95 NDR_CHECK(ndr_pull_align(ndr
, 1));
97 if (ndr_flags
& NDR_BUFFERS
) {
99 return NDR_ERR_SUCCESS
;
102 _PUBLIC_
void ndr_print_epm_rhs_osi_tp4(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_osi_tp4
*r
)
104 ndr_print_struct(ndr
, name
, "epm_rhs_osi_tp4");
109 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
)
111 if (ndr_flags
& NDR_SCALARS
) {
112 NDR_CHECK(ndr_push_align(ndr
, 1));
114 if (ndr_flags
& NDR_BUFFERS
) {
116 return NDR_ERR_SUCCESS
;
119 static enum ndr_err_code
ndr_pull_epm_rhs_osi_clns(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_osi_clns
*r
)
121 if (ndr_flags
& NDR_SCALARS
) {
122 NDR_CHECK(ndr_pull_align(ndr
, 1));
124 if (ndr_flags
& NDR_BUFFERS
) {
126 return NDR_ERR_SUCCESS
;
129 _PUBLIC_
void ndr_print_epm_rhs_osi_clns(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_osi_clns
*r
)
131 ndr_print_struct(ndr
, name
, "epm_rhs_osi_clns");
136 static enum ndr_err_code
ndr_push_epm_rhs_udp(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_udp
*r
)
138 if (ndr_flags
& NDR_SCALARS
) {
139 NDR_CHECK(ndr_push_align(ndr
, 2));
140 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
142 if (ndr_flags
& NDR_BUFFERS
) {
144 return NDR_ERR_SUCCESS
;
147 static enum ndr_err_code
ndr_pull_epm_rhs_udp(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_udp
*r
)
149 if (ndr_flags
& NDR_SCALARS
) {
150 NDR_CHECK(ndr_pull_align(ndr
, 2));
151 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
153 if (ndr_flags
& NDR_BUFFERS
) {
155 return NDR_ERR_SUCCESS
;
158 _PUBLIC_
void ndr_print_epm_rhs_udp(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_udp
*r
)
160 ndr_print_struct(ndr
, name
, "epm_rhs_udp");
162 ndr_print_uint16(ndr
, "port", r
->port
);
166 static enum ndr_err_code
ndr_push_epm_rhs_tcp(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_tcp
*r
)
168 if (ndr_flags
& NDR_SCALARS
) {
169 NDR_CHECK(ndr_push_align(ndr
, 2));
170 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
172 if (ndr_flags
& NDR_BUFFERS
) {
174 return NDR_ERR_SUCCESS
;
177 static enum ndr_err_code
ndr_pull_epm_rhs_tcp(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_tcp
*r
)
179 if (ndr_flags
& NDR_SCALARS
) {
180 NDR_CHECK(ndr_pull_align(ndr
, 2));
181 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
183 if (ndr_flags
& NDR_BUFFERS
) {
185 return NDR_ERR_SUCCESS
;
188 _PUBLIC_
void ndr_print_epm_rhs_tcp(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_tcp
*r
)
190 ndr_print_struct(ndr
, name
, "epm_rhs_tcp");
192 ndr_print_uint16(ndr
, "port", r
->port
);
196 static enum ndr_err_code
ndr_push_epm_rhs_ip(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ip
*r
)
198 if (ndr_flags
& NDR_SCALARS
) {
199 NDR_CHECK(ndr_push_align(ndr
, 4));
200 NDR_CHECK(ndr_push_ipv4address(ndr
, NDR_SCALARS
, r
->ipaddr
));
202 if (ndr_flags
& NDR_BUFFERS
) {
204 return NDR_ERR_SUCCESS
;
207 static enum ndr_err_code
ndr_pull_epm_rhs_ip(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ip
*r
)
209 if (ndr_flags
& NDR_SCALARS
) {
210 NDR_CHECK(ndr_pull_align(ndr
, 4));
211 NDR_CHECK(ndr_pull_ipv4address(ndr
, NDR_SCALARS
, &r
->ipaddr
));
213 if (ndr_flags
& NDR_BUFFERS
) {
215 return NDR_ERR_SUCCESS
;
218 _PUBLIC_
void ndr_print_epm_rhs_ip(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ip
*r
)
220 ndr_print_struct(ndr
, name
, "epm_rhs_ip");
222 ndr_print_ipv4address(ndr
, "ipaddr", r
->ipaddr
);
226 static enum ndr_err_code
ndr_push_epm_rhs_ncadg(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ncadg
*r
)
228 if (ndr_flags
& NDR_SCALARS
) {
229 NDR_CHECK(ndr_push_align(ndr
, 2));
230 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->minor_version
));
232 if (ndr_flags
& NDR_BUFFERS
) {
234 return NDR_ERR_SUCCESS
;
237 static enum ndr_err_code
ndr_pull_epm_rhs_ncadg(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ncadg
*r
)
239 if (ndr_flags
& NDR_SCALARS
) {
240 NDR_CHECK(ndr_pull_align(ndr
, 2));
241 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->minor_version
));
243 if (ndr_flags
& NDR_BUFFERS
) {
245 return NDR_ERR_SUCCESS
;
248 _PUBLIC_
void ndr_print_epm_rhs_ncadg(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ncadg
*r
)
250 ndr_print_struct(ndr
, name
, "epm_rhs_ncadg");
252 ndr_print_uint16(ndr
, "minor_version", r
->minor_version
);
256 static enum ndr_err_code
ndr_push_epm_rhs_ncacn(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ncacn
*r
)
258 if (ndr_flags
& NDR_SCALARS
) {
259 NDR_CHECK(ndr_push_align(ndr
, 2));
260 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->minor_version
));
262 if (ndr_flags
& NDR_BUFFERS
) {
264 return NDR_ERR_SUCCESS
;
267 static enum ndr_err_code
ndr_pull_epm_rhs_ncacn(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ncacn
*r
)
269 if (ndr_flags
& NDR_SCALARS
) {
270 NDR_CHECK(ndr_pull_align(ndr
, 2));
271 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->minor_version
));
273 if (ndr_flags
& NDR_BUFFERS
) {
275 return NDR_ERR_SUCCESS
;
278 _PUBLIC_
void ndr_print_epm_rhs_ncacn(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ncacn
*r
)
280 ndr_print_struct(ndr
, name
, "epm_rhs_ncacn");
282 ndr_print_uint16(ndr
, "minor_version", r
->minor_version
);
286 static enum ndr_err_code
ndr_push_epm_rhs_uuid(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_uuid
*r
)
288 if (ndr_flags
& NDR_SCALARS
) {
289 NDR_CHECK(ndr_push_align(ndr
, 4));
291 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
292 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
293 NDR_CHECK(ndr_push_DATA_BLOB(ndr
, NDR_SCALARS
, r
->unknown
));
294 ndr
->flags
= _flags_save_DATA_BLOB
;
297 if (ndr_flags
& NDR_BUFFERS
) {
299 return NDR_ERR_SUCCESS
;
302 static enum ndr_err_code
ndr_pull_epm_rhs_uuid(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_uuid
*r
)
304 if (ndr_flags
& NDR_SCALARS
) {
305 NDR_CHECK(ndr_pull_align(ndr
, 4));
307 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
308 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
309 NDR_CHECK(ndr_pull_DATA_BLOB(ndr
, NDR_SCALARS
, &r
->unknown
));
310 ndr
->flags
= _flags_save_DATA_BLOB
;
313 if (ndr_flags
& NDR_BUFFERS
) {
315 return NDR_ERR_SUCCESS
;
318 _PUBLIC_
void ndr_print_epm_rhs_uuid(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_uuid
*r
)
320 ndr_print_struct(ndr
, name
, "epm_rhs_uuid");
322 ndr_print_DATA_BLOB(ndr
, "unknown", r
->unknown
);
326 static enum ndr_err_code
ndr_push_epm_rhs_ipx(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ipx
*r
)
328 if (ndr_flags
& NDR_SCALARS
) {
329 NDR_CHECK(ndr_push_align(ndr
, 1));
331 if (ndr_flags
& NDR_BUFFERS
) {
333 return NDR_ERR_SUCCESS
;
336 static enum ndr_err_code
ndr_pull_epm_rhs_ipx(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ipx
*r
)
338 if (ndr_flags
& NDR_SCALARS
) {
339 NDR_CHECK(ndr_pull_align(ndr
, 1));
341 if (ndr_flags
& NDR_BUFFERS
) {
343 return NDR_ERR_SUCCESS
;
346 _PUBLIC_
void ndr_print_epm_rhs_ipx(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ipx
*r
)
348 ndr_print_struct(ndr
, name
, "epm_rhs_ipx");
353 static enum ndr_err_code
ndr_push_epm_rhs_smb(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_smb
*r
)
355 if (ndr_flags
& NDR_SCALARS
) {
356 NDR_CHECK(ndr_push_align(ndr
, 4));
358 uint32_t _flags_save_string
= ndr
->flags
;
359 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
360 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->unc
));
361 ndr
->flags
= _flags_save_string
;
364 if (ndr_flags
& NDR_BUFFERS
) {
366 return NDR_ERR_SUCCESS
;
369 static enum ndr_err_code
ndr_pull_epm_rhs_smb(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_smb
*r
)
371 if (ndr_flags
& NDR_SCALARS
) {
372 NDR_CHECK(ndr_pull_align(ndr
, 4));
374 uint32_t _flags_save_string
= ndr
->flags
;
375 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
376 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->unc
));
377 ndr
->flags
= _flags_save_string
;
380 if (ndr_flags
& NDR_BUFFERS
) {
382 return NDR_ERR_SUCCESS
;
385 _PUBLIC_
void ndr_print_epm_rhs_smb(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_smb
*r
)
387 ndr_print_struct(ndr
, name
, "epm_rhs_smb");
389 ndr_print_string(ndr
, "unc", r
->unc
);
393 static enum ndr_err_code
ndr_push_epm_rhs_pipe(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_pipe
*r
)
395 if (ndr_flags
& NDR_SCALARS
) {
396 NDR_CHECK(ndr_push_align(ndr
, 4));
398 uint32_t _flags_save_string
= ndr
->flags
;
399 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
400 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->path
));
401 ndr
->flags
= _flags_save_string
;
404 if (ndr_flags
& NDR_BUFFERS
) {
406 return NDR_ERR_SUCCESS
;
409 static enum ndr_err_code
ndr_pull_epm_rhs_pipe(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_pipe
*r
)
411 if (ndr_flags
& NDR_SCALARS
) {
412 NDR_CHECK(ndr_pull_align(ndr
, 4));
414 uint32_t _flags_save_string
= ndr
->flags
;
415 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
416 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->path
));
417 ndr
->flags
= _flags_save_string
;
420 if (ndr_flags
& NDR_BUFFERS
) {
422 return NDR_ERR_SUCCESS
;
425 _PUBLIC_
void ndr_print_epm_rhs_pipe(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_pipe
*r
)
427 ndr_print_struct(ndr
, name
, "epm_rhs_pipe");
429 ndr_print_string(ndr
, "path", r
->path
);
433 static enum ndr_err_code
ndr_push_epm_rhs_netbios(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_netbios
*r
)
435 if (ndr_flags
& NDR_SCALARS
) {
436 NDR_CHECK(ndr_push_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_push_string(ndr
, NDR_SCALARS
, r
->name
));
441 ndr
->flags
= _flags_save_string
;
444 if (ndr_flags
& NDR_BUFFERS
) {
446 return NDR_ERR_SUCCESS
;
449 static enum ndr_err_code
ndr_pull_epm_rhs_netbios(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_netbios
*r
)
451 if (ndr_flags
& NDR_SCALARS
) {
452 NDR_CHECK(ndr_pull_align(ndr
, 4));
454 uint32_t _flags_save_string
= ndr
->flags
;
455 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
456 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->name
));
457 ndr
->flags
= _flags_save_string
;
460 if (ndr_flags
& NDR_BUFFERS
) {
462 return NDR_ERR_SUCCESS
;
465 _PUBLIC_
void ndr_print_epm_rhs_netbios(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_netbios
*r
)
467 ndr_print_struct(ndr
, name
, "epm_rhs_netbios");
469 ndr_print_string(ndr
, "name", r
->name
);
473 static enum ndr_err_code
ndr_push_epm_rhs_netbeui(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_netbeui
*r
)
475 if (ndr_flags
& NDR_SCALARS
) {
476 NDR_CHECK(ndr_push_align(ndr
, 1));
478 if (ndr_flags
& NDR_BUFFERS
) {
480 return NDR_ERR_SUCCESS
;
483 static enum ndr_err_code
ndr_pull_epm_rhs_netbeui(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_netbeui
*r
)
485 if (ndr_flags
& NDR_SCALARS
) {
486 NDR_CHECK(ndr_pull_align(ndr
, 1));
488 if (ndr_flags
& NDR_BUFFERS
) {
490 return NDR_ERR_SUCCESS
;
493 _PUBLIC_
void ndr_print_epm_rhs_netbeui(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_netbeui
*r
)
495 ndr_print_struct(ndr
, name
, "epm_rhs_netbeui");
500 static enum ndr_err_code
ndr_push_epm_rhs_spx(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_spx
*r
)
502 if (ndr_flags
& NDR_SCALARS
) {
503 NDR_CHECK(ndr_push_align(ndr
, 1));
505 if (ndr_flags
& NDR_BUFFERS
) {
507 return NDR_ERR_SUCCESS
;
510 static enum ndr_err_code
ndr_pull_epm_rhs_spx(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_spx
*r
)
512 if (ndr_flags
& NDR_SCALARS
) {
513 NDR_CHECK(ndr_pull_align(ndr
, 1));
515 if (ndr_flags
& NDR_BUFFERS
) {
517 return NDR_ERR_SUCCESS
;
520 _PUBLIC_
void ndr_print_epm_rhs_spx(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_spx
*r
)
522 ndr_print_struct(ndr
, name
, "epm_rhs_spx");
527 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
)
529 if (ndr_flags
& NDR_SCALARS
) {
530 NDR_CHECK(ndr_push_align(ndr
, 1));
532 if (ndr_flags
& NDR_BUFFERS
) {
534 return NDR_ERR_SUCCESS
;
537 static enum ndr_err_code
ndr_pull_epm_rhs_nb_ipx(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_nb_ipx
*r
)
539 if (ndr_flags
& NDR_SCALARS
) {
540 NDR_CHECK(ndr_pull_align(ndr
, 1));
542 if (ndr_flags
& NDR_BUFFERS
) {
544 return NDR_ERR_SUCCESS
;
547 _PUBLIC_
void ndr_print_epm_rhs_nb_ipx(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_nb_ipx
*r
)
549 ndr_print_struct(ndr
, name
, "epm_rhs_nb_ipx");
554 static enum ndr_err_code
ndr_push_epm_rhs_http(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_http
*r
)
556 if (ndr_flags
& NDR_SCALARS
) {
557 NDR_CHECK(ndr_push_align(ndr
, 2));
558 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
560 if (ndr_flags
& NDR_BUFFERS
) {
562 return NDR_ERR_SUCCESS
;
565 static enum ndr_err_code
ndr_pull_epm_rhs_http(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_http
*r
)
567 if (ndr_flags
& NDR_SCALARS
) {
568 NDR_CHECK(ndr_pull_align(ndr
, 2));
569 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
571 if (ndr_flags
& NDR_BUFFERS
) {
573 return NDR_ERR_SUCCESS
;
576 _PUBLIC_
void ndr_print_epm_rhs_http(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_http
*r
)
578 ndr_print_struct(ndr
, name
, "epm_rhs_http");
580 ndr_print_uint16(ndr
, "port", r
->port
);
584 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
)
586 if (ndr_flags
& NDR_SCALARS
) {
587 NDR_CHECK(ndr_push_align(ndr
, 4));
589 uint32_t _flags_save_string
= ndr
->flags
;
590 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
591 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->path
));
592 ndr
->flags
= _flags_save_string
;
595 if (ndr_flags
& NDR_BUFFERS
) {
597 return NDR_ERR_SUCCESS
;
600 static enum ndr_err_code
ndr_pull_epm_rhs_unix_ds(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_unix_ds
*r
)
602 if (ndr_flags
& NDR_SCALARS
) {
603 NDR_CHECK(ndr_pull_align(ndr
, 4));
605 uint32_t _flags_save_string
= ndr
->flags
;
606 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
607 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->path
));
608 ndr
->flags
= _flags_save_string
;
611 if (ndr_flags
& NDR_BUFFERS
) {
613 return NDR_ERR_SUCCESS
;
616 _PUBLIC_
void ndr_print_epm_rhs_unix_ds(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_unix_ds
*r
)
618 ndr_print_struct(ndr
, name
, "epm_rhs_unix_ds");
620 ndr_print_string(ndr
, "path", r
->path
);
624 static enum ndr_err_code
ndr_push_epm_rhs_null(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_null
*r
)
626 if (ndr_flags
& NDR_SCALARS
) {
627 NDR_CHECK(ndr_push_align(ndr
, 1));
629 if (ndr_flags
& NDR_BUFFERS
) {
631 return NDR_ERR_SUCCESS
;
634 static enum ndr_err_code
ndr_pull_epm_rhs_null(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_null
*r
)
636 if (ndr_flags
& NDR_SCALARS
) {
637 NDR_CHECK(ndr_pull_align(ndr
, 1));
639 if (ndr_flags
& NDR_BUFFERS
) {
641 return NDR_ERR_SUCCESS
;
644 _PUBLIC_
void ndr_print_epm_rhs_null(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_null
*r
)
646 ndr_print_struct(ndr
, name
, "epm_rhs_null");
651 static enum ndr_err_code
ndr_push_epm_rhs_ncalrpc(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_ncalrpc
*r
)
653 if (ndr_flags
& NDR_SCALARS
) {
654 NDR_CHECK(ndr_push_align(ndr
, 2));
655 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->minor_version
));
657 if (ndr_flags
& NDR_BUFFERS
) {
659 return NDR_ERR_SUCCESS
;
662 static enum ndr_err_code
ndr_pull_epm_rhs_ncalrpc(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_ncalrpc
*r
)
664 if (ndr_flags
& NDR_SCALARS
) {
665 NDR_CHECK(ndr_pull_align(ndr
, 2));
666 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->minor_version
));
668 if (ndr_flags
& NDR_BUFFERS
) {
670 return NDR_ERR_SUCCESS
;
673 _PUBLIC_
void ndr_print_epm_rhs_ncalrpc(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_ncalrpc
*r
)
675 ndr_print_struct(ndr
, name
, "epm_rhs_ncalrpc");
677 ndr_print_uint16(ndr
, "minor_version", r
->minor_version
);
681 static enum ndr_err_code
ndr_push_epm_rhs_appletalk(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_appletalk
*r
)
683 if (ndr_flags
& NDR_SCALARS
) {
684 NDR_CHECK(ndr_push_align(ndr
, 1));
686 if (ndr_flags
& NDR_BUFFERS
) {
688 return NDR_ERR_SUCCESS
;
691 static enum ndr_err_code
ndr_pull_epm_rhs_appletalk(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_appletalk
*r
)
693 if (ndr_flags
& NDR_SCALARS
) {
694 NDR_CHECK(ndr_pull_align(ndr
, 1));
696 if (ndr_flags
& NDR_BUFFERS
) {
698 return NDR_ERR_SUCCESS
;
701 _PUBLIC_
void ndr_print_epm_rhs_appletalk(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_appletalk
*r
)
703 ndr_print_struct(ndr
, name
, "epm_rhs_appletalk");
708 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
)
710 if (ndr_flags
& NDR_SCALARS
) {
711 NDR_CHECK(ndr_push_align(ndr
, 1));
713 if (ndr_flags
& NDR_BUFFERS
) {
715 return NDR_ERR_SUCCESS
;
718 static enum ndr_err_code
ndr_pull_epm_rhs_atalk_stream(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_atalk_stream
*r
)
720 if (ndr_flags
& NDR_SCALARS
) {
721 NDR_CHECK(ndr_pull_align(ndr
, 1));
723 if (ndr_flags
& NDR_BUFFERS
) {
725 return NDR_ERR_SUCCESS
;
728 _PUBLIC_
void ndr_print_epm_rhs_atalk_stream(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_atalk_stream
*r
)
730 ndr_print_struct(ndr
, name
, "epm_rhs_atalk_stream");
735 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
)
737 if (ndr_flags
& NDR_SCALARS
) {
738 NDR_CHECK(ndr_push_align(ndr
, 1));
740 if (ndr_flags
& NDR_BUFFERS
) {
742 return NDR_ERR_SUCCESS
;
745 static enum ndr_err_code
ndr_pull_epm_rhs_atalk_datagram(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_atalk_datagram
*r
)
747 if (ndr_flags
& NDR_SCALARS
) {
748 NDR_CHECK(ndr_pull_align(ndr
, 1));
750 if (ndr_flags
& NDR_BUFFERS
) {
752 return NDR_ERR_SUCCESS
;
755 _PUBLIC_
void ndr_print_epm_rhs_atalk_datagram(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_atalk_datagram
*r
)
757 ndr_print_struct(ndr
, name
, "epm_rhs_atalk_datagram");
762 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
)
764 if (ndr_flags
& NDR_SCALARS
) {
765 NDR_CHECK(ndr_push_align(ndr
, 2));
766 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
768 if (ndr_flags
& NDR_BUFFERS
) {
770 return NDR_ERR_SUCCESS
;
773 static enum ndr_err_code
ndr_pull_epm_rhs_vines_spp(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_vines_spp
*r
)
775 if (ndr_flags
& NDR_SCALARS
) {
776 NDR_CHECK(ndr_pull_align(ndr
, 2));
777 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
779 if (ndr_flags
& NDR_BUFFERS
) {
781 return NDR_ERR_SUCCESS
;
784 _PUBLIC_
void ndr_print_epm_rhs_vines_spp(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_vines_spp
*r
)
786 ndr_print_struct(ndr
, name
, "epm_rhs_vines_spp");
788 ndr_print_uint16(ndr
, "port", r
->port
);
792 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
)
794 if (ndr_flags
& NDR_SCALARS
) {
795 NDR_CHECK(ndr_push_align(ndr
, 2));
796 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->port
));
798 if (ndr_flags
& NDR_BUFFERS
) {
800 return NDR_ERR_SUCCESS
;
803 static enum ndr_err_code
ndr_pull_epm_rhs_vines_ipc(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_vines_ipc
*r
)
805 if (ndr_flags
& NDR_SCALARS
) {
806 NDR_CHECK(ndr_pull_align(ndr
, 2));
807 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->port
));
809 if (ndr_flags
& NDR_BUFFERS
) {
811 return NDR_ERR_SUCCESS
;
814 _PUBLIC_
void ndr_print_epm_rhs_vines_ipc(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_vines_ipc
*r
)
816 ndr_print_struct(ndr
, name
, "epm_rhs_vines_ipc");
818 ndr_print_uint16(ndr
, "port", r
->port
);
822 static enum ndr_err_code
ndr_push_epm_rhs_streettalk(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_rhs_streettalk
*r
)
824 if (ndr_flags
& NDR_SCALARS
) {
825 NDR_CHECK(ndr_push_align(ndr
, 4));
827 uint32_t _flags_save_string
= ndr
->flags
;
828 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
829 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->streettalk
));
830 ndr
->flags
= _flags_save_string
;
833 if (ndr_flags
& NDR_BUFFERS
) {
835 return NDR_ERR_SUCCESS
;
838 static enum ndr_err_code
ndr_pull_epm_rhs_streettalk(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_rhs_streettalk
*r
)
840 if (ndr_flags
& NDR_SCALARS
) {
841 NDR_CHECK(ndr_pull_align(ndr
, 4));
843 uint32_t _flags_save_string
= ndr
->flags
;
844 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_NULLTERM
);
845 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->streettalk
));
846 ndr
->flags
= _flags_save_string
;
849 if (ndr_flags
& NDR_BUFFERS
) {
851 return NDR_ERR_SUCCESS
;
854 _PUBLIC_
void ndr_print_epm_rhs_streettalk(struct ndr_print
*ndr
, const char *name
, const struct epm_rhs_streettalk
*r
)
856 ndr_print_struct(ndr
, name
, "epm_rhs_streettalk");
858 ndr_print_string(ndr
, "streettalk", r
->streettalk
);
862 static enum ndr_err_code
ndr_push_epm_rhs(struct ndr_push
*ndr
, int ndr_flags
, const union epm_rhs
*r
)
865 uint32_t _flags_save_UNION
= ndr
->flags
;
866 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_BIGENDIAN
);
867 if (ndr_flags
& NDR_SCALARS
) {
868 int level
= ndr_push_get_switch_value(ndr
, r
);
870 case EPM_PROTOCOL_DNET_NSP
: {
871 NDR_CHECK(ndr_push_epm_rhs_dnet_nsp(ndr
, NDR_SCALARS
, &r
->dnet_nsp
));
874 case EPM_PROTOCOL_OSI_TP4
: {
875 NDR_CHECK(ndr_push_epm_rhs_osi_tp4(ndr
, NDR_SCALARS
, &r
->osi_tp4
));
878 case EPM_PROTOCOL_OSI_CLNS
: {
879 NDR_CHECK(ndr_push_epm_rhs_osi_clns(ndr
, NDR_SCALARS
, &r
->osi_clns
));
882 case EPM_PROTOCOL_TCP
: {
883 NDR_CHECK(ndr_push_epm_rhs_tcp(ndr
, NDR_SCALARS
, &r
->tcp
));
886 case EPM_PROTOCOL_UDP
: {
887 NDR_CHECK(ndr_push_epm_rhs_udp(ndr
, NDR_SCALARS
, &r
->udp
));
890 case EPM_PROTOCOL_IP
: {
891 NDR_CHECK(ndr_push_epm_rhs_ip(ndr
, NDR_SCALARS
, &r
->ip
));
894 case EPM_PROTOCOL_NCADG
: {
895 NDR_CHECK(ndr_push_epm_rhs_ncadg(ndr
, NDR_SCALARS
, &r
->ncadg
));
898 case EPM_PROTOCOL_NCACN
: {
899 NDR_CHECK(ndr_push_epm_rhs_ncacn(ndr
, NDR_SCALARS
, &r
->ncacn
));
902 case EPM_PROTOCOL_NCALRPC
: {
903 NDR_CHECK(ndr_push_epm_rhs_ncalrpc(ndr
, NDR_SCALARS
, &r
->ncalrpc
));
906 case EPM_PROTOCOL_UUID
: {
907 NDR_CHECK(ndr_push_epm_rhs_uuid(ndr
, NDR_SCALARS
, &r
->uuid
));
910 case EPM_PROTOCOL_IPX
: {
911 NDR_CHECK(ndr_push_epm_rhs_ipx(ndr
, NDR_SCALARS
, &r
->ipx
));
914 case EPM_PROTOCOL_SMB
: {
915 NDR_CHECK(ndr_push_epm_rhs_smb(ndr
, NDR_SCALARS
, &r
->smb
));
918 case EPM_PROTOCOL_PIPE
: {
919 NDR_CHECK(ndr_push_epm_rhs_pipe(ndr
, NDR_SCALARS
, &r
->pipe
));
922 case EPM_PROTOCOL_NETBIOS
: {
923 NDR_CHECK(ndr_push_epm_rhs_netbios(ndr
, NDR_SCALARS
, &r
->netbios
));
926 case EPM_PROTOCOL_NETBEUI
: {
927 NDR_CHECK(ndr_push_epm_rhs_netbeui(ndr
, NDR_SCALARS
, &r
->netbeui
));
930 case EPM_PROTOCOL_SPX
: {
931 NDR_CHECK(ndr_push_epm_rhs_spx(ndr
, NDR_SCALARS
, &r
->spx
));
934 case EPM_PROTOCOL_NB_IPX
: {
935 NDR_CHECK(ndr_push_epm_rhs_nb_ipx(ndr
, NDR_SCALARS
, &r
->nb_ipx
));
938 case EPM_PROTOCOL_DSP
: {
939 NDR_CHECK(ndr_push_epm_rhs_atalk_stream(ndr
, NDR_SCALARS
, &r
->atalk_stream
));
942 case EPM_PROTOCOL_DDP
: {
943 NDR_CHECK(ndr_push_epm_rhs_atalk_datagram(ndr
, NDR_SCALARS
, &r
->atalk_datagram
));
946 case EPM_PROTOCOL_APPLETALK
: {
947 NDR_CHECK(ndr_push_epm_rhs_appletalk(ndr
, NDR_SCALARS
, &r
->appletalk
));
950 case EPM_PROTOCOL_VINES_SPP
: {
951 NDR_CHECK(ndr_push_epm_rhs_vines_spp(ndr
, NDR_SCALARS
, &r
->vines_spp
));
954 case EPM_PROTOCOL_VINES_IPC
: {
955 NDR_CHECK(ndr_push_epm_rhs_vines_ipc(ndr
, NDR_SCALARS
, &r
->vines_ipc
));
958 case EPM_PROTOCOL_STREETTALK
: {
959 NDR_CHECK(ndr_push_epm_rhs_streettalk(ndr
, NDR_SCALARS
, &r
->streettalk
));
962 case EPM_PROTOCOL_HTTP
: {
963 NDR_CHECK(ndr_push_epm_rhs_http(ndr
, NDR_SCALARS
, &r
->http
));
966 case EPM_PROTOCOL_UNIX_DS
: {
967 NDR_CHECK(ndr_push_epm_rhs_unix_ds(ndr
, NDR_SCALARS
, &r
->unix_ds
));
970 case EPM_PROTOCOL_NULL
: {
971 NDR_CHECK(ndr_push_epm_rhs_null(ndr
, NDR_SCALARS
, &r
->null
));
976 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
977 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
978 NDR_CHECK(ndr_push_DATA_BLOB(ndr
, NDR_SCALARS
, r
->unknown
));
979 ndr
->flags
= _flags_save_DATA_BLOB
;
985 if (ndr_flags
& NDR_BUFFERS
) {
986 int level
= ndr_push_get_switch_value(ndr
, r
);
988 case EPM_PROTOCOL_DNET_NSP
:
991 case EPM_PROTOCOL_OSI_TP4
:
994 case EPM_PROTOCOL_OSI_CLNS
:
997 case EPM_PROTOCOL_TCP
:
1000 case EPM_PROTOCOL_UDP
:
1003 case EPM_PROTOCOL_IP
:
1006 case EPM_PROTOCOL_NCADG
:
1009 case EPM_PROTOCOL_NCACN
:
1012 case EPM_PROTOCOL_NCALRPC
:
1015 case EPM_PROTOCOL_UUID
:
1018 case EPM_PROTOCOL_IPX
:
1021 case EPM_PROTOCOL_SMB
:
1024 case EPM_PROTOCOL_PIPE
:
1027 case EPM_PROTOCOL_NETBIOS
:
1030 case EPM_PROTOCOL_NETBEUI
:
1033 case EPM_PROTOCOL_SPX
:
1036 case EPM_PROTOCOL_NB_IPX
:
1039 case EPM_PROTOCOL_DSP
:
1042 case EPM_PROTOCOL_DDP
:
1045 case EPM_PROTOCOL_APPLETALK
:
1048 case EPM_PROTOCOL_VINES_SPP
:
1051 case EPM_PROTOCOL_VINES_IPC
:
1054 case EPM_PROTOCOL_STREETTALK
:
1057 case EPM_PROTOCOL_HTTP
:
1060 case EPM_PROTOCOL_UNIX_DS
:
1063 case EPM_PROTOCOL_NULL
:
1071 ndr
->flags
= _flags_save_UNION
;
1073 return NDR_ERR_SUCCESS
;
1076 static enum ndr_err_code
ndr_pull_epm_rhs(struct ndr_pull
*ndr
, int ndr_flags
, union epm_rhs
*r
)
1080 uint32_t _flags_save_UNION
= ndr
->flags
;
1081 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_BIGENDIAN
);
1082 level
= ndr_pull_get_switch_value(ndr
, r
);
1083 if (ndr_flags
& NDR_SCALARS
) {
1085 case EPM_PROTOCOL_DNET_NSP
: {
1086 NDR_CHECK(ndr_pull_epm_rhs_dnet_nsp(ndr
, NDR_SCALARS
, &r
->dnet_nsp
));
1089 case EPM_PROTOCOL_OSI_TP4
: {
1090 NDR_CHECK(ndr_pull_epm_rhs_osi_tp4(ndr
, NDR_SCALARS
, &r
->osi_tp4
));
1093 case EPM_PROTOCOL_OSI_CLNS
: {
1094 NDR_CHECK(ndr_pull_epm_rhs_osi_clns(ndr
, NDR_SCALARS
, &r
->osi_clns
));
1097 case EPM_PROTOCOL_TCP
: {
1098 NDR_CHECK(ndr_pull_epm_rhs_tcp(ndr
, NDR_SCALARS
, &r
->tcp
));
1101 case EPM_PROTOCOL_UDP
: {
1102 NDR_CHECK(ndr_pull_epm_rhs_udp(ndr
, NDR_SCALARS
, &r
->udp
));
1105 case EPM_PROTOCOL_IP
: {
1106 NDR_CHECK(ndr_pull_epm_rhs_ip(ndr
, NDR_SCALARS
, &r
->ip
));
1109 case EPM_PROTOCOL_NCADG
: {
1110 NDR_CHECK(ndr_pull_epm_rhs_ncadg(ndr
, NDR_SCALARS
, &r
->ncadg
));
1113 case EPM_PROTOCOL_NCACN
: {
1114 NDR_CHECK(ndr_pull_epm_rhs_ncacn(ndr
, NDR_SCALARS
, &r
->ncacn
));
1117 case EPM_PROTOCOL_NCALRPC
: {
1118 NDR_CHECK(ndr_pull_epm_rhs_ncalrpc(ndr
, NDR_SCALARS
, &r
->ncalrpc
));
1121 case EPM_PROTOCOL_UUID
: {
1122 NDR_CHECK(ndr_pull_epm_rhs_uuid(ndr
, NDR_SCALARS
, &r
->uuid
));
1125 case EPM_PROTOCOL_IPX
: {
1126 NDR_CHECK(ndr_pull_epm_rhs_ipx(ndr
, NDR_SCALARS
, &r
->ipx
));
1129 case EPM_PROTOCOL_SMB
: {
1130 NDR_CHECK(ndr_pull_epm_rhs_smb(ndr
, NDR_SCALARS
, &r
->smb
));
1133 case EPM_PROTOCOL_PIPE
: {
1134 NDR_CHECK(ndr_pull_epm_rhs_pipe(ndr
, NDR_SCALARS
, &r
->pipe
));
1137 case EPM_PROTOCOL_NETBIOS
: {
1138 NDR_CHECK(ndr_pull_epm_rhs_netbios(ndr
, NDR_SCALARS
, &r
->netbios
));
1141 case EPM_PROTOCOL_NETBEUI
: {
1142 NDR_CHECK(ndr_pull_epm_rhs_netbeui(ndr
, NDR_SCALARS
, &r
->netbeui
));
1145 case EPM_PROTOCOL_SPX
: {
1146 NDR_CHECK(ndr_pull_epm_rhs_spx(ndr
, NDR_SCALARS
, &r
->spx
));
1149 case EPM_PROTOCOL_NB_IPX
: {
1150 NDR_CHECK(ndr_pull_epm_rhs_nb_ipx(ndr
, NDR_SCALARS
, &r
->nb_ipx
));
1153 case EPM_PROTOCOL_DSP
: {
1154 NDR_CHECK(ndr_pull_epm_rhs_atalk_stream(ndr
, NDR_SCALARS
, &r
->atalk_stream
));
1157 case EPM_PROTOCOL_DDP
: {
1158 NDR_CHECK(ndr_pull_epm_rhs_atalk_datagram(ndr
, NDR_SCALARS
, &r
->atalk_datagram
));
1161 case EPM_PROTOCOL_APPLETALK
: {
1162 NDR_CHECK(ndr_pull_epm_rhs_appletalk(ndr
, NDR_SCALARS
, &r
->appletalk
));
1165 case EPM_PROTOCOL_VINES_SPP
: {
1166 NDR_CHECK(ndr_pull_epm_rhs_vines_spp(ndr
, NDR_SCALARS
, &r
->vines_spp
));
1169 case EPM_PROTOCOL_VINES_IPC
: {
1170 NDR_CHECK(ndr_pull_epm_rhs_vines_ipc(ndr
, NDR_SCALARS
, &r
->vines_ipc
));
1173 case EPM_PROTOCOL_STREETTALK
: {
1174 NDR_CHECK(ndr_pull_epm_rhs_streettalk(ndr
, NDR_SCALARS
, &r
->streettalk
));
1177 case EPM_PROTOCOL_HTTP
: {
1178 NDR_CHECK(ndr_pull_epm_rhs_http(ndr
, NDR_SCALARS
, &r
->http
));
1181 case EPM_PROTOCOL_UNIX_DS
: {
1182 NDR_CHECK(ndr_pull_epm_rhs_unix_ds(ndr
, NDR_SCALARS
, &r
->unix_ds
));
1185 case EPM_PROTOCOL_NULL
: {
1186 NDR_CHECK(ndr_pull_epm_rhs_null(ndr
, NDR_SCALARS
, &r
->null
));
1191 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
1192 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
1193 NDR_CHECK(ndr_pull_DATA_BLOB(ndr
, NDR_SCALARS
, &r
->unknown
));
1194 ndr
->flags
= _flags_save_DATA_BLOB
;
1200 if (ndr_flags
& NDR_BUFFERS
) {
1202 case EPM_PROTOCOL_DNET_NSP
:
1205 case EPM_PROTOCOL_OSI_TP4
:
1208 case EPM_PROTOCOL_OSI_CLNS
:
1211 case EPM_PROTOCOL_TCP
:
1214 case EPM_PROTOCOL_UDP
:
1217 case EPM_PROTOCOL_IP
:
1220 case EPM_PROTOCOL_NCADG
:
1223 case EPM_PROTOCOL_NCACN
:
1226 case EPM_PROTOCOL_NCALRPC
:
1229 case EPM_PROTOCOL_UUID
:
1232 case EPM_PROTOCOL_IPX
:
1235 case EPM_PROTOCOL_SMB
:
1238 case EPM_PROTOCOL_PIPE
:
1241 case EPM_PROTOCOL_NETBIOS
:
1244 case EPM_PROTOCOL_NETBEUI
:
1247 case EPM_PROTOCOL_SPX
:
1250 case EPM_PROTOCOL_NB_IPX
:
1253 case EPM_PROTOCOL_DSP
:
1256 case EPM_PROTOCOL_DDP
:
1259 case EPM_PROTOCOL_APPLETALK
:
1262 case EPM_PROTOCOL_VINES_SPP
:
1265 case EPM_PROTOCOL_VINES_IPC
:
1268 case EPM_PROTOCOL_STREETTALK
:
1271 case EPM_PROTOCOL_HTTP
:
1274 case EPM_PROTOCOL_UNIX_DS
:
1277 case EPM_PROTOCOL_NULL
:
1285 ndr
->flags
= _flags_save_UNION
;
1287 return NDR_ERR_SUCCESS
;
1290 _PUBLIC_
void ndr_print_epm_rhs(struct ndr_print
*ndr
, const char *name
, const union epm_rhs
*r
)
1294 uint32_t _flags_save_UNION
= ndr
->flags
;
1295 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_BIGENDIAN
);
1296 level
= ndr_print_get_switch_value(ndr
, r
);
1297 ndr_print_union(ndr
, name
, level
, "epm_rhs");
1299 case EPM_PROTOCOL_DNET_NSP
:
1300 ndr_print_epm_rhs_dnet_nsp(ndr
, "dnet_nsp", &r
->dnet_nsp
);
1303 case EPM_PROTOCOL_OSI_TP4
:
1304 ndr_print_epm_rhs_osi_tp4(ndr
, "osi_tp4", &r
->osi_tp4
);
1307 case EPM_PROTOCOL_OSI_CLNS
:
1308 ndr_print_epm_rhs_osi_clns(ndr
, "osi_clns", &r
->osi_clns
);
1311 case EPM_PROTOCOL_TCP
:
1312 ndr_print_epm_rhs_tcp(ndr
, "tcp", &r
->tcp
);
1315 case EPM_PROTOCOL_UDP
:
1316 ndr_print_epm_rhs_udp(ndr
, "udp", &r
->udp
);
1319 case EPM_PROTOCOL_IP
:
1320 ndr_print_epm_rhs_ip(ndr
, "ip", &r
->ip
);
1323 case EPM_PROTOCOL_NCADG
:
1324 ndr_print_epm_rhs_ncadg(ndr
, "ncadg", &r
->ncadg
);
1327 case EPM_PROTOCOL_NCACN
:
1328 ndr_print_epm_rhs_ncacn(ndr
, "ncacn", &r
->ncacn
);
1331 case EPM_PROTOCOL_NCALRPC
:
1332 ndr_print_epm_rhs_ncalrpc(ndr
, "ncalrpc", &r
->ncalrpc
);
1335 case EPM_PROTOCOL_UUID
:
1336 ndr_print_epm_rhs_uuid(ndr
, "uuid", &r
->uuid
);
1339 case EPM_PROTOCOL_IPX
:
1340 ndr_print_epm_rhs_ipx(ndr
, "ipx", &r
->ipx
);
1343 case EPM_PROTOCOL_SMB
:
1344 ndr_print_epm_rhs_smb(ndr
, "smb", &r
->smb
);
1347 case EPM_PROTOCOL_PIPE
:
1348 ndr_print_epm_rhs_pipe(ndr
, "pipe", &r
->pipe
);
1351 case EPM_PROTOCOL_NETBIOS
:
1352 ndr_print_epm_rhs_netbios(ndr
, "netbios", &r
->netbios
);
1355 case EPM_PROTOCOL_NETBEUI
:
1356 ndr_print_epm_rhs_netbeui(ndr
, "netbeui", &r
->netbeui
);
1359 case EPM_PROTOCOL_SPX
:
1360 ndr_print_epm_rhs_spx(ndr
, "spx", &r
->spx
);
1363 case EPM_PROTOCOL_NB_IPX
:
1364 ndr_print_epm_rhs_nb_ipx(ndr
, "nb_ipx", &r
->nb_ipx
);
1367 case EPM_PROTOCOL_DSP
:
1368 ndr_print_epm_rhs_atalk_stream(ndr
, "atalk_stream", &r
->atalk_stream
);
1371 case EPM_PROTOCOL_DDP
:
1372 ndr_print_epm_rhs_atalk_datagram(ndr
, "atalk_datagram", &r
->atalk_datagram
);
1375 case EPM_PROTOCOL_APPLETALK
:
1376 ndr_print_epm_rhs_appletalk(ndr
, "appletalk", &r
->appletalk
);
1379 case EPM_PROTOCOL_VINES_SPP
:
1380 ndr_print_epm_rhs_vines_spp(ndr
, "vines_spp", &r
->vines_spp
);
1383 case EPM_PROTOCOL_VINES_IPC
:
1384 ndr_print_epm_rhs_vines_ipc(ndr
, "vines_ipc", &r
->vines_ipc
);
1387 case EPM_PROTOCOL_STREETTALK
:
1388 ndr_print_epm_rhs_streettalk(ndr
, "streettalk", &r
->streettalk
);
1391 case EPM_PROTOCOL_HTTP
:
1392 ndr_print_epm_rhs_http(ndr
, "http", &r
->http
);
1395 case EPM_PROTOCOL_UNIX_DS
:
1396 ndr_print_epm_rhs_unix_ds(ndr
, "unix_ds", &r
->unix_ds
);
1399 case EPM_PROTOCOL_NULL
:
1400 ndr_print_epm_rhs_null(ndr
, "null", &r
->null
);
1404 ndr_print_DATA_BLOB(ndr
, "unknown", r
->unknown
);
1408 ndr
->flags
= _flags_save_UNION
;
1412 static enum ndr_err_code
ndr_push_epm_lhs(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_lhs
*r
)
1414 if (ndr_flags
& NDR_SCALARS
) {
1415 NDR_CHECK(ndr_push_align(ndr
, 4));
1416 NDR_CHECK(ndr_push_epm_protocol(ndr
, NDR_SCALARS
, r
->protocol
));
1418 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
1419 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
1420 NDR_CHECK(ndr_push_DATA_BLOB(ndr
, NDR_SCALARS
, r
->lhs_data
));
1421 ndr
->flags
= _flags_save_DATA_BLOB
;
1424 if (ndr_flags
& NDR_BUFFERS
) {
1426 return NDR_ERR_SUCCESS
;
1429 static enum ndr_err_code
ndr_pull_epm_lhs(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_lhs
*r
)
1431 if (ndr_flags
& NDR_SCALARS
) {
1432 NDR_CHECK(ndr_pull_align(ndr
, 4));
1433 NDR_CHECK(ndr_pull_epm_protocol(ndr
, NDR_SCALARS
, &r
->protocol
));
1435 uint32_t _flags_save_DATA_BLOB
= ndr
->flags
;
1436 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_REMAINING
);
1437 NDR_CHECK(ndr_pull_DATA_BLOB(ndr
, NDR_SCALARS
, &r
->lhs_data
));
1438 ndr
->flags
= _flags_save_DATA_BLOB
;
1441 if (ndr_flags
& NDR_BUFFERS
) {
1443 return NDR_ERR_SUCCESS
;
1446 _PUBLIC_
void ndr_print_epm_lhs(struct ndr_print
*ndr
, const char *name
, const struct epm_lhs
*r
)
1448 ndr_print_struct(ndr
, name
, "epm_lhs");
1450 ndr_print_epm_protocol(ndr
, "protocol", r
->protocol
);
1451 ndr_print_DATA_BLOB(ndr
, "lhs_data", r
->lhs_data
);
1455 static enum ndr_err_code
ndr_push_epm_floor(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_floor
*r
)
1457 if (ndr_flags
& NDR_SCALARS
) {
1458 NDR_CHECK(ndr_push_align(ndr
, 1));
1460 struct ndr_push
*_ndr_lhs
;
1461 NDR_CHECK(ndr_push_subcontext_start(ndr
, &_ndr_lhs
, 2, -1));
1462 NDR_CHECK(ndr_push_epm_lhs(_ndr_lhs
, NDR_SCALARS
, &r
->lhs
));
1463 NDR_CHECK(ndr_push_subcontext_end(ndr
, _ndr_lhs
, 2, -1));
1466 struct ndr_push
*_ndr_rhs
;
1467 NDR_CHECK(ndr_push_subcontext_start(ndr
, &_ndr_rhs
, 2, -1));
1468 NDR_CHECK(ndr_push_set_switch_value(_ndr_rhs
, &r
->rhs
, r
->lhs
.protocol
));
1469 NDR_CHECK(ndr_push_epm_rhs(_ndr_rhs
, NDR_SCALARS
, &r
->rhs
));
1470 NDR_CHECK(ndr_push_subcontext_end(ndr
, _ndr_rhs
, 2, -1));
1473 if (ndr_flags
& NDR_BUFFERS
) {
1475 return NDR_ERR_SUCCESS
;
1478 static enum ndr_err_code
ndr_pull_epm_floor(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_floor
*r
)
1480 if (ndr_flags
& NDR_SCALARS
) {
1481 NDR_CHECK(ndr_pull_align(ndr
, 1));
1483 struct ndr_pull
*_ndr_lhs
;
1484 NDR_CHECK(ndr_pull_subcontext_start(ndr
, &_ndr_lhs
, 2, -1));
1485 NDR_CHECK(ndr_pull_epm_lhs(_ndr_lhs
, NDR_SCALARS
, &r
->lhs
));
1486 NDR_CHECK(ndr_pull_subcontext_end(ndr
, _ndr_lhs
, 2, -1));
1489 struct ndr_pull
*_ndr_rhs
;
1490 NDR_CHECK(ndr_pull_subcontext_start(ndr
, &_ndr_rhs
, 2, -1));
1491 NDR_CHECK(ndr_pull_set_switch_value(_ndr_rhs
, &r
->rhs
, r
->lhs
.protocol
));
1492 NDR_CHECK(ndr_pull_epm_rhs(_ndr_rhs
, NDR_SCALARS
, &r
->rhs
));
1493 NDR_CHECK(ndr_pull_subcontext_end(ndr
, _ndr_rhs
, 2, -1));
1496 if (ndr_flags
& NDR_BUFFERS
) {
1498 return NDR_ERR_SUCCESS
;
1501 _PUBLIC_
void ndr_print_epm_floor(struct ndr_print
*ndr
, const char *name
, const struct epm_floor
*r
)
1503 ndr_print_struct(ndr
, name
, "epm_floor");
1505 ndr_print_epm_lhs(ndr
, "lhs", &r
->lhs
);
1506 ndr_print_set_switch_value(ndr
, &r
->rhs
, r
->lhs
.protocol
);
1507 ndr_print_epm_rhs(ndr
, "rhs", &r
->rhs
);
1511 static enum ndr_err_code
ndr_push_epm_tower(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_tower
*r
)
1513 uint32_t cntr_floors_0
;
1515 uint32_t _flags_save_STRUCT
= ndr
->flags
;
1516 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
);
1517 if (ndr_flags
& NDR_SCALARS
) {
1518 NDR_CHECK(ndr_push_align(ndr
, 2));
1519 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->num_floors
));
1520 for (cntr_floors_0
= 0; cntr_floors_0
< r
->num_floors
; cntr_floors_0
++) {
1521 NDR_CHECK(ndr_push_epm_floor(ndr
, NDR_SCALARS
, &r
->floors
[cntr_floors_0
]));
1524 if (ndr_flags
& NDR_BUFFERS
) {
1526 ndr
->flags
= _flags_save_STRUCT
;
1528 return NDR_ERR_SUCCESS
;
1531 static enum ndr_err_code
ndr_pull_epm_tower(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_tower
*r
)
1533 uint32_t cntr_floors_0
;
1534 TALLOC_CTX
*_mem_save_floors_0
;
1536 uint32_t _flags_save_STRUCT
= ndr
->flags
;
1537 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
);
1538 if (ndr_flags
& NDR_SCALARS
) {
1539 NDR_CHECK(ndr_pull_align(ndr
, 2));
1540 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->num_floors
));
1541 NDR_PULL_ALLOC_N(ndr
, r
->floors
, r
->num_floors
);
1542 _mem_save_floors_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1543 NDR_PULL_SET_MEM_CTX(ndr
, r
->floors
, 0);
1544 for (cntr_floors_0
= 0; cntr_floors_0
< r
->num_floors
; cntr_floors_0
++) {
1545 NDR_CHECK(ndr_pull_epm_floor(ndr
, NDR_SCALARS
, &r
->floors
[cntr_floors_0
]));
1547 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_floors_0
, 0);
1549 if (ndr_flags
& NDR_BUFFERS
) {
1551 ndr
->flags
= _flags_save_STRUCT
;
1553 return NDR_ERR_SUCCESS
;
1556 _PUBLIC_
void ndr_print_epm_tower(struct ndr_print
*ndr
, const char *name
, const struct epm_tower
*r
)
1558 uint32_t cntr_floors_0
;
1559 ndr_print_struct(ndr
, name
, "epm_tower");
1561 uint32_t _flags_save_STRUCT
= ndr
->flags
;
1562 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
);
1564 ndr_print_uint16(ndr
, "num_floors", r
->num_floors
);
1565 ndr
->print(ndr
, "%s: ARRAY(%d)", "floors", (int)r
->num_floors
);
1567 for (cntr_floors_0
=0;cntr_floors_0
<r
->num_floors
;cntr_floors_0
++) {
1569 if (asprintf(&idx_0
, "[%d]", cntr_floors_0
) != -1) {
1570 ndr_print_epm_floor(ndr
, "floors", &r
->floors
[cntr_floors_0
]);
1576 ndr
->flags
= _flags_save_STRUCT
;
1580 static size_t ndr_size_epm_tower(const struct epm_tower
*r
, int flags
)
1582 flags
|= LIBNDR_FLAG_NOALIGN
|LIBNDR_FLAG_LITTLE_ENDIAN
;
1583 return ndr_size_struct(r
, flags
, (ndr_push_flags_fn_t
)ndr_push_epm_tower
);
1586 static enum ndr_err_code
ndr_push_epm_twr_t(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_twr_t
*r
)
1588 if (ndr_flags
& NDR_SCALARS
) {
1589 NDR_CHECK(ndr_push_align(ndr
, 4));
1590 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, ndr_size_epm_tower(&r
->tower
, ndr
->flags
)));
1592 struct ndr_push
*_ndr_tower
;
1593 NDR_CHECK(ndr_push_subcontext_start(ndr
, &_ndr_tower
, 4, -1));
1594 NDR_CHECK(ndr_push_epm_tower(_ndr_tower
, NDR_SCALARS
, &r
->tower
));
1595 NDR_CHECK(ndr_push_subcontext_end(ndr
, _ndr_tower
, 4, -1));
1598 if (ndr_flags
& NDR_BUFFERS
) {
1600 return NDR_ERR_SUCCESS
;
1603 static enum ndr_err_code
ndr_pull_epm_twr_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_twr_t
*r
)
1605 if (ndr_flags
& NDR_SCALARS
) {
1606 NDR_CHECK(ndr_pull_align(ndr
, 4));
1607 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->tower_length
));
1609 struct ndr_pull
*_ndr_tower
;
1610 NDR_CHECK(ndr_pull_subcontext_start(ndr
, &_ndr_tower
, 4, -1));
1611 NDR_CHECK(ndr_pull_epm_tower(_ndr_tower
, NDR_SCALARS
, &r
->tower
));
1612 NDR_CHECK(ndr_pull_subcontext_end(ndr
, _ndr_tower
, 4, -1));
1615 if (ndr_flags
& NDR_BUFFERS
) {
1617 return NDR_ERR_SUCCESS
;
1620 _PUBLIC_
void ndr_print_epm_twr_t(struct ndr_print
*ndr
, const char *name
, const struct epm_twr_t
*r
)
1622 ndr_print_struct(ndr
, name
, "epm_twr_t");
1624 ndr_print_uint32(ndr
, "tower_length", (ndr
->flags
& LIBNDR_PRINT_SET_VALUES
)?ndr_size_epm_tower(&r
->tower
, ndr
->flags
):r
->tower_length
);
1625 ndr_print_epm_tower(ndr
, "tower", &r
->tower
);
1629 static enum ndr_err_code
ndr_push_epm_entry_t(struct ndr_push
*ndr
, int ndr_flags
, const struct epm_entry_t
*r
)
1631 if (ndr_flags
& NDR_SCALARS
) {
1632 NDR_CHECK(ndr_push_align(ndr
, 4));
1633 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, &r
->object
));
1634 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->tower
));
1636 uint32_t _flags_save_string
= ndr
->flags
;
1637 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_LEN4
);
1638 NDR_CHECK(ndr_push_string(ndr
, NDR_SCALARS
, r
->annotation
));
1639 ndr
->flags
= _flags_save_string
;
1642 if (ndr_flags
& NDR_BUFFERS
) {
1643 NDR_CHECK(ndr_push_GUID(ndr
, NDR_BUFFERS
, &r
->object
));
1645 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->tower
));
1648 return NDR_ERR_SUCCESS
;
1651 static enum ndr_err_code
ndr_pull_epm_entry_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_entry_t
*r
)
1653 uint32_t _ptr_tower
;
1654 TALLOC_CTX
*_mem_save_tower_0
;
1655 if (ndr_flags
& NDR_SCALARS
) {
1656 NDR_CHECK(ndr_pull_align(ndr
, 4));
1657 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, &r
->object
));
1658 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_tower
));
1660 NDR_PULL_ALLOC(ndr
, r
->tower
);
1665 uint32_t _flags_save_string
= ndr
->flags
;
1666 ndr_set_flags(&ndr
->flags
, LIBNDR_FLAG_STR_ASCII
|LIBNDR_FLAG_STR_LEN4
);
1667 NDR_CHECK(ndr_pull_string(ndr
, NDR_SCALARS
, &r
->annotation
));
1668 ndr
->flags
= _flags_save_string
;
1671 if (ndr_flags
& NDR_BUFFERS
) {
1672 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_BUFFERS
, &r
->object
));
1674 _mem_save_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1675 NDR_PULL_SET_MEM_CTX(ndr
, r
->tower
, 0);
1676 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->tower
));
1677 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_tower_0
, 0);
1680 return NDR_ERR_SUCCESS
;
1683 _PUBLIC_
void ndr_print_epm_entry_t(struct ndr_print
*ndr
, const char *name
, const struct epm_entry_t
*r
)
1685 ndr_print_struct(ndr
, name
, "epm_entry_t");
1687 ndr_print_GUID(ndr
, "object", &r
->object
);
1688 ndr_print_ptr(ndr
, "tower", r
->tower
);
1691 ndr_print_epm_twr_t(ndr
, "tower", r
->tower
);
1694 ndr_print_string(ndr
, "annotation", r
->annotation
);
1698 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
)
1700 if (ndr_flags
& NDR_SCALARS
) {
1701 NDR_CHECK(ndr_push_align(ndr
, 4));
1702 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, &r
->uuid
));
1703 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->vers_major
));
1704 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->vers_minor
));
1706 if (ndr_flags
& NDR_BUFFERS
) {
1707 NDR_CHECK(ndr_push_GUID(ndr
, NDR_BUFFERS
, &r
->uuid
));
1709 return NDR_ERR_SUCCESS
;
1712 static enum ndr_err_code
ndr_pull_rpc_if_id_t(struct ndr_pull
*ndr
, int ndr_flags
, struct rpc_if_id_t
*r
)
1714 if (ndr_flags
& NDR_SCALARS
) {
1715 NDR_CHECK(ndr_pull_align(ndr
, 4));
1716 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, &r
->uuid
));
1717 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->vers_major
));
1718 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->vers_minor
));
1720 if (ndr_flags
& NDR_BUFFERS
) {
1721 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_BUFFERS
, &r
->uuid
));
1723 return NDR_ERR_SUCCESS
;
1726 _PUBLIC_
void ndr_print_rpc_if_id_t(struct ndr_print
*ndr
, const char *name
, const struct rpc_if_id_t
*r
)
1728 ndr_print_struct(ndr
, name
, "rpc_if_id_t");
1730 ndr_print_GUID(ndr
, "uuid", &r
->uuid
);
1731 ndr_print_uint16(ndr
, "vers_major", r
->vers_major
);
1732 ndr_print_uint16(ndr
, "vers_minor", r
->vers_minor
);
1736 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
)
1738 if (ndr_flags
& NDR_SCALARS
) {
1739 NDR_CHECK(ndr_push_align(ndr
, 4));
1740 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->twr
));
1742 if (ndr_flags
& NDR_BUFFERS
) {
1744 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->twr
));
1747 return NDR_ERR_SUCCESS
;
1750 static enum ndr_err_code
ndr_pull_epm_twr_p_t(struct ndr_pull
*ndr
, int ndr_flags
, struct epm_twr_p_t
*r
)
1753 TALLOC_CTX
*_mem_save_twr_0
;
1754 if (ndr_flags
& NDR_SCALARS
) {
1755 NDR_CHECK(ndr_pull_align(ndr
, 4));
1756 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_twr
));
1758 NDR_PULL_ALLOC(ndr
, r
->twr
);
1763 if (ndr_flags
& NDR_BUFFERS
) {
1765 _mem_save_twr_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1766 NDR_PULL_SET_MEM_CTX(ndr
, r
->twr
, 0);
1767 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->twr
));
1768 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_twr_0
, 0);
1771 return NDR_ERR_SUCCESS
;
1774 _PUBLIC_
void ndr_print_epm_twr_p_t(struct ndr_print
*ndr
, const char *name
, const struct epm_twr_p_t
*r
)
1776 ndr_print_struct(ndr
, name
, "epm_twr_p_t");
1778 ndr_print_ptr(ndr
, "twr", r
->twr
);
1781 ndr_print_epm_twr_t(ndr
, "twr", r
->twr
);
1787 static enum ndr_err_code
ndr_push_epm_Insert(struct ndr_push
*ndr
, int flags
, const struct epm_Insert
*r
)
1789 uint32_t cntr_entries_0
;
1790 if (flags
& NDR_IN
) {
1791 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1792 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1793 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1794 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1796 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1797 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1799 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.replace
));
1801 if (flags
& NDR_OUT
) {
1802 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
1804 return NDR_ERR_SUCCESS
;
1807 static enum ndr_err_code
ndr_pull_epm_Insert(struct ndr_pull
*ndr
, int flags
, struct epm_Insert
*r
)
1809 uint32_t cntr_entries_0
;
1810 TALLOC_CTX
*_mem_save_entries_0
;
1811 if (flags
& NDR_IN
) {
1812 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_ents
));
1813 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.entries
));
1814 NDR_PULL_ALLOC_N(ndr
, r
->in
.entries
, ndr_get_array_size(ndr
, &r
->in
.entries
));
1815 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1816 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entries
, 0);
1817 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1818 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1820 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1821 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1823 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
1824 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.replace
));
1825 if (r
->in
.entries
) {
1826 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.entries
, r
->in
.num_ents
));
1829 if (flags
& NDR_OUT
) {
1830 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
1832 return NDR_ERR_SUCCESS
;
1835 _PUBLIC_
void ndr_print_epm_Insert(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Insert
*r
)
1837 uint32_t cntr_entries_0
;
1838 ndr_print_struct(ndr
, name
, "epm_Insert");
1840 if (flags
& NDR_SET_VALUES
) {
1841 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1843 if (flags
& NDR_IN
) {
1844 ndr_print_struct(ndr
, "in", "epm_Insert");
1846 ndr_print_uint32(ndr
, "num_ents", r
->in
.num_ents
);
1847 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)r
->in
.num_ents
);
1849 for (cntr_entries_0
=0;cntr_entries_0
<r
->in
.num_ents
;cntr_entries_0
++) {
1851 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
1852 ndr_print_epm_entry_t(ndr
, "entries", &r
->in
.entries
[cntr_entries_0
]);
1857 ndr_print_uint32(ndr
, "replace", r
->in
.replace
);
1860 if (flags
& NDR_OUT
) {
1861 ndr_print_struct(ndr
, "out", "epm_Insert");
1863 ndr_print_uint32(ndr
, "result", r
->out
.result
);
1869 static enum ndr_err_code
ndr_push_epm_Delete(struct ndr_push
*ndr
, int flags
, const struct epm_Delete
*r
)
1871 uint32_t cntr_entries_0
;
1872 if (flags
& NDR_IN
) {
1873 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1874 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_ents
));
1875 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1876 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1878 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1879 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1882 if (flags
& NDR_OUT
) {
1883 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
1885 return NDR_ERR_SUCCESS
;
1888 static enum ndr_err_code
ndr_pull_epm_Delete(struct ndr_pull
*ndr
, int flags
, struct epm_Delete
*r
)
1890 uint32_t cntr_entries_0
;
1891 TALLOC_CTX
*_mem_save_entries_0
;
1892 if (flags
& NDR_IN
) {
1893 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_ents
));
1894 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.entries
));
1895 NDR_PULL_ALLOC_N(ndr
, r
->in
.entries
, ndr_get_array_size(ndr
, &r
->in
.entries
));
1896 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1897 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entries
, 0);
1898 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1899 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->in
.entries
[cntr_entries_0
]));
1901 for (cntr_entries_0
= 0; cntr_entries_0
< r
->in
.num_ents
; cntr_entries_0
++) {
1902 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->in
.entries
[cntr_entries_0
]));
1904 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
1905 if (r
->in
.entries
) {
1906 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.entries
, r
->in
.num_ents
));
1909 if (flags
& NDR_OUT
) {
1910 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
1912 return NDR_ERR_SUCCESS
;
1915 _PUBLIC_
void ndr_print_epm_Delete(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Delete
*r
)
1917 uint32_t cntr_entries_0
;
1918 ndr_print_struct(ndr
, name
, "epm_Delete");
1920 if (flags
& NDR_SET_VALUES
) {
1921 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1923 if (flags
& NDR_IN
) {
1924 ndr_print_struct(ndr
, "in", "epm_Delete");
1926 ndr_print_uint32(ndr
, "num_ents", r
->in
.num_ents
);
1927 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)r
->in
.num_ents
);
1929 for (cntr_entries_0
=0;cntr_entries_0
<r
->in
.num_ents
;cntr_entries_0
++) {
1931 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
1932 ndr_print_epm_entry_t(ndr
, "entries", &r
->in
.entries
[cntr_entries_0
]);
1939 if (flags
& NDR_OUT
) {
1940 ndr_print_struct(ndr
, "out", "epm_Delete");
1942 ndr_print_uint32(ndr
, "result", r
->out
.result
);
1948 static enum ndr_err_code
ndr_push_epm_Lookup(struct ndr_push
*ndr
, int flags
, const struct epm_Lookup
*r
)
1950 uint32_t cntr_entries_0
;
1951 if (flags
& NDR_IN
) {
1952 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.inquiry_type
));
1953 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
1955 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.object
));
1957 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.interface_id
));
1958 if (r
->in
.interface_id
) {
1959 NDR_CHECK(ndr_push_rpc_if_id_t(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.interface_id
));
1961 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.vers_option
));
1962 if (r
->in
.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
|NDR_BUFFERS
, r
->in
.entry_handle
));
1966 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_ents
));
1968 if (flags
& NDR_OUT
) {
1969 if (r
->out
.entry_handle
== NULL
) {
1970 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1972 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.entry_handle
));
1973 if (r
->out
.num_ents
== NULL
) {
1974 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1976 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_ents
));
1977 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_ents
));
1978 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
1979 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_ents
));
1980 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
1981 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_SCALARS
, &r
->out
.entries
[cntr_entries_0
]));
1983 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
1984 NDR_CHECK(ndr_push_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->out
.entries
[cntr_entries_0
]));
1986 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
1988 return NDR_ERR_SUCCESS
;
1991 static enum ndr_err_code
ndr_pull_epm_Lookup(struct ndr_pull
*ndr
, int flags
, struct epm_Lookup
*r
)
1993 uint32_t _ptr_object
;
1994 uint32_t _ptr_interface_id
;
1995 uint32_t cntr_entries_0
;
1996 TALLOC_CTX
*_mem_save_object_0
;
1997 TALLOC_CTX
*_mem_save_interface_id_0
;
1998 TALLOC_CTX
*_mem_save_entry_handle_0
;
1999 TALLOC_CTX
*_mem_save_num_ents_0
;
2000 TALLOC_CTX
*_mem_save_entries_0
;
2001 if (flags
& NDR_IN
) {
2002 ZERO_STRUCT(r
->out
);
2004 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.inquiry_type
));
2005 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2007 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2009 r
->in
.object
= NULL
;
2012 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2013 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2014 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.object
));
2015 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2017 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_interface_id
));
2018 if (_ptr_interface_id
) {
2019 NDR_PULL_ALLOC(ndr
, r
->in
.interface_id
);
2021 r
->in
.interface_id
= NULL
;
2023 if (r
->in
.interface_id
) {
2024 _mem_save_interface_id_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2025 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.interface_id
, 0);
2026 NDR_CHECK(ndr_pull_rpc_if_id_t(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.interface_id
));
2027 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_interface_id_0
, 0);
2029 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.vers_option
));
2030 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2031 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2033 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2034 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2035 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.entry_handle
));
2036 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2037 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_ents
));
2038 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2039 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2040 NDR_PULL_ALLOC(ndr
, r
->out
.num_ents
);
2041 ZERO_STRUCTP(r
->out
.num_ents
);
2043 if (flags
& NDR_OUT
) {
2044 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2045 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2047 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2048 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2049 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.entry_handle
));
2050 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2051 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2052 NDR_PULL_ALLOC(ndr
, r
->out
.num_ents
);
2054 _mem_save_num_ents_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2055 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.num_ents
, LIBNDR_FLAG_REF_ALLOC
);
2056 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.num_ents
));
2057 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_num_ents_0
, LIBNDR_FLAG_REF_ALLOC
);
2058 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->out
.entries
));
2059 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->out
.entries
));
2060 if (ndr_get_array_length(ndr
, &r
->out
.entries
) > ndr_get_array_size(ndr
, &r
->out
.entries
)) {
2061 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
));
2063 NDR_PULL_ALLOC_N(ndr
, r
->out
.entries
, ndr_get_array_size(ndr
, &r
->out
.entries
));
2064 _mem_save_entries_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2065 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entries
, 0);
2066 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
2067 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_SCALARS
, &r
->out
.entries
[cntr_entries_0
]));
2069 for (cntr_entries_0
= 0; cntr_entries_0
< *r
->out
.num_ents
; cntr_entries_0
++) {
2070 NDR_CHECK(ndr_pull_epm_entry_t(ndr
, NDR_BUFFERS
, &r
->out
.entries
[cntr_entries_0
]));
2072 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entries_0
, 0);
2073 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2074 if (r
->out
.entries
) {
2075 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->out
.entries
, r
->in
.max_ents
));
2077 if (r
->out
.entries
) {
2078 NDR_CHECK(ndr_check_array_length(ndr
, (void*)&r
->out
.entries
, *r
->out
.num_ents
));
2081 return NDR_ERR_SUCCESS
;
2084 _PUBLIC_
void ndr_print_epm_Lookup(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Lookup
*r
)
2086 uint32_t cntr_entries_0
;
2087 ndr_print_struct(ndr
, name
, "epm_Lookup");
2089 if (flags
& NDR_SET_VALUES
) {
2090 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2092 if (flags
& NDR_IN
) {
2093 ndr_print_struct(ndr
, "in", "epm_Lookup");
2095 ndr_print_uint32(ndr
, "inquiry_type", r
->in
.inquiry_type
);
2096 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2099 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2102 ndr_print_ptr(ndr
, "interface_id", r
->in
.interface_id
);
2104 if (r
->in
.interface_id
) {
2105 ndr_print_rpc_if_id_t(ndr
, "interface_id", r
->in
.interface_id
);
2108 ndr_print_uint32(ndr
, "vers_option", r
->in
.vers_option
);
2109 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2111 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2113 ndr_print_uint32(ndr
, "max_ents", r
->in
.max_ents
);
2116 if (flags
& NDR_OUT
) {
2117 ndr_print_struct(ndr
, "out", "epm_Lookup");
2119 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2121 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2123 ndr_print_ptr(ndr
, "num_ents", r
->out
.num_ents
);
2125 ndr_print_uint32(ndr
, "num_ents", *r
->out
.num_ents
);
2127 ndr
->print(ndr
, "%s: ARRAY(%d)", "entries", (int)*r
->out
.num_ents
);
2129 for (cntr_entries_0
=0;cntr_entries_0
<*r
->out
.num_ents
;cntr_entries_0
++) {
2131 if (asprintf(&idx_0
, "[%d]", cntr_entries_0
) != -1) {
2132 ndr_print_epm_entry_t(ndr
, "entries", &r
->out
.entries
[cntr_entries_0
]);
2137 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2143 _PUBLIC_
enum ndr_err_code
ndr_push_epm_Map(struct ndr_push
*ndr
, int flags
, const struct epm_Map
*r
)
2145 uint32_t cntr_towers_0
;
2146 if (flags
& NDR_IN
) {
2147 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
2149 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.object
));
2151 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.map_tower
));
2152 if (r
->in
.map_tower
) {
2153 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.map_tower
));
2155 if (r
->in
.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
|NDR_BUFFERS
, r
->in
.entry_handle
));
2159 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_towers
));
2161 if (flags
& NDR_OUT
) {
2162 if (r
->out
.entry_handle
== NULL
) {
2163 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2165 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.entry_handle
));
2166 if (r
->out
.num_towers
== NULL
) {
2167 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2169 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_towers
));
2170 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_towers
));
2171 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
2172 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.num_towers
));
2173 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2174 NDR_CHECK(ndr_push_epm_twr_p_t(ndr
, NDR_SCALARS
, &r
->out
.towers
[cntr_towers_0
]));
2176 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2177 NDR_CHECK(ndr_push_epm_twr_p_t(ndr
, NDR_BUFFERS
, &r
->out
.towers
[cntr_towers_0
]));
2179 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2181 return NDR_ERR_SUCCESS
;
2184 _PUBLIC_
enum ndr_err_code
ndr_pull_epm_Map(struct ndr_pull
*ndr
, int flags
, struct epm_Map
*r
)
2186 uint32_t _ptr_object
;
2187 uint32_t _ptr_map_tower
;
2188 uint32_t cntr_towers_0
;
2189 TALLOC_CTX
*_mem_save_object_0
;
2190 TALLOC_CTX
*_mem_save_map_tower_0
;
2191 TALLOC_CTX
*_mem_save_entry_handle_0
;
2192 TALLOC_CTX
*_mem_save_num_towers_0
;
2193 TALLOC_CTX
*_mem_save_towers_0
;
2194 if (flags
& NDR_IN
) {
2195 ZERO_STRUCT(r
->out
);
2197 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2199 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2201 r
->in
.object
= NULL
;
2204 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2205 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2206 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.object
));
2207 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2209 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_map_tower
));
2210 if (_ptr_map_tower
) {
2211 NDR_PULL_ALLOC(ndr
, r
->in
.map_tower
);
2213 r
->in
.map_tower
= NULL
;
2215 if (r
->in
.map_tower
) {
2216 _mem_save_map_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2217 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.map_tower
, 0);
2218 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.map_tower
));
2219 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_map_tower_0
, 0);
2221 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2222 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2224 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2225 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2226 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.entry_handle
));
2227 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2228 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_towers
));
2229 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2230 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2231 NDR_PULL_ALLOC(ndr
, r
->out
.num_towers
);
2232 ZERO_STRUCTP(r
->out
.num_towers
);
2234 if (flags
& NDR_OUT
) {
2235 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2236 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2238 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2239 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2240 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.entry_handle
));
2241 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2242 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2243 NDR_PULL_ALLOC(ndr
, r
->out
.num_towers
);
2245 _mem_save_num_towers_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2246 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.num_towers
, LIBNDR_FLAG_REF_ALLOC
);
2247 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.num_towers
));
2248 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_num_towers_0
, LIBNDR_FLAG_REF_ALLOC
);
2249 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->out
.towers
));
2250 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->out
.towers
));
2251 if (ndr_get_array_length(ndr
, &r
->out
.towers
) > ndr_get_array_size(ndr
, &r
->out
.towers
)) {
2252 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
));
2254 NDR_PULL_ALLOC_N(ndr
, r
->out
.towers
, ndr_get_array_size(ndr
, &r
->out
.towers
));
2255 _mem_save_towers_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2256 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.towers
, 0);
2257 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2258 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr
, NDR_SCALARS
, &r
->out
.towers
[cntr_towers_0
]));
2260 for (cntr_towers_0
= 0; cntr_towers_0
< *r
->out
.num_towers
; cntr_towers_0
++) {
2261 NDR_CHECK(ndr_pull_epm_twr_p_t(ndr
, NDR_BUFFERS
, &r
->out
.towers
[cntr_towers_0
]));
2263 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_towers_0
, 0);
2264 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2265 if (r
->out
.towers
) {
2266 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->out
.towers
, r
->in
.max_towers
));
2268 if (r
->out
.towers
) {
2269 NDR_CHECK(ndr_check_array_length(ndr
, (void*)&r
->out
.towers
, *r
->out
.num_towers
));
2272 return NDR_ERR_SUCCESS
;
2275 _PUBLIC_
void ndr_print_epm_Map(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_Map
*r
)
2277 uint32_t cntr_towers_0
;
2278 ndr_print_struct(ndr
, name
, "epm_Map");
2280 if (flags
& NDR_SET_VALUES
) {
2281 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2283 if (flags
& NDR_IN
) {
2284 ndr_print_struct(ndr
, "in", "epm_Map");
2286 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2289 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2292 ndr_print_ptr(ndr
, "map_tower", r
->in
.map_tower
);
2294 if (r
->in
.map_tower
) {
2295 ndr_print_epm_twr_t(ndr
, "map_tower", r
->in
.map_tower
);
2298 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2300 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2302 ndr_print_uint32(ndr
, "max_towers", r
->in
.max_towers
);
2305 if (flags
& NDR_OUT
) {
2306 ndr_print_struct(ndr
, "out", "epm_Map");
2308 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2310 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2312 ndr_print_ptr(ndr
, "num_towers", r
->out
.num_towers
);
2314 ndr_print_uint32(ndr
, "num_towers", *r
->out
.num_towers
);
2316 ndr
->print(ndr
, "%s: ARRAY(%d)", "towers", (int)*r
->out
.num_towers
);
2318 for (cntr_towers_0
=0;cntr_towers_0
<*r
->out
.num_towers
;cntr_towers_0
++) {
2320 if (asprintf(&idx_0
, "[%d]", cntr_towers_0
) != -1) {
2321 ndr_print_epm_twr_p_t(ndr
, "towers", &r
->out
.towers
[cntr_towers_0
]);
2326 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2332 static enum ndr_err_code
ndr_push_epm_LookupHandleFree(struct ndr_push
*ndr
, int flags
, const struct epm_LookupHandleFree
*r
)
2334 if (flags
& NDR_IN
) {
2335 if (r
->in
.entry_handle
== NULL
) {
2336 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2338 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.entry_handle
));
2340 if (flags
& NDR_OUT
) {
2341 if (r
->out
.entry_handle
== NULL
) {
2342 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2344 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.entry_handle
));
2345 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2347 return NDR_ERR_SUCCESS
;
2350 static enum ndr_err_code
ndr_pull_epm_LookupHandleFree(struct ndr_pull
*ndr
, int flags
, struct epm_LookupHandleFree
*r
)
2352 TALLOC_CTX
*_mem_save_entry_handle_0
;
2353 if (flags
& NDR_IN
) {
2354 ZERO_STRUCT(r
->out
);
2356 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2357 NDR_PULL_ALLOC(ndr
, r
->in
.entry_handle
);
2359 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2360 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2361 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.entry_handle
));
2362 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2363 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2364 *r
->out
.entry_handle
= *r
->in
.entry_handle
;
2366 if (flags
& NDR_OUT
) {
2367 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2368 NDR_PULL_ALLOC(ndr
, r
->out
.entry_handle
);
2370 _mem_save_entry_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2371 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.entry_handle
, LIBNDR_FLAG_REF_ALLOC
);
2372 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.entry_handle
));
2373 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_entry_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
2374 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2376 return NDR_ERR_SUCCESS
;
2379 _PUBLIC_
void ndr_print_epm_LookupHandleFree(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_LookupHandleFree
*r
)
2381 ndr_print_struct(ndr
, name
, "epm_LookupHandleFree");
2383 if (flags
& NDR_SET_VALUES
) {
2384 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2386 if (flags
& NDR_IN
) {
2387 ndr_print_struct(ndr
, "in", "epm_LookupHandleFree");
2389 ndr_print_ptr(ndr
, "entry_handle", r
->in
.entry_handle
);
2391 ndr_print_policy_handle(ndr
, "entry_handle", r
->in
.entry_handle
);
2395 if (flags
& NDR_OUT
) {
2396 ndr_print_struct(ndr
, "out", "epm_LookupHandleFree");
2398 ndr_print_ptr(ndr
, "entry_handle", r
->out
.entry_handle
);
2400 ndr_print_policy_handle(ndr
, "entry_handle", r
->out
.entry_handle
);
2402 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2408 static enum ndr_err_code
ndr_push_epm_InqObject(struct ndr_push
*ndr
, int flags
, const struct epm_InqObject
*r
)
2410 if (flags
& NDR_IN
) {
2411 if (r
->in
.epm_object
== NULL
) {
2412 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2414 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.epm_object
));
2416 if (flags
& NDR_OUT
) {
2417 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2419 return NDR_ERR_SUCCESS
;
2422 static enum ndr_err_code
ndr_pull_epm_InqObject(struct ndr_pull
*ndr
, int flags
, struct epm_InqObject
*r
)
2424 TALLOC_CTX
*_mem_save_epm_object_0
;
2425 if (flags
& NDR_IN
) {
2426 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2427 NDR_PULL_ALLOC(ndr
, r
->in
.epm_object
);
2429 _mem_save_epm_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2430 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.epm_object
, LIBNDR_FLAG_REF_ALLOC
);
2431 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.epm_object
));
2432 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_epm_object_0
, LIBNDR_FLAG_REF_ALLOC
);
2434 if (flags
& NDR_OUT
) {
2435 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2437 return NDR_ERR_SUCCESS
;
2440 _PUBLIC_
void ndr_print_epm_InqObject(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_InqObject
*r
)
2442 ndr_print_struct(ndr
, name
, "epm_InqObject");
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_InqObject");
2450 ndr_print_ptr(ndr
, "epm_object", r
->in
.epm_object
);
2452 ndr_print_GUID(ndr
, "epm_object", r
->in
.epm_object
);
2456 if (flags
& NDR_OUT
) {
2457 ndr_print_struct(ndr
, "out", "epm_InqObject");
2459 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2465 static enum ndr_err_code
ndr_push_epm_MgmtDelete(struct ndr_push
*ndr
, int flags
, const struct epm_MgmtDelete
*r
)
2467 if (flags
& NDR_IN
) {
2468 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.object_speced
));
2469 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.object
));
2471 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.object
));
2473 NDR_CHECK(ndr_push_full_ptr(ndr
, r
->in
.tower
));
2475 NDR_CHECK(ndr_push_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.tower
));
2478 if (flags
& NDR_OUT
) {
2479 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2481 return NDR_ERR_SUCCESS
;
2484 static enum ndr_err_code
ndr_pull_epm_MgmtDelete(struct ndr_pull
*ndr
, int flags
, struct epm_MgmtDelete
*r
)
2486 uint32_t _ptr_object
;
2487 uint32_t _ptr_tower
;
2488 TALLOC_CTX
*_mem_save_object_0
;
2489 TALLOC_CTX
*_mem_save_tower_0
;
2490 if (flags
& NDR_IN
) {
2491 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.object_speced
));
2492 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_object
));
2494 NDR_PULL_ALLOC(ndr
, r
->in
.object
);
2496 r
->in
.object
= NULL
;
2499 _mem_save_object_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2500 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.object
, 0);
2501 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.object
));
2502 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_object_0
, 0);
2504 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_tower
));
2506 NDR_PULL_ALLOC(ndr
, r
->in
.tower
);
2511 _mem_save_tower_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2512 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.tower
, 0);
2513 NDR_CHECK(ndr_pull_epm_twr_t(ndr
, NDR_SCALARS
, r
->in
.tower
));
2514 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_tower_0
, 0);
2517 if (flags
& NDR_OUT
) {
2518 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2520 return NDR_ERR_SUCCESS
;
2523 _PUBLIC_
void ndr_print_epm_MgmtDelete(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_MgmtDelete
*r
)
2525 ndr_print_struct(ndr
, name
, "epm_MgmtDelete");
2527 if (flags
& NDR_SET_VALUES
) {
2528 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2530 if (flags
& NDR_IN
) {
2531 ndr_print_struct(ndr
, "in", "epm_MgmtDelete");
2533 ndr_print_uint32(ndr
, "object_speced", r
->in
.object_speced
);
2534 ndr_print_ptr(ndr
, "object", r
->in
.object
);
2537 ndr_print_GUID(ndr
, "object", r
->in
.object
);
2540 ndr_print_ptr(ndr
, "tower", r
->in
.tower
);
2543 ndr_print_epm_twr_t(ndr
, "tower", r
->in
.tower
);
2548 if (flags
& NDR_OUT
) {
2549 ndr_print_struct(ndr
, "out", "epm_MgmtDelete");
2551 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2557 static enum ndr_err_code
ndr_push_epm_MapAuth(struct ndr_push
*ndr
, int flags
, const struct epm_MapAuth
*r
)
2559 if (flags
& NDR_IN
) {
2561 if (flags
& NDR_OUT
) {
2562 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->out
.result
));
2564 return NDR_ERR_SUCCESS
;
2567 static enum ndr_err_code
ndr_pull_epm_MapAuth(struct ndr_pull
*ndr
, int flags
, struct epm_MapAuth
*r
)
2569 if (flags
& NDR_IN
) {
2571 if (flags
& NDR_OUT
) {
2572 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->out
.result
));
2574 return NDR_ERR_SUCCESS
;
2577 _PUBLIC_
void ndr_print_epm_MapAuth(struct ndr_print
*ndr
, const char *name
, int flags
, const struct epm_MapAuth
*r
)
2579 ndr_print_struct(ndr
, name
, "epm_MapAuth");
2581 if (flags
& NDR_SET_VALUES
) {
2582 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2584 if (flags
& NDR_IN
) {
2585 ndr_print_struct(ndr
, "in", "epm_MapAuth");
2589 if (flags
& NDR_OUT
) {
2590 ndr_print_struct(ndr
, "out", "epm_MapAuth");
2592 ndr_print_uint32(ndr
, "result", r
->out
.result
);
2598 static const struct ndr_interface_call epmapper_calls
[] = {
2601 sizeof(struct epm_Insert
),
2602 (ndr_push_flags_fn_t
) ndr_push_epm_Insert
,
2603 (ndr_pull_flags_fn_t
) ndr_pull_epm_Insert
,
2604 (ndr_print_function_t
) ndr_print_epm_Insert
,
2609 sizeof(struct epm_Delete
),
2610 (ndr_push_flags_fn_t
) ndr_push_epm_Delete
,
2611 (ndr_pull_flags_fn_t
) ndr_pull_epm_Delete
,
2612 (ndr_print_function_t
) ndr_print_epm_Delete
,
2617 sizeof(struct epm_Lookup
),
2618 (ndr_push_flags_fn_t
) ndr_push_epm_Lookup
,
2619 (ndr_pull_flags_fn_t
) ndr_pull_epm_Lookup
,
2620 (ndr_print_function_t
) ndr_print_epm_Lookup
,
2625 sizeof(struct epm_Map
),
2626 (ndr_push_flags_fn_t
) ndr_push_epm_Map
,
2627 (ndr_pull_flags_fn_t
) ndr_pull_epm_Map
,
2628 (ndr_print_function_t
) ndr_print_epm_Map
,
2632 "epm_LookupHandleFree",
2633 sizeof(struct epm_LookupHandleFree
),
2634 (ndr_push_flags_fn_t
) ndr_push_epm_LookupHandleFree
,
2635 (ndr_pull_flags_fn_t
) ndr_pull_epm_LookupHandleFree
,
2636 (ndr_print_function_t
) ndr_print_epm_LookupHandleFree
,
2641 sizeof(struct epm_InqObject
),
2642 (ndr_push_flags_fn_t
) ndr_push_epm_InqObject
,
2643 (ndr_pull_flags_fn_t
) ndr_pull_epm_InqObject
,
2644 (ndr_print_function_t
) ndr_print_epm_InqObject
,
2649 sizeof(struct epm_MgmtDelete
),
2650 (ndr_push_flags_fn_t
) ndr_push_epm_MgmtDelete
,
2651 (ndr_pull_flags_fn_t
) ndr_pull_epm_MgmtDelete
,
2652 (ndr_print_function_t
) ndr_print_epm_MgmtDelete
,
2657 sizeof(struct epm_MapAuth
),
2658 (ndr_push_flags_fn_t
) ndr_push_epm_MapAuth
,
2659 (ndr_pull_flags_fn_t
) ndr_pull_epm_MapAuth
,
2660 (ndr_print_function_t
) ndr_print_epm_MapAuth
,
2663 { NULL
, 0, NULL
, NULL
, NULL
, false }
2666 static const char * const epmapper_endpoint_strings
[] = {
2667 "ncacn_np:[\\pipe\\epmapper]",
2668 "ncacn_ip_tcp:[135]",
2669 "ncalrpc:[EPMAPPER]",
2672 static const struct ndr_interface_string_array epmapper_endpoints
= {
2674 .names
= epmapper_endpoint_strings
2677 static const char * const epmapper_authservice_strings
[] = {
2681 static const struct ndr_interface_string_array epmapper_authservices
= {
2683 .names
= epmapper_authservice_strings
2687 const struct ndr_interface_table ndr_table_epmapper
= {
2690 {0xe1af8308,0x5d1f,0x11c9,{0x91,0xa4},{0x08,0x00,0x2b,0x14,0xa0,0xfa}},
2691 NDR_EPMAPPER_VERSION
2693 .helpstring
= NDR_EPMAPPER_HELPSTRING
,
2695 .calls
= epmapper_calls
,
2696 .endpoints
= &epmapper_endpoints
,
2697 .authservices
= &epmapper_authservices