1 /*
2  * Please do not edit this file.
3  * It was generated using ndrgen.
4  */
5 
6 #include <strings.h>
7 #include <smbsrv/ndr.h>
8 #include <smbsrv/ndl/lsarpc.ndl>
9 
10 extern struct ndr_typeinfo ndt__char;
11 extern struct ndr_typeinfo ndt_s_char;
12 extern struct ndr_typeinfo ndt__uchar;
13 extern struct ndr_typeinfo ndt_s_uchar;
14 extern struct ndr_typeinfo ndt__wchar;
15 extern struct ndr_typeinfo ndt_s_wchar;
16 extern struct ndr_typeinfo ndt__short;
17 extern struct ndr_typeinfo ndt_s_short;
18 extern struct ndr_typeinfo ndt__ushort;
19 extern struct ndr_typeinfo ndt_s_ushort;
20 extern struct ndr_typeinfo ndt__long;
21 extern struct ndr_typeinfo ndt_s_long;
22 extern struct ndr_typeinfo ndt__ulong;
23 extern struct ndr_typeinfo ndt_s_ulong;
24 
25 
26 
27 int ndr__mslsa_sid (struct ndr_reference *encl_ref);
28 struct ndr_typeinfo ndt__mslsa_sid = {
29 	1,		/* NDR version */
30 	3,		/* alignment */
31 	NDR_F_CONFORMANT|NDR_F_STRUCT,	/* flags */
32 	ndr__mslsa_sid,	/* ndr_func */
33 	8,		/* pdu_size_fixed_part */
34 	4,		/* pdu_size_variable_part */
35 	8,		/* c_size_fixed_part */
36 	4,		/* c_size_variable_part */
37 };
38 
39 
40 /*
41  *  */
42 int
43 ndr__mslsa_sid (struct ndr_reference *encl_ref)
44 {
45 	struct mslsa_sid *val = (struct mslsa_sid *) encl_ref->datum;
46 	struct ndr_reference myref;
47 
48 	(void) bzero(&myref, sizeof (myref));
49 	myref.enclosing = encl_ref;
50 	myref.stream = encl_ref->stream;
51 
52 	/* do all basic elements first */
53 	NDR_MEMBER (_uchar, Revision, 0UL);
54 	NDR_MEMBER (_uchar, SubAuthCount, 1UL);
55 
56 	/* do all constructed elements w/o pointers */
57 	NDR_MEMBER_ARR_WITH_DIMENSION (_uchar, Authority, 2UL,
58 		6);
59 	NDR_MEMBER_ARR_WITH_SIZE_IS (_ulong, SubAuthority, 8UL,
60 		val->SubAuthCount);
61 
62 	/* do members with pointers in order */
63 
64 	return 1;
65 }
66 
67 
68 
69 int ndr__mslsa_string_desc (struct ndr_reference *encl_ref);
70 struct ndr_typeinfo ndt__mslsa_string_desc = {
71 	1,		/* NDR version */
72 	3,		/* alignment */
73 	NDR_F_STRUCT,	/* flags */
74 	ndr__mslsa_string_desc,	/* ndr_func */
75 	8,		/* pdu_size_fixed_part */
76 	0,		/* pdu_size_variable_part */
77 	8,		/* c_size_fixed_part */
78 	0,		/* c_size_variable_part */
79 };
80 
81 
82 /*
83  *  */
84 int
85 ndr__mslsa_string_desc (struct ndr_reference *encl_ref)
86 {
87 	struct mslsa_string_desc *val = (struct mslsa_string_desc *) encl_ref->datum;
88 	struct ndr_reference myref;
89 
90 	(void) bzero(&myref, sizeof (myref));
91 	myref.enclosing = encl_ref;
92 	myref.stream = encl_ref->stream;
93 
94 	/* do all basic elements first */
95 	NDR_MEMBER (_ushort, length, 0UL);
96 	NDR_MEMBER (_ushort, allosize, 2UL);
97 
98 	/* do all constructed elements w/o pointers */
99 
100 	/* do members with pointers in order */
101 	NDR_MEMBER_PTR (s_wchar, str, 4UL);
102 
103 	return 1;
104 }
105 
106 
107 
108 int ndr__mslsa_handle (struct ndr_reference *encl_ref);
109 struct ndr_typeinfo ndt__mslsa_handle = {
110 	1,		/* NDR version */
111 	3,		/* alignment */
112 	NDR_F_STRUCT,	/* flags */
113 	ndr__mslsa_handle,	/* ndr_func */
114 	20,		/* pdu_size_fixed_part */
115 	0,		/* pdu_size_variable_part */
116 	20,		/* c_size_fixed_part */
117 	0,		/* c_size_variable_part */
118 };
119 
120 
121 /*
122  *  */
123 int
124 ndr__mslsa_handle (struct ndr_reference *encl_ref)
125 {
126 	struct mslsa_handle *val = (struct mslsa_handle *) encl_ref->datum;
127 	struct ndr_reference myref;
128 
129 	(void) bzero(&myref, sizeof (myref));
130 	myref.enclosing = encl_ref;
131 	myref.stream = encl_ref->stream;
132 
133 	/* do all basic elements first */
134 	NDR_MEMBER (_ulong, data1, 0UL);
135 	NDR_MEMBER (_ulong, data2, 4UL);
136 
137 	/* do all constructed elements w/o pointers */
138 	NDR_MEMBER_ARR_WITH_DIMENSION (_ushort, data3, 8UL,
139 		2);
140 	NDR_MEMBER_ARR_WITH_DIMENSION (_uchar, data4, 12UL,
141 		8);
142 
143 	/* do members with pointers in order */
144 
145 	return 1;
146 }
147 
148 
149 
150 int ndr__mslsa_luid (struct ndr_reference *encl_ref);
151 struct ndr_typeinfo ndt__mslsa_luid = {
152 	1,		/* NDR version */
153 	3,		/* alignment */
154 	NDR_F_STRUCT,	/* flags */
155 	ndr__mslsa_luid,	/* ndr_func */
156 	8,		/* pdu_size_fixed_part */
157 	0,		/* pdu_size_variable_part */
158 	8,		/* c_size_fixed_part */
159 	0,		/* c_size_variable_part */
160 };
161 
162 
163 /*
164  *  */
165 int
166 ndr__mslsa_luid (struct ndr_reference *encl_ref)
167 {
168 	struct mslsa_luid *val = (struct mslsa_luid *) encl_ref->datum;
169 	struct ndr_reference myref;
170 
171 	(void) bzero(&myref, sizeof (myref));
172 	myref.enclosing = encl_ref;
173 	myref.stream = encl_ref->stream;
174 
175 	/* do all basic elements first */
176 	NDR_MEMBER (_ulong, low_part, 0UL);
177 	NDR_MEMBER (_ulong, high_part, 4UL);
178 
179 	/* do all constructed elements w/o pointers */
180 
181 	/* do members with pointers in order */
182 
183 	return 1;
184 }
185 
186 
187 
188 int ndr__mslsa_guid (struct ndr_reference *encl_ref);
189 struct ndr_typeinfo ndt__mslsa_guid = {
190 	1,		/* NDR version */
191 	3,		/* alignment */
192 	NDR_F_STRUCT,	/* flags */
193 	ndr__mslsa_guid,	/* ndr_func */
194 	16,		/* pdu_size_fixed_part */
195 	0,		/* pdu_size_variable_part */
196 	16,		/* c_size_fixed_part */
197 	0,		/* c_size_variable_part */
198 };
199 
200 
201 /*
202  *  */
203 int
204 ndr__mslsa_guid (struct ndr_reference *encl_ref)
205 {
206 	struct mslsa_guid *val = (struct mslsa_guid *) encl_ref->datum;
207 	struct ndr_reference myref;
208 
209 	(void) bzero(&myref, sizeof (myref));
210 	myref.enclosing = encl_ref;
211 	myref.stream = encl_ref->stream;
212 
213 	/* do all basic elements first */
214 	NDR_MEMBER (_ulong, data1, 0UL);
215 	NDR_MEMBER (_ushort, data2, 4UL);
216 	NDR_MEMBER (_ushort, data3, 6UL);
217 
218 	/* do all constructed elements w/o pointers */
219 	NDR_MEMBER_ARR_WITH_DIMENSION (_uchar, data4, 8UL,
220 		8);
221 
222 	/* do members with pointers in order */
223 
224 	return 1;
225 }
226 
227 
228 
229 int ndr__mslsa_quality_of_service (struct ndr_reference *encl_ref);
230 struct ndr_typeinfo ndt__mslsa_quality_of_service = {
231 	1,		/* NDR version */
232 	3,		/* alignment */
233 	NDR_F_STRUCT,	/* flags */
234 	ndr__mslsa_quality_of_service,	/* ndr_func */
235 	8,		/* pdu_size_fixed_part */
236 	0,		/* pdu_size_variable_part */
237 	8,		/* c_size_fixed_part */
238 	0,		/* c_size_variable_part */
239 };
240 
241 
242 /*
243  *  */
244 int
245 ndr__mslsa_quality_of_service (struct ndr_reference *encl_ref)
246 {
247 	struct mslsa_quality_of_service *val = (struct mslsa_quality_of_service *) encl_ref->datum;
248 	struct ndr_reference myref;
249 
250 	(void) bzero(&myref, sizeof (myref));
251 	myref.enclosing = encl_ref;
252 	myref.stream = encl_ref->stream;
253 
254 	/* do all basic elements first */
255 	NDR_MEMBER (_ulong, length, 0UL);
256 	NDR_MEMBER (_ushort, impersonation_level, 4UL);
257 	NDR_MEMBER (_uchar, context_tracking_mode, 6UL);
258 	NDR_MEMBER (_uchar, effective_only, 7UL);
259 
260 	/* do all constructed elements w/o pointers */
261 
262 	/* do members with pointers in order */
263 
264 	return 1;
265 }
266 
267 
268 
269 int ndr__mslsa_object_attributes (struct ndr_reference *encl_ref);
270 struct ndr_typeinfo ndt__mslsa_object_attributes = {
271 	1,		/* NDR version */
272 	3,		/* alignment */
273 	NDR_F_STRUCT,	/* flags */
274 	ndr__mslsa_object_attributes,	/* ndr_func */
275 	24,		/* pdu_size_fixed_part */
276 	0,		/* pdu_size_variable_part */
277 	24,		/* c_size_fixed_part */
278 	0,		/* c_size_variable_part */
279 };
280 
281 
282 /*
283  *  */
284 int
285 ndr__mslsa_object_attributes (struct ndr_reference *encl_ref)
286 {
287 	struct mslsa_object_attributes *val = (struct mslsa_object_attributes *) encl_ref->datum;
288 	struct ndr_reference myref;
289 
290 	(void) bzero(&myref, sizeof (myref));
291 	myref.enclosing = encl_ref;
292 	myref.stream = encl_ref->stream;
293 
294 	/* do all basic elements first */
295 	NDR_MEMBER (_ulong, length, 0UL);
296 	NDR_MEMBER (_ulong, rootDirectory, 4UL);
297 	NDR_MEMBER (_ulong, objectName, 8UL);
298 	NDR_MEMBER (_ulong, attributes, 12UL);
299 	NDR_MEMBER (_ulong, securityDescriptor, 16UL);
300 
301 	/* do all constructed elements w/o pointers */
302 
303 	/* do members with pointers in order */
304 	NDR_MEMBER_PTR (_mslsa_quality_of_service, qualityOfService, 20UL);
305 
306 	return 1;
307 }
308 
309 
310 
311 int ndr__mslsa_OpenPolicy (struct ndr_reference *encl_ref);
312 struct ndr_typeinfo ndt__mslsa_OpenPolicy = {
313 	1,		/* NDR version */
314 	3,		/* alignment */
315 	NDR_F_OPERATION,	/* flags */
316 	ndr__mslsa_OpenPolicy,	/* ndr_func */
317 	56,		/* pdu_size_fixed_part */
318 	0,		/* pdu_size_variable_part */
319 	56,		/* c_size_fixed_part */
320 	0,		/* c_size_variable_part */
321 };
322 
323 
324 /*
325  * [operation(6)]
326  */
327 int
328 ndr__mslsa_OpenPolicy (struct ndr_reference *encl_ref)
329 {
330 	struct mslsa_OpenPolicy *val = (struct mslsa_OpenPolicy *) encl_ref->datum;
331 	struct ndr_reference myref;
332 
333 	(void) bzero(&myref, sizeof (myref));
334 	myref.enclosing = encl_ref;
335 	myref.stream = encl_ref->stream;
336 
337 	/* do all members in order */
338     if (NDR_DIR_IS_IN) {
339 	NDR_TOPMOST_MEMBER_PTR (_ulong, servername);
340     }
341     if (NDR_DIR_IS_IN) {
342 	NDR_TOPMOST_MEMBER (_mslsa_object_attributes, attributes);
343     }
344     if (NDR_DIR_IS_IN) {
345 	NDR_TOPMOST_MEMBER (_ulong, desiredAccess);
346     }
347     if (NDR_DIR_IS_OUT) {
348 	NDR_TOPMOST_MEMBER (_mslsa_handle, domain_handle);
349     }
350     if (NDR_DIR_IS_OUT) {
351 	NDR_TOPMOST_MEMBER (_ulong, status);
352     }
353 
354 	return 1;
355 }
356 
357 
358 
359 int ndr__mslsa_OpenPolicy2 (struct ndr_reference *encl_ref);
360 struct ndr_typeinfo ndt__mslsa_OpenPolicy2 = {
361 	1,		/* NDR version */
362 	3,		/* alignment */
363 	NDR_F_OPERATION,	/* flags */
364 	ndr__mslsa_OpenPolicy2,	/* ndr_func */
365 	56,		/* pdu_size_fixed_part */
366 	0,		/* pdu_size_variable_part */
367 	56,		/* c_size_fixed_part */
368 	0,		/* c_size_variable_part */
369 };
370 
371 
372 /*
373  * [operation(44)]
374  */
375 int
376 ndr__mslsa_OpenPolicy2 (struct ndr_reference *encl_ref)
377 {
378 	struct mslsa_OpenPolicy2 *val = (struct mslsa_OpenPolicy2 *) encl_ref->datum;
379 	struct ndr_reference myref;
380 
381 	(void) bzero(&myref, sizeof (myref));
382 	myref.enclosing = encl_ref;
383 	myref.stream = encl_ref->stream;
384 
385 	/* do all members in order */
386     if (NDR_DIR_IS_IN) {
387 	NDR_TOPMOST_MEMBER_PTR (s_wchar, servername);
388     }
389     if (NDR_DIR_IS_IN) {
390 	NDR_TOPMOST_MEMBER (_mslsa_object_attributes, attributes);
391     }
392     if (NDR_DIR_IS_IN) {
393 	NDR_TOPMOST_MEMBER (_ulong, desiredAccess);
394     }
395     if (NDR_DIR_IS_OUT) {
396 	NDR_TOPMOST_MEMBER (_mslsa_handle, domain_handle);
397     }
398     if (NDR_DIR_IS_OUT) {
399 	NDR_TOPMOST_MEMBER (_ulong, status);
400     }
401 
402 	return 1;
403 }
404 
405 
406 
407 int ndr__mslsa_CloseHandle (struct ndr_reference *encl_ref);
408 struct ndr_typeinfo ndt__mslsa_CloseHandle = {
409 	1,		/* NDR version */
410 	3,		/* alignment */
411 	NDR_F_OPERATION,	/* flags */
412 	ndr__mslsa_CloseHandle,	/* ndr_func */
413 	44,		/* pdu_size_fixed_part */
414 	0,		/* pdu_size_variable_part */
415 	44,		/* c_size_fixed_part */
416 	0,		/* c_size_variable_part */
417 };
418 
419 
420 /*
421  * [operation(0)]
422  */
423 int
424 ndr__mslsa_CloseHandle (struct ndr_reference *encl_ref)
425 {
426 	struct mslsa_CloseHandle *val = (struct mslsa_CloseHandle *) encl_ref->datum;
427 	struct ndr_reference myref;
428 
429 	(void) bzero(&myref, sizeof (myref));
430 	myref.enclosing = encl_ref;
431 	myref.stream = encl_ref->stream;
432 
433 	/* do all members in order */
434     if (NDR_DIR_IS_IN) {
435 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
436     }
437     if (NDR_DIR_IS_OUT) {
438 	NDR_TOPMOST_MEMBER (_mslsa_handle, result_handle);
439     }
440     if (NDR_DIR_IS_OUT) {
441 	NDR_TOPMOST_MEMBER (_ulong, status);
442     }
443 
444 	return 1;
445 }
446 
447 
448 
449 int ndr__mslsa_PrivDef (struct ndr_reference *encl_ref);
450 struct ndr_typeinfo ndt__mslsa_PrivDef = {
451 	1,		/* NDR version */
452 	3,		/* alignment */
453 	NDR_F_STRUCT,	/* flags */
454 	ndr__mslsa_PrivDef,	/* ndr_func */
455 	16,		/* pdu_size_fixed_part */
456 	0,		/* pdu_size_variable_part */
457 	16,		/* c_size_fixed_part */
458 	0,		/* c_size_variable_part */
459 };
460 
461 
462 /*
463  *  */
464 int
465 ndr__mslsa_PrivDef (struct ndr_reference *encl_ref)
466 {
467 	struct mslsa_PrivDef *val = (struct mslsa_PrivDef *) encl_ref->datum;
468 	struct ndr_reference myref;
469 
470 	(void) bzero(&myref, sizeof (myref));
471 	myref.enclosing = encl_ref;
472 	myref.stream = encl_ref->stream;
473 
474 	/* do all basic elements first */
475 
476 	/* do all constructed elements w/o pointers */
477 	NDR_MEMBER (_mslsa_luid, luid, 8UL);
478 
479 	/* do members with pointers in order */
480 	NDR_MEMBER (_mslsa_string_desc, name, 0UL);
481 
482 	return 1;
483 }
484 
485 
486 
487 int ndr__mslsa_PrivEnumBuf (struct ndr_reference *encl_ref);
488 struct ndr_typeinfo ndt__mslsa_PrivEnumBuf = {
489 	1,		/* NDR version */
490 	3,		/* alignment */
491 	NDR_F_STRUCT,	/* flags */
492 	ndr__mslsa_PrivEnumBuf,	/* ndr_func */
493 	8,		/* pdu_size_fixed_part */
494 	0,		/* pdu_size_variable_part */
495 	8,		/* c_size_fixed_part */
496 	0,		/* c_size_variable_part */
497 };
498 
499 
500 /*
501  *  */
502 int
503 ndr__mslsa_PrivEnumBuf (struct ndr_reference *encl_ref)
504 {
505 	struct mslsa_PrivEnumBuf *val = (struct mslsa_PrivEnumBuf *) encl_ref->datum;
506 	struct ndr_reference myref;
507 
508 	(void) bzero(&myref, sizeof (myref));
509 	myref.enclosing = encl_ref;
510 	myref.stream = encl_ref->stream;
511 
512 	/* do all basic elements first */
513 	NDR_MEMBER (_ulong, entries_read, 0UL);
514 
515 	/* do all constructed elements w/o pointers */
516 
517 	/* do members with pointers in order */
518 	NDR_MEMBER_PTR_WITH_SIZE_IS (_mslsa_PrivDef, def, 4UL,
519 		val->entries_read);
520 
521 	return 1;
522 }
523 
524 
525 
526 int ndr__mslsa_EnumPrivileges (struct ndr_reference *encl_ref);
527 struct ndr_typeinfo ndt__mslsa_EnumPrivileges = {
528 	1,		/* NDR version */
529 	3,		/* alignment */
530 	NDR_F_OPERATION,	/* flags */
531 	ndr__mslsa_EnumPrivileges,	/* ndr_func */
532 	36,		/* pdu_size_fixed_part */
533 	0,		/* pdu_size_variable_part */
534 	36,		/* c_size_fixed_part */
535 	0,		/* c_size_variable_part */
536 };
537 
538 
539 /*
540  * [operation(2)]
541  */
542 int
543 ndr__mslsa_EnumPrivileges (struct ndr_reference *encl_ref)
544 {
545 	struct mslsa_EnumPrivileges *val = (struct mslsa_EnumPrivileges *) encl_ref->datum;
546 	struct ndr_reference myref;
547 
548 	(void) bzero(&myref, sizeof (myref));
549 	myref.enclosing = encl_ref;
550 	myref.stream = encl_ref->stream;
551 
552 	/* do all members in order */
553     if (NDR_DIR_IS_IN) {
554 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
555     }
556 	NDR_TOPMOST_MEMBER (_ulong, enum_context);
557     if (NDR_DIR_IS_IN) {
558 	NDR_TOPMOST_MEMBER (_ulong, max_length);
559     }
560     if (NDR_DIR_IS_OUT) {
561 	NDR_TOPMOST_MEMBER_REF (_mslsa_PrivEnumBuf, enum_buf);
562     }
563     if (NDR_DIR_IS_OUT) {
564 	NDR_TOPMOST_MEMBER (_ulong, status);
565     }
566 
567 	return 1;
568 }
569 
570 
571 
572 int ndr__mslsa_SecurityDescriptor (struct ndr_reference *encl_ref);
573 struct ndr_typeinfo ndt__mslsa_SecurityDescriptor = {
574 	1,		/* NDR version */
575 	3,		/* alignment */
576 	NDR_F_STRUCT,	/* flags */
577 	ndr__mslsa_SecurityDescriptor,	/* ndr_func */
578 	20,		/* pdu_size_fixed_part */
579 	0,		/* pdu_size_variable_part */
580 	20,		/* c_size_fixed_part */
581 	0,		/* c_size_variable_part */
582 };
583 
584 
585 /*
586  *  */
587 int
588 ndr__mslsa_SecurityDescriptor (struct ndr_reference *encl_ref)
589 {
590 	struct mslsa_SecurityDescriptor *val = (struct mslsa_SecurityDescriptor *) encl_ref->datum;
591 	struct ndr_reference myref;
592 
593 	(void) bzero(&myref, sizeof (myref));
594 	myref.enclosing = encl_ref;
595 	myref.stream = encl_ref->stream;
596 
597 	/* do all basic elements first */
598 	NDR_MEMBER (_uchar, revision, 0UL);
599 	NDR_MEMBER (_uchar, sbz1, 1UL);
600 	NDR_MEMBER (_ushort, control, 2UL);
601 	NDR_MEMBER (_ulong, owner, 4UL);
602 	NDR_MEMBER (_ulong, group, 8UL);
603 	NDR_MEMBER (_ulong, sacl, 12UL);
604 	NDR_MEMBER (_ulong, dacl, 16UL);
605 
606 	/* do all constructed elements w/o pointers */
607 
608 	/* do members with pointers in order */
609 
610 	return 1;
611 }
612 
613 
614 
615 int ndr__mslsa_SecurityDescInfo (struct ndr_reference *encl_ref);
616 struct ndr_typeinfo ndt__mslsa_SecurityDescInfo = {
617 	1,		/* NDR version */
618 	3,		/* alignment */
619 	NDR_F_STRUCT,	/* flags */
620 	ndr__mslsa_SecurityDescInfo,	/* ndr_func */
621 	8,		/* pdu_size_fixed_part */
622 	0,		/* pdu_size_variable_part */
623 	8,		/* c_size_fixed_part */
624 	0,		/* c_size_variable_part */
625 };
626 
627 
628 /*
629  *  */
630 int
631 ndr__mslsa_SecurityDescInfo (struct ndr_reference *encl_ref)
632 {
633 	struct mslsa_SecurityDescInfo *val = (struct mslsa_SecurityDescInfo *) encl_ref->datum;
634 	struct ndr_reference myref;
635 
636 	(void) bzero(&myref, sizeof (myref));
637 	myref.enclosing = encl_ref;
638 	myref.stream = encl_ref->stream;
639 
640 	/* do all basic elements first */
641 	NDR_MEMBER (_ulong, length, 0UL);
642 
643 	/* do all constructed elements w/o pointers */
644 
645 	/* do members with pointers in order */
646 	NDR_MEMBER_PTR_WITH_SIZE_IS (_uchar, desc, 4UL,
647 		val->length);
648 
649 	return 1;
650 }
651 
652 
653 
654 int ndr__mslsa_QuerySecurityObject (struct ndr_reference *encl_ref);
655 struct ndr_typeinfo ndt__mslsa_QuerySecurityObject = {
656 	1,		/* NDR version */
657 	3,		/* alignment */
658 	NDR_F_OPERATION,	/* flags */
659 	ndr__mslsa_QuerySecurityObject,	/* ndr_func */
660 	32,		/* pdu_size_fixed_part */
661 	0,		/* pdu_size_variable_part */
662 	32,		/* c_size_fixed_part */
663 	0,		/* c_size_variable_part */
664 };
665 
666 
667 /*
668  * [operation(3)]
669  */
670 int
671 ndr__mslsa_QuerySecurityObject (struct ndr_reference *encl_ref)
672 {
673 	struct mslsa_QuerySecurityObject *val = (struct mslsa_QuerySecurityObject *) encl_ref->datum;
674 	struct ndr_reference myref;
675 
676 	(void) bzero(&myref, sizeof (myref));
677 	myref.enclosing = encl_ref;
678 	myref.stream = encl_ref->stream;
679 
680 	/* do all members in order */
681     if (NDR_DIR_IS_IN) {
682 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
683     }
684     if (NDR_DIR_IS_IN) {
685 	NDR_TOPMOST_MEMBER (_ulong, security_info);
686     }
687     if (NDR_DIR_IS_OUT) {
688 	NDR_TOPMOST_MEMBER_PTR (_mslsa_SecurityDescInfo, desc_info);
689     }
690     if (NDR_DIR_IS_OUT) {
691 	NDR_TOPMOST_MEMBER (_ulong, status);
692     }
693 
694 	return 1;
695 }
696 
697 
698 
699 int ndr__mslsa_AccountInfo (struct ndr_reference *encl_ref);
700 struct ndr_typeinfo ndt__mslsa_AccountInfo = {
701 	1,		/* NDR version */
702 	3,		/* alignment */
703 	NDR_F_STRUCT,	/* flags */
704 	ndr__mslsa_AccountInfo,	/* ndr_func */
705 	4,		/* pdu_size_fixed_part */
706 	0,		/* pdu_size_variable_part */
707 	4,		/* c_size_fixed_part */
708 	0,		/* c_size_variable_part */
709 };
710 
711 
712 /*
713  *  */
714 int
715 ndr__mslsa_AccountInfo (struct ndr_reference *encl_ref)
716 {
717 	struct mslsa_AccountInfo *val = (struct mslsa_AccountInfo *) encl_ref->datum;
718 	struct ndr_reference myref;
719 
720 	(void) bzero(&myref, sizeof (myref));
721 	myref.enclosing = encl_ref;
722 	myref.stream = encl_ref->stream;
723 
724 	/* do all basic elements first */
725 
726 	/* do all constructed elements w/o pointers */
727 
728 	/* do members with pointers in order */
729 	NDR_MEMBER_PTR (_mslsa_sid, sid, 0UL);
730 
731 	return 1;
732 }
733 
734 
735 
736 int ndr__mslsa_EnumAccountBuf (struct ndr_reference *encl_ref);
737 struct ndr_typeinfo ndt__mslsa_EnumAccountBuf = {
738 	1,		/* NDR version */
739 	3,		/* alignment */
740 	NDR_F_STRUCT,	/* flags */
741 	ndr__mslsa_EnumAccountBuf,	/* ndr_func */
742 	8,		/* pdu_size_fixed_part */
743 	0,		/* pdu_size_variable_part */
744 	8,		/* c_size_fixed_part */
745 	0,		/* c_size_variable_part */
746 };
747 
748 
749 /*
750  *  */
751 int
752 ndr__mslsa_EnumAccountBuf (struct ndr_reference *encl_ref)
753 {
754 	struct mslsa_EnumAccountBuf *val = (struct mslsa_EnumAccountBuf *) encl_ref->datum;
755 	struct ndr_reference myref;
756 
757 	(void) bzero(&myref, sizeof (myref));
758 	myref.enclosing = encl_ref;
759 	myref.stream = encl_ref->stream;
760 
761 	/* do all basic elements first */
762 	NDR_MEMBER (_ulong, entries_read, 0UL);
763 
764 	/* do all constructed elements w/o pointers */
765 
766 	/* do members with pointers in order */
767 	NDR_MEMBER_PTR_WITH_SIZE_IS (_mslsa_AccountInfo, info, 4UL,
768 		val->entries_read);
769 
770 	return 1;
771 }
772 
773 
774 
775 int ndr__mslsa_EnumerateAccounts (struct ndr_reference *encl_ref);
776 struct ndr_typeinfo ndt__mslsa_EnumerateAccounts = {
777 	1,		/* NDR version */
778 	3,		/* alignment */
779 	NDR_F_OPERATION,	/* flags */
780 	ndr__mslsa_EnumerateAccounts,	/* ndr_func */
781 	36,		/* pdu_size_fixed_part */
782 	0,		/* pdu_size_variable_part */
783 	36,		/* c_size_fixed_part */
784 	0,		/* c_size_variable_part */
785 };
786 
787 
788 /*
789  * [operation(11)]
790  */
791 int
792 ndr__mslsa_EnumerateAccounts (struct ndr_reference *encl_ref)
793 {
794 	struct mslsa_EnumerateAccounts *val = (struct mslsa_EnumerateAccounts *) encl_ref->datum;
795 	struct ndr_reference myref;
796 
797 	(void) bzero(&myref, sizeof (myref));
798 	myref.enclosing = encl_ref;
799 	myref.stream = encl_ref->stream;
800 
801 	/* do all members in order */
802     if (NDR_DIR_IS_IN) {
803 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
804     }
805 	NDR_TOPMOST_MEMBER (_ulong, enum_context);
806     if (NDR_DIR_IS_IN) {
807 	NDR_TOPMOST_MEMBER (_ulong, max_length);
808     }
809     if (NDR_DIR_IS_OUT) {
810 	NDR_TOPMOST_MEMBER_REF (_mslsa_EnumAccountBuf, enum_buf);
811     }
812     if (NDR_DIR_IS_OUT) {
813 	NDR_TOPMOST_MEMBER (_ulong, status);
814     }
815 
816 	return 1;
817 }
818 
819 
820 
821 int ndr__mslsa_TrustedDomainInfo (struct ndr_reference *encl_ref);
822 struct ndr_typeinfo ndt__mslsa_TrustedDomainInfo = {
823 	1,		/* NDR version */
824 	3,		/* alignment */
825 	NDR_F_STRUCT,	/* flags */
826 	ndr__mslsa_TrustedDomainInfo,	/* ndr_func */
827 	12,		/* pdu_size_fixed_part */
828 	0,		/* pdu_size_variable_part */
829 	12,		/* c_size_fixed_part */
830 	0,		/* c_size_variable_part */
831 };
832 
833 
834 /*
835  *  */
836 int
837 ndr__mslsa_TrustedDomainInfo (struct ndr_reference *encl_ref)
838 {
839 	struct mslsa_TrustedDomainInfo *val = (struct mslsa_TrustedDomainInfo *) encl_ref->datum;
840 	struct ndr_reference myref;
841 
842 	(void) bzero(&myref, sizeof (myref));
843 	myref.enclosing = encl_ref;
844 	myref.stream = encl_ref->stream;
845 
846 	/* do all basic elements first */
847 
848 	/* do all constructed elements w/o pointers */
849 
850 	/* do members with pointers in order */
851 	NDR_MEMBER (_mslsa_string_desc, name, 0UL);
852 	NDR_MEMBER_PTR (_mslsa_sid, sid, 8UL);
853 
854 	return 1;
855 }
856 
857 
858 
859 int ndr__mslsa_EnumTrustedDomainBuf (struct ndr_reference *encl_ref);
860 struct ndr_typeinfo ndt__mslsa_EnumTrustedDomainBuf = {
861 	1,		/* NDR version */
862 	3,		/* alignment */
863 	NDR_F_STRUCT,	/* flags */
864 	ndr__mslsa_EnumTrustedDomainBuf,	/* ndr_func */
865 	8,		/* pdu_size_fixed_part */
866 	0,		/* pdu_size_variable_part */
867 	8,		/* c_size_fixed_part */
868 	0,		/* c_size_variable_part */
869 };
870 
871 
872 /*
873  *  */
874 int
875 ndr__mslsa_EnumTrustedDomainBuf (struct ndr_reference *encl_ref)
876 {
877 	struct mslsa_EnumTrustedDomainBuf *val = (struct mslsa_EnumTrustedDomainBuf *) encl_ref->datum;
878 	struct ndr_reference myref;
879 
880 	(void) bzero(&myref, sizeof (myref));
881 	myref.enclosing = encl_ref;
882 	myref.stream = encl_ref->stream;
883 
884 	/* do all basic elements first */
885 	NDR_MEMBER (_ulong, entries_read, 0UL);
886 
887 	/* do all constructed elements w/o pointers */
888 
889 	/* do members with pointers in order */
890 	NDR_MEMBER_PTR_WITH_SIZE_IS (_mslsa_TrustedDomainInfo, info, 4UL,
891 		val->entries_read);
892 
893 	return 1;
894 }
895 
896 
897 
898 int ndr__mslsa_EnumTrustedDomain (struct ndr_reference *encl_ref);
899 struct ndr_typeinfo ndt__mslsa_EnumTrustedDomain = {
900 	1,		/* NDR version */
901 	3,		/* alignment */
902 	NDR_F_OPERATION,	/* flags */
903 	ndr__mslsa_EnumTrustedDomain,	/* ndr_func */
904 	36,		/* pdu_size_fixed_part */
905 	0,		/* pdu_size_variable_part */
906 	36,		/* c_size_fixed_part */
907 	0,		/* c_size_variable_part */
908 };
909 
910 
911 /*
912  * [operation(13)]
913  */
914 int
915 ndr__mslsa_EnumTrustedDomain (struct ndr_reference *encl_ref)
916 {
917 	struct mslsa_EnumTrustedDomain *val = (struct mslsa_EnumTrustedDomain *) encl_ref->datum;
918 	struct ndr_reference myref;
919 
920 	(void) bzero(&myref, sizeof (myref));
921 	myref.enclosing = encl_ref;
922 	myref.stream = encl_ref->stream;
923 
924 	/* do all members in order */
925     if (NDR_DIR_IS_IN) {
926 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
927     }
928 	NDR_TOPMOST_MEMBER (_ulong, enum_context);
929     if (NDR_DIR_IS_IN) {
930 	NDR_TOPMOST_MEMBER (_ulong, max_length);
931     }
932     if (NDR_DIR_IS_OUT) {
933 	NDR_TOPMOST_MEMBER_REF (_mslsa_EnumTrustedDomainBuf, enum_buf);
934     }
935     if (NDR_DIR_IS_OUT) {
936 	NDR_TOPMOST_MEMBER (_ulong, status);
937     }
938 
939 	return 1;
940 }
941 
942 
943 
944 int ndr__mslsa_TrustedDomainInfoEx (struct ndr_reference *encl_ref);
945 struct ndr_typeinfo ndt__mslsa_TrustedDomainInfoEx = {
946 	1,		/* NDR version */
947 	3,		/* alignment */
948 	NDR_F_STRUCT,	/* flags */
949 	ndr__mslsa_TrustedDomainInfoEx,	/* ndr_func */
950 	32,		/* pdu_size_fixed_part */
951 	0,		/* pdu_size_variable_part */
952 	32,		/* c_size_fixed_part */
953 	0,		/* c_size_variable_part */
954 };
955 
956 
957 /*
958  *  */
959 int
960 ndr__mslsa_TrustedDomainInfoEx (struct ndr_reference *encl_ref)
961 {
962 	struct mslsa_TrustedDomainInfoEx *val = (struct mslsa_TrustedDomainInfoEx *) encl_ref->datum;
963 	struct ndr_reference myref;
964 
965 	(void) bzero(&myref, sizeof (myref));
966 	myref.enclosing = encl_ref;
967 	myref.stream = encl_ref->stream;
968 
969 	/* do all basic elements first */
970 	NDR_MEMBER (_ulong, trust_direction, 20UL);
971 	NDR_MEMBER (_ulong, trust_type, 24UL);
972 	NDR_MEMBER (_ulong, trust_attrs, 28UL);
973 
974 	/* do all constructed elements w/o pointers */
975 
976 	/* do members with pointers in order */
977 	NDR_MEMBER (_mslsa_string_desc, dns_name, 0UL);
978 	NDR_MEMBER (_mslsa_string_desc, nb_name, 8UL);
979 	NDR_MEMBER_PTR (_mslsa_sid, sid, 16UL);
980 
981 	return 1;
982 }
983 
984 
985 
986 int ndr__mslsa_EnumTrustedDomainBufEx (struct ndr_reference *encl_ref);
987 struct ndr_typeinfo ndt__mslsa_EnumTrustedDomainBufEx = {
988 	1,		/* NDR version */
989 	3,		/* alignment */
990 	NDR_F_STRUCT,	/* flags */
991 	ndr__mslsa_EnumTrustedDomainBufEx,	/* ndr_func */
992 	8,		/* pdu_size_fixed_part */
993 	0,		/* pdu_size_variable_part */
994 	8,		/* c_size_fixed_part */
995 	0,		/* c_size_variable_part */
996 };
997 
998 
999 /*
1000  *  */
1001 int
1002 ndr__mslsa_EnumTrustedDomainBufEx (struct ndr_reference *encl_ref)
1003 {
1004 	struct mslsa_EnumTrustedDomainBufEx *val = (struct mslsa_EnumTrustedDomainBufEx *) encl_ref->datum;
1005 	struct ndr_reference myref;
1006 
1007 	(void) bzero(&myref, sizeof (myref));
1008 	myref.enclosing = encl_ref;
1009 	myref.stream = encl_ref->stream;
1010 
1011 	/* do all basic elements first */
1012 	NDR_MEMBER (_ulong, entries_read, 0UL);
1013 
1014 	/* do all constructed elements w/o pointers */
1015 
1016 	/* do members with pointers in order */
1017 	NDR_MEMBER_PTR_WITH_SIZE_IS (_mslsa_TrustedDomainInfoEx, info, 4UL,
1018 		val->entries_read);
1019 
1020 	return 1;
1021 }
1022 
1023 
1024 
1025 int ndr__mslsa_EnumTrustedDomainEx (struct ndr_reference *encl_ref);
1026 struct ndr_typeinfo ndt__mslsa_EnumTrustedDomainEx = {
1027 	1,		/* NDR version */
1028 	3,		/* alignment */
1029 	NDR_F_OPERATION,	/* flags */
1030 	ndr__mslsa_EnumTrustedDomainEx,	/* ndr_func */
1031 	36,		/* pdu_size_fixed_part */
1032 	0,		/* pdu_size_variable_part */
1033 	36,		/* c_size_fixed_part */
1034 	0,		/* c_size_variable_part */
1035 };
1036 
1037 
1038 /*
1039  * [operation(50)]
1040  */
1041 int
1042 ndr__mslsa_EnumTrustedDomainEx (struct ndr_reference *encl_ref)
1043 {
1044 	struct mslsa_EnumTrustedDomainEx *val = (struct mslsa_EnumTrustedDomainEx *) encl_ref->datum;
1045 	struct ndr_reference myref;
1046 
1047 	(void) bzero(&myref, sizeof (myref));
1048 	myref.enclosing = encl_ref;
1049 	myref.stream = encl_ref->stream;
1050 
1051 	/* do all members in order */
1052     if (NDR_DIR_IS_IN) {
1053 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
1054     }
1055 	NDR_TOPMOST_MEMBER (_ulong, enum_context);
1056     if (NDR_DIR_IS_IN) {
1057 	NDR_TOPMOST_MEMBER (_ulong, max_length);
1058     }
1059     if (NDR_DIR_IS_OUT) {
1060 	NDR_TOPMOST_MEMBER_REF (_mslsa_EnumTrustedDomainBufEx, enum_buf);
1061     }
1062     if (NDR_DIR_IS_OUT) {
1063 	NDR_TOPMOST_MEMBER (_ulong, status);
1064     }
1065 
1066 	return 1;
1067 }
1068 
1069 
1070 
1071 int ndr__mslsa_domain_entry (struct ndr_reference *encl_ref);
1072 struct ndr_typeinfo ndt__mslsa_domain_entry = {
1073 	1,		/* NDR version */
1074 	3,		/* alignment */
1075 	NDR_F_STRUCT,	/* flags */
1076 	ndr__mslsa_domain_entry,	/* ndr_func */
1077 	12,		/* pdu_size_fixed_part */
1078 	0,		/* pdu_size_variable_part */
1079 	12,		/* c_size_fixed_part */
1080 	0,		/* c_size_variable_part */
1081 };
1082 
1083 
1084 /*
1085  *  */
1086 int
1087 ndr__mslsa_domain_entry (struct ndr_reference *encl_ref)
1088 {
1089 	struct mslsa_domain_entry *val = (struct mslsa_domain_entry *) encl_ref->datum;
1090 	struct ndr_reference myref;
1091 
1092 	(void) bzero(&myref, sizeof (myref));
1093 	myref.enclosing = encl_ref;
1094 	myref.stream = encl_ref->stream;
1095 
1096 	/* do all basic elements first */
1097 
1098 	/* do all constructed elements w/o pointers */
1099 
1100 	/* do members with pointers in order */
1101 	NDR_MEMBER (_mslsa_string_desc, domain_name, 0UL);
1102 	NDR_MEMBER_PTR (_mslsa_sid, domain_sid, 8UL);
1103 
1104 	return 1;
1105 }
1106 
1107 
1108 
1109 int ndr__mslsa_domain_table (struct ndr_reference *encl_ref);
1110 struct ndr_typeinfo ndt__mslsa_domain_table = {
1111 	1,		/* NDR version */
1112 	3,		/* alignment */
1113 	NDR_F_STRUCT,	/* flags */
1114 	ndr__mslsa_domain_table,	/* ndr_func */
1115 	12,		/* pdu_size_fixed_part */
1116 	0,		/* pdu_size_variable_part */
1117 	12,		/* c_size_fixed_part */
1118 	0,		/* c_size_variable_part */
1119 };
1120 
1121 
1122 /*
1123  *  */
1124 int
1125 ndr__mslsa_domain_table (struct ndr_reference *encl_ref)
1126 {
1127 	struct mslsa_domain_table *val = (struct mslsa_domain_table *) encl_ref->datum;
1128 	struct ndr_reference myref;
1129 
1130 	(void) bzero(&myref, sizeof (myref));
1131 	myref.enclosing = encl_ref;
1132 	myref.stream = encl_ref->stream;
1133 
1134 	/* do all basic elements first */
1135 	NDR_MEMBER (_ulong, n_entry, 0UL);
1136 	NDR_MEMBER (_ulong, max_n_entry, 8UL);
1137 
1138 	/* do all constructed elements w/o pointers */
1139 
1140 	/* do members with pointers in order */
1141 	NDR_MEMBER_PTR_WITH_SIZE_IS (_mslsa_domain_entry, entries, 4UL,
1142 		val->n_entry);
1143 
1144 	return 1;
1145 }
1146 
1147 
1148 
1149 int ndr__mslsa_lup_sid_entry (struct ndr_reference *encl_ref);
1150 struct ndr_typeinfo ndt__mslsa_lup_sid_entry = {
1151 	1,		/* NDR version */
1152 	3,		/* alignment */
1153 	NDR_F_STRUCT,	/* flags */
1154 	ndr__mslsa_lup_sid_entry,	/* ndr_func */
1155 	4,		/* pdu_size_fixed_part */
1156 	0,		/* pdu_size_variable_part */
1157 	4,		/* c_size_fixed_part */
1158 	0,		/* c_size_variable_part */
1159 };
1160 
1161 
1162 /*
1163  *  */
1164 int
1165 ndr__mslsa_lup_sid_entry (struct ndr_reference *encl_ref)
1166 {
1167 	struct mslsa_lup_sid_entry *val = (struct mslsa_lup_sid_entry *) encl_ref->datum;
1168 	struct ndr_reference myref;
1169 
1170 	(void) bzero(&myref, sizeof (myref));
1171 	myref.enclosing = encl_ref;
1172 	myref.stream = encl_ref->stream;
1173 
1174 	/* do all basic elements first */
1175 
1176 	/* do all constructed elements w/o pointers */
1177 
1178 	/* do members with pointers in order */
1179 	NDR_MEMBER_PTR (_mslsa_sid, psid, 0UL);
1180 
1181 	return 1;
1182 }
1183 
1184 
1185 
1186 int ndr__mslsa_lup_sid_table (struct ndr_reference *encl_ref);
1187 struct ndr_typeinfo ndt__mslsa_lup_sid_table = {
1188 	1,		/* NDR version */
1189 	3,		/* alignment */
1190 	NDR_F_STRUCT,	/* flags */
1191 	ndr__mslsa_lup_sid_table,	/* ndr_func */
1192 	8,		/* pdu_size_fixed_part */
1193 	0,		/* pdu_size_variable_part */
1194 	8,		/* c_size_fixed_part */
1195 	0,		/* c_size_variable_part */
1196 };
1197 
1198 
1199 /*
1200  *  */
1201 int
1202 ndr__mslsa_lup_sid_table (struct ndr_reference *encl_ref)
1203 {
1204 	struct mslsa_lup_sid_table *val = (struct mslsa_lup_sid_table *) encl_ref->datum;
1205 	struct ndr_reference myref;
1206 
1207 	(void) bzero(&myref, sizeof (myref));
1208 	myref.enclosing = encl_ref;
1209 	myref.stream = encl_ref->stream;
1210 
1211 	/* do all basic elements first */
1212 	NDR_MEMBER (_ulong, n_entry, 0UL);
1213 
1214 	/* do all constructed elements w/o pointers */
1215 
1216 	/* do members with pointers in order */
1217 	NDR_MEMBER_PTR_WITH_SIZE_IS (_mslsa_lup_sid_entry, entries, 4UL,
1218 		val->n_entry);
1219 
1220 	return 1;
1221 }
1222 
1223 
1224 
1225 int ndr__mslsa_name_entry (struct ndr_reference *encl_ref);
1226 struct ndr_typeinfo ndt__mslsa_name_entry = {
1227 	1,		/* NDR version */
1228 	3,		/* alignment */
1229 	NDR_F_STRUCT,	/* flags */
1230 	ndr__mslsa_name_entry,	/* ndr_func */
1231 	16,		/* pdu_size_fixed_part */
1232 	0,		/* pdu_size_variable_part */
1233 	16,		/* c_size_fixed_part */
1234 	0,		/* c_size_variable_part */
1235 };
1236 
1237 
1238 /*
1239  *  */
1240 int
1241 ndr__mslsa_name_entry (struct ndr_reference *encl_ref)
1242 {
1243 	struct mslsa_name_entry *val = (struct mslsa_name_entry *) encl_ref->datum;
1244 	struct ndr_reference myref;
1245 
1246 	(void) bzero(&myref, sizeof (myref));
1247 	myref.enclosing = encl_ref;
1248 	myref.stream = encl_ref->stream;
1249 
1250 	/* do all basic elements first */
1251 	NDR_MEMBER (_ushort, sid_name_use, 0UL);
1252 	NDR_MEMBER (_ushort, unknown_flags, 2UL);
1253 	NDR_MEMBER (_ulong, domain_ix, 12UL);
1254 
1255 	/* do all constructed elements w/o pointers */
1256 
1257 	/* do members with pointers in order */
1258 	NDR_MEMBER (_mslsa_string_desc, name, 4UL);
1259 
1260 	return 1;
1261 }
1262 
1263 
1264 
1265 int ndr__mslsa_name_table (struct ndr_reference *encl_ref);
1266 struct ndr_typeinfo ndt__mslsa_name_table = {
1267 	1,		/* NDR version */
1268 	3,		/* alignment */
1269 	NDR_F_STRUCT,	/* flags */
1270 	ndr__mslsa_name_table,	/* ndr_func */
1271 	8,		/* pdu_size_fixed_part */
1272 	0,		/* pdu_size_variable_part */
1273 	8,		/* c_size_fixed_part */
1274 	0,		/* c_size_variable_part */
1275 };
1276 
1277 
1278 /*
1279  *  */
1280 int
1281 ndr__mslsa_name_table (struct ndr_reference *encl_ref)
1282 {
1283 	struct mslsa_name_table *val = (struct mslsa_name_table *) encl_ref->datum;
1284 	struct ndr_reference myref;
1285 
1286 	(void) bzero(&myref, sizeof (myref));
1287 	myref.enclosing = encl_ref;
1288 	myref.stream = encl_ref->stream;
1289 
1290 	/* do all basic elements first */
1291 	NDR_MEMBER (_ulong, n_entry, 0UL);
1292 
1293 	/* do all constructed elements w/o pointers */
1294 
1295 	/* do members with pointers in order */
1296 	NDR_MEMBER_PTR_WITH_SIZE_IS (_mslsa_name_entry, entries, 4UL,
1297 		val->n_entry);
1298 
1299 	return 1;
1300 }
1301 
1302 
1303 
1304 int ndr__mslsa_LookupSids (struct ndr_reference *encl_ref);
1305 struct ndr_typeinfo ndt__mslsa_LookupSids = {
1306 	1,		/* NDR version */
1307 	3,		/* alignment */
1308 	NDR_F_OPERATION,	/* flags */
1309 	ndr__mslsa_LookupSids,	/* ndr_func */
1310 	52,		/* pdu_size_fixed_part */
1311 	0,		/* pdu_size_variable_part */
1312 	52,		/* c_size_fixed_part */
1313 	0,		/* c_size_variable_part */
1314 };
1315 
1316 
1317 /*
1318  * [operation(15)]
1319  */
1320 int
1321 ndr__mslsa_LookupSids (struct ndr_reference *encl_ref)
1322 {
1323 	struct mslsa_LookupSids *val = (struct mslsa_LookupSids *) encl_ref->datum;
1324 	struct ndr_reference myref;
1325 
1326 	(void) bzero(&myref, sizeof (myref));
1327 	myref.enclosing = encl_ref;
1328 	myref.stream = encl_ref->stream;
1329 
1330 	/* do all members in order */
1331     if (NDR_DIR_IS_IN) {
1332 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
1333     }
1334     if (NDR_DIR_IS_IN) {
1335 	NDR_TOPMOST_MEMBER (_mslsa_lup_sid_table, lup_sid_table);
1336     }
1337     if (NDR_DIR_IS_OUT) {
1338 	NDR_TOPMOST_MEMBER_PTR (_mslsa_domain_table, domain_table);
1339     }
1340 	NDR_TOPMOST_MEMBER (_mslsa_name_table, name_table);
1341     if (NDR_DIR_IS_IN) {
1342 	NDR_TOPMOST_MEMBER (_ushort, lookup_level);
1343     }
1344 	NDR_TOPMOST_MEMBER (_ulong, mapped_count);
1345     if (NDR_DIR_IS_OUT) {
1346 	NDR_TOPMOST_MEMBER (_ulong, status);
1347     }
1348 
1349 	return 1;
1350 }
1351 
1352 
1353 
1354 int ndr__mslsa_CreateSecret (struct ndr_reference *encl_ref);
1355 struct ndr_typeinfo ndt__mslsa_CreateSecret = {
1356 	1,		/* NDR version */
1357 	3,		/* alignment */
1358 	NDR_F_OPERATION,	/* flags */
1359 	ndr__mslsa_CreateSecret,	/* ndr_func */
1360 	56,		/* pdu_size_fixed_part */
1361 	0,		/* pdu_size_variable_part */
1362 	56,		/* c_size_fixed_part */
1363 	0,		/* c_size_variable_part */
1364 };
1365 
1366 
1367 /*
1368  * [operation(16)]
1369  */
1370 int
1371 ndr__mslsa_CreateSecret (struct ndr_reference *encl_ref)
1372 {
1373 	struct mslsa_CreateSecret *val = (struct mslsa_CreateSecret *) encl_ref->datum;
1374 	struct ndr_reference myref;
1375 
1376 	(void) bzero(&myref, sizeof (myref));
1377 	myref.enclosing = encl_ref;
1378 	myref.stream = encl_ref->stream;
1379 
1380 	/* do all members in order */
1381     if (NDR_DIR_IS_IN) {
1382 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
1383     }
1384     if (NDR_DIR_IS_IN) {
1385 	NDR_TOPMOST_MEMBER (_mslsa_string_desc, name);
1386     }
1387     if (NDR_DIR_IS_IN) {
1388 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
1389     }
1390     if (NDR_DIR_IS_OUT) {
1391 	NDR_TOPMOST_MEMBER (_mslsa_handle, secret_handle);
1392     }
1393     if (NDR_DIR_IS_OUT) {
1394 	NDR_TOPMOST_MEMBER (_ulong, status);
1395     }
1396 
1397 	return 1;
1398 }
1399 
1400 
1401 
1402 int ndr__mslsa_lup_name_table (struct ndr_reference *encl_ref);
1403 struct ndr_typeinfo ndt__mslsa_lup_name_table = {
1404 	1,		/* NDR version */
1405 	3,		/* alignment */
1406 	NDR_F_CONFORMANT|NDR_F_STRUCT,	/* flags */
1407 	ndr__mslsa_lup_name_table,	/* ndr_func */
1408 	4,		/* pdu_size_fixed_part */
1409 	8,		/* pdu_size_variable_part */
1410 	4,		/* c_size_fixed_part */
1411 	8,		/* c_size_variable_part */
1412 };
1413 
1414 
1415 /*
1416  *  */
1417 int
1418 ndr__mslsa_lup_name_table (struct ndr_reference *encl_ref)
1419 {
1420 	struct mslsa_lup_name_table *val = (struct mslsa_lup_name_table *) encl_ref->datum;
1421 	struct ndr_reference myref;
1422 
1423 	(void) bzero(&myref, sizeof (myref));
1424 	myref.enclosing = encl_ref;
1425 	myref.stream = encl_ref->stream;
1426 
1427 	/* do all basic elements first */
1428 	NDR_MEMBER (_ulong, n_entry, 0UL);
1429 
1430 	/* do all constructed elements w/o pointers */
1431 
1432 	/* do members with pointers in order */
1433 	NDR_MEMBER_ARR_WITH_SIZE_IS (_mslsa_string_desc, names, 4UL,
1434 		val->n_entry);
1435 
1436 	return 1;
1437 }
1438 
1439 
1440 
1441 int ndr__mslsa_rid_entry (struct ndr_reference *encl_ref);
1442 struct ndr_typeinfo ndt__mslsa_rid_entry = {
1443 	1,		/* NDR version */
1444 	3,		/* alignment */
1445 	NDR_F_STRUCT,	/* flags */
1446 	ndr__mslsa_rid_entry,	/* ndr_func */
1447 	12,		/* pdu_size_fixed_part */
1448 	0,		/* pdu_size_variable_part */
1449 	12,		/* c_size_fixed_part */
1450 	0,		/* c_size_variable_part */
1451 };
1452 
1453 
1454 /*
1455  *  */
1456 int
1457 ndr__mslsa_rid_entry (struct ndr_reference *encl_ref)
1458 {
1459 	struct mslsa_rid_entry *val = (struct mslsa_rid_entry *) encl_ref->datum;
1460 	struct ndr_reference myref;
1461 
1462 	(void) bzero(&myref, sizeof (myref));
1463 	myref.enclosing = encl_ref;
1464 	myref.stream = encl_ref->stream;
1465 
1466 	/* do all basic elements first */
1467 	NDR_MEMBER (_ushort, sid_name_use, 0UL);
1468 	NDR_MEMBER (_ushort, pad, 2UL);
1469 	NDR_MEMBER (_ulong, rid, 4UL);
1470 	NDR_MEMBER (_ulong, domain_index, 8UL);
1471 
1472 	/* do all constructed elements w/o pointers */
1473 
1474 	/* do members with pointers in order */
1475 
1476 	return 1;
1477 }
1478 
1479 
1480 
1481 int ndr__mslsa_rid_table (struct ndr_reference *encl_ref);
1482 struct ndr_typeinfo ndt__mslsa_rid_table = {
1483 	1,		/* NDR version */
1484 	3,		/* alignment */
1485 	NDR_F_STRUCT,	/* flags */
1486 	ndr__mslsa_rid_table,	/* ndr_func */
1487 	8,		/* pdu_size_fixed_part */
1488 	0,		/* pdu_size_variable_part */
1489 	8,		/* c_size_fixed_part */
1490 	0,		/* c_size_variable_part */
1491 };
1492 
1493 
1494 /*
1495  *  */
1496 int
1497 ndr__mslsa_rid_table (struct ndr_reference *encl_ref)
1498 {
1499 	struct mslsa_rid_table *val = (struct mslsa_rid_table *) encl_ref->datum;
1500 	struct ndr_reference myref;
1501 
1502 	(void) bzero(&myref, sizeof (myref));
1503 	myref.enclosing = encl_ref;
1504 	myref.stream = encl_ref->stream;
1505 
1506 	/* do all basic elements first */
1507 	NDR_MEMBER (_ulong, n_entry, 0UL);
1508 
1509 	/* do all constructed elements w/o pointers */
1510 
1511 	/* do members with pointers in order */
1512 	NDR_MEMBER_PTR_WITH_SIZE_IS (_mslsa_rid_entry, rids, 4UL,
1513 		val->n_entry);
1514 
1515 	return 1;
1516 }
1517 
1518 
1519 
1520 int ndr__mslsa_LookupNames (struct ndr_reference *encl_ref);
1521 struct ndr_typeinfo ndt__mslsa_LookupNames = {
1522 	1,		/* NDR version */
1523 	3,		/* alignment */
1524 	NDR_F_OPERATION,	/* flags */
1525 	ndr__mslsa_LookupNames,	/* ndr_func */
1526 	48,		/* pdu_size_fixed_part */
1527 	0,		/* pdu_size_variable_part */
1528 	48,		/* c_size_fixed_part */
1529 	0,		/* c_size_variable_part */
1530 };
1531 
1532 
1533 /*
1534  * [operation(14)]
1535  */
1536 int
1537 ndr__mslsa_LookupNames (struct ndr_reference *encl_ref)
1538 {
1539 	struct mslsa_LookupNames *val = (struct mslsa_LookupNames *) encl_ref->datum;
1540 	struct ndr_reference myref;
1541 
1542 	(void) bzero(&myref, sizeof (myref));
1543 	myref.enclosing = encl_ref;
1544 	myref.stream = encl_ref->stream;
1545 
1546 	/* do all members in order */
1547     if (NDR_DIR_IS_IN) {
1548 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
1549     }
1550     if (NDR_DIR_IS_IN) {
1551 	NDR_TOPMOST_MEMBER_REF (_mslsa_lup_name_table, name_table);
1552     }
1553     if (NDR_DIR_IS_OUT) {
1554 	NDR_TOPMOST_MEMBER_PTR (_mslsa_domain_table, domain_table);
1555     }
1556 	NDR_TOPMOST_MEMBER (_mslsa_rid_table, translated_sids);
1557     if (NDR_DIR_IS_IN) {
1558 	NDR_TOPMOST_MEMBER (_ushort, lookup_level);
1559     }
1560 	NDR_TOPMOST_MEMBER (_ulong, mapped_count);
1561     if (NDR_DIR_IS_OUT) {
1562 	NDR_TOPMOST_MEMBER (_ulong, status);
1563     }
1564 
1565 	return 1;
1566 }
1567 
1568 
1569 
1570 int ndr__mslsa_AuditEventsInfo (struct ndr_reference *encl_ref);
1571 struct ndr_typeinfo ndt__mslsa_AuditEventsInfo = {
1572 	1,		/* NDR version */
1573 	3,		/* alignment */
1574 	NDR_F_STRUCT,	/* flags */
1575 	ndr__mslsa_AuditEventsInfo,	/* ndr_func */
1576 	12,		/* pdu_size_fixed_part */
1577 	0,		/* pdu_size_variable_part */
1578 	12,		/* c_size_fixed_part */
1579 	0,		/* c_size_variable_part */
1580 };
1581 
1582 
1583 /*
1584  *  */
1585 int
1586 ndr__mslsa_AuditEventsInfo (struct ndr_reference *encl_ref)
1587 {
1588 	struct mslsa_AuditEventsInfo *val = (struct mslsa_AuditEventsInfo *) encl_ref->datum;
1589 	struct ndr_reference myref;
1590 
1591 	(void) bzero(&myref, sizeof (myref));
1592 	myref.enclosing = encl_ref;
1593 	myref.stream = encl_ref->stream;
1594 
1595 	/* do all basic elements first */
1596 	NDR_MEMBER (_ulong, enabled, 0UL);
1597 	NDR_MEMBER (_ulong, count, 8UL);
1598 
1599 	/* do all constructed elements w/o pointers */
1600 
1601 	/* do members with pointers in order */
1602 	NDR_MEMBER_PTR_WITH_SIZE_IS (_ulong, settings, 4UL,
1603 		val->count);
1604 
1605 	return 1;
1606 }
1607 
1608 
1609 
1610 int ndr__mslsa_PrimaryDomainInfo (struct ndr_reference *encl_ref);
1611 struct ndr_typeinfo ndt__mslsa_PrimaryDomainInfo = {
1612 	1,		/* NDR version */
1613 	3,		/* alignment */
1614 	NDR_F_STRUCT,	/* flags */
1615 	ndr__mslsa_PrimaryDomainInfo,	/* ndr_func */
1616 	12,		/* pdu_size_fixed_part */
1617 	0,		/* pdu_size_variable_part */
1618 	12,		/* c_size_fixed_part */
1619 	0,		/* c_size_variable_part */
1620 };
1621 
1622 
1623 /*
1624  *  */
1625 int
1626 ndr__mslsa_PrimaryDomainInfo (struct ndr_reference *encl_ref)
1627 {
1628 	struct mslsa_PrimaryDomainInfo *val = (struct mslsa_PrimaryDomainInfo *) encl_ref->datum;
1629 	struct ndr_reference myref;
1630 
1631 	(void) bzero(&myref, sizeof (myref));
1632 	myref.enclosing = encl_ref;
1633 	myref.stream = encl_ref->stream;
1634 
1635 	/* do all basic elements first */
1636 
1637 	/* do all constructed elements w/o pointers */
1638 
1639 	/* do members with pointers in order */
1640 	NDR_MEMBER (_mslsa_string_desc, name, 0UL);
1641 	NDR_MEMBER_PTR (_mslsa_sid, sid, 8UL);
1642 
1643 	return 1;
1644 }
1645 
1646 
1647 
1648 int ndr__mslsa_AccountDomainInfo (struct ndr_reference *encl_ref);
1649 struct ndr_typeinfo ndt__mslsa_AccountDomainInfo = {
1650 	1,		/* NDR version */
1651 	3,		/* alignment */
1652 	NDR_F_STRUCT,	/* flags */
1653 	ndr__mslsa_AccountDomainInfo,	/* ndr_func */
1654 	12,		/* pdu_size_fixed_part */
1655 	0,		/* pdu_size_variable_part */
1656 	12,		/* c_size_fixed_part */
1657 	0,		/* c_size_variable_part */
1658 };
1659 
1660 
1661 /*
1662  *  */
1663 int
1664 ndr__mslsa_AccountDomainInfo (struct ndr_reference *encl_ref)
1665 {
1666 	struct mslsa_AccountDomainInfo *val = (struct mslsa_AccountDomainInfo *) encl_ref->datum;
1667 	struct ndr_reference myref;
1668 
1669 	(void) bzero(&myref, sizeof (myref));
1670 	myref.enclosing = encl_ref;
1671 	myref.stream = encl_ref->stream;
1672 
1673 	/* do all basic elements first */
1674 
1675 	/* do all constructed elements w/o pointers */
1676 
1677 	/* do members with pointers in order */
1678 	NDR_MEMBER (_mslsa_string_desc, name, 0UL);
1679 	NDR_MEMBER_PTR (_mslsa_sid, sid, 8UL);
1680 
1681 	return 1;
1682 }
1683 
1684 
1685 
1686 int ndr__mslsa_ServerRoleInfo (struct ndr_reference *encl_ref);
1687 struct ndr_typeinfo ndt__mslsa_ServerRoleInfo = {
1688 	1,		/* NDR version */
1689 	3,		/* alignment */
1690 	NDR_F_STRUCT,	/* flags */
1691 	ndr__mslsa_ServerRoleInfo,	/* ndr_func */
1692 	8,		/* pdu_size_fixed_part */
1693 	0,		/* pdu_size_variable_part */
1694 	8,		/* c_size_fixed_part */
1695 	0,		/* c_size_variable_part */
1696 };
1697 
1698 
1699 /*
1700  *  */
1701 int
1702 ndr__mslsa_ServerRoleInfo (struct ndr_reference *encl_ref)
1703 {
1704 	struct mslsa_ServerRoleInfo *val = (struct mslsa_ServerRoleInfo *) encl_ref->datum;
1705 	struct ndr_reference myref;
1706 
1707 	(void) bzero(&myref, sizeof (myref));
1708 	myref.enclosing = encl_ref;
1709 	myref.stream = encl_ref->stream;
1710 
1711 	/* do all basic elements first */
1712 	NDR_MEMBER (_ulong, role, 0UL);
1713 	NDR_MEMBER (_ulong, pad, 4UL);
1714 
1715 	/* do all constructed elements w/o pointers */
1716 
1717 	/* do members with pointers in order */
1718 
1719 	return 1;
1720 }
1721 
1722 
1723 
1724 int ndr__mslsa_DnsDomainInfo (struct ndr_reference *encl_ref);
1725 struct ndr_typeinfo ndt__mslsa_DnsDomainInfo = {
1726 	1,		/* NDR version */
1727 	3,		/* alignment */
1728 	NDR_F_STRUCT,	/* flags */
1729 	ndr__mslsa_DnsDomainInfo,	/* ndr_func */
1730 	44,		/* pdu_size_fixed_part */
1731 	0,		/* pdu_size_variable_part */
1732 	44,		/* c_size_fixed_part */
1733 	0,		/* c_size_variable_part */
1734 };
1735 
1736 
1737 /*
1738  *  */
1739 int
1740 ndr__mslsa_DnsDomainInfo (struct ndr_reference *encl_ref)
1741 {
1742 	struct mslsa_DnsDomainInfo *val = (struct mslsa_DnsDomainInfo *) encl_ref->datum;
1743 	struct ndr_reference myref;
1744 
1745 	(void) bzero(&myref, sizeof (myref));
1746 	myref.enclosing = encl_ref;
1747 	myref.stream = encl_ref->stream;
1748 
1749 	/* do all basic elements first */
1750 
1751 	/* do all constructed elements w/o pointers */
1752 	NDR_MEMBER (_mslsa_guid, guid, 24UL);
1753 
1754 	/* do members with pointers in order */
1755 	NDR_MEMBER (_mslsa_string_desc, nb_domain, 0UL);
1756 	NDR_MEMBER (_mslsa_string_desc, dns_domain, 8UL);
1757 	NDR_MEMBER (_mslsa_string_desc, forest, 16UL);
1758 	NDR_MEMBER_PTR (_mslsa_sid, sid, 40UL);
1759 
1760 	return 1;
1761 }
1762 
1763 
1764 
1765 int ndr__mslsa_PolicyInfoResUnion (struct ndr_reference *encl_ref);
1766 struct ndr_typeinfo ndt__mslsa_PolicyInfoResUnion = {
1767 	1,		/* NDR version */
1768 	3,		/* alignment */
1769 	NDR_F_UNION,	/* flags */
1770 	ndr__mslsa_PolicyInfoResUnion,	/* ndr_func */
1771 	44,		/* pdu_size_fixed_part */
1772 	0,		/* pdu_size_variable_part */
1773 	44,		/* c_size_fixed_part */
1774 	0,		/* c_size_variable_part */
1775 };
1776 
1777 
1778 /*
1779  *  */
1780 int
1781 ndr__mslsa_PolicyInfoResUnion (struct ndr_reference *encl_ref)
1782 {
1783 	union mslsa_PolicyInfoResUnion *val = (union mslsa_PolicyInfoResUnion *) encl_ref->datum;
1784 	struct ndr_reference myref;
1785 
1786 	(void) bzero(&myref, sizeof (myref));
1787 	myref.enclosing = encl_ref;
1788 	myref.stream = encl_ref->stream;
1789 
1790     switch (encl_ref->switch_is) {
1791     case 2:
1792 	NDR_MEMBER (_mslsa_AuditEventsInfo, audit_events, 0UL);
1793 	break;
1794 
1795     case 3:
1796 	NDR_MEMBER (_mslsa_PrimaryDomainInfo, pd_info, 0UL);
1797 	break;
1798 
1799     case 5:
1800 	NDR_MEMBER (_mslsa_AccountDomainInfo, ad_info, 0UL);
1801 	break;
1802 
1803     case 6:
1804 	NDR_MEMBER (_mslsa_ServerRoleInfo, server_role, 0UL);
1805 	break;
1806 
1807     case 12:
1808 	NDR_MEMBER (_mslsa_DnsDomainInfo, dns_info, 0UL);
1809 	break;
1810 
1811     default:
1812 	NDR_MEMBER_PTR (_char, nullptr, 0UL);
1813 	break;
1814 
1815     }
1816 
1817 
1818 	return 1;
1819 }
1820 
1821 
1822 
1823 int ndr__mslsa_PolicyInfoRes (struct ndr_reference *encl_ref);
1824 struct ndr_typeinfo ndt__mslsa_PolicyInfoRes = {
1825 	1,		/* NDR version */
1826 	3,		/* alignment */
1827 	NDR_F_STRUCT,	/* flags */
1828 	ndr__mslsa_PolicyInfoRes,	/* ndr_func */
1829 	52,		/* pdu_size_fixed_part */
1830 	0,		/* pdu_size_variable_part */
1831 	52,		/* c_size_fixed_part */
1832 	0,		/* c_size_variable_part */
1833 };
1834 
1835 
1836 /*
1837  *  */
1838 int
1839 ndr__mslsa_PolicyInfoRes (struct ndr_reference *encl_ref)
1840 {
1841 	struct mslsa_PolicyInfoRes *val = (struct mslsa_PolicyInfoRes *) encl_ref->datum;
1842 	struct ndr_reference myref;
1843 
1844 	(void) bzero(&myref, sizeof (myref));
1845 	myref.enclosing = encl_ref;
1846 	myref.stream = encl_ref->stream;
1847 
1848 	/* do all basic elements first */
1849 	NDR_MEMBER (_ulong, address, 0UL);
1850 	NDR_MEMBER (_ushort, switch_value, 4UL);
1851 
1852 	/* do all constructed elements w/o pointers */
1853 
1854 	/* do members with pointers in order */
1855 	NDR_MEMBER_WITH_SWITCH_IS (_mslsa_PolicyInfoResUnion, ru, 8UL,
1856 		val->switch_value);
1857 
1858 	return 1;
1859 }
1860 
1861 
1862 
1863 int ndr__mslsa_QueryInfoPolicy (struct ndr_reference *encl_ref);
1864 struct ndr_typeinfo ndt__mslsa_QueryInfoPolicy = {
1865 	1,		/* NDR version */
1866 	3,		/* alignment */
1867 	NDR_F_OPERATION,	/* flags */
1868 	ndr__mslsa_QueryInfoPolicy,	/* ndr_func */
1869 	80,		/* pdu_size_fixed_part */
1870 	0,		/* pdu_size_variable_part */
1871 	80,		/* c_size_fixed_part */
1872 	0,		/* c_size_variable_part */
1873 };
1874 
1875 
1876 extern void fixup_mslsa_QueryInfoPolicy(struct mslsa_QueryInfoPolicy *val);
1877 
1878 /*
1879  * [operation(7)]
1880  */
1881 int
1882 ndr__mslsa_QueryInfoPolicy (struct ndr_reference *encl_ref)
1883 {
1884 	struct mslsa_QueryInfoPolicy *val = (struct mslsa_QueryInfoPolicy *) encl_ref->datum;
1885 	struct ndr_reference myref;
1886 
1887 	(void) bzero(&myref, sizeof (myref));
1888 	myref.enclosing = encl_ref;
1889 	myref.stream = encl_ref->stream;
1890 
1891 	/* do all members in order */
1892     if (NDR_DIR_IS_IN) {
1893 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
1894     }
1895     if (NDR_DIR_IS_IN) {
1896 	NDR_TOPMOST_MEMBER (_ushort, info_class);
1897     }
1898     if (NDR_DIR_IS_OUT) {
1899 	NDR_TOPMOST_MEMBER (_ulong, address);
1900     }
1901     if (NDR_DIR_IS_OUT) {
1902 	NDR_TOPMOST_MEMBER (_ushort, switch_value);
1903     }
1904     if (NDR_DIR_IS_OUT) {
1905 	/*
1906 	 * Cannot use the canned offsets to unmarshall multiple
1907 	 * entry discriminated unions.  The service must provide
1908 	 * this function to patch the offsets at runtime.
1909 	 */
1910 	fixup_mslsa_QueryInfoPolicy(val);
1911 	NDR_TOPMOST_MEMBER_WITH_SWITCH_IS (_mslsa_PolicyInfoResUnion, ru,
1912 		val->switch_value);
1913     }
1914     if (NDR_DIR_IS_OUT) {
1915 	NDR_TOPMOST_MEMBER (_ulong, status);
1916     }
1917 
1918 	return 1;
1919 }
1920 
1921 
1922 
1923 int ndr__mslsa_OpenAccount (struct ndr_reference *encl_ref);
1924 struct ndr_typeinfo ndt__mslsa_OpenAccount = {
1925 	1,		/* NDR version */
1926 	3,		/* alignment */
1927 	NDR_F_OPERATION,	/* flags */
1928 	ndr__mslsa_OpenAccount,	/* ndr_func */
1929 	52,		/* pdu_size_fixed_part */
1930 	0,		/* pdu_size_variable_part */
1931 	52,		/* c_size_fixed_part */
1932 	0,		/* c_size_variable_part */
1933 };
1934 
1935 
1936 /*
1937  * [operation(17)]
1938  */
1939 int
1940 ndr__mslsa_OpenAccount (struct ndr_reference *encl_ref)
1941 {
1942 	struct mslsa_OpenAccount *val = (struct mslsa_OpenAccount *) encl_ref->datum;
1943 	struct ndr_reference myref;
1944 
1945 	(void) bzero(&myref, sizeof (myref));
1946 	myref.enclosing = encl_ref;
1947 	myref.stream = encl_ref->stream;
1948 
1949 	/* do all members in order */
1950     if (NDR_DIR_IS_IN) {
1951 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
1952     }
1953     if (NDR_DIR_IS_IN) {
1954 	NDR_TOPMOST_MEMBER_REF (_mslsa_sid, sid);
1955     }
1956     if (NDR_DIR_IS_IN) {
1957 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
1958     }
1959     if (NDR_DIR_IS_OUT) {
1960 	NDR_TOPMOST_MEMBER (_mslsa_handle, account_handle);
1961     }
1962     if (NDR_DIR_IS_OUT) {
1963 	NDR_TOPMOST_MEMBER (_ulong, status);
1964     }
1965 
1966 	return 1;
1967 }
1968 
1969 
1970 
1971 int ndr__mslsa_LuidAndAttributes (struct ndr_reference *encl_ref);
1972 struct ndr_typeinfo ndt__mslsa_LuidAndAttributes = {
1973 	1,		/* NDR version */
1974 	3,		/* alignment */
1975 	NDR_F_STRUCT,	/* flags */
1976 	ndr__mslsa_LuidAndAttributes,	/* ndr_func */
1977 	12,		/* pdu_size_fixed_part */
1978 	0,		/* pdu_size_variable_part */
1979 	12,		/* c_size_fixed_part */
1980 	0,		/* c_size_variable_part */
1981 };
1982 
1983 
1984 /*
1985  *  */
1986 int
1987 ndr__mslsa_LuidAndAttributes (struct ndr_reference *encl_ref)
1988 {
1989 	struct mslsa_LuidAndAttributes *val = (struct mslsa_LuidAndAttributes *) encl_ref->datum;
1990 	struct ndr_reference myref;
1991 
1992 	(void) bzero(&myref, sizeof (myref));
1993 	myref.enclosing = encl_ref;
1994 	myref.stream = encl_ref->stream;
1995 
1996 	/* do all basic elements first */
1997 	NDR_MEMBER (_ulong, attributes, 8UL);
1998 
1999 	/* do all constructed elements w/o pointers */
2000 	NDR_MEMBER (_mslsa_luid, luid, 0UL);
2001 
2002 	/* do members with pointers in order */
2003 
2004 	return 1;
2005 }
2006 
2007 
2008 
2009 int ndr__mslsa_PrivilegeSet (struct ndr_reference *encl_ref);
2010 struct ndr_typeinfo ndt__mslsa_PrivilegeSet = {
2011 	1,		/* NDR version */
2012 	3,		/* alignment */
2013 	NDR_F_CONFORMANT|NDR_F_STRUCT,	/* flags */
2014 	ndr__mslsa_PrivilegeSet,	/* ndr_func */
2015 	8,		/* pdu_size_fixed_part */
2016 	12,		/* pdu_size_variable_part */
2017 	8,		/* c_size_fixed_part */
2018 	12,		/* c_size_variable_part */
2019 };
2020 
2021 
2022 /*
2023  *  */
2024 int
2025 ndr__mslsa_PrivilegeSet (struct ndr_reference *encl_ref)
2026 {
2027 	struct mslsa_PrivilegeSet *val = (struct mslsa_PrivilegeSet *) encl_ref->datum;
2028 	struct ndr_reference myref;
2029 
2030 	(void) bzero(&myref, sizeof (myref));
2031 	myref.enclosing = encl_ref;
2032 	myref.stream = encl_ref->stream;
2033 
2034 	/* do all basic elements first */
2035 	NDR_MEMBER (_ulong, privilege_count, 0UL);
2036 	NDR_MEMBER (_ulong, control, 4UL);
2037 
2038 	/* do all constructed elements w/o pointers */
2039 	NDR_MEMBER_ARR_WITH_SIZE_IS (_mslsa_LuidAndAttributes, privilege, 8UL,
2040 		val->privilege_count);
2041 
2042 	/* do members with pointers in order */
2043 
2044 	return 1;
2045 }
2046 
2047 
2048 
2049 int ndr__mslsa_EnumPrivsAccount (struct ndr_reference *encl_ref);
2050 struct ndr_typeinfo ndt__mslsa_EnumPrivsAccount = {
2051 	1,		/* NDR version */
2052 	3,		/* alignment */
2053 	NDR_F_OPERATION,	/* flags */
2054 	ndr__mslsa_EnumPrivsAccount,	/* ndr_func */
2055 	28,		/* pdu_size_fixed_part */
2056 	0,		/* pdu_size_variable_part */
2057 	28,		/* c_size_fixed_part */
2058 	0,		/* c_size_variable_part */
2059 };
2060 
2061 
2062 /*
2063  * [operation(18)]
2064  */
2065 int
2066 ndr__mslsa_EnumPrivsAccount (struct ndr_reference *encl_ref)
2067 {
2068 	struct mslsa_EnumPrivsAccount *val = (struct mslsa_EnumPrivsAccount *) encl_ref->datum;
2069 	struct ndr_reference myref;
2070 
2071 	(void) bzero(&myref, sizeof (myref));
2072 	myref.enclosing = encl_ref;
2073 	myref.stream = encl_ref->stream;
2074 
2075 	/* do all members in order */
2076     if (NDR_DIR_IS_IN) {
2077 	NDR_TOPMOST_MEMBER (_mslsa_handle, account_handle);
2078     }
2079     if (NDR_DIR_IS_OUT) {
2080 	NDR_TOPMOST_MEMBER_PTR (_mslsa_PrivilegeSet, privileges);
2081     }
2082     if (NDR_DIR_IS_OUT) {
2083 	NDR_TOPMOST_MEMBER (_ulong, status);
2084     }
2085 
2086 	return 1;
2087 }
2088 
2089 
2090 
2091 int ndr__mslsa_OpenSecret (struct ndr_reference *encl_ref);
2092 struct ndr_typeinfo ndt__mslsa_OpenSecret = {
2093 	1,		/* NDR version */
2094 	3,		/* alignment */
2095 	NDR_F_OPERATION,	/* flags */
2096 	ndr__mslsa_OpenSecret,	/* ndr_func */
2097 	56,		/* pdu_size_fixed_part */
2098 	0,		/* pdu_size_variable_part */
2099 	56,		/* c_size_fixed_part */
2100 	0,		/* c_size_variable_part */
2101 };
2102 
2103 
2104 /*
2105  * [operation(28)]
2106  */
2107 int
2108 ndr__mslsa_OpenSecret (struct ndr_reference *encl_ref)
2109 {
2110 	struct mslsa_OpenSecret *val = (struct mslsa_OpenSecret *) encl_ref->datum;
2111 	struct ndr_reference myref;
2112 
2113 	(void) bzero(&myref, sizeof (myref));
2114 	myref.enclosing = encl_ref;
2115 	myref.stream = encl_ref->stream;
2116 
2117 	/* do all members in order */
2118     if (NDR_DIR_IS_IN) {
2119 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
2120     }
2121     if (NDR_DIR_IS_IN) {
2122 	NDR_TOPMOST_MEMBER (_mslsa_string_desc, name);
2123     }
2124     if (NDR_DIR_IS_IN) {
2125 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
2126     }
2127     if (NDR_DIR_IS_OUT) {
2128 	NDR_TOPMOST_MEMBER (_mslsa_handle, secret_handle);
2129     }
2130     if (NDR_DIR_IS_OUT) {
2131 	NDR_TOPMOST_MEMBER (_ulong, status);
2132     }
2133 
2134 	return 1;
2135 }
2136 
2137 
2138 
2139 int ndr__mslsa_LookupPrivValue (struct ndr_reference *encl_ref);
2140 struct ndr_typeinfo ndt__mslsa_LookupPrivValue = {
2141 	1,		/* NDR version */
2142 	3,		/* alignment */
2143 	NDR_F_OPERATION,	/* flags */
2144 	ndr__mslsa_LookupPrivValue,	/* ndr_func */
2145 	40,		/* pdu_size_fixed_part */
2146 	0,		/* pdu_size_variable_part */
2147 	40,		/* c_size_fixed_part */
2148 	0,		/* c_size_variable_part */
2149 };
2150 
2151 
2152 /*
2153  * [operation(31)]
2154  */
2155 int
2156 ndr__mslsa_LookupPrivValue (struct ndr_reference *encl_ref)
2157 {
2158 	struct mslsa_LookupPrivValue *val = (struct mslsa_LookupPrivValue *) encl_ref->datum;
2159 	struct ndr_reference myref;
2160 
2161 	(void) bzero(&myref, sizeof (myref));
2162 	myref.enclosing = encl_ref;
2163 	myref.stream = encl_ref->stream;
2164 
2165 	/* do all members in order */
2166     if (NDR_DIR_IS_IN) {
2167 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
2168     }
2169     if (NDR_DIR_IS_IN) {
2170 	NDR_TOPMOST_MEMBER (_mslsa_string_desc, name);
2171     }
2172     if (NDR_DIR_IS_OUT) {
2173 	NDR_TOPMOST_MEMBER (_mslsa_luid, luid);
2174     }
2175     if (NDR_DIR_IS_OUT) {
2176 	NDR_TOPMOST_MEMBER (_ulong, status);
2177     }
2178 
2179 	return 1;
2180 }
2181 
2182 
2183 
2184 int ndr__mslsa_LookupPrivName (struct ndr_reference *encl_ref);
2185 struct ndr_typeinfo ndt__mslsa_LookupPrivName = {
2186 	1,		/* NDR version */
2187 	3,		/* alignment */
2188 	NDR_F_OPERATION,	/* flags */
2189 	ndr__mslsa_LookupPrivName,	/* ndr_func */
2190 	36,		/* pdu_size_fixed_part */
2191 	0,		/* pdu_size_variable_part */
2192 	36,		/* c_size_fixed_part */
2193 	0,		/* c_size_variable_part */
2194 };
2195 
2196 
2197 /*
2198  * [operation(32)]
2199  */
2200 int
2201 ndr__mslsa_LookupPrivName (struct ndr_reference *encl_ref)
2202 {
2203 	struct mslsa_LookupPrivName *val = (struct mslsa_LookupPrivName *) encl_ref->datum;
2204 	struct ndr_reference myref;
2205 
2206 	(void) bzero(&myref, sizeof (myref));
2207 	myref.enclosing = encl_ref;
2208 	myref.stream = encl_ref->stream;
2209 
2210 	/* do all members in order */
2211     if (NDR_DIR_IS_IN) {
2212 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
2213     }
2214     if (NDR_DIR_IS_IN) {
2215 	NDR_TOPMOST_MEMBER (_mslsa_luid, luid);
2216     }
2217     if (NDR_DIR_IS_OUT) {
2218 	NDR_TOPMOST_MEMBER_PTR (_mslsa_string_desc, name);
2219     }
2220     if (NDR_DIR_IS_OUT) {
2221 	NDR_TOPMOST_MEMBER (_ulong, status);
2222     }
2223 
2224 	return 1;
2225 }
2226 
2227 
2228 
2229 int ndr__mslsa_LookupPrivDisplayName (struct ndr_reference *encl_ref);
2230 struct ndr_typeinfo ndt__mslsa_LookupPrivDisplayName = {
2231 	1,		/* NDR version */
2232 	3,		/* alignment */
2233 	NDR_F_OPERATION,	/* flags */
2234 	ndr__mslsa_LookupPrivDisplayName,	/* ndr_func */
2235 	44,		/* pdu_size_fixed_part */
2236 	0,		/* pdu_size_variable_part */
2237 	44,		/* c_size_fixed_part */
2238 	0,		/* c_size_variable_part */
2239 };
2240 
2241 
2242 /*
2243  * [operation(33)]
2244  */
2245 int
2246 ndr__mslsa_LookupPrivDisplayName (struct ndr_reference *encl_ref)
2247 {
2248 	struct mslsa_LookupPrivDisplayName *val = (struct mslsa_LookupPrivDisplayName *) encl_ref->datum;
2249 	struct ndr_reference myref;
2250 
2251 	(void) bzero(&myref, sizeof (myref));
2252 	myref.enclosing = encl_ref;
2253 	myref.stream = encl_ref->stream;
2254 
2255 	/* do all members in order */
2256     if (NDR_DIR_IS_IN) {
2257 	NDR_TOPMOST_MEMBER (_mslsa_handle, handle);
2258     }
2259     if (NDR_DIR_IS_IN) {
2260 	NDR_TOPMOST_MEMBER (_mslsa_string_desc, name);
2261     }
2262     if (NDR_DIR_IS_IN) {
2263 	NDR_TOPMOST_MEMBER (_ushort, client_language);
2264     }
2265     if (NDR_DIR_IS_IN) {
2266 	NDR_TOPMOST_MEMBER (_ushort, default_language);
2267     }
2268     if (NDR_DIR_IS_OUT) {
2269 	NDR_TOPMOST_MEMBER_PTR (_mslsa_string_desc, display_name);
2270     }
2271     if (NDR_DIR_IS_OUT) {
2272 	NDR_TOPMOST_MEMBER (_ushort, language_ret);
2273     }
2274     if (NDR_DIR_IS_OUT) {
2275 	NDR_TOPMOST_MEMBER (_ulong, status);
2276     }
2277 
2278 	return 1;
2279 }
2280 
2281 
2282 
2283 int ndr__mslsa_DomainName (struct ndr_reference *encl_ref);
2284 struct ndr_typeinfo ndt__mslsa_DomainName = {
2285 	1,		/* NDR version */
2286 	3,		/* alignment */
2287 	NDR_F_STRUCT,	/* flags */
2288 	ndr__mslsa_DomainName,	/* ndr_func */
2289 	4,		/* pdu_size_fixed_part */
2290 	0,		/* pdu_size_variable_part */
2291 	4,		/* c_size_fixed_part */
2292 	0,		/* c_size_variable_part */
2293 };
2294 
2295 
2296 /*
2297  *  */
2298 int
2299 ndr__mslsa_DomainName (struct ndr_reference *encl_ref)
2300 {
2301 	struct mslsa_DomainName *val = (struct mslsa_DomainName *) encl_ref->datum;
2302 	struct ndr_reference myref;
2303 
2304 	(void) bzero(&myref, sizeof (myref));
2305 	myref.enclosing = encl_ref;
2306 	myref.stream = encl_ref->stream;
2307 
2308 	/* do all basic elements first */
2309 
2310 	/* do all constructed elements w/o pointers */
2311 
2312 	/* do members with pointers in order */
2313 	NDR_MEMBER_PTR (_mslsa_string_desc, name, 0UL);
2314 
2315 	return 1;
2316 }
2317 
2318 
2319 
2320 int ndr__mslsa_GetConnectedUser (struct ndr_reference *encl_ref);
2321 struct ndr_typeinfo ndt__mslsa_GetConnectedUser = {
2322 	1,		/* NDR version */
2323 	3,		/* alignment */
2324 	NDR_F_OPERATION,	/* flags */
2325 	ndr__mslsa_GetConnectedUser,	/* ndr_func */
2326 	24,		/* pdu_size_fixed_part */
2327 	0,		/* pdu_size_variable_part */
2328 	24,		/* c_size_fixed_part */
2329 	0,		/* c_size_variable_part */
2330 };
2331 
2332 
2333 /*
2334  * [operation(45)]
2335  */
2336 int
2337 ndr__mslsa_GetConnectedUser (struct ndr_reference *encl_ref)
2338 {
2339 	struct mslsa_GetConnectedUser *val = (struct mslsa_GetConnectedUser *) encl_ref->datum;
2340 	struct ndr_reference myref;
2341 
2342 	(void) bzero(&myref, sizeof (myref));
2343 	myref.enclosing = encl_ref;
2344 	myref.stream = encl_ref->stream;
2345 
2346 	/* do all members in order */
2347     if (NDR_DIR_IS_IN) {
2348 	NDR_TOPMOST_MEMBER_PTR (s_wchar, hostname);
2349     }
2350     if (NDR_DIR_IS_IN) {
2351 	NDR_TOPMOST_MEMBER_PTR (_uchar, owner_in);
2352     }
2353     if (NDR_DIR_IS_IN) {
2354 	NDR_TOPMOST_MEMBER_PTR (_uchar, domain_in);
2355     }
2356     if (NDR_DIR_IS_OUT) {
2357 	NDR_TOPMOST_MEMBER_PTR (_mslsa_string_desc, owner);
2358     }
2359     if (NDR_DIR_IS_OUT) {
2360 	NDR_TOPMOST_MEMBER_PTR (_mslsa_DomainName, domain);
2361     }
2362     if (NDR_DIR_IS_OUT) {
2363 	NDR_TOPMOST_MEMBER (_ulong, status);
2364     }
2365 
2366 	return 1;
2367 }
2368 
2369 
2370 
2371 int ndr__lsar_name_entry2 (struct ndr_reference *encl_ref);
2372 struct ndr_typeinfo ndt__lsar_name_entry2 = {
2373 	1,		/* NDR version */
2374 	3,		/* alignment */
2375 	NDR_F_STRUCT,	/* flags */
2376 	ndr__lsar_name_entry2,	/* ndr_func */
2377 	20,		/* pdu_size_fixed_part */
2378 	0,		/* pdu_size_variable_part */
2379 	20,		/* c_size_fixed_part */
2380 	0,		/* c_size_variable_part */
2381 };
2382 
2383 
2384 /*
2385  *  */
2386 int
2387 ndr__lsar_name_entry2 (struct ndr_reference *encl_ref)
2388 {
2389 	struct lsar_name_entry2 *val = (struct lsar_name_entry2 *) encl_ref->datum;
2390 	struct ndr_reference myref;
2391 
2392 	(void) bzero(&myref, sizeof (myref));
2393 	myref.enclosing = encl_ref;
2394 	myref.stream = encl_ref->stream;
2395 
2396 	/* do all basic elements first */
2397 	NDR_MEMBER (_ushort, sid_name_use, 0UL);
2398 	NDR_MEMBER (_ushort, padding, 2UL);
2399 	NDR_MEMBER (_ulong, domain_ix, 12UL);
2400 	NDR_MEMBER (_ulong, flags, 16UL);
2401 
2402 	/* do all constructed elements w/o pointers */
2403 
2404 	/* do members with pointers in order */
2405 	NDR_MEMBER (_mslsa_string_desc, name, 4UL);
2406 
2407 	return 1;
2408 }
2409 
2410 
2411 
2412 int ndr__lsar_name_table2 (struct ndr_reference *encl_ref);
2413 struct ndr_typeinfo ndt__lsar_name_table2 = {
2414 	1,		/* NDR version */
2415 	3,		/* alignment */
2416 	NDR_F_STRUCT,	/* flags */
2417 	ndr__lsar_name_table2,	/* ndr_func */
2418 	8,		/* pdu_size_fixed_part */
2419 	0,		/* pdu_size_variable_part */
2420 	8,		/* c_size_fixed_part */
2421 	0,		/* c_size_variable_part */
2422 };
2423 
2424 
2425 /*
2426  *  */
2427 int
2428 ndr__lsar_name_table2 (struct ndr_reference *encl_ref)
2429 {
2430 	struct lsar_name_table2 *val = (struct lsar_name_table2 *) encl_ref->datum;
2431 	struct ndr_reference myref;
2432 
2433 	(void) bzero(&myref, sizeof (myref));
2434 	myref.enclosing = encl_ref;
2435 	myref.stream = encl_ref->stream;
2436 
2437 	/* do all basic elements first */
2438 	NDR_MEMBER (_ulong, n_entry, 0UL);
2439 
2440 	/* do all constructed elements w/o pointers */
2441 
2442 	/* do members with pointers in order */
2443 	NDR_MEMBER_PTR_WITH_SIZE_IS (_lsar_name_entry2, entries, 4UL,
2444 		val->n_entry);
2445 
2446 	return 1;
2447 }
2448 
2449 
2450 
2451 int ndr__lsar_lookup_sids2 (struct ndr_reference *encl_ref);
2452 struct ndr_typeinfo ndt__lsar_lookup_sids2 = {
2453 	1,		/* NDR version */
2454 	3,		/* alignment */
2455 	NDR_F_OPERATION,	/* flags */
2456 	ndr__lsar_lookup_sids2,	/* ndr_func */
2457 	60,		/* pdu_size_fixed_part */
2458 	0,		/* pdu_size_variable_part */
2459 	60,		/* c_size_fixed_part */
2460 	0,		/* c_size_variable_part */
2461 };
2462 
2463 
2464 /*
2465  * [operation(57)]
2466  */
2467 int
2468 ndr__lsar_lookup_sids2 (struct ndr_reference *encl_ref)
2469 {
2470 	struct lsar_lookup_sids2 *val = (struct lsar_lookup_sids2 *) encl_ref->datum;
2471 	struct ndr_reference myref;
2472 
2473 	(void) bzero(&myref, sizeof (myref));
2474 	myref.enclosing = encl_ref;
2475 	myref.stream = encl_ref->stream;
2476 
2477 	/* do all members in order */
2478     if (NDR_DIR_IS_IN) {
2479 	NDR_TOPMOST_MEMBER (_mslsa_handle, policy_handle);
2480     }
2481     if (NDR_DIR_IS_IN) {
2482 	NDR_TOPMOST_MEMBER (_mslsa_lup_sid_table, lup_sid_table);
2483     }
2484     if (NDR_DIR_IS_OUT) {
2485 	NDR_TOPMOST_MEMBER_PTR (_mslsa_domain_table, domain_table);
2486     }
2487 	NDR_TOPMOST_MEMBER (_lsar_name_table2, name_table);
2488     if (NDR_DIR_IS_IN) {
2489 	NDR_TOPMOST_MEMBER (_ushort, lookup_level);
2490     }
2491 	NDR_TOPMOST_MEMBER (_ulong, mapped_count);
2492     if (NDR_DIR_IS_IN) {
2493 	NDR_TOPMOST_MEMBER (_ulong, lookup_options);
2494     }
2495     if (NDR_DIR_IS_IN) {
2496 	NDR_TOPMOST_MEMBER (_ulong, client_revision);
2497     }
2498     if (NDR_DIR_IS_OUT) {
2499 	NDR_TOPMOST_MEMBER (_ulong, status);
2500     }
2501 
2502 	return 1;
2503 }
2504 
2505 
2506 
2507 int ndr__lsar_lookup_sids3 (struct ndr_reference *encl_ref);
2508 struct ndr_typeinfo ndt__lsar_lookup_sids3 = {
2509 	1,		/* NDR version */
2510 	3,		/* alignment */
2511 	NDR_F_OPERATION,	/* flags */
2512 	ndr__lsar_lookup_sids3,	/* ndr_func */
2513 	40,		/* pdu_size_fixed_part */
2514 	0,		/* pdu_size_variable_part */
2515 	40,		/* c_size_fixed_part */
2516 	0,		/* c_size_variable_part */
2517 };
2518 
2519 
2520 /*
2521  * [operation(76)]
2522  */
2523 int
2524 ndr__lsar_lookup_sids3 (struct ndr_reference *encl_ref)
2525 {
2526 	struct lsar_lookup_sids3 *val = (struct lsar_lookup_sids3 *) encl_ref->datum;
2527 	struct ndr_reference myref;
2528 
2529 	(void) bzero(&myref, sizeof (myref));
2530 	myref.enclosing = encl_ref;
2531 	myref.stream = encl_ref->stream;
2532 
2533 	/* do all members in order */
2534     if (NDR_DIR_IS_IN) {
2535 	NDR_TOPMOST_MEMBER (_mslsa_lup_sid_table, lup_sid_table);
2536     }
2537     if (NDR_DIR_IS_OUT) {
2538 	NDR_TOPMOST_MEMBER_PTR (_mslsa_domain_table, domain_table);
2539     }
2540 	NDR_TOPMOST_MEMBER (_lsar_name_table2, name_table);
2541     if (NDR_DIR_IS_IN) {
2542 	NDR_TOPMOST_MEMBER (_ushort, lookup_level);
2543     }
2544 	NDR_TOPMOST_MEMBER (_ulong, mapped_count);
2545     if (NDR_DIR_IS_IN) {
2546 	NDR_TOPMOST_MEMBER (_ulong, lookup_options);
2547     }
2548     if (NDR_DIR_IS_IN) {
2549 	NDR_TOPMOST_MEMBER (_ulong, client_revision);
2550     }
2551     if (NDR_DIR_IS_OUT) {
2552 	NDR_TOPMOST_MEMBER (_ulong, status);
2553     }
2554 
2555 	return 1;
2556 }
2557 
2558 
2559 
2560 int ndr__lsar_rid_entry2 (struct ndr_reference *encl_ref);
2561 struct ndr_typeinfo ndt__lsar_rid_entry2 = {
2562 	1,		/* NDR version */
2563 	3,		/* alignment */
2564 	NDR_F_STRUCT,	/* flags */
2565 	ndr__lsar_rid_entry2,	/* ndr_func */
2566 	16,		/* pdu_size_fixed_part */
2567 	0,		/* pdu_size_variable_part */
2568 	16,		/* c_size_fixed_part */
2569 	0,		/* c_size_variable_part */
2570 };
2571 
2572 
2573 /*
2574  *  */
2575 int
2576 ndr__lsar_rid_entry2 (struct ndr_reference *encl_ref)
2577 {
2578 	struct lsar_rid_entry2 *val = (struct lsar_rid_entry2 *) encl_ref->datum;
2579 	struct ndr_reference myref;
2580 
2581 	(void) bzero(&myref, sizeof (myref));
2582 	myref.enclosing = encl_ref;
2583 	myref.stream = encl_ref->stream;
2584 
2585 	/* do all basic elements first */
2586 	NDR_MEMBER (_ushort, sid_name_use, 0UL);
2587 	NDR_MEMBER (_ushort, pad, 2UL);
2588 	NDR_MEMBER (_ulong, rid, 4UL);
2589 	NDR_MEMBER (_ulong, domain_index, 8UL);
2590 	NDR_MEMBER (_ulong, flags, 12UL);
2591 
2592 	/* do all constructed elements w/o pointers */
2593 
2594 	/* do members with pointers in order */
2595 
2596 	return 1;
2597 }
2598 
2599 
2600 
2601 int ndr__lsar_rid_table2 (struct ndr_reference *encl_ref);
2602 struct ndr_typeinfo ndt__lsar_rid_table2 = {
2603 	1,		/* NDR version */
2604 	3,		/* alignment */
2605 	NDR_F_STRUCT,	/* flags */
2606 	ndr__lsar_rid_table2,	/* ndr_func */
2607 	8,		/* pdu_size_fixed_part */
2608 	0,		/* pdu_size_variable_part */
2609 	8,		/* c_size_fixed_part */
2610 	0,		/* c_size_variable_part */
2611 };
2612 
2613 
2614 /*
2615  *  */
2616 int
2617 ndr__lsar_rid_table2 (struct ndr_reference *encl_ref)
2618 {
2619 	struct lsar_rid_table2 *val = (struct lsar_rid_table2 *) encl_ref->datum;
2620 	struct ndr_reference myref;
2621 
2622 	(void) bzero(&myref, sizeof (myref));
2623 	myref.enclosing = encl_ref;
2624 	myref.stream = encl_ref->stream;
2625 
2626 	/* do all basic elements first */
2627 	NDR_MEMBER (_ulong, n_entry, 0UL);
2628 
2629 	/* do all constructed elements w/o pointers */
2630 
2631 	/* do members with pointers in order */
2632 	NDR_MEMBER_PTR_WITH_SIZE_IS (_lsar_rid_entry2, rids, 4UL,
2633 		val->n_entry);
2634 
2635 	return 1;
2636 }
2637 
2638 
2639 
2640 int ndr__lsar_LookupNames2 (struct ndr_reference *encl_ref);
2641 struct ndr_typeinfo ndt__lsar_LookupNames2 = {
2642 	1,		/* NDR version */
2643 	3,		/* alignment */
2644 	NDR_F_OPERATION,	/* flags */
2645 	ndr__lsar_LookupNames2,	/* ndr_func */
2646 	56,		/* pdu_size_fixed_part */
2647 	0,		/* pdu_size_variable_part */
2648 	56,		/* c_size_fixed_part */
2649 	0,		/* c_size_variable_part */
2650 };
2651 
2652 
2653 /*
2654  * [operation(58)]
2655  */
2656 int
2657 ndr__lsar_LookupNames2 (struct ndr_reference *encl_ref)
2658 {
2659 	struct lsar_LookupNames2 *val = (struct lsar_LookupNames2 *) encl_ref->datum;
2660 	struct ndr_reference myref;
2661 
2662 	(void) bzero(&myref, sizeof (myref));
2663 	myref.enclosing = encl_ref;
2664 	myref.stream = encl_ref->stream;
2665 
2666 	/* do all members in order */
2667     if (NDR_DIR_IS_IN) {
2668 	NDR_TOPMOST_MEMBER (_mslsa_handle, policy_handle);
2669     }
2670     if (NDR_DIR_IS_IN) {
2671 	NDR_TOPMOST_MEMBER_REF (_mslsa_lup_name_table, name_table);
2672     }
2673     if (NDR_DIR_IS_OUT) {
2674 	NDR_TOPMOST_MEMBER_PTR (_mslsa_domain_table, domain_table);
2675     }
2676 	NDR_TOPMOST_MEMBER (_lsar_rid_table2, translated_sids);
2677     if (NDR_DIR_IS_IN) {
2678 	NDR_TOPMOST_MEMBER (_ushort, lookup_level);
2679     }
2680 	NDR_TOPMOST_MEMBER (_ulong, mapped_count);
2681     if (NDR_DIR_IS_IN) {
2682 	NDR_TOPMOST_MEMBER (_ulong, lookup_options);
2683     }
2684     if (NDR_DIR_IS_IN) {
2685 	NDR_TOPMOST_MEMBER (_ulong, client_revision);
2686     }
2687     if (NDR_DIR_IS_OUT) {
2688 	NDR_TOPMOST_MEMBER (_ulong, status);
2689     }
2690 
2691 	return 1;
2692 }
2693 
2694 
2695 
2696 int ndr__lsar_translated_sid_ex2 (struct ndr_reference *encl_ref);
2697 struct ndr_typeinfo ndt__lsar_translated_sid_ex2 = {
2698 	1,		/* NDR version */
2699 	3,		/* alignment */
2700 	NDR_F_STRUCT,	/* flags */
2701 	ndr__lsar_translated_sid_ex2,	/* ndr_func */
2702 	16,		/* pdu_size_fixed_part */
2703 	0,		/* pdu_size_variable_part */
2704 	16,		/* c_size_fixed_part */
2705 	0,		/* c_size_variable_part */
2706 };
2707 
2708 
2709 /*
2710  *  */
2711 int
2712 ndr__lsar_translated_sid_ex2 (struct ndr_reference *encl_ref)
2713 {
2714 	struct lsar_translated_sid_ex2 *val = (struct lsar_translated_sid_ex2 *) encl_ref->datum;
2715 	struct ndr_reference myref;
2716 
2717 	(void) bzero(&myref, sizeof (myref));
2718 	myref.enclosing = encl_ref;
2719 	myref.stream = encl_ref->stream;
2720 
2721 	/* do all basic elements first */
2722 	NDR_MEMBER (_ushort, sid_name_use, 0UL);
2723 	NDR_MEMBER (_ushort, pad, 2UL);
2724 	NDR_MEMBER (_ulong, domain_index, 8UL);
2725 	NDR_MEMBER (_ulong, flags, 12UL);
2726 
2727 	/* do all constructed elements w/o pointers */
2728 
2729 	/* do members with pointers in order */
2730 	NDR_MEMBER_PTR (_mslsa_sid, sid, 4UL);
2731 
2732 	return 1;
2733 }
2734 
2735 
2736 
2737 int ndr__lsar_sid_ex2_table (struct ndr_reference *encl_ref);
2738 struct ndr_typeinfo ndt__lsar_sid_ex2_table = {
2739 	1,		/* NDR version */
2740 	3,		/* alignment */
2741 	NDR_F_STRUCT,	/* flags */
2742 	ndr__lsar_sid_ex2_table,	/* ndr_func */
2743 	8,		/* pdu_size_fixed_part */
2744 	0,		/* pdu_size_variable_part */
2745 	8,		/* c_size_fixed_part */
2746 	0,		/* c_size_variable_part */
2747 };
2748 
2749 
2750 /*
2751  *  */
2752 int
2753 ndr__lsar_sid_ex2_table (struct ndr_reference *encl_ref)
2754 {
2755 	struct lsar_sid_ex2_table *val = (struct lsar_sid_ex2_table *) encl_ref->datum;
2756 	struct ndr_reference myref;
2757 
2758 	(void) bzero(&myref, sizeof (myref));
2759 	myref.enclosing = encl_ref;
2760 	myref.stream = encl_ref->stream;
2761 
2762 	/* do all basic elements first */
2763 	NDR_MEMBER (_ulong, n_entry, 0UL);
2764 
2765 	/* do all constructed elements w/o pointers */
2766 
2767 	/* do members with pointers in order */
2768 	NDR_MEMBER_PTR_WITH_SIZE_IS (_lsar_translated_sid_ex2, sids, 4UL,
2769 		val->n_entry);
2770 
2771 	return 1;
2772 }
2773 
2774 
2775 
2776 int ndr__lsar_LookupNames3 (struct ndr_reference *encl_ref);
2777 struct ndr_typeinfo ndt__lsar_LookupNames3 = {
2778 	1,		/* NDR version */
2779 	3,		/* alignment */
2780 	NDR_F_OPERATION,	/* flags */
2781 	ndr__lsar_LookupNames3,	/* ndr_func */
2782 	56,		/* pdu_size_fixed_part */
2783 	0,		/* pdu_size_variable_part */
2784 	56,		/* c_size_fixed_part */
2785 	0,		/* c_size_variable_part */
2786 };
2787 
2788 
2789 /*
2790  * [operation(68)]
2791  */
2792 int
2793 ndr__lsar_LookupNames3 (struct ndr_reference *encl_ref)
2794 {
2795 	struct lsar_LookupNames3 *val = (struct lsar_LookupNames3 *) encl_ref->datum;
2796 	struct ndr_reference myref;
2797 
2798 	(void) bzero(&myref, sizeof (myref));
2799 	myref.enclosing = encl_ref;
2800 	myref.stream = encl_ref->stream;
2801 
2802 	/* do all members in order */
2803     if (NDR_DIR_IS_IN) {
2804 	NDR_TOPMOST_MEMBER (_mslsa_handle, policy_handle);
2805     }
2806     if (NDR_DIR_IS_IN) {
2807 	NDR_TOPMOST_MEMBER_REF (_mslsa_lup_name_table, name_table);
2808     }
2809     if (NDR_DIR_IS_OUT) {
2810 	NDR_TOPMOST_MEMBER_PTR (_mslsa_domain_table, domain_table);
2811     }
2812 	NDR_TOPMOST_MEMBER (_lsar_sid_ex2_table, translated_sids);
2813     if (NDR_DIR_IS_IN) {
2814 	NDR_TOPMOST_MEMBER (_ushort, lookup_level);
2815     }
2816 	NDR_TOPMOST_MEMBER (_ulong, mapped_count);
2817     if (NDR_DIR_IS_IN) {
2818 	NDR_TOPMOST_MEMBER (_ulong, lookup_options);
2819     }
2820     if (NDR_DIR_IS_IN) {
2821 	NDR_TOPMOST_MEMBER (_ulong, client_revision);
2822     }
2823     if (NDR_DIR_IS_OUT) {
2824 	NDR_TOPMOST_MEMBER (_ulong, status);
2825     }
2826 
2827 	return 1;
2828 }
2829 
2830 
2831 
2832 int ndr__lsar_LookupNames4 (struct ndr_reference *encl_ref);
2833 struct ndr_typeinfo ndt__lsar_LookupNames4 = {
2834 	1,		/* NDR version */
2835 	3,		/* alignment */
2836 	NDR_F_OPERATION,	/* flags */
2837 	ndr__lsar_LookupNames4,	/* ndr_func */
2838 	36,		/* pdu_size_fixed_part */
2839 	0,		/* pdu_size_variable_part */
2840 	36,		/* c_size_fixed_part */
2841 	0,		/* c_size_variable_part */
2842 };
2843 
2844 
2845 /*
2846  * [operation(77)]
2847  */
2848 int
2849 ndr__lsar_LookupNames4 (struct ndr_reference *encl_ref)
2850 {
2851 	struct lsar_LookupNames4 *val = (struct lsar_LookupNames4 *) encl_ref->datum;
2852 	struct ndr_reference myref;
2853 
2854 	(void) bzero(&myref, sizeof (myref));
2855 	myref.enclosing = encl_ref;
2856 	myref.stream = encl_ref->stream;
2857 
2858 	/* do all members in order */
2859     if (NDR_DIR_IS_IN) {
2860 	NDR_TOPMOST_MEMBER_REF (_mslsa_lup_name_table, name_table);
2861     }
2862     if (NDR_DIR_IS_OUT) {
2863 	NDR_TOPMOST_MEMBER_PTR (_mslsa_domain_table, domain_table);
2864     }
2865 	NDR_TOPMOST_MEMBER (_lsar_sid_ex2_table, translated_sids);
2866     if (NDR_DIR_IS_IN) {
2867 	NDR_TOPMOST_MEMBER (_ushort, lookup_level);
2868     }
2869 	NDR_TOPMOST_MEMBER (_ulong, mapped_count);
2870     if (NDR_DIR_IS_IN) {
2871 	NDR_TOPMOST_MEMBER (_ulong, lookup_options);
2872     }
2873     if (NDR_DIR_IS_IN) {
2874 	NDR_TOPMOST_MEMBER (_ulong, client_revision);
2875     }
2876     if (NDR_DIR_IS_OUT) {
2877 	NDR_TOPMOST_MEMBER (_ulong, status);
2878     }
2879 
2880 	return 1;
2881 }
2882 
2883 
2884 
2885 int ndr__lsarpc_interface (struct ndr_reference *encl_ref);
2886 struct ndr_typeinfo ndt__lsarpc_interface = {
2887 	1,		/* NDR version */
2888 	3,		/* alignment */
2889 	NDR_F_INTERFACE,	/* flags */
2890 	ndr__lsarpc_interface,	/* ndr_func */
2891 	80,		/* pdu_size_fixed_part */
2892 	0,		/* pdu_size_variable_part */
2893 	80,		/* c_size_fixed_part */
2894 	0,		/* c_size_variable_part */
2895 };
2896 
2897 
2898 /*
2899  * [interface(0)]
2900  */
2901 int
2902 ndr__lsarpc_interface (struct ndr_reference *encl_ref)
2903 {
2904 	union lsarpc_interface *val = (union lsarpc_interface *) encl_ref->datum;
2905 	struct ndr_reference myref;
2906 
2907 	(void) bzero(&myref, sizeof (myref));
2908 	myref.enclosing = encl_ref;
2909 	myref.stream = encl_ref->stream;
2910 
2911     switch (encl_ref->switch_is) {
2912     case 0:
2913 	NDR_PARAMS_MEMBER (_mslsa_CloseHandle, CloseHandle);
2914 	break;
2915 
2916     case 3:
2917 	NDR_PARAMS_MEMBER (_mslsa_QuerySecurityObject, QuerySecurityObj);
2918 	break;
2919 
2920     case 11:
2921 	NDR_PARAMS_MEMBER (_mslsa_EnumerateAccounts, EnumAccounts);
2922 	break;
2923 
2924     case 50:
2925 	NDR_PARAMS_MEMBER (_mslsa_EnumTrustedDomainEx, EnumTrustedDomainEx);
2926 	break;
2927 
2928     case 13:
2929 	NDR_PARAMS_MEMBER (_mslsa_EnumTrustedDomain, EnumTrustedDomain);
2930 	break;
2931 
2932     case 17:
2933 	NDR_PARAMS_MEMBER (_mslsa_OpenAccount, OpenAccount);
2934 	break;
2935 
2936     case 18:
2937 	NDR_PARAMS_MEMBER (_mslsa_EnumPrivsAccount, EnumPrivsAccount);
2938 	break;
2939 
2940     case 31:
2941 	NDR_PARAMS_MEMBER (_mslsa_LookupPrivValue, LookupPrivValue);
2942 	break;
2943 
2944     case 32:
2945 	NDR_PARAMS_MEMBER (_mslsa_LookupPrivName, LookupPrivName);
2946 	break;
2947 
2948     case 33:
2949 	NDR_PARAMS_MEMBER (_mslsa_LookupPrivDisplayName, LookupPrivDisplayName);
2950 	break;
2951 
2952     case 16:
2953 	NDR_PARAMS_MEMBER (_mslsa_CreateSecret, CreateSecret);
2954 	break;
2955 
2956     case 28:
2957 	NDR_PARAMS_MEMBER (_mslsa_OpenSecret, OpenSecret);
2958 	break;
2959 
2960     case 7:
2961 	NDR_PARAMS_MEMBER (_mslsa_QueryInfoPolicy, QueryInfoPolicy);
2962 	break;
2963 
2964     case 6:
2965 	NDR_PARAMS_MEMBER (_mslsa_OpenPolicy, OpenPolicy);
2966 	break;
2967 
2968     case 44:
2969 	NDR_PARAMS_MEMBER (_mslsa_OpenPolicy2, OpenPolicy2);
2970 	break;
2971 
2972     case 15:
2973 	NDR_PARAMS_MEMBER (_mslsa_LookupSids, LookupSids);
2974 	break;
2975 
2976     case 14:
2977 	NDR_PARAMS_MEMBER (_mslsa_LookupNames, LookupNames);
2978 	break;
2979 
2980     case 45:
2981 	NDR_PARAMS_MEMBER (_mslsa_GetConnectedUser, GetConnectedUser);
2982 	break;
2983 
2984     case 57:
2985 	NDR_PARAMS_MEMBER (_lsar_lookup_sids2, LookupSids2);
2986 	break;
2987 
2988     case 76:
2989 	NDR_PARAMS_MEMBER (_lsar_lookup_sids3, LookupSids3);
2990 	break;
2991 
2992     case 58:
2993 	NDR_PARAMS_MEMBER (_lsar_LookupNames2, LookupNames2);
2994 	break;
2995 
2996     case 68:
2997 	NDR_PARAMS_MEMBER (_lsar_LookupNames3, LookupNames3);
2998 	break;
2999 
3000     case 77:
3001 	NDR_PARAMS_MEMBER (_lsar_LookupNames4, LookupNames4);
3002 	break;
3003 
3004     default:
3005 	NDR_SET_ERROR(encl_ref, NDR_ERR_SWITCH_VALUE_INVALID);
3006 	return 0;
3007 	break;
3008     }
3009 
3010 
3011 	return 1;
3012 }
3013