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