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/winreg.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__winreg_handle (struct ndr_reference *encl_ref);
28 struct ndr_typeinfo ndt__winreg_handle = {
29 	1,		/* NDR version */
30 	3,		/* alignment */
31 	NDR_F_STRUCT,	/* flags */
32 	ndr__winreg_handle,	/* ndr_func */
33 	20,		/* pdu_size_fixed_part */
34 	0,		/* pdu_size_variable_part */
35 	20,		/* c_size_fixed_part */
36 	0,		/* c_size_variable_part */
37 };
38 
39 
40 /*
41  *  */
42 int
43 ndr__winreg_handle (struct ndr_reference *encl_ref)
44 {
45 	struct winreg_handle *val = (struct winreg_handle *) 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 (_ulong, data1, 0UL);
54 	NDR_MEMBER (_ulong, data2, 4UL);
55 
56 	/* do all constructed elements w/o pointers */
57 	NDR_MEMBER_ARR_WITH_DIMENSION (_ushort, data3, 8UL,
58 		2);
59 	NDR_MEMBER_ARR_WITH_DIMENSION (_uchar, data4, 12UL,
60 		8);
61 
62 	/* do members with pointers in order */
63 
64 	return 1;
65 }
66 
67 
68 
69 int ndr__winreg_string_desc (struct ndr_reference *encl_ref);
70 struct ndr_typeinfo ndt__winreg_string_desc = {
71 	1,		/* NDR version */
72 	3,		/* alignment */
73 	NDR_F_STRUCT,	/* flags */
74 	ndr__winreg_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__winreg_string_desc (struct ndr_reference *encl_ref)
86 {
87 	struct winreg_string_desc *val = (struct winreg_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__winreg_value (struct ndr_reference *encl_ref);
109 struct ndr_typeinfo ndt__winreg_value = {
110 	1,		/* NDR version */
111 	3,		/* alignment */
112 	NDR_F_CONFORMANT|NDR_F_STRUCT,	/* flags */
113 	ndr__winreg_value,	/* ndr_func */
114 	8,		/* pdu_size_fixed_part */
115 	1,		/* pdu_size_variable_part */
116 	8,		/* c_size_fixed_part */
117 	1,		/* c_size_variable_part */
118 };
119 
120 
121 /*
122  *  */
123 int
124 ndr__winreg_value (struct ndr_reference *encl_ref)
125 {
126 	struct winreg_value *val = (struct winreg_value *) 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, vc_first_is, 0UL);
135 	NDR_MEMBER (_ulong, vc_length_is, 4UL);
136 
137 	/* do all constructed elements w/o pointers */
138 	NDR_MEMBER_ARR_WITH_SIZE_IS (_uchar, value, 8UL,
139 		val->vc_length_is);
140 
141 	/* do members with pointers in order */
142 
143 	return 1;
144 }
145 
146 
147 
148 int ndr__winreg_vcs (struct ndr_reference *encl_ref);
149 struct ndr_typeinfo ndt__winreg_vcs = {
150 	1,		/* NDR version */
151 	3,		/* alignment */
152 	NDR_F_CONFORMANT|NDR_F_STRUCT,	/* flags */
153 	ndr__winreg_vcs,	/* ndr_func */
154 	8,		/* pdu_size_fixed_part */
155 	2,		/* pdu_size_variable_part */
156 	8,		/* c_size_fixed_part */
157 	2,		/* c_size_variable_part */
158 };
159 
160 
161 /*
162  *  */
163 int
164 ndr__winreg_vcs (struct ndr_reference *encl_ref)
165 {
166 	struct winreg_vcs *val = (struct winreg_vcs *) encl_ref->datum;
167 	struct ndr_reference myref;
168 
169 	(void) bzero(&myref, sizeof (myref));
170 	myref.enclosing = encl_ref;
171 	myref.stream = encl_ref->stream;
172 
173 	/* do all basic elements first */
174 	NDR_MEMBER (_ulong, vc_first_is, 0UL);
175 	NDR_MEMBER (_ulong, vc_length_is, 4UL);
176 
177 	/* do all constructed elements w/o pointers */
178 	NDR_MEMBER_ARR_WITH_SIZE_IS (_ushort, value, 8UL,
179 		val->vc_length_is);
180 
181 	/* do members with pointers in order */
182 
183 	return 1;
184 }
185 
186 
187 
188 int ndr__winreg_vcbuf (struct ndr_reference *encl_ref);
189 struct ndr_typeinfo ndt__winreg_vcbuf = {
190 	1,		/* NDR version */
191 	3,		/* alignment */
192 	NDR_F_STRUCT,	/* flags */
193 	ndr__winreg_vcbuf,	/* ndr_func */
194 	8,		/* pdu_size_fixed_part */
195 	0,		/* pdu_size_variable_part */
196 	8,		/* c_size_fixed_part */
197 	0,		/* c_size_variable_part */
198 };
199 
200 
201 /*
202  *  */
203 int
204 ndr__winreg_vcbuf (struct ndr_reference *encl_ref)
205 {
206 	struct winreg_vcbuf *val = (struct winreg_vcbuf *) 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 (_ushort, wclen, 0UL);
215 	NDR_MEMBER (_ushort, wcsize, 2UL);
216 
217 	/* do all constructed elements w/o pointers */
218 
219 	/* do members with pointers in order */
220 	NDR_MEMBER_PTR (_winreg_vcs, buf, 4UL);
221 
222 	return 1;
223 }
224 
225 
226 
227 int ndr__file_time (struct ndr_reference *encl_ref);
228 struct ndr_typeinfo ndt__file_time = {
229 	1,		/* NDR version */
230 	3,		/* alignment */
231 	NDR_F_STRUCT,	/* flags */
232 	ndr__file_time,	/* ndr_func */
233 	8,		/* pdu_size_fixed_part */
234 	0,		/* pdu_size_variable_part */
235 	8,		/* c_size_fixed_part */
236 	0,		/* c_size_variable_part */
237 };
238 
239 
240 /*
241  *  */
242 int
243 ndr__file_time (struct ndr_reference *encl_ref)
244 {
245 	struct file_time *val = (struct file_time *) encl_ref->datum;
246 	struct ndr_reference myref;
247 
248 	(void) bzero(&myref, sizeof (myref));
249 	myref.enclosing = encl_ref;
250 	myref.stream = encl_ref->stream;
251 
252 	/* do all basic elements first */
253 	NDR_MEMBER (_ulong, low, 0UL);
254 	NDR_MEMBER (_ulong, high, 4UL);
255 
256 	/* do all constructed elements w/o pointers */
257 
258 	/* do members with pointers in order */
259 
260 	return 1;
261 }
262 
263 
264 
265 int ndr__winreg_secdesc (struct ndr_reference *encl_ref);
266 struct ndr_typeinfo ndt__winreg_secdesc = {
267 	1,		/* NDR version */
268 	3,		/* alignment */
269 	NDR_F_STRUCT,	/* flags */
270 	ndr__winreg_secdesc,	/* ndr_func */
271 	12,		/* pdu_size_fixed_part */
272 	0,		/* pdu_size_variable_part */
273 	12,		/* c_size_fixed_part */
274 	0,		/* c_size_variable_part */
275 };
276 
277 
278 /*
279  *  */
280 int
281 ndr__winreg_secdesc (struct ndr_reference *encl_ref)
282 {
283 	struct winreg_secdesc *val = (struct winreg_secdesc *) encl_ref->datum;
284 	struct ndr_reference myref;
285 
286 	(void) bzero(&myref, sizeof (myref));
287 	myref.enclosing = encl_ref;
288 	myref.stream = encl_ref->stream;
289 
290 	/* do all basic elements first */
291 	NDR_MEMBER (_ulong, sd_len, 4UL);
292 	NDR_MEMBER (_ulong, sd_size, 8UL);
293 
294 	/* do all constructed elements w/o pointers */
295 
296 	/* do members with pointers in order */
297 	NDR_MEMBER_PTR (_winreg_value, sd_buf, 0UL);
298 
299 	return 1;
300 }
301 
302 
303 
304 int ndr__winreg_OpenHKCR (struct ndr_reference *encl_ref);
305 struct ndr_typeinfo ndt__winreg_OpenHKCR = {
306 	1,		/* NDR version */
307 	3,		/* alignment */
308 	NDR_F_OPERATION,	/* flags */
309 	ndr__winreg_OpenHKCR,	/* ndr_func */
310 	32,		/* pdu_size_fixed_part */
311 	0,		/* pdu_size_variable_part */
312 	32,		/* c_size_fixed_part */
313 	0,		/* c_size_variable_part */
314 };
315 
316 
317 /*
318  * [operation(0)]
319  */
320 int
321 ndr__winreg_OpenHKCR (struct ndr_reference *encl_ref)
322 {
323 	struct winreg_OpenHKCR *val = (struct winreg_OpenHKCR *) encl_ref->datum;
324 	struct ndr_reference myref;
325 
326 	(void) bzero(&myref, sizeof (myref));
327 	myref.enclosing = encl_ref;
328 	myref.stream = encl_ref->stream;
329 
330 	/* do all members in order */
331     if (NDR_DIR_IS_IN) {
332 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
333     }
334     if (NDR_DIR_IS_IN) {
335 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
336     }
337     if (NDR_DIR_IS_OUT) {
338 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
339     }
340     if (NDR_DIR_IS_OUT) {
341 	NDR_TOPMOST_MEMBER (_ulong, status);
342     }
343 
344 	return 1;
345 }
346 
347 
348 
349 int ndr__winreg_OpenHKCU (struct ndr_reference *encl_ref);
350 struct ndr_typeinfo ndt__winreg_OpenHKCU = {
351 	1,		/* NDR version */
352 	3,		/* alignment */
353 	NDR_F_OPERATION,	/* flags */
354 	ndr__winreg_OpenHKCU,	/* ndr_func */
355 	32,		/* pdu_size_fixed_part */
356 	0,		/* pdu_size_variable_part */
357 	32,		/* c_size_fixed_part */
358 	0,		/* c_size_variable_part */
359 };
360 
361 
362 /*
363  * [operation(1)]
364  */
365 int
366 ndr__winreg_OpenHKCU (struct ndr_reference *encl_ref)
367 {
368 	struct winreg_OpenHKCU *val = (struct winreg_OpenHKCU *) encl_ref->datum;
369 	struct ndr_reference myref;
370 
371 	(void) bzero(&myref, sizeof (myref));
372 	myref.enclosing = encl_ref;
373 	myref.stream = encl_ref->stream;
374 
375 	/* do all members in order */
376     if (NDR_DIR_IS_IN) {
377 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
378     }
379     if (NDR_DIR_IS_IN) {
380 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
381     }
382     if (NDR_DIR_IS_OUT) {
383 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
384     }
385     if (NDR_DIR_IS_OUT) {
386 	NDR_TOPMOST_MEMBER (_ulong, status);
387     }
388 
389 	return 1;
390 }
391 
392 
393 
394 int ndr__winreg_OpenHKLM (struct ndr_reference *encl_ref);
395 struct ndr_typeinfo ndt__winreg_OpenHKLM = {
396 	1,		/* NDR version */
397 	3,		/* alignment */
398 	NDR_F_OPERATION,	/* flags */
399 	ndr__winreg_OpenHKLM,	/* ndr_func */
400 	32,		/* pdu_size_fixed_part */
401 	0,		/* pdu_size_variable_part */
402 	32,		/* c_size_fixed_part */
403 	0,		/* c_size_variable_part */
404 };
405 
406 
407 /*
408  * [operation(2)]
409  */
410 int
411 ndr__winreg_OpenHKLM (struct ndr_reference *encl_ref)
412 {
413 	struct winreg_OpenHKLM *val = (struct winreg_OpenHKLM *) encl_ref->datum;
414 	struct ndr_reference myref;
415 
416 	(void) bzero(&myref, sizeof (myref));
417 	myref.enclosing = encl_ref;
418 	myref.stream = encl_ref->stream;
419 
420 	/* do all members in order */
421     if (NDR_DIR_IS_IN) {
422 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
423     }
424     if (NDR_DIR_IS_IN) {
425 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
426     }
427     if (NDR_DIR_IS_OUT) {
428 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
429     }
430     if (NDR_DIR_IS_OUT) {
431 	NDR_TOPMOST_MEMBER (_ulong, status);
432     }
433 
434 	return 1;
435 }
436 
437 
438 
439 int ndr__winreg_OpenHKPD (struct ndr_reference *encl_ref);
440 struct ndr_typeinfo ndt__winreg_OpenHKPD = {
441 	1,		/* NDR version */
442 	3,		/* alignment */
443 	NDR_F_OPERATION,	/* flags */
444 	ndr__winreg_OpenHKPD,	/* ndr_func */
445 	32,		/* pdu_size_fixed_part */
446 	0,		/* pdu_size_variable_part */
447 	32,		/* c_size_fixed_part */
448 	0,		/* c_size_variable_part */
449 };
450 
451 
452 /*
453  * [operation(3)]
454  */
455 int
456 ndr__winreg_OpenHKPD (struct ndr_reference *encl_ref)
457 {
458 	struct winreg_OpenHKPD *val = (struct winreg_OpenHKPD *) encl_ref->datum;
459 	struct ndr_reference myref;
460 
461 	(void) bzero(&myref, sizeof (myref));
462 	myref.enclosing = encl_ref;
463 	myref.stream = encl_ref->stream;
464 
465 	/* do all members in order */
466     if (NDR_DIR_IS_IN) {
467 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
468     }
469     if (NDR_DIR_IS_IN) {
470 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
471     }
472     if (NDR_DIR_IS_OUT) {
473 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
474     }
475     if (NDR_DIR_IS_OUT) {
476 	NDR_TOPMOST_MEMBER (_ulong, status);
477     }
478 
479 	return 1;
480 }
481 
482 
483 
484 int ndr__winreg_OpenHKUsers (struct ndr_reference *encl_ref);
485 struct ndr_typeinfo ndt__winreg_OpenHKUsers = {
486 	1,		/* NDR version */
487 	3,		/* alignment */
488 	NDR_F_OPERATION,	/* flags */
489 	ndr__winreg_OpenHKUsers,	/* ndr_func */
490 	32,		/* pdu_size_fixed_part */
491 	0,		/* pdu_size_variable_part */
492 	32,		/* c_size_fixed_part */
493 	0,		/* c_size_variable_part */
494 };
495 
496 
497 /*
498  * [operation(4)]
499  */
500 int
501 ndr__winreg_OpenHKUsers (struct ndr_reference *encl_ref)
502 {
503 	struct winreg_OpenHKUsers *val = (struct winreg_OpenHKUsers *) encl_ref->datum;
504 	struct ndr_reference myref;
505 
506 	(void) bzero(&myref, sizeof (myref));
507 	myref.enclosing = encl_ref;
508 	myref.stream = encl_ref->stream;
509 
510 	/* do all members in order */
511     if (NDR_DIR_IS_IN) {
512 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
513     }
514     if (NDR_DIR_IS_IN) {
515 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
516     }
517     if (NDR_DIR_IS_OUT) {
518 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
519     }
520     if (NDR_DIR_IS_OUT) {
521 	NDR_TOPMOST_MEMBER (_ulong, status);
522     }
523 
524 	return 1;
525 }
526 
527 
528 
529 int ndr__winreg_Close (struct ndr_reference *encl_ref);
530 struct ndr_typeinfo ndt__winreg_Close = {
531 	1,		/* NDR version */
532 	3,		/* alignment */
533 	NDR_F_OPERATION,	/* flags */
534 	ndr__winreg_Close,	/* ndr_func */
535 	44,		/* pdu_size_fixed_part */
536 	0,		/* pdu_size_variable_part */
537 	44,		/* c_size_fixed_part */
538 	0,		/* c_size_variable_part */
539 };
540 
541 
542 /*
543  * [operation(5)]
544  */
545 int
546 ndr__winreg_Close (struct ndr_reference *encl_ref)
547 {
548 	struct winreg_Close *val = (struct winreg_Close *) encl_ref->datum;
549 	struct ndr_reference myref;
550 
551 	(void) bzero(&myref, sizeof (myref));
552 	myref.enclosing = encl_ref;
553 	myref.stream = encl_ref->stream;
554 
555 	/* do all members in order */
556     if (NDR_DIR_IS_IN) {
557 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
558     }
559     if (NDR_DIR_IS_OUT) {
560 	NDR_TOPMOST_MEMBER (_winreg_handle, result_handle);
561     }
562     if (NDR_DIR_IS_OUT) {
563 	NDR_TOPMOST_MEMBER (_ulong, status);
564     }
565 
566 	return 1;
567 }
568 
569 
570 
571 int ndr__winreg_CreateKey (struct ndr_reference *encl_ref);
572 struct ndr_typeinfo ndt__winreg_CreateKey = {
573 	1,		/* NDR version */
574 	3,		/* alignment */
575 	NDR_F_OPERATION,	/* flags */
576 	ndr__winreg_CreateKey,	/* ndr_func */
577 	76,		/* pdu_size_fixed_part */
578 	0,		/* pdu_size_variable_part */
579 	76,		/* c_size_fixed_part */
580 	0,		/* c_size_variable_part */
581 };
582 
583 
584 /*
585  * [operation(6)]
586  */
587 int
588 ndr__winreg_CreateKey (struct ndr_reference *encl_ref)
589 {
590 	struct winreg_CreateKey *val = (struct winreg_CreateKey *) 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 members in order */
598     if (NDR_DIR_IS_IN) {
599 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
600     }
601     if (NDR_DIR_IS_IN) {
602 	NDR_TOPMOST_MEMBER (_winreg_string_desc, subkey);
603     }
604     if (NDR_DIR_IS_IN) {
605 	NDR_TOPMOST_MEMBER (_winreg_string_desc, keyclass);
606     }
607     if (NDR_DIR_IS_IN) {
608 	NDR_TOPMOST_MEMBER (_ulong, options);
609     }
610     if (NDR_DIR_IS_IN) {
611 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
612     }
613     if (NDR_DIR_IS_IN) {
614 	NDR_TOPMOST_MEMBER_PTR (_ulong, sd);
615     }
616     if (NDR_DIR_IS_OUT) {
617 	NDR_TOPMOST_MEMBER (_winreg_handle, result_handle);
618     }
619     if (NDR_DIR_IS_OUT) {
620 	NDR_TOPMOST_MEMBER_PTR (_ulong, action);
621     }
622     if (NDR_DIR_IS_OUT) {
623 	NDR_TOPMOST_MEMBER (_ulong, status);
624     }
625 
626 	return 1;
627 }
628 
629 
630 
631 int ndr__winreg_DeleteKey (struct ndr_reference *encl_ref);
632 struct ndr_typeinfo ndt__winreg_DeleteKey = {
633 	1,		/* NDR version */
634 	3,		/* alignment */
635 	NDR_F_OPERATION,	/* flags */
636 	ndr__winreg_DeleteKey,	/* ndr_func */
637 	32,		/* pdu_size_fixed_part */
638 	0,		/* pdu_size_variable_part */
639 	32,		/* c_size_fixed_part */
640 	0,		/* c_size_variable_part */
641 };
642 
643 
644 /*
645  * [operation(7)]
646  */
647 int
648 ndr__winreg_DeleteKey (struct ndr_reference *encl_ref)
649 {
650 	struct winreg_DeleteKey *val = (struct winreg_DeleteKey *) encl_ref->datum;
651 	struct ndr_reference myref;
652 
653 	(void) bzero(&myref, sizeof (myref));
654 	myref.enclosing = encl_ref;
655 	myref.stream = encl_ref->stream;
656 
657 	/* do all members in order */
658     if (NDR_DIR_IS_IN) {
659 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
660     }
661     if (NDR_DIR_IS_IN) {
662 	NDR_TOPMOST_MEMBER (_winreg_string_desc, subkey);
663     }
664     if (NDR_DIR_IS_OUT) {
665 	NDR_TOPMOST_MEMBER (_ulong, status);
666     }
667 
668 	return 1;
669 }
670 
671 
672 
673 int ndr__winreg_DeleteValue (struct ndr_reference *encl_ref);
674 struct ndr_typeinfo ndt__winreg_DeleteValue = {
675 	1,		/* NDR version */
676 	3,		/* alignment */
677 	NDR_F_OPERATION,	/* flags */
678 	ndr__winreg_DeleteValue,	/* ndr_func */
679 	32,		/* pdu_size_fixed_part */
680 	0,		/* pdu_size_variable_part */
681 	32,		/* c_size_fixed_part */
682 	0,		/* c_size_variable_part */
683 };
684 
685 
686 /*
687  * [operation(8)]
688  */
689 int
690 ndr__winreg_DeleteValue (struct ndr_reference *encl_ref)
691 {
692 	struct winreg_DeleteValue *val = (struct winreg_DeleteValue *) encl_ref->datum;
693 	struct ndr_reference myref;
694 
695 	(void) bzero(&myref, sizeof (myref));
696 	myref.enclosing = encl_ref;
697 	myref.stream = encl_ref->stream;
698 
699 	/* do all members in order */
700     if (NDR_DIR_IS_IN) {
701 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
702     }
703     if (NDR_DIR_IS_IN) {
704 	NDR_TOPMOST_MEMBER (_winreg_string_desc, name);
705     }
706     if (NDR_DIR_IS_OUT) {
707 	NDR_TOPMOST_MEMBER (_ulong, status);
708     }
709 
710 	return 1;
711 }
712 
713 
714 
715 int ndr__winreg_EnumKey (struct ndr_reference *encl_ref);
716 struct ndr_typeinfo ndt__winreg_EnumKey = {
717 	1,		/* NDR version */
718 	3,		/* alignment */
719 	NDR_F_OPERATION,	/* flags */
720 	ndr__winreg_EnumKey,	/* ndr_func */
721 	56,		/* pdu_size_fixed_part */
722 	0,		/* pdu_size_variable_part */
723 	56,		/* c_size_fixed_part */
724 	0,		/* c_size_variable_part */
725 };
726 
727 
728 /*
729  * [operation(9)]
730  */
731 int
732 ndr__winreg_EnumKey (struct ndr_reference *encl_ref)
733 {
734 	struct winreg_EnumKey *val = (struct winreg_EnumKey *) encl_ref->datum;
735 	struct ndr_reference myref;
736 
737 	(void) bzero(&myref, sizeof (myref));
738 	myref.enclosing = encl_ref;
739 	myref.stream = encl_ref->stream;
740 
741 	/* do all members in order */
742     if (NDR_DIR_IS_IN) {
743 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
744     }
745     if (NDR_DIR_IS_IN) {
746 	NDR_TOPMOST_MEMBER (_ulong, index);
747     }
748     if (NDR_DIR_IS_IN) {
749 	NDR_TOPMOST_MEMBER (_winreg_string_desc, name_in);
750     }
751     if (NDR_DIR_IS_IN) {
752 	NDR_TOPMOST_MEMBER_PTR (_winreg_string_desc, class_in);
753     }
754     if (NDR_DIR_IS_OUT) {
755 	NDR_TOPMOST_MEMBER (_winreg_string_desc, name_out);
756     }
757     if (NDR_DIR_IS_OUT) {
758 	NDR_TOPMOST_MEMBER_PTR (_winreg_string_desc, class_out);
759     }
760 	NDR_TOPMOST_MEMBER_PTR (_file_time, change_time);
761     if (NDR_DIR_IS_OUT) {
762 	NDR_TOPMOST_MEMBER (_ulong, status);
763     }
764 
765 	return 1;
766 }
767 
768 
769 
770 int ndr__winreg_EnumValue (struct ndr_reference *encl_ref);
771 struct ndr_typeinfo ndt__winreg_EnumValue = {
772 	1,		/* NDR version */
773 	3,		/* alignment */
774 	NDR_F_OPERATION,	/* flags */
775 	ndr__winreg_EnumValue,	/* ndr_func */
776 	52,		/* pdu_size_fixed_part */
777 	0,		/* pdu_size_variable_part */
778 	52,		/* c_size_fixed_part */
779 	0,		/* c_size_variable_part */
780 };
781 
782 
783 /*
784  * [operation(10)]
785  */
786 int
787 ndr__winreg_EnumValue (struct ndr_reference *encl_ref)
788 {
789 	struct winreg_EnumValue *val = (struct winreg_EnumValue *) encl_ref->datum;
790 	struct ndr_reference myref;
791 
792 	(void) bzero(&myref, sizeof (myref));
793 	myref.enclosing = encl_ref;
794 	myref.stream = encl_ref->stream;
795 
796 	/* do all members in order */
797     if (NDR_DIR_IS_IN) {
798 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
799     }
800     if (NDR_DIR_IS_IN) {
801 	NDR_TOPMOST_MEMBER (_ulong, index);
802     }
803     if (NDR_DIR_IS_OUT) {
804 	NDR_TOPMOST_MEMBER (_winreg_vcbuf, name);
805     }
806     if (NDR_DIR_IS_OUT) {
807 	NDR_TOPMOST_MEMBER_PTR (_ulong, type);
808     }
809     if (NDR_DIR_IS_OUT) {
810 	NDR_TOPMOST_MEMBER_PTR (_winreg_value, value);
811     }
812     if (NDR_DIR_IS_OUT) {
813 	NDR_TOPMOST_MEMBER_PTR (_ulong, value_size);
814     }
815     if (NDR_DIR_IS_OUT) {
816 	NDR_TOPMOST_MEMBER_PTR (_ulong, value_size_total);
817     }
818     if (NDR_DIR_IS_OUT) {
819 	NDR_TOPMOST_MEMBER (_ulong, status);
820     }
821 
822 	return 1;
823 }
824 
825 
826 
827 int ndr__winreg_FlushKey (struct ndr_reference *encl_ref);
828 struct ndr_typeinfo ndt__winreg_FlushKey = {
829 	1,		/* NDR version */
830 	3,		/* alignment */
831 	NDR_F_OPERATION,	/* flags */
832 	ndr__winreg_FlushKey,	/* ndr_func */
833 	24,		/* pdu_size_fixed_part */
834 	0,		/* pdu_size_variable_part */
835 	24,		/* c_size_fixed_part */
836 	0,		/* c_size_variable_part */
837 };
838 
839 
840 /*
841  * [operation(11)]
842  */
843 int
844 ndr__winreg_FlushKey (struct ndr_reference *encl_ref)
845 {
846 	struct winreg_FlushKey *val = (struct winreg_FlushKey *) encl_ref->datum;
847 	struct ndr_reference myref;
848 
849 	(void) bzero(&myref, sizeof (myref));
850 	myref.enclosing = encl_ref;
851 	myref.stream = encl_ref->stream;
852 
853 	/* do all members in order */
854     if (NDR_DIR_IS_IN) {
855 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
856     }
857     if (NDR_DIR_IS_OUT) {
858 	NDR_TOPMOST_MEMBER (_ulong, status);
859     }
860 
861 	return 1;
862 }
863 
864 
865 
866 int ndr__winreg_GetKeySec (struct ndr_reference *encl_ref);
867 struct ndr_typeinfo ndt__winreg_GetKeySec = {
868 	1,		/* NDR version */
869 	3,		/* alignment */
870 	NDR_F_OPERATION,	/* flags */
871 	ndr__winreg_GetKeySec,	/* ndr_func */
872 	32,		/* pdu_size_fixed_part */
873 	0,		/* pdu_size_variable_part */
874 	32,		/* c_size_fixed_part */
875 	0,		/* c_size_variable_part */
876 };
877 
878 
879 /*
880  * [operation(12)]
881  */
882 int
883 ndr__winreg_GetKeySec (struct ndr_reference *encl_ref)
884 {
885 	struct winreg_GetKeySec *val = (struct winreg_GetKeySec *) encl_ref->datum;
886 	struct ndr_reference myref;
887 
888 	(void) bzero(&myref, sizeof (myref));
889 	myref.enclosing = encl_ref;
890 	myref.stream = encl_ref->stream;
891 
892 	/* do all members in order */
893     if (NDR_DIR_IS_IN) {
894 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
895     }
896     if (NDR_DIR_IS_IN) {
897 	NDR_TOPMOST_MEMBER (_ulong, sec_info);
898     }
899     if (NDR_DIR_IS_OUT) {
900 	NDR_TOPMOST_MEMBER_REF (_winreg_secdesc, sd);
901     }
902     if (NDR_DIR_IS_OUT) {
903 	NDR_TOPMOST_MEMBER (_ulong, status);
904     }
905 
906 	return 1;
907 }
908 
909 
910 
911 int ndr__winreg_NotifyChange (struct ndr_reference *encl_ref);
912 struct ndr_typeinfo ndt__winreg_NotifyChange = {
913 	1,		/* NDR version */
914 	3,		/* alignment */
915 	NDR_F_OPERATION,	/* flags */
916 	ndr__winreg_NotifyChange,	/* ndr_func */
917 	32,		/* pdu_size_fixed_part */
918 	0,		/* pdu_size_variable_part */
919 	32,		/* c_size_fixed_part */
920 	0,		/* c_size_variable_part */
921 };
922 
923 
924 /*
925  * [operation(14)]
926  */
927 int
928 ndr__winreg_NotifyChange (struct ndr_reference *encl_ref)
929 {
930 	struct winreg_NotifyChange *val = (struct winreg_NotifyChange *) encl_ref->datum;
931 	struct ndr_reference myref;
932 
933 	(void) bzero(&myref, sizeof (myref));
934 	myref.enclosing = encl_ref;
935 	myref.stream = encl_ref->stream;
936 
937 	/* do all members in order */
938     if (NDR_DIR_IS_IN) {
939 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
940     }
941     if (NDR_DIR_IS_IN) {
942 	NDR_TOPMOST_MEMBER (_ulong, watch_subtree);
943     }
944     if (NDR_DIR_IS_IN) {
945 	NDR_TOPMOST_MEMBER (_ulong, notify_filter);
946     }
947     if (NDR_DIR_IS_OUT) {
948 	NDR_TOPMOST_MEMBER (_ulong, status);
949     }
950 
951 	return 1;
952 }
953 
954 
955 
956 int ndr__winreg_OpenKey (struct ndr_reference *encl_ref);
957 struct ndr_typeinfo ndt__winreg_OpenKey = {
958 	1,		/* NDR version */
959 	3,		/* alignment */
960 	NDR_F_OPERATION,	/* flags */
961 	ndr__winreg_OpenKey,	/* ndr_func */
962 	60,		/* pdu_size_fixed_part */
963 	0,		/* pdu_size_variable_part */
964 	60,		/* c_size_fixed_part */
965 	0,		/* c_size_variable_part */
966 };
967 
968 
969 /*
970  * [operation(15)]
971  */
972 int
973 ndr__winreg_OpenKey (struct ndr_reference *encl_ref)
974 {
975 	struct winreg_OpenKey *val = (struct winreg_OpenKey *) encl_ref->datum;
976 	struct ndr_reference myref;
977 
978 	(void) bzero(&myref, sizeof (myref));
979 	myref.enclosing = encl_ref;
980 	myref.stream = encl_ref->stream;
981 
982 	/* do all members in order */
983     if (NDR_DIR_IS_IN) {
984 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
985     }
986     if (NDR_DIR_IS_IN) {
987 	NDR_TOPMOST_MEMBER (_winreg_string_desc, name);
988     }
989     if (NDR_DIR_IS_IN) {
990 	NDR_TOPMOST_MEMBER (_ulong, options);
991     }
992     if (NDR_DIR_IS_IN) {
993 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
994     }
995     if (NDR_DIR_IS_OUT) {
996 	NDR_TOPMOST_MEMBER (_winreg_handle, result_handle);
997     }
998     if (NDR_DIR_IS_OUT) {
999 	NDR_TOPMOST_MEMBER (_ulong, status);
1000     }
1001 
1002 	return 1;
1003 }
1004 
1005 
1006 
1007 int ndr__winreg_QueryKey (struct ndr_reference *encl_ref);
1008 struct ndr_typeinfo ndt__winreg_QueryKey = {
1009 	1,		/* NDR version */
1010 	3,		/* alignment */
1011 	NDR_F_OPERATION,	/* flags */
1012 	ndr__winreg_QueryKey,	/* ndr_func */
1013 	68,		/* pdu_size_fixed_part */
1014 	0,		/* pdu_size_variable_part */
1015 	68,		/* c_size_fixed_part */
1016 	0,		/* c_size_variable_part */
1017 };
1018 
1019 
1020 /*
1021  * [operation(16)]
1022  */
1023 int
1024 ndr__winreg_QueryKey (struct ndr_reference *encl_ref)
1025 {
1026 	struct winreg_QueryKey *val = (struct winreg_QueryKey *) encl_ref->datum;
1027 	struct ndr_reference myref;
1028 
1029 	(void) bzero(&myref, sizeof (myref));
1030 	myref.enclosing = encl_ref;
1031 	myref.stream = encl_ref->stream;
1032 
1033 	/* do all members in order */
1034     if (NDR_DIR_IS_IN) {
1035 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1036     }
1037 	NDR_TOPMOST_MEMBER (_winreg_string_desc, name);
1038     if (NDR_DIR_IS_OUT) {
1039 	NDR_TOPMOST_MEMBER (_ulong, num_subkeys);
1040     }
1041     if (NDR_DIR_IS_OUT) {
1042 	NDR_TOPMOST_MEMBER (_ulong, max_subkey_len);
1043     }
1044     if (NDR_DIR_IS_OUT) {
1045 	NDR_TOPMOST_MEMBER (_ulong, max_class_len);
1046     }
1047     if (NDR_DIR_IS_OUT) {
1048 	NDR_TOPMOST_MEMBER (_ulong, num_values);
1049     }
1050     if (NDR_DIR_IS_OUT) {
1051 	NDR_TOPMOST_MEMBER (_ulong, max_value_namelen);
1052     }
1053     if (NDR_DIR_IS_OUT) {
1054 	NDR_TOPMOST_MEMBER (_ulong, max_value_len);
1055     }
1056     if (NDR_DIR_IS_OUT) {
1057 	NDR_TOPMOST_MEMBER (_ulong, secdesc_size);
1058     }
1059     if (NDR_DIR_IS_OUT) {
1060 	NDR_TOPMOST_MEMBER (_file_time, last_write_time);
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__winreg_QueryValue (struct ndr_reference *encl_ref);
1072 struct ndr_typeinfo ndt__winreg_QueryValue = {
1073 	1,		/* NDR version */
1074 	3,		/* alignment */
1075 	NDR_F_OPERATION,	/* flags */
1076 	ndr__winreg_QueryValue,	/* ndr_func */
1077 	48,		/* pdu_size_fixed_part */
1078 	0,		/* pdu_size_variable_part */
1079 	48,		/* c_size_fixed_part */
1080 	0,		/* c_size_variable_part */
1081 };
1082 
1083 
1084 /*
1085  * [operation(17)]
1086  */
1087 int
1088 ndr__winreg_QueryValue (struct ndr_reference *encl_ref)
1089 {
1090 	struct winreg_QueryValue *val = (struct winreg_QueryValue *) encl_ref->datum;
1091 	struct ndr_reference myref;
1092 
1093 	(void) bzero(&myref, sizeof (myref));
1094 	myref.enclosing = encl_ref;
1095 	myref.stream = encl_ref->stream;
1096 
1097 	/* do all members in order */
1098     if (NDR_DIR_IS_IN) {
1099 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1100     }
1101     if (NDR_DIR_IS_IN) {
1102 	NDR_TOPMOST_MEMBER (_winreg_string_desc, value_name);
1103     }
1104     if (NDR_DIR_IS_OUT) {
1105 	NDR_TOPMOST_MEMBER_PTR (_ulong, type);
1106     }
1107     if (NDR_DIR_IS_OUT) {
1108 	NDR_TOPMOST_MEMBER_PTR (_winreg_value, value);
1109     }
1110     if (NDR_DIR_IS_OUT) {
1111 	NDR_TOPMOST_MEMBER_PTR (_ulong, value_size);
1112     }
1113     if (NDR_DIR_IS_OUT) {
1114 	NDR_TOPMOST_MEMBER_PTR (_ulong, value_size_total);
1115     }
1116     if (NDR_DIR_IS_OUT) {
1117 	NDR_TOPMOST_MEMBER (_ulong, status);
1118     }
1119 
1120 	return 1;
1121 }
1122 
1123 
1124 
1125 int ndr__winreg_SetKeySec (struct ndr_reference *encl_ref);
1126 struct ndr_typeinfo ndt__winreg_SetKeySec = {
1127 	1,		/* NDR version */
1128 	3,		/* alignment */
1129 	NDR_F_OPERATION,	/* flags */
1130 	ndr__winreg_SetKeySec,	/* ndr_func */
1131 	32,		/* pdu_size_fixed_part */
1132 	0,		/* pdu_size_variable_part */
1133 	32,		/* c_size_fixed_part */
1134 	0,		/* c_size_variable_part */
1135 };
1136 
1137 
1138 /*
1139  * [operation(21)]
1140  */
1141 int
1142 ndr__winreg_SetKeySec (struct ndr_reference *encl_ref)
1143 {
1144 	struct winreg_SetKeySec *val = (struct winreg_SetKeySec *) encl_ref->datum;
1145 	struct ndr_reference myref;
1146 
1147 	(void) bzero(&myref, sizeof (myref));
1148 	myref.enclosing = encl_ref;
1149 	myref.stream = encl_ref->stream;
1150 
1151 	/* do all members in order */
1152     if (NDR_DIR_IS_IN) {
1153 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1154     }
1155     if (NDR_DIR_IS_IN) {
1156 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
1157     }
1158     if (NDR_DIR_IS_IN) {
1159 	NDR_TOPMOST_MEMBER (_ulong, sd);
1160     }
1161     if (NDR_DIR_IS_OUT) {
1162 	NDR_TOPMOST_MEMBER (_ulong, status);
1163     }
1164 
1165 	return 1;
1166 }
1167 
1168 
1169 
1170 int ndr__winreg_CreateValue (struct ndr_reference *encl_ref);
1171 struct ndr_typeinfo ndt__winreg_CreateValue = {
1172 	1,		/* NDR version */
1173 	3,		/* alignment */
1174 	NDR_F_OPERATION,	/* flags */
1175 	ndr__winreg_CreateValue,	/* ndr_func */
1176 	44,		/* pdu_size_fixed_part */
1177 	0,		/* pdu_size_variable_part */
1178 	44,		/* c_size_fixed_part */
1179 	0,		/* c_size_variable_part */
1180 };
1181 
1182 
1183 /*
1184  * [operation(22)]
1185  */
1186 int
1187 ndr__winreg_CreateValue (struct ndr_reference *encl_ref)
1188 {
1189 	struct winreg_CreateValue *val = (struct winreg_CreateValue *) encl_ref->datum;
1190 	struct ndr_reference myref;
1191 
1192 	(void) bzero(&myref, sizeof (myref));
1193 	myref.enclosing = encl_ref;
1194 	myref.stream = encl_ref->stream;
1195 
1196 	/* do all members in order */
1197     if (NDR_DIR_IS_IN) {
1198 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1199     }
1200     if (NDR_DIR_IS_IN) {
1201 	NDR_TOPMOST_MEMBER (_winreg_string_desc, name);
1202     }
1203     if (NDR_DIR_IS_IN) {
1204 	NDR_TOPMOST_MEMBER (_winreg_string_desc, class);
1205     }
1206     if (NDR_DIR_IS_IN) {
1207 	NDR_TOPMOST_MEMBER (_ulong, options);
1208     }
1209     if (NDR_DIR_IS_OUT) {
1210 	NDR_TOPMOST_MEMBER (_ulong, status);
1211     }
1212 
1213 	return 1;
1214 }
1215 
1216 
1217 
1218 int ndr__winreg_Shutdown (struct ndr_reference *encl_ref);
1219 struct ndr_typeinfo ndt__winreg_Shutdown = {
1220 	1,		/* NDR version */
1221 	3,		/* alignment */
1222 	NDR_F_OPERATION,	/* flags */
1223 	ndr__winreg_Shutdown,	/* ndr_func */
1224 	8,		/* pdu_size_fixed_part */
1225 	0,		/* pdu_size_variable_part */
1226 	8,		/* c_size_fixed_part */
1227 	0,		/* c_size_variable_part */
1228 };
1229 
1230 
1231 /*
1232  * [operation(24)]
1233  */
1234 int
1235 ndr__winreg_Shutdown (struct ndr_reference *encl_ref)
1236 {
1237 	struct winreg_Shutdown *val = (struct winreg_Shutdown *) encl_ref->datum;
1238 	struct ndr_reference myref;
1239 
1240 	(void) bzero(&myref, sizeof (myref));
1241 	myref.enclosing = encl_ref;
1242 	myref.stream = encl_ref->stream;
1243 
1244 	/* do all members in order */
1245     if (NDR_DIR_IS_IN) {
1246 	NDR_TOPMOST_MEMBER (_ulong, ignored);
1247     }
1248     if (NDR_DIR_IS_OUT) {
1249 	NDR_TOPMOST_MEMBER (_ulong, status);
1250     }
1251 
1252 	return 1;
1253 }
1254 
1255 
1256 
1257 int ndr__winreg_AbortShutdown (struct ndr_reference *encl_ref);
1258 struct ndr_typeinfo ndt__winreg_AbortShutdown = {
1259 	1,		/* NDR version */
1260 	3,		/* alignment */
1261 	NDR_F_OPERATION,	/* flags */
1262 	ndr__winreg_AbortShutdown,	/* ndr_func */
1263 	8,		/* pdu_size_fixed_part */
1264 	0,		/* pdu_size_variable_part */
1265 	8,		/* c_size_fixed_part */
1266 	0,		/* c_size_variable_part */
1267 };
1268 
1269 
1270 /*
1271  * [operation(25)]
1272  */
1273 int
1274 ndr__winreg_AbortShutdown (struct ndr_reference *encl_ref)
1275 {
1276 	struct winreg_AbortShutdown *val = (struct winreg_AbortShutdown *) encl_ref->datum;
1277 	struct ndr_reference myref;
1278 
1279 	(void) bzero(&myref, sizeof (myref));
1280 	myref.enclosing = encl_ref;
1281 	myref.stream = encl_ref->stream;
1282 
1283 	/* do all members in order */
1284     if (NDR_DIR_IS_IN) {
1285 	NDR_TOPMOST_MEMBER (_ulong, ignored);
1286     }
1287     if (NDR_DIR_IS_OUT) {
1288 	NDR_TOPMOST_MEMBER (_ulong, status);
1289     }
1290 
1291 	return 1;
1292 }
1293 
1294 
1295 
1296 int ndr__winreg_GetVersion (struct ndr_reference *encl_ref);
1297 struct ndr_typeinfo ndt__winreg_GetVersion = {
1298 	1,		/* NDR version */
1299 	3,		/* alignment */
1300 	NDR_F_OPERATION,	/* flags */
1301 	ndr__winreg_GetVersion,	/* ndr_func */
1302 	28,		/* pdu_size_fixed_part */
1303 	0,		/* pdu_size_variable_part */
1304 	28,		/* c_size_fixed_part */
1305 	0,		/* c_size_variable_part */
1306 };
1307 
1308 
1309 /*
1310  * [operation(26)]
1311  */
1312 int
1313 ndr__winreg_GetVersion (struct ndr_reference *encl_ref)
1314 {
1315 	struct winreg_GetVersion *val = (struct winreg_GetVersion *) encl_ref->datum;
1316 	struct ndr_reference myref;
1317 
1318 	(void) bzero(&myref, sizeof (myref));
1319 	myref.enclosing = encl_ref;
1320 	myref.stream = encl_ref->stream;
1321 
1322 	/* do all members in order */
1323     if (NDR_DIR_IS_IN) {
1324 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1325     }
1326     if (NDR_DIR_IS_OUT) {
1327 	NDR_TOPMOST_MEMBER (_ulong, version);
1328     }
1329     if (NDR_DIR_IS_OUT) {
1330 	NDR_TOPMOST_MEMBER (_ulong, status);
1331     }
1332 
1333 	return 1;
1334 }
1335 
1336 
1337 
1338 int ndr__winreg_OpenHKCC (struct ndr_reference *encl_ref);
1339 struct ndr_typeinfo ndt__winreg_OpenHKCC = {
1340 	1,		/* NDR version */
1341 	3,		/* alignment */
1342 	NDR_F_OPERATION,	/* flags */
1343 	ndr__winreg_OpenHKCC,	/* ndr_func */
1344 	32,		/* pdu_size_fixed_part */
1345 	0,		/* pdu_size_variable_part */
1346 	32,		/* c_size_fixed_part */
1347 	0,		/* c_size_variable_part */
1348 };
1349 
1350 
1351 /*
1352  * [operation(27)]
1353  */
1354 int
1355 ndr__winreg_OpenHKCC (struct ndr_reference *encl_ref)
1356 {
1357 	struct winreg_OpenHKCC *val = (struct winreg_OpenHKCC *) encl_ref->datum;
1358 	struct ndr_reference myref;
1359 
1360 	(void) bzero(&myref, sizeof (myref));
1361 	myref.enclosing = encl_ref;
1362 	myref.stream = encl_ref->stream;
1363 
1364 	/* do all members in order */
1365     if (NDR_DIR_IS_IN) {
1366 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
1367     }
1368     if (NDR_DIR_IS_IN) {
1369 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
1370     }
1371     if (NDR_DIR_IS_OUT) {
1372 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1373     }
1374     if (NDR_DIR_IS_OUT) {
1375 	NDR_TOPMOST_MEMBER (_ulong, status);
1376     }
1377 
1378 	return 1;
1379 }
1380 
1381 
1382 
1383 int ndr__winreg_OpenHKDD (struct ndr_reference *encl_ref);
1384 struct ndr_typeinfo ndt__winreg_OpenHKDD = {
1385 	1,		/* NDR version */
1386 	3,		/* alignment */
1387 	NDR_F_OPERATION,	/* flags */
1388 	ndr__winreg_OpenHKDD,	/* ndr_func */
1389 	32,		/* pdu_size_fixed_part */
1390 	0,		/* pdu_size_variable_part */
1391 	32,		/* c_size_fixed_part */
1392 	0,		/* c_size_variable_part */
1393 };
1394 
1395 
1396 /*
1397  * [operation(28)]
1398  */
1399 int
1400 ndr__winreg_OpenHKDD (struct ndr_reference *encl_ref)
1401 {
1402 	struct winreg_OpenHKDD *val = (struct winreg_OpenHKDD *) encl_ref->datum;
1403 	struct ndr_reference myref;
1404 
1405 	(void) bzero(&myref, sizeof (myref));
1406 	myref.enclosing = encl_ref;
1407 	myref.stream = encl_ref->stream;
1408 
1409 	/* do all members in order */
1410     if (NDR_DIR_IS_IN) {
1411 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
1412     }
1413     if (NDR_DIR_IS_IN) {
1414 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
1415     }
1416     if (NDR_DIR_IS_OUT) {
1417 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1418     }
1419     if (NDR_DIR_IS_OUT) {
1420 	NDR_TOPMOST_MEMBER (_ulong, status);
1421     }
1422 
1423 	return 1;
1424 }
1425 
1426 
1427 
1428 int ndr__winreg_OpenHKPT (struct ndr_reference *encl_ref);
1429 struct ndr_typeinfo ndt__winreg_OpenHKPT = {
1430 	1,		/* NDR version */
1431 	3,		/* alignment */
1432 	NDR_F_OPERATION,	/* flags */
1433 	ndr__winreg_OpenHKPT,	/* ndr_func */
1434 	32,		/* pdu_size_fixed_part */
1435 	0,		/* pdu_size_variable_part */
1436 	32,		/* c_size_fixed_part */
1437 	0,		/* c_size_variable_part */
1438 };
1439 
1440 
1441 /*
1442  * [operation(32)]
1443  */
1444 int
1445 ndr__winreg_OpenHKPT (struct ndr_reference *encl_ref)
1446 {
1447 	struct winreg_OpenHKPT *val = (struct winreg_OpenHKPT *) encl_ref->datum;
1448 	struct ndr_reference myref;
1449 
1450 	(void) bzero(&myref, sizeof (myref));
1451 	myref.enclosing = encl_ref;
1452 	myref.stream = encl_ref->stream;
1453 
1454 	/* do all members in order */
1455     if (NDR_DIR_IS_IN) {
1456 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
1457     }
1458     if (NDR_DIR_IS_IN) {
1459 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
1460     }
1461     if (NDR_DIR_IS_OUT) {
1462 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1463     }
1464     if (NDR_DIR_IS_OUT) {
1465 	NDR_TOPMOST_MEMBER (_ulong, status);
1466     }
1467 
1468 	return 1;
1469 }
1470 
1471 
1472 
1473 int ndr__winreg_OpenHKPN (struct ndr_reference *encl_ref);
1474 struct ndr_typeinfo ndt__winreg_OpenHKPN = {
1475 	1,		/* NDR version */
1476 	3,		/* alignment */
1477 	NDR_F_OPERATION,	/* flags */
1478 	ndr__winreg_OpenHKPN,	/* ndr_func */
1479 	32,		/* pdu_size_fixed_part */
1480 	0,		/* pdu_size_variable_part */
1481 	32,		/* c_size_fixed_part */
1482 	0,		/* c_size_variable_part */
1483 };
1484 
1485 
1486 /*
1487  * [operation(33)]
1488  */
1489 int
1490 ndr__winreg_OpenHKPN (struct ndr_reference *encl_ref)
1491 {
1492 	struct winreg_OpenHKPN *val = (struct winreg_OpenHKPN *) encl_ref->datum;
1493 	struct ndr_reference myref;
1494 
1495 	(void) bzero(&myref, sizeof (myref));
1496 	myref.enclosing = encl_ref;
1497 	myref.stream = encl_ref->stream;
1498 
1499 	/* do all members in order */
1500     if (NDR_DIR_IS_IN) {
1501 	NDR_TOPMOST_MEMBER_PTR (_ulong, server);
1502     }
1503     if (NDR_DIR_IS_IN) {
1504 	NDR_TOPMOST_MEMBER (_ulong, access_mask);
1505     }
1506     if (NDR_DIR_IS_OUT) {
1507 	NDR_TOPMOST_MEMBER (_winreg_handle, handle);
1508     }
1509     if (NDR_DIR_IS_OUT) {
1510 	NDR_TOPMOST_MEMBER (_ulong, status);
1511     }
1512 
1513 	return 1;
1514 }
1515 
1516 
1517 
1518 int ndr__winreg_interface (struct ndr_reference *encl_ref);
1519 struct ndr_typeinfo ndt__winreg_interface = {
1520 	1,		/* NDR version */
1521 	3,		/* alignment */
1522 	NDR_F_INTERFACE,	/* flags */
1523 	ndr__winreg_interface,	/* ndr_func */
1524 	76,		/* pdu_size_fixed_part */
1525 	0,		/* pdu_size_variable_part */
1526 	76,		/* c_size_fixed_part */
1527 	0,		/* c_size_variable_part */
1528 };
1529 
1530 
1531 /*
1532  * [interface(0)]
1533  */
1534 int
1535 ndr__winreg_interface (struct ndr_reference *encl_ref)
1536 {
1537 	union winreg_interface *val = (union winreg_interface *) encl_ref->datum;
1538 	struct ndr_reference myref;
1539 
1540 	(void) bzero(&myref, sizeof (myref));
1541 	myref.enclosing = encl_ref;
1542 	myref.stream = encl_ref->stream;
1543 
1544     switch (encl_ref->switch_is) {
1545     case 0:
1546 	NDR_PARAMS_MEMBER (_winreg_OpenHKCR, OpenHKCR);
1547 	break;
1548 
1549     case 1:
1550 	NDR_PARAMS_MEMBER (_winreg_OpenHKCU, OpenHKCU);
1551 	break;
1552 
1553     case 2:
1554 	NDR_PARAMS_MEMBER (_winreg_OpenHKLM, OpenHKLM);
1555 	break;
1556 
1557     case 3:
1558 	NDR_PARAMS_MEMBER (_winreg_OpenHKPD, OpenHKPD);
1559 	break;
1560 
1561     case 4:
1562 	NDR_PARAMS_MEMBER (_winreg_OpenHKUsers, OpenHKUsers);
1563 	break;
1564 
1565     case 5:
1566 	NDR_PARAMS_MEMBER (_winreg_Close, Close);
1567 	break;
1568 
1569     case 6:
1570 	NDR_PARAMS_MEMBER (_winreg_CreateKey, CreateKey);
1571 	break;
1572 
1573     case 7:
1574 	NDR_PARAMS_MEMBER (_winreg_DeleteKey, DeleteKey);
1575 	break;
1576 
1577     case 8:
1578 	NDR_PARAMS_MEMBER (_winreg_DeleteValue, DeleteValue);
1579 	break;
1580 
1581     case 9:
1582 	NDR_PARAMS_MEMBER (_winreg_EnumKey, EnumKey);
1583 	break;
1584 
1585     case 10:
1586 	NDR_PARAMS_MEMBER (_winreg_EnumValue, EnumValue);
1587 	break;
1588 
1589     case 11:
1590 	NDR_PARAMS_MEMBER (_winreg_FlushKey, FlushKey);
1591 	break;
1592 
1593     case 12:
1594 	NDR_PARAMS_MEMBER (_winreg_GetKeySec, GetKeySec);
1595 	break;
1596 
1597     case 14:
1598 	NDR_PARAMS_MEMBER (_winreg_NotifyChange, NotifyChange);
1599 	break;
1600 
1601     case 15:
1602 	NDR_PARAMS_MEMBER (_winreg_OpenKey, OpenKey);
1603 	break;
1604 
1605     case 16:
1606 	NDR_PARAMS_MEMBER (_winreg_QueryKey, QueryKey);
1607 	break;
1608 
1609     case 17:
1610 	NDR_PARAMS_MEMBER (_winreg_QueryValue, QueryValue);
1611 	break;
1612 
1613     case 21:
1614 	NDR_PARAMS_MEMBER (_winreg_SetKeySec, SetKeySec);
1615 	break;
1616 
1617     case 22:
1618 	NDR_PARAMS_MEMBER (_winreg_CreateValue, CreateValue);
1619 	break;
1620 
1621     case 24:
1622 	NDR_PARAMS_MEMBER (_winreg_Shutdown, Shutdown);
1623 	break;
1624 
1625     case 25:
1626 	NDR_PARAMS_MEMBER (_winreg_AbortShutdown, AbortShutdown);
1627 	break;
1628 
1629     case 26:
1630 	NDR_PARAMS_MEMBER (_winreg_GetVersion, GetVersion);
1631 	break;
1632 
1633     case 27:
1634 	NDR_PARAMS_MEMBER (_winreg_OpenHKCC, OpenHKCC);
1635 	break;
1636 
1637     case 28:
1638 	NDR_PARAMS_MEMBER (_winreg_OpenHKDD, OpenHKDD);
1639 	break;
1640 
1641     case 32:
1642 	NDR_PARAMS_MEMBER (_winreg_OpenHKPT, OpenHKPT);
1643 	break;
1644 
1645     case 33:
1646 	NDR_PARAMS_MEMBER (_winreg_OpenHKPN, OpenHKPN);
1647 	break;
1648 
1649     default:
1650 	NDR_SET_ERROR(encl_ref, NDR_ERR_SWITCH_VALUE_INVALID);
1651 	return 0;
1652 	break;
1653     }
1654 
1655 
1656 	return 1;
1657 }
1658