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/samrpc.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__samr_sid (struct ndr_reference *encl_ref); 28 struct ndr_typeinfo ndt__samr_sid = { 29 1, /* NDR version */ 30 3, /* alignment */ 31 NDR_F_CONFORMANT|NDR_F_STRUCT, /* flags */ 32 ndr__samr_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__samr_sid (struct ndr_reference *encl_ref) 44 { 45 struct samr_sid *val = (struct samr_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__samr_sec_desc (struct ndr_reference *encl_ref); 70 struct ndr_typeinfo ndt__samr_sec_desc = { 71 1, /* NDR version */ 72 3, /* alignment */ 73 NDR_F_STRUCT, /* flags */ 74 ndr__samr_sec_desc, /* ndr_func */ 75 20, /* pdu_size_fixed_part */ 76 0, /* pdu_size_variable_part */ 77 20, /* c_size_fixed_part */ 78 0, /* c_size_variable_part */ 79 }; 80 81 82 /* 83 * */ 84 int 85 ndr__samr_sec_desc (struct ndr_reference *encl_ref) 86 { 87 struct samr_sec_desc *val = (struct samr_sec_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 (_uchar, Revision, 0UL); 96 NDR_MEMBER (_uchar, Sbz1, 1UL); 97 NDR_MEMBER (_ushort, Control, 2UL); 98 99 /* do all constructed elements w/o pointers */ 100 101 /* do members with pointers in order */ 102 NDR_MEMBER_PTR (_samr_sid, owner, 4UL); 103 NDR_MEMBER_PTR (_samr_sid, group, 8UL); 104 NDR_MEMBER_PTR (_samr_sid, sacl, 12UL); 105 NDR_MEMBER_PTR (_samr_sid, dacl, 16UL); 106 107 return 1; 108 } 109 110 111 112 int ndr__samr_sd (struct ndr_reference *encl_ref); 113 struct ndr_typeinfo ndt__samr_sd = { 114 1, /* NDR version */ 115 3, /* alignment */ 116 NDR_F_STRUCT, /* flags */ 117 ndr__samr_sd, /* ndr_func */ 118 8, /* pdu_size_fixed_part */ 119 0, /* pdu_size_variable_part */ 120 8, /* c_size_fixed_part */ 121 0, /* c_size_variable_part */ 122 }; 123 124 125 /* 126 * */ 127 int 128 ndr__samr_sd (struct ndr_reference *encl_ref) 129 { 130 struct samr_sd *val = (struct samr_sd *) encl_ref->datum; 131 struct ndr_reference myref; 132 133 (void) bzero(&myref, sizeof (myref)); 134 myref.enclosing = encl_ref; 135 myref.stream = encl_ref->stream; 136 137 /* do all basic elements first */ 138 NDR_MEMBER (_ulong, length, 0UL); 139 140 /* do all constructed elements w/o pointers */ 141 142 /* do members with pointers in order */ 143 NDR_MEMBER_PTR_WITH_SIZE_IS (_uchar, data, 4UL, 144 val->length); 145 146 return 1; 147 } 148 149 150 151 int ndr__samr_string (struct ndr_reference *encl_ref); 152 struct ndr_typeinfo ndt__samr_string = { 153 1, /* NDR version */ 154 3, /* alignment */ 155 NDR_F_STRUCT, /* flags */ 156 ndr__samr_string, /* ndr_func */ 157 8, /* pdu_size_fixed_part */ 158 0, /* pdu_size_variable_part */ 159 8, /* c_size_fixed_part */ 160 0, /* c_size_variable_part */ 161 }; 162 163 164 /* 165 * */ 166 int 167 ndr__samr_string (struct ndr_reference *encl_ref) 168 { 169 struct samr_string *val = (struct samr_string *) encl_ref->datum; 170 struct ndr_reference myref; 171 172 (void) bzero(&myref, sizeof (myref)); 173 myref.enclosing = encl_ref; 174 myref.stream = encl_ref->stream; 175 176 /* do all basic elements first */ 177 NDR_MEMBER (_ushort, length, 0UL); 178 NDR_MEMBER (_ushort, allosize, 2UL); 179 180 /* do all constructed elements w/o pointers */ 181 182 /* do members with pointers in order */ 183 NDR_MEMBER_PTR (s_wchar, str, 4UL); 184 185 return 1; 186 } 187 188 189 190 int ndr__samr_vcb (struct ndr_reference *encl_ref); 191 struct ndr_typeinfo ndt__samr_vcb = { 192 1, /* NDR version */ 193 3, /* alignment */ 194 NDR_F_CONFORMANT|NDR_F_STRUCT, /* flags */ 195 ndr__samr_vcb, /* ndr_func */ 196 8, /* pdu_size_fixed_part */ 197 2, /* pdu_size_variable_part */ 198 8, /* c_size_fixed_part */ 199 2, /* c_size_variable_part */ 200 }; 201 202 203 /* 204 * */ 205 int 206 ndr__samr_vcb (struct ndr_reference *encl_ref) 207 { 208 struct samr_vcb *val = (struct samr_vcb *) encl_ref->datum; 209 struct ndr_reference myref; 210 211 (void) bzero(&myref, sizeof (myref)); 212 myref.enclosing = encl_ref; 213 myref.stream = encl_ref->stream; 214 215 /* do all basic elements first */ 216 NDR_MEMBER (_ulong, vc_first_is, 0UL); 217 NDR_MEMBER (_ulong, vc_length_is, 4UL); 218 219 /* do all constructed elements w/o pointers */ 220 NDR_MEMBER_ARR_WITH_SIZE_IS (_ushort, buffer, 8UL, 221 val->vc_length_is); 222 223 /* do members with pointers in order */ 224 225 return 1; 226 } 227 228 229 230 int ndr__samr_vcbuf (struct ndr_reference *encl_ref); 231 struct ndr_typeinfo ndt__samr_vcbuf = { 232 1, /* NDR version */ 233 3, /* alignment */ 234 NDR_F_STRUCT, /* flags */ 235 ndr__samr_vcbuf, /* ndr_func */ 236 8, /* pdu_size_fixed_part */ 237 0, /* pdu_size_variable_part */ 238 8, /* c_size_fixed_part */ 239 0, /* c_size_variable_part */ 240 }; 241 242 243 /* 244 * */ 245 int 246 ndr__samr_vcbuf (struct ndr_reference *encl_ref) 247 { 248 struct samr_vcbuf *val = (struct samr_vcbuf *) encl_ref->datum; 249 struct ndr_reference myref; 250 251 (void) bzero(&myref, sizeof (myref)); 252 myref.enclosing = encl_ref; 253 myref.stream = encl_ref->stream; 254 255 /* do all basic elements first */ 256 NDR_MEMBER (_ushort, wclen, 0UL); 257 NDR_MEMBER (_ushort, wcsize, 2UL); 258 259 /* do all constructed elements w/o pointers */ 260 261 /* do members with pointers in order */ 262 NDR_MEMBER_PTR (_samr_vcb, vcb, 4UL); 263 264 return 1; 265 } 266 267 268 269 int ndr__samr_handle (struct ndr_reference *encl_ref); 270 struct ndr_typeinfo ndt__samr_handle = { 271 1, /* NDR version */ 272 3, /* alignment */ 273 NDR_F_STRUCT, /* flags */ 274 ndr__samr_handle, /* ndr_func */ 275 20, /* pdu_size_fixed_part */ 276 0, /* pdu_size_variable_part */ 277 20, /* c_size_fixed_part */ 278 0, /* c_size_variable_part */ 279 }; 280 281 282 /* 283 * */ 284 int 285 ndr__samr_handle (struct ndr_reference *encl_ref) 286 { 287 struct samr_handle *val = (struct samr_handle *) 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, data1, 0UL); 296 NDR_MEMBER (_ulong, data2, 4UL); 297 298 /* do all constructed elements w/o pointers */ 299 NDR_MEMBER_ARR_WITH_DIMENSION (_ushort, data3, 8UL, 300 2); 301 NDR_MEMBER_ARR_WITH_DIMENSION (_uchar, data4, 12UL, 302 8); 303 304 /* do members with pointers in order */ 305 306 return 1; 307 } 308 309 310 311 int ndr__samr_quad (struct ndr_reference *encl_ref); 312 struct ndr_typeinfo ndt__samr_quad = { 313 1, /* NDR version */ 314 3, /* alignment */ 315 NDR_F_STRUCT, /* flags */ 316 ndr__samr_quad, /* ndr_func */ 317 8, /* pdu_size_fixed_part */ 318 0, /* pdu_size_variable_part */ 319 8, /* c_size_fixed_part */ 320 0, /* c_size_variable_part */ 321 }; 322 323 324 /* 325 * */ 326 int 327 ndr__samr_quad (struct ndr_reference *encl_ref) 328 { 329 struct samr_quad *val = (struct samr_quad *) encl_ref->datum; 330 struct ndr_reference myref; 331 332 (void) bzero(&myref, sizeof (myref)); 333 myref.enclosing = encl_ref; 334 myref.stream = encl_ref->stream; 335 336 /* do all basic elements first */ 337 NDR_MEMBER (_ulong, low, 0UL); 338 NDR_MEMBER (_ulong, high, 4UL); 339 340 /* do all constructed elements w/o pointers */ 341 342 /* do members with pointers in order */ 343 344 return 1; 345 } 346 347 348 349 int ndr__samr_short_blob (struct ndr_reference *encl_ref); 350 struct ndr_typeinfo ndt__samr_short_blob = { 351 1, /* NDR version */ 352 3, /* alignment */ 353 NDR_F_STRUCT, /* flags */ 354 ndr__samr_short_blob, /* ndr_func */ 355 8, /* pdu_size_fixed_part */ 356 0, /* pdu_size_variable_part */ 357 8, /* c_size_fixed_part */ 358 0, /* c_size_variable_part */ 359 }; 360 361 362 /* 363 * */ 364 int 365 ndr__samr_short_blob (struct ndr_reference *encl_ref) 366 { 367 struct samr_short_blob *val = (struct samr_short_blob *) encl_ref->datum; 368 struct ndr_reference myref; 369 370 (void) bzero(&myref, sizeof (myref)); 371 myref.enclosing = encl_ref; 372 myref.stream = encl_ref->stream; 373 374 /* do all basic elements first */ 375 NDR_MEMBER (_ushort, length, 0UL); 376 NDR_MEMBER (_ushort, maxlen, 2UL); 377 378 /* do all constructed elements w/o pointers */ 379 380 /* do members with pointers in order */ 381 NDR_MEMBER_PTR_WITH_SIZE_IS (_ushort, buf, 4UL, 382 val->length / 2UL); 383 384 return 1; 385 } 386 387 388 389 int ndr__samr_password_info (struct ndr_reference *encl_ref); 390 struct ndr_typeinfo ndt__samr_password_info = { 391 1, /* NDR version */ 392 3, /* alignment */ 393 NDR_F_STRUCT, /* flags */ 394 ndr__samr_password_info, /* ndr_func */ 395 8, /* pdu_size_fixed_part */ 396 0, /* pdu_size_variable_part */ 397 8, /* c_size_fixed_part */ 398 0, /* c_size_variable_part */ 399 }; 400 401 402 /* 403 * */ 404 int 405 ndr__samr_password_info (struct ndr_reference *encl_ref) 406 { 407 struct samr_password_info *val = (struct samr_password_info *) encl_ref->datum; 408 struct ndr_reference myref; 409 410 (void) bzero(&myref, sizeof (myref)); 411 myref.enclosing = encl_ref; 412 myref.stream = encl_ref->stream; 413 414 /* do all basic elements first */ 415 NDR_MEMBER (_ushort, min_length, 0UL); 416 NDR_MEMBER (_ulong, properties, 4UL); 417 418 /* do all constructed elements w/o pointers */ 419 420 /* do members with pointers in order */ 421 422 return 1; 423 } 424 425 426 427 int ndr__samr_logon_hours (struct ndr_reference *encl_ref); 428 struct ndr_typeinfo ndt__samr_logon_hours = { 429 1, /* NDR version */ 430 3, /* alignment */ 431 NDR_F_STRUCT, /* flags */ 432 ndr__samr_logon_hours, /* ndr_func */ 433 36, /* pdu_size_fixed_part */ 434 0, /* pdu_size_variable_part */ 435 36, /* c_size_fixed_part */ 436 0, /* c_size_variable_part */ 437 }; 438 439 440 /* 441 * */ 442 int 443 ndr__samr_logon_hours (struct ndr_reference *encl_ref) 444 { 445 struct samr_logon_hours *val = (struct samr_logon_hours *) encl_ref->datum; 446 struct ndr_reference myref; 447 448 (void) bzero(&myref, sizeof (myref)); 449 myref.enclosing = encl_ref; 450 myref.stream = encl_ref->stream; 451 452 /* do all basic elements first */ 453 NDR_MEMBER (_ulong, size, 0UL); 454 NDR_MEMBER (_ulong, first, 4UL); 455 NDR_MEMBER (_ulong, length, 8UL); 456 457 /* do all constructed elements w/o pointers */ 458 NDR_MEMBER_ARR_WITH_DIMENSION (_uchar, bitmap, 12UL, 459 21); 460 461 /* do members with pointers in order */ 462 463 return 1; 464 } 465 466 467 468 int ndr__samr_logon_info (struct ndr_reference *encl_ref); 469 struct ndr_typeinfo ndt__samr_logon_info = { 470 1, /* NDR version */ 471 3, /* alignment */ 472 NDR_F_STRUCT, /* flags */ 473 ndr__samr_logon_info, /* ndr_func */ 474 8, /* pdu_size_fixed_part */ 475 0, /* pdu_size_variable_part */ 476 8, /* c_size_fixed_part */ 477 0, /* c_size_variable_part */ 478 }; 479 480 481 /* 482 * */ 483 int 484 ndr__samr_logon_info (struct ndr_reference *encl_ref) 485 { 486 struct samr_logon_info *val = (struct samr_logon_info *) encl_ref->datum; 487 struct ndr_reference myref; 488 489 (void) bzero(&myref, sizeof (myref)); 490 myref.enclosing = encl_ref; 491 myref.stream = encl_ref->stream; 492 493 /* do all basic elements first */ 494 NDR_MEMBER (_ulong, units, 0UL); 495 NDR_MEMBER (_ulong, hours, 4UL); 496 497 /* do all constructed elements w/o pointers */ 498 499 /* do members with pointers in order */ 500 501 return 1; 502 } 503 504 505 506 int ndr__samr_logon_hours_all (struct ndr_reference *encl_ref); 507 struct ndr_typeinfo ndt__samr_logon_hours_all = { 508 1, /* NDR version */ 509 3, /* alignment */ 510 NDR_F_STRUCT, /* flags */ 511 ndr__samr_logon_hours_all, /* ndr_func */ 512 8, /* pdu_size_fixed_part */ 513 0, /* pdu_size_variable_part */ 514 8, /* c_size_fixed_part */ 515 0, /* c_size_variable_part */ 516 }; 517 518 519 /* 520 * */ 521 int 522 ndr__samr_logon_hours_all (struct ndr_reference *encl_ref) 523 { 524 struct samr_logon_hours_all *val = (struct samr_logon_hours_all *) encl_ref->datum; 525 struct ndr_reference myref; 526 527 (void) bzero(&myref, sizeof (myref)); 528 myref.enclosing = encl_ref; 529 myref.stream = encl_ref->stream; 530 531 /* do all basic elements first */ 532 NDR_MEMBER (_ushort, units_per_week, 0UL); 533 534 /* do all constructed elements w/o pointers */ 535 536 /* do members with pointers in order */ 537 NDR_MEMBER_PTR_WITH_SIZE_IS (_uchar, hours, 4UL, 538 val->units_per_week / 8UL); 539 540 return 1; 541 } 542 543 544 545 int ndr__samr_encr_passwd (struct ndr_reference *encl_ref); 546 struct ndr_typeinfo ndt__samr_encr_passwd = { 547 1, /* NDR version */ 548 0, /* alignment */ 549 NDR_F_STRUCT, /* flags */ 550 ndr__samr_encr_passwd, /* ndr_func */ 551 516, /* pdu_size_fixed_part */ 552 0, /* pdu_size_variable_part */ 553 516, /* c_size_fixed_part */ 554 0, /* c_size_variable_part */ 555 }; 556 557 558 /* 559 * */ 560 int 561 ndr__samr_encr_passwd (struct ndr_reference *encl_ref) 562 { 563 struct samr_encr_passwd *val = (struct samr_encr_passwd *) encl_ref->datum; 564 struct ndr_reference myref; 565 566 (void) bzero(&myref, sizeof (myref)); 567 myref.enclosing = encl_ref; 568 myref.stream = encl_ref->stream; 569 570 /* do all basic elements first */ 571 572 /* do all constructed elements w/o pointers */ 573 NDR_MEMBER_ARR_WITH_DIMENSION (_uchar, data, 0UL, 574 516); 575 576 /* do members with pointers in order */ 577 578 return 1; 579 } 580 581 582 583 int ndr__samr_encr_hash (struct ndr_reference *encl_ref); 584 struct ndr_typeinfo ndt__samr_encr_hash = { 585 1, /* NDR version */ 586 0, /* alignment */ 587 NDR_F_STRUCT, /* flags */ 588 ndr__samr_encr_hash, /* ndr_func */ 589 16, /* pdu_size_fixed_part */ 590 0, /* pdu_size_variable_part */ 591 16, /* c_size_fixed_part */ 592 0, /* c_size_variable_part */ 593 }; 594 595 596 /* 597 * */ 598 int 599 ndr__samr_encr_hash (struct ndr_reference *encl_ref) 600 { 601 struct samr_encr_hash *val = (struct samr_encr_hash *) encl_ref->datum; 602 struct ndr_reference myref; 603 604 (void) bzero(&myref, sizeof (myref)); 605 myref.enclosing = encl_ref; 606 myref.stream = encl_ref->stream; 607 608 /* do all basic elements first */ 609 610 /* do all constructed elements w/o pointers */ 611 NDR_MEMBER_ARR_WITH_DIMENSION (_uchar, data, 0UL, 612 16); 613 614 /* do members with pointers in order */ 615 616 return 1; 617 } 618 619 620 621 int ndr__samr_Connect (struct ndr_reference *encl_ref); 622 struct ndr_typeinfo ndt__samr_Connect = { 623 1, /* NDR version */ 624 3, /* alignment */ 625 NDR_F_OPERATION, /* flags */ 626 ndr__samr_Connect, /* ndr_func */ 627 32, /* pdu_size_fixed_part */ 628 0, /* pdu_size_variable_part */ 629 32, /* c_size_fixed_part */ 630 0, /* c_size_variable_part */ 631 }; 632 633 634 /* 635 * [operation(0)] 636 */ 637 int 638 ndr__samr_Connect (struct ndr_reference *encl_ref) 639 { 640 struct samr_Connect *val = (struct samr_Connect *) encl_ref->datum; 641 struct ndr_reference myref; 642 643 (void) bzero(&myref, sizeof (myref)); 644 myref.enclosing = encl_ref; 645 myref.stream = encl_ref->stream; 646 647 /* do all members in order */ 648 if (NDR_DIR_IS_IN) { 649 NDR_TOPMOST_MEMBER_PTR (_ulong, servername); 650 } 651 if (NDR_DIR_IS_IN) { 652 NDR_TOPMOST_MEMBER (_ulong, access_mask); 653 } 654 if (NDR_DIR_IS_OUT) { 655 NDR_TOPMOST_MEMBER (_samr_handle, handle); 656 } 657 if (NDR_DIR_IS_OUT) { 658 NDR_TOPMOST_MEMBER (_ulong, status); 659 } 660 661 return 1; 662 } 663 664 665 666 int ndr__samr_Connect2 (struct ndr_reference *encl_ref); 667 struct ndr_typeinfo ndt__samr_Connect2 = { 668 1, /* NDR version */ 669 3, /* alignment */ 670 NDR_F_OPERATION, /* flags */ 671 ndr__samr_Connect2, /* ndr_func */ 672 32, /* pdu_size_fixed_part */ 673 0, /* pdu_size_variable_part */ 674 32, /* c_size_fixed_part */ 675 0, /* c_size_variable_part */ 676 }; 677 678 679 /* 680 * [operation(57)] 681 */ 682 int 683 ndr__samr_Connect2 (struct ndr_reference *encl_ref) 684 { 685 struct samr_Connect2 *val = (struct samr_Connect2 *) encl_ref->datum; 686 struct ndr_reference myref; 687 688 (void) bzero(&myref, sizeof (myref)); 689 myref.enclosing = encl_ref; 690 myref.stream = encl_ref->stream; 691 692 /* do all members in order */ 693 if (NDR_DIR_IS_IN) { 694 NDR_TOPMOST_MEMBER_PTR (s_wchar, servername); 695 } 696 if (NDR_DIR_IS_IN) { 697 NDR_TOPMOST_MEMBER (_ulong, access_mask); 698 } 699 if (NDR_DIR_IS_OUT) { 700 NDR_TOPMOST_MEMBER (_samr_handle, handle); 701 } 702 if (NDR_DIR_IS_OUT) { 703 NDR_TOPMOST_MEMBER (_ulong, status); 704 } 705 706 return 1; 707 } 708 709 710 711 int ndr__samr_Connect4 (struct ndr_reference *encl_ref); 712 struct ndr_typeinfo ndt__samr_Connect4 = { 713 1, /* NDR version */ 714 3, /* alignment */ 715 NDR_F_OPERATION, /* flags */ 716 ndr__samr_Connect4, /* ndr_func */ 717 36, /* pdu_size_fixed_part */ 718 0, /* pdu_size_variable_part */ 719 36, /* c_size_fixed_part */ 720 0, /* c_size_variable_part */ 721 }; 722 723 724 /* 725 * [operation(62)] 726 */ 727 int 728 ndr__samr_Connect4 (struct ndr_reference *encl_ref) 729 { 730 struct samr_Connect4 *val = (struct samr_Connect4 *) encl_ref->datum; 731 struct ndr_reference myref; 732 733 (void) bzero(&myref, sizeof (myref)); 734 myref.enclosing = encl_ref; 735 myref.stream = encl_ref->stream; 736 737 /* do all members in order */ 738 if (NDR_DIR_IS_IN) { 739 NDR_TOPMOST_MEMBER_PTR (s_wchar, servername); 740 } 741 if (NDR_DIR_IS_IN) { 742 NDR_TOPMOST_MEMBER (_ulong, revision); 743 } 744 if (NDR_DIR_IS_IN) { 745 NDR_TOPMOST_MEMBER (_ulong, access_mask); 746 } 747 if (NDR_DIR_IS_OUT) { 748 NDR_TOPMOST_MEMBER (_samr_handle, handle); 749 } 750 if (NDR_DIR_IS_OUT) { 751 NDR_TOPMOST_MEMBER (_ulong, status); 752 } 753 754 return 1; 755 } 756 757 758 759 int ndr__samr_revision_info1 (struct ndr_reference *encl_ref); 760 struct ndr_typeinfo ndt__samr_revision_info1 = { 761 1, /* NDR version */ 762 3, /* alignment */ 763 NDR_F_STRUCT, /* flags */ 764 ndr__samr_revision_info1, /* ndr_func */ 765 8, /* pdu_size_fixed_part */ 766 0, /* pdu_size_variable_part */ 767 8, /* c_size_fixed_part */ 768 0, /* c_size_variable_part */ 769 }; 770 771 772 /* 773 * */ 774 int 775 ndr__samr_revision_info1 (struct ndr_reference *encl_ref) 776 { 777 struct samr_revision_info1 *val = (struct samr_revision_info1 *) encl_ref->datum; 778 struct ndr_reference myref; 779 780 (void) bzero(&myref, sizeof (myref)); 781 myref.enclosing = encl_ref; 782 myref.stream = encl_ref->stream; 783 784 /* do all basic elements first */ 785 NDR_MEMBER (_ulong, revision, 0UL); 786 NDR_MEMBER (_ulong, supported_features, 4UL); 787 788 /* do all constructed elements w/o pointers */ 789 790 /* do members with pointers in order */ 791 792 return 1; 793 } 794 795 796 797 int ndr__samr_revision_info (struct ndr_reference *encl_ref); 798 struct ndr_typeinfo ndt__samr_revision_info = { 799 1, /* NDR version */ 800 3, /* alignment */ 801 NDR_F_UNION, /* flags */ 802 ndr__samr_revision_info, /* ndr_func */ 803 8, /* pdu_size_fixed_part */ 804 0, /* pdu_size_variable_part */ 805 8, /* c_size_fixed_part */ 806 0, /* c_size_variable_part */ 807 }; 808 809 810 /* 811 * */ 812 int 813 ndr__samr_revision_info (struct ndr_reference *encl_ref) 814 { 815 union samr_revision_info *val = (union samr_revision_info *) encl_ref->datum; 816 struct ndr_reference myref; 817 818 (void) bzero(&myref, sizeof (myref)); 819 myref.enclosing = encl_ref; 820 myref.stream = encl_ref->stream; 821 822 switch (encl_ref->switch_is) { 823 case 1: 824 NDR_MEMBER (_samr_revision_info1, info1, 0UL); 825 break; 826 827 default: 828 NDR_MEMBER_PTR (_char, nullptr, 0UL); 829 break; 830 831 } 832 833 834 return 1; 835 } 836 837 838 839 int ndr__samr_Connect5 (struct ndr_reference *encl_ref); 840 struct ndr_typeinfo ndt__samr_Connect5 = { 841 1, /* NDR version */ 842 3, /* alignment */ 843 NDR_F_OPERATION, /* flags */ 844 ndr__samr_Connect5, /* ndr_func */ 845 48, /* pdu_size_fixed_part */ 846 0, /* pdu_size_variable_part */ 847 48, /* c_size_fixed_part */ 848 0, /* c_size_variable_part */ 849 }; 850 851 852 /* 853 * [operation(64)] 854 */ 855 int 856 ndr__samr_Connect5 (struct ndr_reference *encl_ref) 857 { 858 struct samr_Connect5 *val = (struct samr_Connect5 *) encl_ref->datum; 859 struct ndr_reference myref; 860 861 (void) bzero(&myref, sizeof (myref)); 862 myref.enclosing = encl_ref; 863 myref.stream = encl_ref->stream; 864 865 /* do all members in order */ 866 if (NDR_DIR_IS_IN) { 867 NDR_TOPMOST_MEMBER_PTR (s_wchar, servername); 868 } 869 if (NDR_DIR_IS_IN) { 870 NDR_TOPMOST_MEMBER (_ulong, access_mask); 871 } 872 NDR_TOPMOST_MEMBER (_ulong, unknown2_00000001); 873 NDR_TOPMOST_MEMBER (_ulong, unknown3_00000001); 874 NDR_TOPMOST_MEMBER (_ulong, unknown4_00000003); 875 NDR_TOPMOST_MEMBER (_ulong, unknown5_00000000); 876 if (NDR_DIR_IS_OUT) { 877 NDR_TOPMOST_MEMBER (_samr_handle, handle); 878 } 879 if (NDR_DIR_IS_OUT) { 880 NDR_TOPMOST_MEMBER (_ulong, status); 881 } 882 883 return 1; 884 } 885 886 887 888 int ndr__samr_CloseHandle (struct ndr_reference *encl_ref); 889 struct ndr_typeinfo ndt__samr_CloseHandle = { 890 1, /* NDR version */ 891 3, /* alignment */ 892 NDR_F_OPERATION, /* flags */ 893 ndr__samr_CloseHandle, /* ndr_func */ 894 44, /* pdu_size_fixed_part */ 895 0, /* pdu_size_variable_part */ 896 44, /* c_size_fixed_part */ 897 0, /* c_size_variable_part */ 898 }; 899 900 901 /* 902 * [operation(1)] 903 */ 904 int 905 ndr__samr_CloseHandle (struct ndr_reference *encl_ref) 906 { 907 struct samr_CloseHandle *val = (struct samr_CloseHandle *) encl_ref->datum; 908 struct ndr_reference myref; 909 910 (void) bzero(&myref, sizeof (myref)); 911 myref.enclosing = encl_ref; 912 myref.stream = encl_ref->stream; 913 914 /* do all members in order */ 915 if (NDR_DIR_IS_IN) { 916 NDR_TOPMOST_MEMBER (_samr_handle, handle); 917 } 918 if (NDR_DIR_IS_OUT) { 919 NDR_TOPMOST_MEMBER (_samr_handle, result_handle); 920 } 921 if (NDR_DIR_IS_OUT) { 922 NDR_TOPMOST_MEMBER (_ulong, status); 923 } 924 925 return 1; 926 } 927 928 929 930 int ndr__samr_LookupDomain (struct ndr_reference *encl_ref); 931 struct ndr_typeinfo ndt__samr_LookupDomain = { 932 1, /* NDR version */ 933 3, /* alignment */ 934 NDR_F_OPERATION, /* flags */ 935 ndr__samr_LookupDomain, /* ndr_func */ 936 36, /* pdu_size_fixed_part */ 937 0, /* pdu_size_variable_part */ 938 36, /* c_size_fixed_part */ 939 0, /* c_size_variable_part */ 940 }; 941 942 943 /* 944 * [operation(5)] 945 */ 946 int 947 ndr__samr_LookupDomain (struct ndr_reference *encl_ref) 948 { 949 struct samr_LookupDomain *val = (struct samr_LookupDomain *) encl_ref->datum; 950 struct ndr_reference myref; 951 952 (void) bzero(&myref, sizeof (myref)); 953 myref.enclosing = encl_ref; 954 myref.stream = encl_ref->stream; 955 956 /* do all members in order */ 957 if (NDR_DIR_IS_IN) { 958 NDR_TOPMOST_MEMBER (_samr_handle, handle); 959 } 960 if (NDR_DIR_IS_IN) { 961 NDR_TOPMOST_MEMBER (_samr_string, domain_name); 962 } 963 if (NDR_DIR_IS_OUT) { 964 NDR_TOPMOST_MEMBER_PTR (_samr_sid, sid); 965 } 966 if (NDR_DIR_IS_OUT) { 967 NDR_TOPMOST_MEMBER (_ulong, status); 968 } 969 970 return 1; 971 } 972 973 974 975 int ndr__samr_LocalDomainEntry (struct ndr_reference *encl_ref); 976 struct ndr_typeinfo ndt__samr_LocalDomainEntry = { 977 1, /* NDR version */ 978 3, /* alignment */ 979 NDR_F_STRUCT, /* flags */ 980 ndr__samr_LocalDomainEntry, /* ndr_func */ 981 12, /* pdu_size_fixed_part */ 982 0, /* pdu_size_variable_part */ 983 12, /* c_size_fixed_part */ 984 0, /* c_size_variable_part */ 985 }; 986 987 988 /* 989 * */ 990 int 991 ndr__samr_LocalDomainEntry (struct ndr_reference *encl_ref) 992 { 993 struct samr_LocalDomainEntry *val = (struct samr_LocalDomainEntry *) encl_ref->datum; 994 struct ndr_reference myref; 995 996 (void) bzero(&myref, sizeof (myref)); 997 myref.enclosing = encl_ref; 998 myref.stream = encl_ref->stream; 999 1000 /* do all basic elements first */ 1001 NDR_MEMBER (_ulong, unknown, 0UL); 1002 1003 /* do all constructed elements w/o pointers */ 1004 1005 /* do members with pointers in order */ 1006 NDR_MEMBER (_samr_string, name, 4UL); 1007 1008 return 1; 1009 } 1010 1011 1012 1013 int ndr__samr_LocalDomainInfo (struct ndr_reference *encl_ref); 1014 struct ndr_typeinfo ndt__samr_LocalDomainInfo = { 1015 1, /* NDR version */ 1016 3, /* alignment */ 1017 NDR_F_STRUCT, /* flags */ 1018 ndr__samr_LocalDomainInfo, /* ndr_func */ 1019 8, /* pdu_size_fixed_part */ 1020 0, /* pdu_size_variable_part */ 1021 8, /* c_size_fixed_part */ 1022 0, /* c_size_variable_part */ 1023 }; 1024 1025 1026 /* 1027 * */ 1028 int 1029 ndr__samr_LocalDomainInfo (struct ndr_reference *encl_ref) 1030 { 1031 struct samr_LocalDomainInfo *val = (struct samr_LocalDomainInfo *) encl_ref->datum; 1032 struct ndr_reference myref; 1033 1034 (void) bzero(&myref, sizeof (myref)); 1035 myref.enclosing = encl_ref; 1036 myref.stream = encl_ref->stream; 1037 1038 /* do all basic elements first */ 1039 NDR_MEMBER (_ulong, entries_read, 0UL); 1040 1041 /* do all constructed elements w/o pointers */ 1042 1043 /* do members with pointers in order */ 1044 NDR_MEMBER_PTR_WITH_SIZE_IS (_samr_LocalDomainEntry, entry, 4UL, 1045 val->entries_read); 1046 1047 return 1; 1048 } 1049 1050 1051 1052 int ndr__samr_EnumLocalDomain (struct ndr_reference *encl_ref); 1053 struct ndr_typeinfo ndt__samr_EnumLocalDomain = { 1054 1, /* NDR version */ 1055 3, /* alignment */ 1056 NDR_F_OPERATION, /* flags */ 1057 ndr__samr_EnumLocalDomain, /* ndr_func */ 1058 40, /* pdu_size_fixed_part */ 1059 0, /* pdu_size_variable_part */ 1060 40, /* c_size_fixed_part */ 1061 0, /* c_size_variable_part */ 1062 }; 1063 1064 1065 /* 1066 * [operation(6)] 1067 */ 1068 int 1069 ndr__samr_EnumLocalDomain (struct ndr_reference *encl_ref) 1070 { 1071 struct samr_EnumLocalDomain *val = (struct samr_EnumLocalDomain *) encl_ref->datum; 1072 struct ndr_reference myref; 1073 1074 (void) bzero(&myref, sizeof (myref)); 1075 myref.enclosing = encl_ref; 1076 myref.stream = encl_ref->stream; 1077 1078 /* do all members in order */ 1079 if (NDR_DIR_IS_IN) { 1080 NDR_TOPMOST_MEMBER (_samr_handle, handle); 1081 } 1082 NDR_TOPMOST_MEMBER (_ulong, enum_context); 1083 if (NDR_DIR_IS_IN) { 1084 NDR_TOPMOST_MEMBER (_ulong, max_length); 1085 } 1086 if (NDR_DIR_IS_OUT) { 1087 NDR_TOPMOST_MEMBER_PTR (_samr_LocalDomainInfo, info); 1088 } 1089 if (NDR_DIR_IS_OUT) { 1090 NDR_TOPMOST_MEMBER (_ulong, total_entries); 1091 } 1092 if (NDR_DIR_IS_OUT) { 1093 NDR_TOPMOST_MEMBER (_ulong, status); 1094 } 1095 1096 return 1; 1097 } 1098 1099 1100 1101 int ndr__samr_OpenDomain (struct ndr_reference *encl_ref); 1102 struct ndr_typeinfo ndt__samr_OpenDomain = { 1103 1, /* NDR version */ 1104 3, /* alignment */ 1105 NDR_F_OPERATION, /* flags */ 1106 ndr__samr_OpenDomain, /* ndr_func */ 1107 52, /* pdu_size_fixed_part */ 1108 0, /* pdu_size_variable_part */ 1109 52, /* c_size_fixed_part */ 1110 0, /* c_size_variable_part */ 1111 }; 1112 1113 1114 /* 1115 * [operation(7)] 1116 */ 1117 int 1118 ndr__samr_OpenDomain (struct ndr_reference *encl_ref) 1119 { 1120 struct samr_OpenDomain *val = (struct samr_OpenDomain *) encl_ref->datum; 1121 struct ndr_reference myref; 1122 1123 (void) bzero(&myref, sizeof (myref)); 1124 myref.enclosing = encl_ref; 1125 myref.stream = encl_ref->stream; 1126 1127 /* do all members in order */ 1128 if (NDR_DIR_IS_IN) { 1129 NDR_TOPMOST_MEMBER (_samr_handle, handle); 1130 } 1131 if (NDR_DIR_IS_IN) { 1132 NDR_TOPMOST_MEMBER (_ulong, access_mask); 1133 } 1134 if (NDR_DIR_IS_IN) { 1135 NDR_TOPMOST_MEMBER_REF (_samr_sid, sid); 1136 } 1137 if (NDR_DIR_IS_OUT) { 1138 NDR_TOPMOST_MEMBER (_samr_handle, domain_handle); 1139 } 1140 if (NDR_DIR_IS_OUT) { 1141 NDR_TOPMOST_MEMBER (_ulong, status); 1142 } 1143 1144 return 1; 1145 } 1146 1147 1148 1149 int ndr__samr_QueryDomainInfo2 (struct ndr_reference *encl_ref); 1150 struct ndr_typeinfo ndt__samr_QueryDomainInfo2 = { 1151 1, /* NDR version */ 1152 3, /* alignment */ 1153 NDR_F_STRUCT, /* flags */ 1154 ndr__samr_QueryDomainInfo2, /* ndr_func */ 1155 64, /* pdu_size_fixed_part */ 1156 0, /* pdu_size_variable_part */ 1157 64, /* c_size_fixed_part */ 1158 0, /* c_size_variable_part */ 1159 }; 1160 1161 1162 /* 1163 * */ 1164 int 1165 ndr__samr_QueryDomainInfo2 (struct ndr_reference *encl_ref) 1166 { 1167 struct samr_QueryDomainInfo2 *val = (struct samr_QueryDomainInfo2 *) 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 NDR_MEMBER (_ulong, unknown1, 0UL); 1176 NDR_MEMBER (_ulong, unknown2, 4UL); 1177 NDR_MEMBER (_ulong, sequence_num, 32UL); 1178 NDR_MEMBER (_ulong, unknown3, 36UL); 1179 NDR_MEMBER (_ulong, unknown4, 40UL); 1180 NDR_MEMBER (_ulong, unknown5, 44UL); 1181 NDR_MEMBER (_ulong, unknown6, 48UL); 1182 NDR_MEMBER (_ulong, num_users, 52UL); 1183 NDR_MEMBER (_ulong, num_groups, 56UL); 1184 NDR_MEMBER (_ulong, num_aliases, 60UL); 1185 1186 /* do all constructed elements w/o pointers */ 1187 1188 /* do members with pointers in order */ 1189 NDR_MEMBER (_samr_string, s1, 8UL); 1190 NDR_MEMBER (_samr_string, domain, 16UL); 1191 NDR_MEMBER (_samr_string, s2, 24UL); 1192 1193 return 1; 1194 } 1195 1196 1197 1198 int ndr__samr_QueryDomainInfo6 (struct ndr_reference *encl_ref); 1199 struct ndr_typeinfo ndt__samr_QueryDomainInfo6 = { 1200 1, /* NDR version */ 1201 3, /* alignment */ 1202 NDR_F_STRUCT, /* flags */ 1203 ndr__samr_QueryDomainInfo6, /* ndr_func */ 1204 20, /* pdu_size_fixed_part */ 1205 0, /* pdu_size_variable_part */ 1206 20, /* c_size_fixed_part */ 1207 0, /* c_size_variable_part */ 1208 }; 1209 1210 1211 /* 1212 * */ 1213 int 1214 ndr__samr_QueryDomainInfo6 (struct ndr_reference *encl_ref) 1215 { 1216 struct samr_QueryDomainInfo6 *val = (struct samr_QueryDomainInfo6 *) encl_ref->datum; 1217 struct ndr_reference myref; 1218 1219 (void) bzero(&myref, sizeof (myref)); 1220 myref.enclosing = encl_ref; 1221 myref.stream = encl_ref->stream; 1222 1223 /* do all basic elements first */ 1224 NDR_MEMBER (_ulong, unknown1, 0UL); 1225 NDR_MEMBER (_ulong, unknown2, 4UL); 1226 NDR_MEMBER (_ulong, unknown3, 8UL); 1227 NDR_MEMBER (_ulong, unknown4, 12UL); 1228 NDR_MEMBER (_ulong, unknown5, 16UL); 1229 1230 /* do all constructed elements w/o pointers */ 1231 1232 /* do members with pointers in order */ 1233 1234 return 1; 1235 } 1236 1237 1238 1239 int ndr__samr_QueryDomainInfo7 (struct ndr_reference *encl_ref); 1240 struct ndr_typeinfo ndt__samr_QueryDomainInfo7 = { 1241 1, /* NDR version */ 1242 3, /* alignment */ 1243 NDR_F_STRUCT, /* flags */ 1244 ndr__samr_QueryDomainInfo7, /* ndr_func */ 1245 4, /* pdu_size_fixed_part */ 1246 0, /* pdu_size_variable_part */ 1247 4, /* c_size_fixed_part */ 1248 0, /* c_size_variable_part */ 1249 }; 1250 1251 1252 /* 1253 * */ 1254 int 1255 ndr__samr_QueryDomainInfo7 (struct ndr_reference *encl_ref) 1256 { 1257 struct samr_QueryDomainInfo7 *val = (struct samr_QueryDomainInfo7 *) encl_ref->datum; 1258 struct ndr_reference myref; 1259 1260 (void) bzero(&myref, sizeof (myref)); 1261 myref.enclosing = encl_ref; 1262 myref.stream = encl_ref->stream; 1263 1264 /* do all basic elements first */ 1265 NDR_MEMBER (_ulong, unknown1, 0UL); 1266 1267 /* do all constructed elements w/o pointers */ 1268 1269 /* do members with pointers in order */ 1270 1271 return 1; 1272 } 1273 1274 1275 1276 int ndr__samr_QueryDomainInfo_ru (struct ndr_reference *encl_ref); 1277 struct ndr_typeinfo ndt__samr_QueryDomainInfo_ru = { 1278 1, /* NDR version */ 1279 3, /* alignment */ 1280 NDR_F_UNION, /* flags */ 1281 ndr__samr_QueryDomainInfo_ru, /* ndr_func */ 1282 64, /* pdu_size_fixed_part */ 1283 0, /* pdu_size_variable_part */ 1284 64, /* c_size_fixed_part */ 1285 0, /* c_size_variable_part */ 1286 }; 1287 1288 1289 /* 1290 * */ 1291 int 1292 ndr__samr_QueryDomainInfo_ru (struct ndr_reference *encl_ref) 1293 { 1294 union samr_QueryDomainInfo_ru *val = (union samr_QueryDomainInfo_ru *) encl_ref->datum; 1295 struct ndr_reference myref; 1296 1297 (void) bzero(&myref, sizeof (myref)); 1298 myref.enclosing = encl_ref; 1299 myref.stream = encl_ref->stream; 1300 1301 switch (encl_ref->switch_is) { 1302 case 2: 1303 NDR_MEMBER (_samr_QueryDomainInfo2, info2, 0UL); 1304 break; 1305 1306 case 6: 1307 NDR_MEMBER (_samr_QueryDomainInfo6, info6, 0UL); 1308 break; 1309 1310 case 7: 1311 NDR_MEMBER (_samr_QueryDomainInfo7, info7, 0UL); 1312 break; 1313 1314 default: 1315 NDR_MEMBER_PTR (_char, nullptr, 0UL); 1316 break; 1317 1318 } 1319 1320 1321 return 1; 1322 } 1323 1324 1325 1326 int ndr__samr_QueryDomainInfoRes (struct ndr_reference *encl_ref); 1327 struct ndr_typeinfo ndt__samr_QueryDomainInfoRes = { 1328 1, /* NDR version */ 1329 3, /* alignment */ 1330 NDR_F_STRUCT, /* flags */ 1331 ndr__samr_QueryDomainInfoRes, /* ndr_func */ 1332 68, /* pdu_size_fixed_part */ 1333 0, /* pdu_size_variable_part */ 1334 68, /* c_size_fixed_part */ 1335 0, /* c_size_variable_part */ 1336 }; 1337 1338 1339 /* 1340 * */ 1341 int 1342 ndr__samr_QueryDomainInfoRes (struct ndr_reference *encl_ref) 1343 { 1344 struct samr_QueryDomainInfoRes *val = (struct samr_QueryDomainInfoRes *) encl_ref->datum; 1345 struct ndr_reference myref; 1346 1347 (void) bzero(&myref, sizeof (myref)); 1348 myref.enclosing = encl_ref; 1349 myref.stream = encl_ref->stream; 1350 1351 /* do all basic elements first */ 1352 NDR_MEMBER (_ushort, switch_value, 0UL); 1353 1354 /* do all constructed elements w/o pointers */ 1355 1356 /* do members with pointers in order */ 1357 NDR_MEMBER_WITH_SWITCH_IS (_samr_QueryDomainInfo_ru, ru, 4UL, 1358 val->switch_value); 1359 1360 return 1; 1361 } 1362 1363 1364 1365 int ndr__samr_QueryDomainInfo (struct ndr_reference *encl_ref); 1366 struct ndr_typeinfo ndt__samr_QueryDomainInfo = { 1367 1, /* NDR version */ 1368 3, /* alignment */ 1369 NDR_F_OPERATION, /* flags */ 1370 ndr__samr_QueryDomainInfo, /* ndr_func */ 1371 32, /* pdu_size_fixed_part */ 1372 0, /* pdu_size_variable_part */ 1373 32, /* c_size_fixed_part */ 1374 0, /* c_size_variable_part */ 1375 }; 1376 1377 1378 /* 1379 * [operation(8)] 1380 */ 1381 int 1382 ndr__samr_QueryDomainInfo (struct ndr_reference *encl_ref) 1383 { 1384 struct samr_QueryDomainInfo *val = (struct samr_QueryDomainInfo *) encl_ref->datum; 1385 struct ndr_reference myref; 1386 1387 (void) bzero(&myref, sizeof (myref)); 1388 myref.enclosing = encl_ref; 1389 myref.stream = encl_ref->stream; 1390 1391 /* do all members in order */ 1392 if (NDR_DIR_IS_IN) { 1393 NDR_TOPMOST_MEMBER (_samr_handle, domain_handle); 1394 } 1395 if (NDR_DIR_IS_IN) { 1396 NDR_TOPMOST_MEMBER (_ushort, info_level); 1397 } 1398 if (NDR_DIR_IS_OUT) { 1399 NDR_TOPMOST_MEMBER_PTR (_samr_QueryDomainInfoRes, info); 1400 } 1401 if (NDR_DIR_IS_OUT) { 1402 NDR_TOPMOST_MEMBER (_ulong, status); 1403 } 1404 1405 return 1; 1406 } 1407 1408 1409 1410 int ndr__samr_QueryInfoDomain2 (struct ndr_reference *encl_ref); 1411 struct ndr_typeinfo ndt__samr_QueryInfoDomain2 = { 1412 1, /* NDR version */ 1413 3, /* alignment */ 1414 NDR_F_OPERATION, /* flags */ 1415 ndr__samr_QueryInfoDomain2, /* ndr_func */ 1416 32, /* pdu_size_fixed_part */ 1417 0, /* pdu_size_variable_part */ 1418 32, /* c_size_fixed_part */ 1419 0, /* c_size_variable_part */ 1420 }; 1421 1422 1423 /* 1424 * [operation(46)] 1425 */ 1426 int 1427 ndr__samr_QueryInfoDomain2 (struct ndr_reference *encl_ref) 1428 { 1429 struct samr_QueryInfoDomain2 *val = (struct samr_QueryInfoDomain2 *) encl_ref->datum; 1430 struct ndr_reference myref; 1431 1432 (void) bzero(&myref, sizeof (myref)); 1433 myref.enclosing = encl_ref; 1434 myref.stream = encl_ref->stream; 1435 1436 /* do all members in order */ 1437 if (NDR_DIR_IS_IN) { 1438 NDR_TOPMOST_MEMBER (_samr_handle, domain_handle); 1439 } 1440 if (NDR_DIR_IS_IN) { 1441 NDR_TOPMOST_MEMBER (_ushort, info_level); 1442 } 1443 if (NDR_DIR_IS_OUT) { 1444 NDR_TOPMOST_MEMBER_PTR (_samr_QueryDomainInfoRes, info); 1445 } 1446 if (NDR_DIR_IS_OUT) { 1447 NDR_TOPMOST_MEMBER (_ulong, status); 1448 } 1449 1450 return 1; 1451 } 1452 1453 1454 1455 int ndr__samr_QueryAliasInfoGeneral (struct ndr_reference *encl_ref); 1456 struct ndr_typeinfo ndt__samr_QueryAliasInfoGeneral = { 1457 1, /* NDR version */ 1458 3, /* alignment */ 1459 NDR_F_STRUCT, /* flags */ 1460 ndr__samr_QueryAliasInfoGeneral, /* ndr_func */ 1461 24, /* pdu_size_fixed_part */ 1462 0, /* pdu_size_variable_part */ 1463 24, /* c_size_fixed_part */ 1464 0, /* c_size_variable_part */ 1465 }; 1466 1467 1468 /* 1469 * */ 1470 int 1471 ndr__samr_QueryAliasInfoGeneral (struct ndr_reference *encl_ref) 1472 { 1473 struct samr_QueryAliasInfoGeneral *val = (struct samr_QueryAliasInfoGeneral *) encl_ref->datum; 1474 struct ndr_reference myref; 1475 1476 (void) bzero(&myref, sizeof (myref)); 1477 myref.enclosing = encl_ref; 1478 myref.stream = encl_ref->stream; 1479 1480 /* do all basic elements first */ 1481 NDR_MEMBER (_ushort, level, 0UL); 1482 NDR_MEMBER (_ulong, member_count, 12UL); 1483 1484 /* do all constructed elements w/o pointers */ 1485 1486 /* do members with pointers in order */ 1487 NDR_MEMBER (_samr_string, name, 4UL); 1488 NDR_MEMBER (_samr_string, desc, 16UL); 1489 1490 return 1; 1491 } 1492 1493 1494 1495 int ndr__samr_QueryAliasInfoName (struct ndr_reference *encl_ref); 1496 struct ndr_typeinfo ndt__samr_QueryAliasInfoName = { 1497 1, /* NDR version */ 1498 3, /* alignment */ 1499 NDR_F_STRUCT, /* flags */ 1500 ndr__samr_QueryAliasInfoName, /* ndr_func */ 1501 12, /* pdu_size_fixed_part */ 1502 0, /* pdu_size_variable_part */ 1503 12, /* c_size_fixed_part */ 1504 0, /* c_size_variable_part */ 1505 }; 1506 1507 1508 /* 1509 * */ 1510 int 1511 ndr__samr_QueryAliasInfoName (struct ndr_reference *encl_ref) 1512 { 1513 struct samr_QueryAliasInfoName *val = (struct samr_QueryAliasInfoName *) encl_ref->datum; 1514 struct ndr_reference myref; 1515 1516 (void) bzero(&myref, sizeof (myref)); 1517 myref.enclosing = encl_ref; 1518 myref.stream = encl_ref->stream; 1519 1520 /* do all basic elements first */ 1521 NDR_MEMBER (_ushort, level, 0UL); 1522 1523 /* do all constructed elements w/o pointers */ 1524 1525 /* do members with pointers in order */ 1526 NDR_MEMBER (_samr_string, name, 4UL); 1527 1528 return 1; 1529 } 1530 1531 1532 1533 int ndr__samr_QueryAliasInfoComment (struct ndr_reference *encl_ref); 1534 struct ndr_typeinfo ndt__samr_QueryAliasInfoComment = { 1535 1, /* NDR version */ 1536 3, /* alignment */ 1537 NDR_F_STRUCT, /* flags */ 1538 ndr__samr_QueryAliasInfoComment, /* ndr_func */ 1539 12, /* pdu_size_fixed_part */ 1540 0, /* pdu_size_variable_part */ 1541 12, /* c_size_fixed_part */ 1542 0, /* c_size_variable_part */ 1543 }; 1544 1545 1546 /* 1547 * */ 1548 int 1549 ndr__samr_QueryAliasInfoComment (struct ndr_reference *encl_ref) 1550 { 1551 struct samr_QueryAliasInfoComment *val = (struct samr_QueryAliasInfoComment *) encl_ref->datum; 1552 struct ndr_reference myref; 1553 1554 (void) bzero(&myref, sizeof (myref)); 1555 myref.enclosing = encl_ref; 1556 myref.stream = encl_ref->stream; 1557 1558 /* do all basic elements first */ 1559 NDR_MEMBER (_ushort, level, 0UL); 1560 1561 /* do all constructed elements w/o pointers */ 1562 1563 /* do members with pointers in order */ 1564 NDR_MEMBER (_samr_string, desc, 4UL); 1565 1566 return 1; 1567 } 1568 1569 1570 1571 int ndr__samr_QueryAliasInfo_ru (struct ndr_reference *encl_ref); 1572 struct ndr_typeinfo ndt__samr_QueryAliasInfo_ru = { 1573 1, /* NDR version */ 1574 3, /* alignment */ 1575 NDR_F_UNION, /* flags */ 1576 ndr__samr_QueryAliasInfo_ru, /* ndr_func */ 1577 24, /* pdu_size_fixed_part */ 1578 0, /* pdu_size_variable_part */ 1579 24, /* c_size_fixed_part */ 1580 0, /* c_size_variable_part */ 1581 }; 1582 1583 1584 /* 1585 * */ 1586 int 1587 ndr__samr_QueryAliasInfo_ru (struct ndr_reference *encl_ref) 1588 { 1589 union samr_QueryAliasInfo_ru *val = (union samr_QueryAliasInfo_ru *) encl_ref->datum; 1590 struct ndr_reference myref; 1591 1592 (void) bzero(&myref, sizeof (myref)); 1593 myref.enclosing = encl_ref; 1594 myref.stream = encl_ref->stream; 1595 1596 switch (encl_ref->switch_is) { 1597 case 1: 1598 NDR_MEMBER (_samr_QueryAliasInfoGeneral, info1, 0UL); 1599 break; 1600 1601 case 2: 1602 NDR_MEMBER (_samr_QueryAliasInfoName, info2, 0UL); 1603 break; 1604 1605 case 3: 1606 NDR_MEMBER (_samr_QueryAliasInfoComment, info3, 0UL); 1607 break; 1608 1609 default: 1610 NDR_MEMBER_PTR (_char, nullptr, 0UL); 1611 break; 1612 1613 } 1614 1615 1616 return 1; 1617 } 1618 1619 1620 1621 int ndr__samr_QueryAliasInfoRes (struct ndr_reference *encl_ref); 1622 struct ndr_typeinfo ndt__samr_QueryAliasInfoRes = { 1623 1, /* NDR version */ 1624 3, /* alignment */ 1625 NDR_F_STRUCT, /* flags */ 1626 ndr__samr_QueryAliasInfoRes, /* ndr_func */ 1627 32, /* pdu_size_fixed_part */ 1628 0, /* pdu_size_variable_part */ 1629 32, /* c_size_fixed_part */ 1630 0, /* c_size_variable_part */ 1631 }; 1632 1633 1634 /* 1635 * */ 1636 int 1637 ndr__samr_QueryAliasInfoRes (struct ndr_reference *encl_ref) 1638 { 1639 struct samr_QueryAliasInfoRes *val = (struct samr_QueryAliasInfoRes *) encl_ref->datum; 1640 struct ndr_reference myref; 1641 1642 (void) bzero(&myref, sizeof (myref)); 1643 myref.enclosing = encl_ref; 1644 myref.stream = encl_ref->stream; 1645 1646 /* do all basic elements first */ 1647 NDR_MEMBER (_ulong, address, 0UL); 1648 NDR_MEMBER (_ushort, switch_value, 4UL); 1649 1650 /* do all constructed elements w/o pointers */ 1651 1652 /* do members with pointers in order */ 1653 NDR_MEMBER_WITH_SWITCH_IS (_samr_QueryAliasInfo_ru, ru, 8UL, 1654 val->switch_value); 1655 1656 return 1; 1657 } 1658 1659 1660 1661 int ndr__samr_QueryAliasInfo (struct ndr_reference *encl_ref); 1662 struct ndr_typeinfo ndt__samr_QueryAliasInfo = { 1663 1, /* NDR version */ 1664 3, /* alignment */ 1665 NDR_F_OPERATION, /* flags */ 1666 ndr__samr_QueryAliasInfo, /* ndr_func */ 1667 56, /* pdu_size_fixed_part */ 1668 0, /* pdu_size_variable_part */ 1669 56, /* c_size_fixed_part */ 1670 0, /* c_size_variable_part */ 1671 }; 1672 1673 1674 extern void fixup_samr_QueryAliasInfo(struct samr_QueryAliasInfo *val); 1675 1676 /* 1677 * [operation(28)] 1678 */ 1679 int 1680 ndr__samr_QueryAliasInfo (struct ndr_reference *encl_ref) 1681 { 1682 struct samr_QueryAliasInfo *val = (struct samr_QueryAliasInfo *) encl_ref->datum; 1683 struct ndr_reference myref; 1684 1685 (void) bzero(&myref, sizeof (myref)); 1686 myref.enclosing = encl_ref; 1687 myref.stream = encl_ref->stream; 1688 1689 /* do all members in order */ 1690 if (NDR_DIR_IS_IN) { 1691 NDR_TOPMOST_MEMBER (_samr_handle, alias_handle); 1692 } 1693 if (NDR_DIR_IS_IN) { 1694 NDR_TOPMOST_MEMBER (_ushort, level); 1695 } 1696 if (NDR_DIR_IS_OUT) { 1697 NDR_TOPMOST_MEMBER (_ulong, address); 1698 } 1699 if (NDR_DIR_IS_OUT) { 1700 /* 1701 * Cannot use the canned offsets to unmarshall multiple 1702 * entry discriminated unions. The service must provide 1703 * this function to patch the offsets at runtime. 1704 */ 1705 fixup_samr_QueryAliasInfo(val); 1706 NDR_TOPMOST_MEMBER_WITH_SWITCH_IS (_samr_QueryAliasInfo_ru, ru, 1707 val->level); 1708 } 1709 if (NDR_DIR_IS_OUT) { 1710 NDR_TOPMOST_MEMBER (_ulong, status); 1711 } 1712 1713 return 1; 1714 } 1715 1716 1717 1718 int ndr__samr_CreateDomainAlias (struct ndr_reference *encl_ref); 1719 struct ndr_typeinfo ndt__samr_CreateDomainAlias = { 1720 1, /* NDR version */ 1721 3, /* alignment */ 1722 NDR_F_OPERATION, /* flags */ 1723 ndr__samr_CreateDomainAlias, /* ndr_func */ 1724 60, /* pdu_size_fixed_part */ 1725 0, /* pdu_size_variable_part */ 1726 60, /* c_size_fixed_part */ 1727 0, /* c_size_variable_part */ 1728 }; 1729 1730 1731 /* 1732 * [operation(14)] 1733 */ 1734 int 1735 ndr__samr_CreateDomainAlias (struct ndr_reference *encl_ref) 1736 { 1737 struct samr_CreateDomainAlias *val = (struct samr_CreateDomainAlias *) encl_ref->datum; 1738 struct ndr_reference myref; 1739 1740 (void) bzero(&myref, sizeof (myref)); 1741 myref.enclosing = encl_ref; 1742 myref.stream = encl_ref->stream; 1743 1744 /* do all members in order */ 1745 if (NDR_DIR_IS_IN) { 1746 NDR_TOPMOST_MEMBER (_samr_handle, domain_handle); 1747 } 1748 if (NDR_DIR_IS_IN) { 1749 NDR_TOPMOST_MEMBER (_samr_string, alias_name); 1750 } 1751 if (NDR_DIR_IS_IN) { 1752 NDR_TOPMOST_MEMBER (_ulong, access_mask); 1753 } 1754 if (NDR_DIR_IS_OUT) { 1755 NDR_TOPMOST_MEMBER (_samr_handle, alias_handle); 1756 } 1757 if (NDR_DIR_IS_OUT) { 1758 NDR_TOPMOST_MEMBER (_ulong, rid); 1759 } 1760 if (NDR_DIR_IS_OUT) { 1761 NDR_TOPMOST_MEMBER (_ulong, status); 1762 } 1763 1764 return 1; 1765 } 1766 1767 1768 1769 int ndr__samr_SetAliasInfo (struct ndr_reference *encl_ref); 1770 struct ndr_typeinfo ndt__samr_SetAliasInfo = { 1771 1, /* NDR version */ 1772 3, /* alignment */ 1773 NDR_F_OPERATION, /* flags */ 1774 ndr__samr_SetAliasInfo, /* ndr_func */ 1775 28, /* pdu_size_fixed_part */ 1776 0, /* pdu_size_variable_part */ 1777 28, /* c_size_fixed_part */ 1778 0, /* c_size_variable_part */ 1779 }; 1780 1781 1782 /* 1783 * [operation(29)] 1784 */ 1785 int 1786 ndr__samr_SetAliasInfo (struct ndr_reference *encl_ref) 1787 { 1788 struct samr_SetAliasInfo *val = (struct samr_SetAliasInfo *) encl_ref->datum; 1789 struct ndr_reference myref; 1790 1791 (void) bzero(&myref, sizeof (myref)); 1792 myref.enclosing = encl_ref; 1793 myref.stream = encl_ref->stream; 1794 1795 /* do all members in order */ 1796 if (NDR_DIR_IS_IN) { 1797 NDR_TOPMOST_MEMBER (_samr_handle, alias_handle); 1798 } 1799 if (NDR_DIR_IS_IN) { 1800 NDR_TOPMOST_MEMBER (_ushort, level); 1801 } 1802 if (NDR_DIR_IS_OUT) { 1803 NDR_TOPMOST_MEMBER (_ulong, status); 1804 } 1805 1806 return 1; 1807 } 1808 1809 1810 1811 int ndr__samr_DeleteDomainAlias (struct ndr_reference *encl_ref); 1812 struct ndr_typeinfo ndt__samr_DeleteDomainAlias = { 1813 1, /* NDR version */ 1814 3, /* alignment */ 1815 NDR_F_OPERATION, /* flags */ 1816 ndr__samr_DeleteDomainAlias, /* ndr_func */ 1817 24, /* pdu_size_fixed_part */ 1818 0, /* pdu_size_variable_part */ 1819 24, /* c_size_fixed_part */ 1820 0, /* c_size_variable_part */ 1821 }; 1822 1823 1824 /* 1825 * [operation(30)] 1826 */ 1827 int 1828 ndr__samr_DeleteDomainAlias (struct ndr_reference *encl_ref) 1829 { 1830 struct samr_DeleteDomainAlias *val = (struct samr_DeleteDomainAlias *) encl_ref->datum; 1831 struct ndr_reference myref; 1832 1833 (void) bzero(&myref, sizeof (myref)); 1834 myref.enclosing = encl_ref; 1835 myref.stream = encl_ref->stream; 1836 1837 /* do all members in order */ 1838 NDR_TOPMOST_MEMBER (_samr_handle, alias_handle); 1839 if (NDR_DIR_IS_OUT) { 1840 NDR_TOPMOST_MEMBER (_ulong, status); 1841 } 1842 1843 return 1; 1844 } 1845 1846 1847 1848 int ndr__samr_OpenAlias (struct ndr_reference *encl_ref); 1849 struct ndr_typeinfo ndt__samr_OpenAlias = { 1850 1, /* NDR version */ 1851 3, /* alignment */ 1852 NDR_F_OPERATION, /* flags */ 1853 ndr__samr_OpenAlias, /* ndr_func */ 1854 52, /* pdu_size_fixed_part */ 1855 0, /* pdu_size_variable_part */ 1856 52, /* c_size_fixed_part */ 1857 0, /* c_size_variable_part */ 1858 }; 1859 1860 1861 /* 1862 * [operation(27)] 1863 */ 1864 int 1865 ndr__samr_OpenAlias (struct ndr_reference *encl_ref) 1866 { 1867 struct samr_OpenAlias *val = (struct samr_OpenAlias *) encl_ref->datum; 1868 struct ndr_reference myref; 1869 1870 (void) bzero(&myref, sizeof (myref)); 1871 myref.enclosing = encl_ref; 1872 myref.stream = encl_ref->stream; 1873 1874 /* do all members in order */ 1875 if (NDR_DIR_IS_IN) { 1876 NDR_TOPMOST_MEMBER (_samr_handle, domain_handle); 1877 } 1878 if (NDR_DIR_IS_IN) { 1879 NDR_TOPMOST_MEMBER (_ulong, access_mask); 1880 } 1881 if (NDR_DIR_IS_IN) { 1882 NDR_TOPMOST_MEMBER (_ulong, rid); 1883 } 1884 if (NDR_DIR_IS_OUT) { 1885 NDR_TOPMOST_MEMBER (_samr_handle, alias_handle); 1886 } 1887 if (NDR_DIR_IS_OUT) { 1888 NDR_TOPMOST_MEMBER (_ulong, status); 1889 } 1890 1891 return 1; 1892 } 1893 1894 1895 1896 int ndr__name_rid (struct ndr_reference *encl_ref); 1897 struct ndr_typeinfo ndt__name_rid = { 1898 1, /* NDR version */ 1899 3, /* alignment */ 1900 NDR_F_STRUCT, /* flags */ 1901 ndr__name_rid, /* ndr_func */ 1902 12, /* pdu_size_fixed_part */ 1903 0, /* pdu_size_variable_part */ 1904 12, /* c_size_fixed_part */ 1905 0, /* c_size_variable_part */ 1906 }; 1907 1908 1909 /* 1910 * */ 1911 int 1912 ndr__name_rid (struct ndr_reference *encl_ref) 1913 { 1914 struct name_rid *val = (struct name_rid *) encl_ref->datum; 1915 struct ndr_reference myref; 1916 1917 (void) bzero(&myref, sizeof (myref)); 1918 myref.enclosing = encl_ref; 1919 myref.stream = encl_ref->stream; 1920 1921 /* do all basic elements first */ 1922 NDR_MEMBER (_ulong, rid, 0UL); 1923 1924 /* do all constructed elements w/o pointers */ 1925 1926 /* do members with pointers in order */ 1927 NDR_MEMBER (_samr_string, name, 4UL); 1928 1929 return 1; 1930 } 1931 1932 1933 1934 int ndr__aliases_info (struct ndr_reference *encl_ref); 1935 struct ndr_typeinfo ndt__aliases_info = { 1936 1, /* NDR version */ 1937 3, /* alignment */ 1938 NDR_F_CONFORMANT|NDR_F_STRUCT, /* flags */ 1939 ndr__aliases_info, /* ndr_func */ 1940 8, /* pdu_size_fixed_part */ 1941 12, /* pdu_size_variable_part */ 1942 8, /* c_size_fixed_part */ 1943 12, /* c_size_variable_part */ 1944 }; 1945 1946 1947 /* 1948 * */ 1949 int 1950 ndr__aliases_info (struct ndr_reference *encl_ref) 1951 { 1952 struct aliases_info *val = (struct aliases_info *) encl_ref->datum; 1953 struct ndr_reference myref; 1954 1955 (void) bzero(&myref, sizeof (myref)); 1956 myref.enclosing = encl_ref; 1957 myref.stream = encl_ref->stream; 1958 1959 /* do all basic elements first */ 1960 NDR_MEMBER (_ulong, count, 0UL); 1961 NDR_MEMBER (_ulong, address, 4UL); 1962 1963 /* do all constructed elements w/o pointers */ 1964 1965 /* do members with pointers in order */ 1966 NDR_MEMBER_ARR_WITH_SIZE_IS (_name_rid, info, 8UL, 1967 val->count); 1968 1969 return 1; 1970 } 1971 1972 1973 1974 int ndr__samr_EnumDomainAliases (struct ndr_reference *encl_ref); 1975 struct ndr_typeinfo ndt__samr_EnumDomainAliases = { 1976 1, /* NDR version */ 1977 3, /* alignment */ 1978 NDR_F_OPERATION, /* flags */ 1979 ndr__samr_EnumDomainAliases, /* ndr_func */ 1980 44, /* pdu_size_fixed_part */ 1981 0, /* pdu_size_variable_part */ 1982 44, /* c_size_fixed_part */ 1983 0, /* c_size_variable_part */ 1984 }; 1985 1986 1987 /* 1988 * [operation(15)] 1989 */ 1990 int 1991 ndr__samr_EnumDomainAliases (struct ndr_reference *encl_ref) 1992 { 1993 struct samr_EnumDomainAliases *val = (struct samr_EnumDomainAliases *) encl_ref->datum; 1994 struct ndr_reference myref; 1995 1996 (void) bzero(&myref, sizeof (myref)); 1997 myref.enclosing = encl_ref; 1998 myref.stream = encl_ref->stream; 1999 2000 /* do all members in order */ 2001 if (NDR_DIR_IS_IN) { 2002 NDR_TOPMOST_MEMBER (_samr_handle, domain_handle); 2003 } 2004 if (NDR_DIR_IS_IN) { 2005 NDR_TOPMOST_MEMBER (_ulong, resume_handle); 2006 } 2007 if (NDR_DIR_IS_IN) { 2008 NDR_TOPMOST_MEMBER (_ulong, mask); 2009 } 2010 if (NDR_DIR_IS_OUT) { 2011 NDR_TOPMOST_MEMBER (_ulong, out_resume); 2012 } 2013 if (NDR_DIR_IS_OUT) { 2014 NDR_TOPMOST_MEMBER_PTR (_aliases_info, aliases); 2015 } 2016 if (NDR_DIR_IS_OUT) { 2017 NDR_TOPMOST_MEMBER (_ulong, entries); 2018 } 2019 if (NDR_DIR_IS_OUT) { 2020 NDR_TOPMOST_MEMBER (_ulong, status); 2021 } 2022 2023 return 1; 2024 } 2025 2026 2027 2028 int ndr__user_acct_info (struct ndr_reference *encl_ref); 2029 struct ndr_typeinfo ndt__user_acct_info = { 2030 1, /* NDR version */ 2031 3, /* alignment */ 2032 NDR_F_STRUCT, /* flags */ 2033 ndr__user_acct_info, /* ndr_func */ 2034 36, /* pdu_size_fixed_part */ 2035 0, /* pdu_size_variable_part */ 2036 36, /* c_size_fixed_part */ 2037 0, /* c_size_variable_part */ 2038 }; 2039 2040 2041 /* 2042 * */ 2043 int 2044 ndr__user_acct_info (struct ndr_reference *encl_ref) 2045 { 2046 struct user_acct_info *val = (struct user_acct_info *) encl_ref->datum; 2047 struct ndr_reference myref; 2048 2049 (void) bzero(&myref, sizeof (myref)); 2050 myref.enclosing = encl_ref; 2051 myref.stream = encl_ref->stream; 2052 2053 /* do all basic elements first */ 2054 NDR_MEMBER (_ulong, index, 0UL); 2055 NDR_MEMBER (_ulong, rid, 4UL); 2056 NDR_MEMBER (_ulong, ctrl, 8UL); 2057 2058 /* do all constructed elements w/o pointers */ 2059 2060 /* do members with pointers in order */ 2061 NDR_MEMBER (_samr_string, name, 12UL); 2062 NDR_MEMBER (_samr_string, fullname, 20UL); 2063 NDR_MEMBER (_samr_string, desc, 28UL); 2064 2065 return 1; 2066 } 2067 2068 2069 2070 int ndr__user_disp_info (struct ndr_reference *encl_ref); 2071 struct ndr_typeinfo ndt__user_disp_info = { 2072 1, /* NDR version */ 2073 3, /* alignment */ 2074 NDR_F_STRUCT, /* flags */ 2075 ndr__user_disp_info, /* ndr_func */ 2076 20, /* pdu_size_fixed_part */ 2077 0, /* pdu_size_variable_part */ 2078 20, /* c_size_fixed_part */ 2079 0, /* c_size_variable_part */ 2080 }; 2081 2082 2083 /* 2084 * */ 2085 int 2086 ndr__user_disp_info (struct ndr_reference *encl_ref) 2087 { 2088 struct user_disp_info *val = (struct user_disp_info *) encl_ref->datum; 2089 struct ndr_reference myref; 2090 2091 (void) bzero(&myref, sizeof (myref)); 2092 myref.enclosing = encl_ref; 2093 myref.stream = encl_ref->stream; 2094 2095 /* do all basic elements first */ 2096 if (NDR_DIR_IS_OUT) { 2097 NDR_MEMBER (_ulong, total_size, 0UL); 2098 } 2099 if (NDR_DIR_IS_OUT) { 2100 NDR_MEMBER (_ulong, returned_size, 4UL); 2101 } 2102 if (NDR_DIR_IS_OUT) { 2103 NDR_MEMBER (_ushort, switch_value, 8UL); 2104 } 2105 NDR_MEMBER (_ulong, count, 12UL); 2106 2107 /* do all constructed elements w/o pointers */ 2108 2109 /* do members with pointers in order */ 2110 NDR_MEMBER_PTR_WITH_SIZE_IS (_user_acct_info, acct, 16UL, 2111 val->count); 2112 2113 return 1; 2114 } 2115 2116 2117 2118 int ndr__samr_QueryDispInfo (struct ndr_reference *encl_ref); 2119 struct ndr_typeinfo ndt__samr_QueryDispInfo = { 2120 1, /* NDR version */ 2121 3, /* alignment */ 2122 NDR_F_OPERATION, /* flags */ 2123 ndr__samr_QueryDispInfo, /* ndr_func */ 2124 60, /* pdu_size_fixed_part */ 2125 0, /* pdu_size_variable_part */ 2126 60, /* c_size_fixed_part */ 2127 0, /* c_size_variable_part */ 2128 }; 2129 2130 2131 /* 2132 * [operation(40)] 2133 */ 2134 int 2135 ndr__samr_QueryDispInfo (struct ndr_reference *encl_ref) 2136 { 2137 struct samr_QueryDispInfo *val = (struct samr_QueryDispInfo *) encl_ref->datum; 2138 struct ndr_reference myref; 2139 2140 (void) bzero(&myref, sizeof (myref)); 2141 myref.enclosing = encl_ref; 2142 myref.stream = encl_ref->stream; 2143 2144 /* do all members in order */ 2145 if (NDR_DIR_IS_IN) { 2146 NDR_TOPMOST_MEMBER (_samr_handle, domain_handle); 2147 } 2148 if (NDR_DIR_IS_IN) { 2149 NDR_TOPMOST_MEMBER (_ushort, level); 2150 } 2151 if (NDR_DIR_IS_IN) { 2152 NDR_TOPMOST_MEMBER (_ulong, start_idx); 2153 } 2154 if (NDR_DIR_IS_IN) { 2155 NDR_TOPMOST_MEMBER (_ulong, max_entries); 2156 } 2157 if (NDR_DIR_IS_IN) { 2158 NDR_TOPMOST_MEMBER (_ulong, pref_maxsize); 2159 } 2160 if (NDR_DIR_IS_OUT) { 2161 NDR_TOPMOST_MEMBER (_user_disp_info, users); 2162 } 2163 if (NDR_DIR_IS_OUT) { 2164 NDR_TOPMOST_MEMBER (_ulong, status); 2165 } 2166 2167 return 1; 2168 } 2169 2170 2171 2172 int ndr__group_acct_info (struct ndr_reference *encl_ref); 2173 struct ndr_typeinfo ndt__group_acct_info = { 2174 1, /* NDR version */ 2175 3, /* alignment */ 2176 NDR_F_STRUCT, /* flags */ 2177 ndr__group_acct_info, /* ndr_func */ 2178 28, /* pdu_size_fixed_part */ 2179 0, /* pdu_size_variable_part */ 2180 28, /* c_size_fixed_part */ 2181 0, /* c_size_variable_part */ 2182 }; 2183 2184 2185 /* 2186 * */ 2187 int 2188 ndr__group_acct_info (struct ndr_reference *encl_ref) 2189 { 2190 struct group_acct_info *val = (struct group_acct_info *) encl_ref->datum; 2191 struct ndr_reference myref; 2192 2193 (void) bzero(&myref, sizeof (myref)); 2194 myref.enclosing = encl_ref; 2195 myref.stream = encl_ref->stream; 2196 2197 /* do all basic elements first */ 2198 NDR_MEMBER (_ulong, index, 0UL); 2199 NDR_MEMBER (_ulong, rid, 4UL); 2200 NDR_MEMBER (_ulong, ctrl, 8UL); 2201 2202 /* do all constructed elements w/o pointers */ 2203 2204 /* do members with pointers in order */ 2205 NDR_MEMBER (_samr_string, name, 12UL); 2206 NDR_MEMBER (_samr_string, desc, 20UL); 2207 2208 return 1; 2209 } 2210 2211 2212 2213 int ndr__group_disp_info (struct ndr_reference *encl_ref); 2214 struct ndr_typeinfo ndt__group_disp_info = { 2215 1, /* NDR version */ 2216 3, /* alignment */ 2217 NDR_F_STRUCT, /* flags */ 2218 ndr__group_disp_info, /* ndr_func */ 2219 32, /* pdu_size_fixed_part */ 2220 0, /* pdu_size_variable_part */ 2221 32, /* c_size_fixed_part */ 2222 0, /* c_size_variable_part */ 2223 }; 2224 2225 2226 /* 2227 * */ 2228 int 2229 ndr__group_disp_info (struct ndr_reference *encl_ref) 2230 { 2231 struct group_disp_info *val = (struct group_disp_info *) encl_ref->datum; 2232 struct ndr_reference myref; 2233 2234 (void) bzero(&myref, sizeof (myref)); 2235 myref.enclosing = encl_ref; 2236 myref.stream = encl_ref->stream; 2237 2238 /* do all basic elements first */ 2239 NDR_MEMBER (_ulong, count, 0UL); 2240 2241 /* do all constructed elements w/o pointers */ 2242 2243 /* do members with pointers in order */ 2244 NDR_MEMBER_ARR_WITH_DIMENSION (_group_acct_info, acct, 4UL, 2245 1); 2246 2247 return 1; 2248 } 2249 2250 2251 2252 int ndr__samr_EnumDomainGroups (struct ndr_reference *encl_ref); 2253 struct ndr_typeinfo ndt__samr_EnumDomainGroups = { 2254 1, /* NDR version */ 2255 3, /* alignment */ 2256 NDR_F_OPERATION, /* flags */ 2257 ndr__samr_EnumDomainGroups, /* ndr_func */ 2258 60, /* pdu_size_fixed_part */ 2259 0, /* pdu_size_variable_part */ 2260 60, /* c_size_fixed_part */ 2261 0, /* c_size_variable_part */ 2262 }; 2263 2264 2265 /* 2266 * [operation(48)] 2267 */ 2268 int 2269 ndr__samr_EnumDomainGroups (struct ndr_reference *encl_ref) 2270 { 2271 struct samr_EnumDomainGroups *val = (struct samr_EnumDomainGroups *) encl_ref->datum; 2272 struct ndr_reference myref; 2273 2274 (void) bzero(&myref, sizeof (myref)); 2275 myref.enclosing = encl_ref; 2276 myref.stream = encl_ref->stream; 2277 2278 /* do all members in order */ 2279 if (NDR_DIR_IS_IN) { 2280 NDR_TOPMOST_MEMBER (_samr_handle, domain_handle); 2281 } 2282 if (NDR_DIR_IS_IN) { 2283 NDR_TOPMOST_MEMBER (_ushort, level); 2284 } 2285 if (NDR_DIR_IS_IN) { 2286 NDR_TOPMOST_MEMBER (_ulong, start_idx); 2287 } 2288 if (NDR_DIR_IS_IN) { 2289 NDR_TOPMOST_MEMBER (_ulong, max_entries); 2290 } 2291 if (NDR_DIR_IS_IN) { 2292 NDR_TOPMOST_MEMBER (_ulong, pref_maxsize); 2293 } 2294 if (NDR_DIR_IS_OUT) { 2295 NDR_TOPMOST_MEMBER (_ulong, total_size); 2296 } 2297 if (NDR_DIR_IS_OUT) { 2298 NDR_TOPMOST_MEMBER (_ulong, returned_size); 2299 } 2300 if (NDR_DIR_IS_OUT) { 2301 NDR_TOPMOST_MEMBER (_ushort, switch_value); 2302 } 2303 if (NDR_DIR_IS_OUT) { 2304 NDR_TOPMOST_MEMBER (_ulong, count); 2305 } 2306 if (NDR_DIR_IS_OUT) { 2307 NDR_TOPMOST_MEMBER_PTR (_group_disp_info, groups); 2308 } 2309 if (NDR_DIR_IS_OUT) { 2310 NDR_TOPMOST_MEMBER (_ulong, status); 2311 } 2312 2313 return 1; 2314 } 2315 2316 2317 2318 int ndr__samr_OpenUser (struct ndr_reference *encl_ref); 2319 struct ndr_typeinfo ndt__samr_OpenUser = { 2320 1, /* NDR version */ 2321 3, /* alignment */ 2322 NDR_F_OPERATION, /* flags */ 2323 ndr__samr_OpenUser, /* ndr_func */ 2324 52, /* pdu_size_fixed_part */ 2325 0, /* pdu_size_variable_part */ 2326 52, /* c_size_fixed_part */ 2327 0, /* c_size_variable_part */ 2328 }; 2329 2330 2331 /* 2332 * [operation(34)] 2333 */ 2334 int 2335 ndr__samr_OpenUser (struct ndr_reference *encl_ref) 2336 { 2337 struct samr_OpenUser *val = (struct samr_OpenUser *) encl_ref->datum; 2338 struct ndr_reference myref; 2339 2340 (void) bzero(&myref, sizeof (myref)); 2341 myref.enclosing = encl_ref; 2342 myref.stream = encl_ref->stream; 2343 2344 /* do all members in order */ 2345 if (NDR_DIR_IS_IN) { 2346 NDR_TOPMOST_MEMBER (_samr_handle, handle); 2347 } 2348 if (NDR_DIR_IS_IN) { 2349 NDR_TOPMOST_MEMBER (_ulong, access_mask); 2350 } 2351 if (NDR_DIR_IS_IN) { 2352 NDR_TOPMOST_MEMBER (_ulong, rid); 2353 } 2354 if (NDR_DIR_IS_OUT) { 2355 NDR_TOPMOST_MEMBER (_samr_handle, user_handle); 2356 } 2357 if (NDR_DIR_IS_OUT) { 2358 NDR_TOPMOST_MEMBER (_ulong, status); 2359 } 2360 2361 return 1; 2362 } 2363 2364 2365 2366 int ndr__samr_DeleteUser (struct ndr_reference *encl_ref); 2367 struct ndr_typeinfo ndt__samr_DeleteUser = { 2368 1, /* NDR version */ 2369 3, /* alignment */ 2370 NDR_F_OPERATION, /* flags */ 2371 ndr__samr_DeleteUser, /* ndr_func */ 2372 24, /* pdu_size_fixed_part */ 2373 0, /* pdu_size_variable_part */ 2374 24, /* c_size_fixed_part */ 2375 0, /* c_size_variable_part */ 2376 }; 2377 2378 2379 /* 2380 * [operation(35)] 2381 */ 2382 int 2383 ndr__samr_DeleteUser (struct ndr_reference *encl_ref) 2384 { 2385 struct samr_DeleteUser *val = (struct samr_DeleteUser *) encl_ref->datum; 2386 struct ndr_reference myref; 2387 2388 (void) bzero(&myref, sizeof (myref)); 2389 myref.enclosing = encl_ref; 2390 myref.stream = encl_ref->stream; 2391 2392 /* do all members in order */ 2393 NDR_TOPMOST_MEMBER (_samr_handle, user_handle); 2394 if (NDR_DIR_IS_OUT) { 2395 NDR_TOPMOST_MEMBER (_ulong, status); 2396 } 2397 2398 return 1; 2399 } 2400 2401 2402 2403 int ndr__samr_QueryUserInfo1 (struct ndr_reference *encl_ref); 2404 struct ndr_typeinfo ndt__samr_QueryUserInfo1 = { 2405 1, /* NDR version */ 2406 3, /* alignment */ 2407 NDR_F_STRUCT, /* flags */ 2408 ndr__samr_QueryUserInfo1, /* ndr_func */ 2409 36, /* pdu_size_fixed_part */ 2410 0, /* pdu_size_variable_part */ 2411 36, /* c_size_fixed_part */ 2412 0, /* c_size_variable_part */ 2413 }; 2414 2415 2416 /* 2417 * */ 2418 int 2419 ndr__samr_QueryUserInfo1 (struct ndr_reference *encl_ref) 2420 { 2421 struct samr_QueryUserInfo1 *val = (struct samr_QueryUserInfo1 *) encl_ref->datum; 2422 struct ndr_reference myref; 2423 2424 (void) bzero(&myref, sizeof (myref)); 2425 myref.enclosing = encl_ref; 2426 myref.stream = encl_ref->stream; 2427 2428 /* do all basic elements first */ 2429 NDR_MEMBER (_ulong, group_rid, 16UL); 2430 2431 /* do all constructed elements w/o pointers */ 2432 2433 /* do members with pointers in order */ 2434 NDR_MEMBER (_samr_string, username, 0UL); 2435 NDR_MEMBER (_samr_string, fullname, 8UL); 2436 NDR_MEMBER (_samr_string, description, 20UL); 2437 NDR_MEMBER (_samr_string, unknown, 28UL); 2438 2439 return 1; 2440 } 2441 2442 2443 2444 int ndr__samr_QueryUserInfo6 (struct ndr_reference *encl_ref); 2445 struct ndr_typeinfo ndt__samr_QueryUserInfo6 = { 2446 1, /* NDR version */ 2447 3, /* alignment */ 2448 NDR_F_STRUCT, /* flags */ 2449 ndr__samr_QueryUserInfo6, /* ndr_func */ 2450 16, /* pdu_size_fixed_part */ 2451 0, /* pdu_size_variable_part */ 2452 16, /* c_size_fixed_part */ 2453 0, /* c_size_variable_part */ 2454 }; 2455 2456 2457 /* 2458 * */ 2459 int 2460 ndr__samr_QueryUserInfo6 (struct ndr_reference *encl_ref) 2461 { 2462 struct samr_QueryUserInfo6 *val = (struct samr_QueryUserInfo6 *) encl_ref->datum; 2463 struct ndr_reference myref; 2464 2465 (void) bzero(&myref, sizeof (myref)); 2466 myref.enclosing = encl_ref; 2467 myref.stream = encl_ref->stream; 2468 2469 /* do all basic elements first */ 2470 2471 /* do all constructed elements w/o pointers */ 2472 2473 /* do members with pointers in order */ 2474 NDR_MEMBER (_samr_string, username, 0UL); 2475 NDR_MEMBER (_samr_string, fullname, 8UL); 2476 2477 return 1; 2478 } 2479 2480 2481 2482 int ndr__samr_QueryUserInfo7 (struct ndr_reference *encl_ref); 2483 struct ndr_typeinfo ndt__samr_QueryUserInfo7 = { 2484 1, /* NDR version */ 2485 3, /* alignment */ 2486 NDR_F_STRUCT, /* flags */ 2487 ndr__samr_QueryUserInfo7, /* ndr_func */ 2488 8, /* pdu_size_fixed_part */ 2489 0, /* pdu_size_variable_part */ 2490 8, /* c_size_fixed_part */ 2491 0, /* c_size_variable_part */ 2492 }; 2493 2494 2495 /* 2496 * */ 2497 int 2498 ndr__samr_QueryUserInfo7 (struct ndr_reference *encl_ref) 2499 { 2500 struct samr_QueryUserInfo7 *val = (struct samr_QueryUserInfo7 *) encl_ref->datum; 2501 struct ndr_reference myref; 2502 2503 (void) bzero(&myref, sizeof (myref)); 2504 myref.enclosing = encl_ref; 2505 myref.stream = encl_ref->stream; 2506 2507 /* do all basic elements first */ 2508 2509 /* do all constructed elements w/o pointers */ 2510 2511 /* do members with pointers in order */ 2512 NDR_MEMBER (_samr_string, username, 0UL); 2513 2514 return 1; 2515 } 2516 2517 2518 2519 int ndr__samr_QueryUserInfo8 (struct ndr_reference *encl_ref); 2520 struct ndr_typeinfo ndt__samr_QueryUserInfo8 = { 2521 1, /* NDR version */ 2522 3, /* alignment */ 2523 NDR_F_STRUCT, /* flags */ 2524 ndr__samr_QueryUserInfo8, /* ndr_func */ 2525 8, /* pdu_size_fixed_part */ 2526 0, /* pdu_size_variable_part */ 2527 8, /* c_size_fixed_part */ 2528 0, /* c_size_variable_part */ 2529 }; 2530 2531 2532 /* 2533 * */ 2534 int 2535 ndr__samr_QueryUserInfo8 (struct ndr_reference *encl_ref) 2536 { 2537 struct samr_QueryUserInfo8 *val = (struct samr_QueryUserInfo8 *) encl_ref->datum; 2538 struct ndr_reference myref; 2539 2540 (void) bzero(&myref, sizeof (myref)); 2541 myref.enclosing = encl_ref; 2542 myref.stream = encl_ref->stream; 2543 2544 /* do all basic elements first */ 2545 2546 /* do all constructed elements w/o pointers */ 2547 2548 /* do members with pointers in order */ 2549 NDR_MEMBER (_samr_string, fullname, 0UL); 2550 2551 return 1; 2552 } 2553 2554 2555 2556 int ndr__samr_QueryUserInfo9 (struct ndr_reference *encl_ref); 2557 struct ndr_typeinfo ndt__samr_QueryUserInfo9 = { 2558 1, /* NDR version */ 2559 3, /* alignment */ 2560 NDR_F_STRUCT, /* flags */ 2561 ndr__samr_QueryUserInfo9, /* ndr_func */ 2562 4, /* pdu_size_fixed_part */ 2563 0, /* pdu_size_variable_part */ 2564 4, /* c_size_fixed_part */ 2565 0, /* c_size_variable_part */ 2566 }; 2567 2568 2569 /* 2570 * */ 2571 int 2572 ndr__samr_QueryUserInfo9 (struct ndr_reference *encl_ref) 2573 { 2574 struct samr_QueryUserInfo9 *val = (struct samr_QueryUserInfo9 *) encl_ref->datum; 2575 struct ndr_reference myref; 2576 2577 (void) bzero(&myref, sizeof (myref)); 2578 myref.enclosing = encl_ref; 2579 myref.stream = encl_ref->stream; 2580 2581 /* do all basic elements first */ 2582 NDR_MEMBER (_ulong, group_rid, 0UL); 2583 2584 /* do all constructed elements w/o pointers */ 2585 2586 /* do members with pointers in order */ 2587 2588 return 1; 2589 } 2590 2591 2592 2593 int ndr__samr_QueryUserInfo16 (struct ndr_reference *encl_ref); 2594 struct ndr_typeinfo ndt__samr_QueryUserInfo16 = { 2595 1, /* NDR version */ 2596 3, /* alignment */ 2597 NDR_F_STRUCT, /* flags */ 2598 ndr__samr_QueryUserInfo16, /* ndr_func */ 2599 4, /* pdu_size_fixed_part */ 2600 0, /* pdu_size_variable_part */ 2601 4, /* c_size_fixed_part */ 2602 0, /* c_size_variable_part */ 2603 }; 2604 2605 2606 /* 2607 * */ 2608 int 2609 ndr__samr_QueryUserInfo16 (struct ndr_reference *encl_ref) 2610 { 2611 struct samr_QueryUserInfo16 *val = (struct samr_QueryUserInfo16 *) encl_ref->datum; 2612 struct ndr_reference myref; 2613 2614 (void) bzero(&myref, sizeof (myref)); 2615 myref.enclosing = encl_ref; 2616 myref.stream = encl_ref->stream; 2617 2618 /* do all basic elements first */ 2619 NDR_MEMBER (_ulong, UserAccountControl, 0UL); 2620 2621 /* do all constructed elements w/o pointers */ 2622 2623 /* do members with pointers in order */ 2624 2625 return 1; 2626 } 2627 2628 2629 2630 int ndr__samr_QueryUserInfo21 (struct ndr_reference *encl_ref); 2631 struct ndr_typeinfo ndt__samr_QueryUserInfo21 = { 2632 1, /* NDR version */ 2633 3, /* alignment */ 2634 NDR_F_STRUCT, /* flags */ 2635 ndr__samr_QueryUserInfo21, /* ndr_func */ 2636 196, /* pdu_size_fixed_part */ 2637 0, /* pdu_size_variable_part */ 2638 196, /* c_size_fixed_part */ 2639 0, /* c_size_variable_part */ 2640 }; 2641 2642 2643 /* 2644 * */ 2645 int 2646 ndr__samr_QueryUserInfo21 (struct ndr_reference *encl_ref) 2647 { 2648 struct samr_QueryUserInfo21 *val = (struct samr_QueryUserInfo21 *) encl_ref->datum; 2649 struct ndr_reference myref; 2650 2651 (void) bzero(&myref, sizeof (myref)); 2652 myref.enclosing = encl_ref; 2653 myref.stream = encl_ref->stream; 2654 2655 /* do all basic elements first */ 2656 NDR_MEMBER (_ulong, UserId, 160UL); 2657 NDR_MEMBER (_ulong, PrimaryGroupId, 164UL); 2658 NDR_MEMBER (_ulong, UserAccountControl, 168UL); 2659 NDR_MEMBER (_ulong, WhichFields, 172UL); 2660 NDR_MEMBER (_ushort, BadPasswordCount, 184UL); 2661 NDR_MEMBER (_ushort, LogonCount, 186UL); 2662 NDR_MEMBER (_ushort, CountryCode, 188UL); 2663 NDR_MEMBER (_ushort, CodePage, 190UL); 2664 NDR_MEMBER (_uchar, LmPasswordPresent, 192UL); 2665 NDR_MEMBER (_uchar, NtPasswordPresent, 193UL); 2666 NDR_MEMBER (_uchar, PasswordExpired, 194UL); 2667 NDR_MEMBER (_uchar, PrivateDataSensitive, 195UL); 2668 2669 /* do all constructed elements w/o pointers */ 2670 NDR_MEMBER (_samr_quad, LastLogon, 0UL); 2671 NDR_MEMBER (_samr_quad, LastLogoff, 8UL); 2672 NDR_MEMBER (_samr_quad, PasswordLastSet, 16UL); 2673 NDR_MEMBER (_samr_quad, AccountExpires, 24UL); 2674 NDR_MEMBER (_samr_quad, PasswordCanChange, 32UL); 2675 NDR_MEMBER (_samr_quad, PasswordMustChange, 40UL); 2676 2677 /* do members with pointers in order */ 2678 NDR_MEMBER (_samr_string, UserName, 48UL); 2679 NDR_MEMBER (_samr_string, FullName, 56UL); 2680 NDR_MEMBER (_samr_string, HomeDirectory, 64UL); 2681 NDR_MEMBER (_samr_string, HomeDirectoryDrive, 72UL); 2682 NDR_MEMBER (_samr_string, ScriptPath, 80UL); 2683 NDR_MEMBER (_samr_string, ProfilePath, 88UL); 2684 NDR_MEMBER (_samr_string, AdminComment, 96UL); 2685 NDR_MEMBER (_samr_string, WorkStations, 104UL); 2686 NDR_MEMBER (_samr_string, UserComment, 112UL); 2687 NDR_MEMBER (_samr_string, Parameters, 120UL); 2688 NDR_MEMBER (_samr_short_blob, LmOwfPassword, 128UL); 2689 NDR_MEMBER (_samr_short_blob, NtOwfPassword, 136UL); 2690 NDR_MEMBER (_samr_string, PrivateData, 144UL); 2691 NDR_MEMBER (_samr_sd, SecurityDescriptor, 152UL); 2692 NDR_MEMBER (_samr_logon_hours_all, LogonHours, 176UL); 2693 2694 return 1; 2695 } 2696 2697 2698 2699 int ndr__QueryUserInfo_result_u (struct ndr_reference *encl_ref); 2700 struct ndr_typeinfo ndt__QueryUserInfo_result_u = { 2701 1, /* NDR version */ 2702 3, /* alignment */ 2703 NDR_F_UNION, /* flags */ 2704 ndr__QueryUserInfo_result_u, /* ndr_func */ 2705 196, /* pdu_size_fixed_part */ 2706 0, /* pdu_size_variable_part */ 2707 196, /* c_size_fixed_part */ 2708 0, /* c_size_variable_part */ 2709 }; 2710 2711 2712 /* 2713 * */ 2714 int 2715 ndr__QueryUserInfo_result_u (struct ndr_reference *encl_ref) 2716 { 2717 union QueryUserInfo_result_u *val = (union QueryUserInfo_result_u *) encl_ref->datum; 2718 struct ndr_reference myref; 2719 2720 (void) bzero(&myref, sizeof (myref)); 2721 myref.enclosing = encl_ref; 2722 myref.stream = encl_ref->stream; 2723 2724 switch (encl_ref->switch_is) { 2725 case 1: 2726 NDR_MEMBER (_samr_QueryUserInfo1, info1, 0UL); 2727 break; 2728 2729 case 6: 2730 NDR_MEMBER (_samr_QueryUserInfo6, info6, 0UL); 2731 break; 2732 2733 case 7: 2734 NDR_MEMBER (_samr_QueryUserInfo7, info7, 0UL); 2735 break; 2736 2737 case 8: 2738 NDR_MEMBER (_samr_QueryUserInfo8, info8, 0UL); 2739 break; 2740 2741 case 9: 2742 NDR_MEMBER (_samr_QueryUserInfo9, info9, 0UL); 2743 break; 2744 2745 case 16: 2746 NDR_MEMBER (_samr_QueryUserInfo16, info16, 0UL); 2747 break; 2748 2749 case 21: 2750 NDR_MEMBER (_samr_QueryUserInfo21, info21, 0UL); 2751 break; 2752 2753 default: 2754 NDR_MEMBER_PTR (_char, nullptr, 0UL); 2755 break; 2756 2757 } 2758 2759 2760 return 1; 2761 } 2762 2763 2764 2765 int ndr__QueryUserInfo_result (struct ndr_reference *encl_ref); 2766 struct ndr_typeinfo ndt__QueryUserInfo_result = { 2767 1, /* NDR version */ 2768 3, /* alignment */ 2769 NDR_F_STRUCT, /* flags */ 2770 ndr__QueryUserInfo_result, /* ndr_func */ 2771 204, /* pdu_size_fixed_part */ 2772 0, /* pdu_size_variable_part */ 2773 204, /* c_size_fixed_part */ 2774 0, /* c_size_variable_part */ 2775 }; 2776 2777 2778 /* 2779 * */ 2780 int 2781 ndr__QueryUserInfo_result (struct ndr_reference *encl_ref) 2782 { 2783 struct QueryUserInfo_result *val = (struct QueryUserInfo_result *) encl_ref->datum; 2784 struct ndr_reference myref; 2785 2786 (void) bzero(&myref, sizeof (myref)); 2787 myref.enclosing = encl_ref; 2788 myref.stream = encl_ref->stream; 2789 2790 /* do all basic elements first */ 2791 NDR_MEMBER (_ulong, address, 0UL); 2792 NDR_MEMBER (_ushort, switch_value, 4UL); 2793 2794 /* do all constructed elements w/o pointers */ 2795 2796 /* do members with pointers in order */ 2797 NDR_MEMBER_WITH_SWITCH_IS (_QueryUserInfo_result_u, ru, 8UL, 2798 val->switch_value); 2799 2800 return 1; 2801 } 2802 2803 2804 2805 int ndr__samr_QueryUserInfo (struct ndr_reference *encl_ref); 2806 struct ndr_typeinfo ndt__samr_QueryUserInfo = { 2807 1, /* NDR version */ 2808 3, /* alignment */ 2809 NDR_F_OPERATION, /* flags */ 2810 ndr__samr_QueryUserInfo, /* ndr_func */ 2811 232, /* pdu_size_fixed_part */ 2812 0, /* pdu_size_variable_part */ 2813 232, /* c_size_fixed_part */ 2814 0, /* c_size_variable_part */ 2815 }; 2816 2817 2818 extern void fixup_samr_QueryUserInfo(struct samr_QueryUserInfo *val); 2819 2820 /* 2821 * [operation(36)] 2822 */ 2823 int 2824 ndr__samr_QueryUserInfo (struct ndr_reference *encl_ref) 2825 { 2826 struct samr_QueryUserInfo *val = (struct samr_QueryUserInfo *) encl_ref->datum; 2827 struct ndr_reference myref; 2828 2829 (void) bzero(&myref, sizeof (myref)); 2830 myref.enclosing = encl_ref; 2831 myref.stream = encl_ref->stream; 2832 2833 /* do all members in order */ 2834 if (NDR_DIR_IS_IN) { 2835 NDR_TOPMOST_MEMBER (_samr_handle, user_handle); 2836 } 2837 if (NDR_DIR_IS_IN) { 2838 NDR_TOPMOST_MEMBER (_ushort, switch_value); 2839 } 2840 if (NDR_DIR_IS_OUT) { 2841 NDR_TOPMOST_MEMBER (_ulong, address); 2842 } 2843 if (NDR_DIR_IS_OUT) { 2844 NDR_TOPMOST_MEMBER (_ushort, switch_index); 2845 } 2846 if (NDR_DIR_IS_OUT) { 2847 /* 2848 * Cannot use the canned offsets to unmarshall multiple 2849 * entry discriminated unions. The service must provide 2850 * this function to patch the offsets at runtime. 2851 */ 2852 fixup_samr_QueryUserInfo(val); 2853 NDR_TOPMOST_MEMBER_WITH_SWITCH_IS (_QueryUserInfo_result_u, ru, 2854 val->switch_value); 2855 } 2856 if (NDR_DIR_IS_OUT) { 2857 NDR_TOPMOST_MEMBER (_ulong, status); 2858 } 2859 2860 return 1; 2861 } 2862 2863 2864 2865 int ndr__samr_UserGroups (struct ndr_reference *encl_ref); 2866 struct ndr_typeinfo ndt__samr_UserGroups = { 2867 1, /* NDR version */ 2868 3, /* alignment */ 2869 NDR_F_STRUCT, /* flags */ 2870 ndr__samr_UserGroups, /* ndr_func */ 2871 8, /* pdu_size_fixed_part */ 2872 0, /* pdu_size_variable_part */ 2873 8, /* c_size_fixed_part */ 2874 0, /* c_size_variable_part */ 2875 }; 2876 2877 2878 /* 2879 * */ 2880 int 2881 ndr__samr_UserGroups (struct ndr_reference *encl_ref) 2882 { 2883 struct samr_UserGroups *val = (struct samr_UserGroups *) encl_ref->datum; 2884 struct ndr_reference myref; 2885 2886 (void) bzero(&myref, sizeof (myref)); 2887 myref.enclosing = encl_ref; 2888 myref.stream = encl_ref->stream; 2889 2890 /* do all basic elements first */ 2891 NDR_MEMBER (_ulong, rid, 0UL); 2892 NDR_MEMBER (_ulong, attr, 4UL); 2893 2894 /* do all constructed elements w/o pointers */ 2895 2896 /* do members with pointers in order */ 2897 2898 return 1; 2899 } 2900 2901 2902 2903 int ndr__samr_UserGroupInfo (struct ndr_reference *encl_ref); 2904 struct ndr_typeinfo ndt__samr_UserGroupInfo = { 2905 1, /* NDR version */ 2906 3, /* alignment */ 2907 NDR_F_STRUCT, /* flags */ 2908 ndr__samr_UserGroupInfo, /* ndr_func */ 2909 8, /* pdu_size_fixed_part */ 2910 0, /* pdu_size_variable_part */ 2911 8, /* c_size_fixed_part */ 2912 0, /* c_size_variable_part */ 2913 }; 2914 2915 2916 /* 2917 * */ 2918 int 2919 ndr__samr_UserGroupInfo (struct ndr_reference *encl_ref) 2920 { 2921 struct samr_UserGroupInfo *val = (struct samr_UserGroupInfo *) encl_ref->datum; 2922 struct ndr_reference myref; 2923 2924 (void) bzero(&myref, sizeof (myref)); 2925 myref.enclosing = encl_ref; 2926 myref.stream = encl_ref->stream; 2927 2928 /* do all basic elements first */ 2929 NDR_MEMBER (_ulong, n_entry, 0UL); 2930 2931 /* do all constructed elements w/o pointers */ 2932 2933 /* do members with pointers in order */ 2934 NDR_MEMBER_PTR_WITH_SIZE_IS (_samr_UserGroups, groups, 4UL, 2935 val->n_entry); 2936 2937 return 1; 2938 } 2939 2940 2941 2942 int ndr__samr_QueryUserGroups (struct ndr_reference *encl_ref); 2943 struct ndr_typeinfo ndt__samr_QueryUserGroups = { 2944 1, /* NDR version */ 2945 3, /* alignment */ 2946 NDR_F_OPERATION, /* flags */ 2947 ndr__samr_QueryUserGroups, /* ndr_func */ 2948 28, /* pdu_size_fixed_part */ 2949 0, /* pdu_size_variable_part */ 2950 28, /* c_size_fixed_part */ 2951 0, /* c_size_variable_part */ 2952 }; 2953 2954 2955 /* 2956 * [operation(39)] 2957 */ 2958 int 2959 ndr__samr_QueryUserGroups (struct ndr_reference *encl_ref) 2960 { 2961 struct samr_QueryUserGroups *val = (struct samr_QueryUserGroups *) encl_ref->datum; 2962 struct ndr_reference myref; 2963 2964 (void) bzero(&myref, sizeof (myref)); 2965 myref.enclosing = encl_ref; 2966 myref.stream = encl_ref->stream; 2967 2968 /* do all members in order */ 2969 if (NDR_DIR_IS_IN) { 2970 NDR_TOPMOST_MEMBER (_samr_handle, user_handle); 2971 } 2972 if (NDR_DIR_IS_OUT) { 2973 NDR_TOPMOST_MEMBER_PTR (_samr_UserGroupInfo, info); 2974 } 2975 if (NDR_DIR_IS_OUT) { 2976 NDR_TOPMOST_MEMBER (_ulong, status); 2977 } 2978 2979 return 1; 2980 } 2981 2982 2983 2984 int ndr__samr_LookupNameTable (struct ndr_reference *encl_ref); 2985 struct ndr_typeinfo ndt__samr_LookupNameTable = { 2986 1, /* NDR version */ 2987 3, /* alignment */ 2988 NDR_F_CONFORMANT|NDR_F_STRUCT, /* flags */ 2989 ndr__samr_LookupNameTable, /* ndr_func */ 2990 4, /* pdu_size_fixed_part */ 2991 8, /* pdu_size_variable_part */ 2992 4, /* c_size_fixed_part */ 2993 8, /* c_size_variable_part */ 2994 }; 2995 2996 2997 /* 2998 * */ 2999 int 3000 ndr__samr_LookupNameTable (struct ndr_reference *encl_ref) 3001 { 3002 struct samr_LookupNameTable *val = (struct samr_LookupNameTable *) encl_ref->datum; 3003 struct ndr_reference myref; 3004 3005 (void) bzero(&myref, sizeof (myref)); 3006 myref.enclosing = encl_ref; 3007 myref.stream = encl_ref->stream; 3008 3009 /* do all basic elements first */ 3010 NDR_MEMBER (_ulong, n_entry, 0UL); 3011 3012 /* do all constructed elements w/o pointers */ 3013 3014 /* do members with pointers in order */ 3015 NDR_MEMBER_ARR_WITH_SIZE_IS (_samr_string, names, 4UL, 3016 val->n_entry); 3017 3018 return 1; 3019 } 3020 3021 3022 3023 int ndr__samr_LookupRidTable (struct ndr_reference *encl_ref); 3024 struct ndr_typeinfo ndt__samr_LookupRidTable = { 3025 1, /* NDR version */ 3026 3, /* alignment */ 3027 NDR_F_STRUCT, /* flags */ 3028 ndr__samr_LookupRidTable, /* ndr_func */ 3029 8, /* pdu_size_fixed_part */ 3030 0, /* pdu_size_variable_part */ 3031 8, /* c_size_fixed_part */ 3032 0, /* c_size_variable_part */ 3033 }; 3034 3035 3036 /* 3037 * */ 3038 int 3039 ndr__samr_LookupRidTable (struct ndr_reference *encl_ref) 3040 { 3041 struct samr_LookupRidTable *val = (struct samr_LookupRidTable *) encl_ref->datum; 3042 struct ndr_reference myref; 3043 3044 (void) bzero(&myref, sizeof (myref)); 3045 myref.enclosing = encl_ref; 3046 myref.stream = encl_ref->stream; 3047 3048 /* do all basic elements first */ 3049 NDR_MEMBER (_ulong, n_entry, 0UL); 3050 3051 /* do all constructed elements w/o pointers */ 3052 3053 /* do members with pointers in order */ 3054 NDR_MEMBER_PTR_WITH_SIZE_IS (_ulong, rid, 4UL, 3055 val->n_entry); 3056 3057 return 1; 3058 } 3059 3060 3061 3062 int ndr__samr_RidType (struct ndr_reference *encl_ref); 3063 struct ndr_typeinfo ndt__samr_RidType = { 3064 1, /* NDR version */ 3065 3, /* alignment */ 3066 NDR_F_STRUCT, /* flags */ 3067 ndr__samr_RidType, /* ndr_func */ 3068 8, /* pdu_size_fixed_part */ 3069 0, /* pdu_size_variable_part */ 3070 8, /* c_size_fixed_part */ 3071 0, /* c_size_variable_part */ 3072 }; 3073 3074 3075 /* 3076 * */ 3077 int 3078 ndr__samr_RidType (struct ndr_reference *encl_ref) 3079 { 3080 struct samr_RidType *val = (struct samr_RidType *) encl_ref->datum; 3081 struct ndr_reference myref; 3082 3083 (void) bzero(&myref, sizeof (myref)); 3084 myref.enclosing = encl_ref; 3085 myref.stream = encl_ref->stream; 3086 3087 /* do all basic elements first */ 3088 NDR_MEMBER (_ulong, n_entry, 0UL); 3089 3090 /* do all constructed elements w/o pointers */ 3091 3092 /* do members with pointers in order */ 3093 NDR_MEMBER_PTR_WITH_SIZE_IS (_ulong, rid_type, 4UL, 3094 val->n_entry); 3095 3096 return 1; 3097 } 3098 3099 3100 3101 int ndr__samr_LookupNames (struct ndr_reference *encl_ref); 3102 struct ndr_typeinfo ndt__samr_LookupNames = { 3103 1, /* NDR version */ 3104 3, /* alignment */ 3105 NDR_F_OPERATION, /* flags */ 3106 ndr__samr_LookupNames, /* ndr_func */ 3107 64, /* pdu_size_fixed_part */ 3108 0, /* pdu_size_variable_part */ 3109 64, /* c_size_fixed_part */ 3110 0, /* c_size_variable_part */ 3111 }; 3112 3113 3114 /* 3115 * [operation(17)] 3116 */ 3117 int 3118 ndr__samr_LookupNames (struct ndr_reference *encl_ref) 3119 { 3120 struct samr_LookupNames *val = (struct samr_LookupNames *) encl_ref->datum; 3121 struct ndr_reference myref; 3122 3123 (void) bzero(&myref, sizeof (myref)); 3124 myref.enclosing = encl_ref; 3125 myref.stream = encl_ref->stream; 3126 3127 /* do all members in order */ 3128 if (NDR_DIR_IS_IN) { 3129 NDR_TOPMOST_MEMBER (_samr_handle, handle); 3130 } 3131 if (NDR_DIR_IS_IN) { 3132 NDR_TOPMOST_MEMBER (_ulong, n_entry); 3133 } 3134 if (NDR_DIR_IS_IN) { 3135 NDR_TOPMOST_MEMBER (_ulong, max_n_entry); 3136 } 3137 if (NDR_DIR_IS_IN) { 3138 NDR_TOPMOST_MEMBER (_ulong, index); 3139 } 3140 if (NDR_DIR_IS_IN) { 3141 NDR_TOPMOST_MEMBER (_ulong, total); 3142 } 3143 if (NDR_DIR_IS_IN) { 3144 NDR_TOPMOST_MEMBER (_samr_string, name); 3145 } 3146 if (NDR_DIR_IS_OUT) { 3147 NDR_TOPMOST_MEMBER (_samr_LookupRidTable, rids); 3148 } 3149 if (NDR_DIR_IS_OUT) { 3150 NDR_TOPMOST_MEMBER (_samr_RidType, rid_types); 3151 } 3152 if (NDR_DIR_IS_OUT) { 3153 NDR_TOPMOST_MEMBER (_ulong, status); 3154 } 3155 3156 return 1; 3157 } 3158 3159 3160 3161 int ndr__samr_OpenGroup (struct ndr_reference *encl_ref); 3162 struct ndr_typeinfo ndt__samr_OpenGroup = { 3163 1, /* NDR version */ 3164 3, /* alignment */ 3165 NDR_F_OPERATION, /* flags */ 3166 ndr__samr_OpenGroup, /* ndr_func */ 3167 52, /* pdu_size_fixed_part */ 3168 0, /* pdu_size_variable_part */ 3169 52, /* c_size_fixed_part */ 3170 0, /* c_size_variable_part */ 3171 }; 3172 3173 3174 /* 3175 * [operation(19)] 3176 */ 3177 int 3178 ndr__samr_OpenGroup (struct ndr_reference *encl_ref) 3179 { 3180 struct samr_OpenGroup *val = (struct samr_OpenGroup *) encl_ref->datum; 3181 struct ndr_reference myref; 3182 3183 (void) bzero(&myref, sizeof (myref)); 3184 myref.enclosing = encl_ref; 3185 myref.stream = encl_ref->stream; 3186 3187 /* do all members in order */ 3188 if (NDR_DIR_IS_IN) { 3189 NDR_TOPMOST_MEMBER (_samr_handle, handle); 3190 } 3191 if (NDR_DIR_IS_IN) { 3192 NDR_TOPMOST_MEMBER (_ulong, access_mask); 3193 } 3194 if (NDR_DIR_IS_IN) { 3195 NDR_TOPMOST_MEMBER (_ulong, rid); 3196 } 3197 if (NDR_DIR_IS_OUT) { 3198 NDR_TOPMOST_MEMBER (_samr_handle, group_handle); 3199 } 3200 if (NDR_DIR_IS_OUT) { 3201 NDR_TOPMOST_MEMBER (_ulong, status); 3202 } 3203 3204 return 1; 3205 } 3206 3207 3208 3209 int ndr__samr_QueryGroupInfo1 (struct ndr_reference *encl_ref); 3210 struct ndr_typeinfo ndt__samr_QueryGroupInfo1 = { 3211 1, /* NDR version */ 3212 3, /* alignment */ 3213 NDR_F_STRUCT, /* flags */ 3214 ndr__samr_QueryGroupInfo1, /* ndr_func */ 3215 8, /* pdu_size_fixed_part */ 3216 0, /* pdu_size_variable_part */ 3217 8, /* c_size_fixed_part */ 3218 0, /* c_size_variable_part */ 3219 }; 3220 3221 3222 /* 3223 * */ 3224 int 3225 ndr__samr_QueryGroupInfo1 (struct ndr_reference *encl_ref) 3226 { 3227 struct samr_QueryGroupInfo1 *val = (struct samr_QueryGroupInfo1 *) encl_ref->datum; 3228 struct ndr_reference myref; 3229 3230 (void) bzero(&myref, sizeof (myref)); 3231 myref.enclosing = encl_ref; 3232 myref.stream = encl_ref->stream; 3233 3234 /* do all basic elements first */ 3235 3236 /* do all constructed elements w/o pointers */ 3237 3238 /* do members with pointers in order */ 3239 NDR_MEMBER (_samr_string, groupname, 0UL); 3240 3241 return 1; 3242 } 3243 3244 3245 3246 int ndr__samr_QueryGroupInfo_result_u (struct ndr_reference *encl_ref); 3247 struct ndr_typeinfo ndt__samr_QueryGroupInfo_result_u = { 3248 1, /* NDR version */ 3249 3, /* alignment */ 3250 NDR_F_UNION, /* flags */ 3251 ndr__samr_QueryGroupInfo_result_u, /* ndr_func */ 3252 8, /* pdu_size_fixed_part */ 3253 0, /* pdu_size_variable_part */ 3254 8, /* c_size_fixed_part */ 3255 0, /* c_size_variable_part */ 3256 }; 3257 3258 3259 /* 3260 * */ 3261 int 3262 ndr__samr_QueryGroupInfo_result_u (struct ndr_reference *encl_ref) 3263 { 3264 union samr_QueryGroupInfo_result_u *val = (union samr_QueryGroupInfo_result_u *) encl_ref->datum; 3265 struct ndr_reference myref; 3266 3267 (void) bzero(&myref, sizeof (myref)); 3268 myref.enclosing = encl_ref; 3269 myref.stream = encl_ref->stream; 3270 3271 switch (encl_ref->switch_is) { 3272 case 1: 3273 NDR_MEMBER (_samr_QueryGroupInfo1, info1, 0UL); 3274 break; 3275 3276 default: 3277 NDR_MEMBER_PTR (_char, nullptr, 0UL); 3278 break; 3279 3280 } 3281 3282 3283 return 1; 3284 } 3285 3286 3287 3288 int ndr__samr_QueryGroupInfo_result (struct ndr_reference *encl_ref); 3289 struct ndr_typeinfo ndt__samr_QueryGroupInfo_result = { 3290 1, /* NDR version */ 3291 3, /* alignment */ 3292 NDR_F_STRUCT, /* flags */ 3293 ndr__samr_QueryGroupInfo_result, /* ndr_func */ 3294 16, /* pdu_size_fixed_part */ 3295 0, /* pdu_size_variable_part */ 3296 16, /* c_size_fixed_part */ 3297 0, /* c_size_variable_part */ 3298 }; 3299 3300 3301 /* 3302 * */ 3303 int 3304 ndr__samr_QueryGroupInfo_result (struct ndr_reference *encl_ref) 3305 { 3306 struct samr_QueryGroupInfo_result *val = (struct samr_QueryGroupInfo_result *) encl_ref->datum; 3307 struct ndr_reference myref; 3308 3309 (void) bzero(&myref, sizeof (myref)); 3310 myref.enclosing = encl_ref; 3311 myref.stream = encl_ref->stream; 3312 3313 /* do all basic elements first */ 3314 NDR_MEMBER (_ulong, address, 0UL); 3315 NDR_MEMBER (_ushort, switch_index, 4UL); 3316 3317 /* do all constructed elements w/o pointers */ 3318 3319 /* do members with pointers in order */ 3320 NDR_MEMBER_WITH_SWITCH_IS (_samr_QueryGroupInfo_result_u, ru, 8UL, 3321 val->switch_index); 3322 3323 return 1; 3324 } 3325 3326 3327 3328 int ndr__samr_QueryGroupInfo (struct ndr_reference *encl_ref); 3329 struct ndr_typeinfo ndt__samr_QueryGroupInfo = { 3330 1, /* NDR version */ 3331 3, /* alignment */ 3332 NDR_F_OPERATION, /* flags */ 3333 ndr__samr_QueryGroupInfo, /* ndr_func */ 3334 44, /* pdu_size_fixed_part */ 3335 0, /* pdu_size_variable_part */ 3336 44, /* c_size_fixed_part */ 3337 0, /* c_size_variable_part */ 3338 }; 3339 3340 3341 extern void fixup_samr_QueryGroupInfo(struct samr_QueryGroupInfo *val); 3342 3343 /* 3344 * [operation(20)] 3345 */ 3346 int 3347 ndr__samr_QueryGroupInfo (struct ndr_reference *encl_ref) 3348 { 3349 struct samr_QueryGroupInfo *val = (struct samr_QueryGroupInfo *) encl_ref->datum; 3350 struct ndr_reference myref; 3351 3352 (void) bzero(&myref, sizeof (myref)); 3353 myref.enclosing = encl_ref; 3354 myref.stream = encl_ref->stream; 3355 3356 /* do all members in order */ 3357 if (NDR_DIR_IS_IN) { 3358 NDR_TOPMOST_MEMBER (_samr_handle, group_handle); 3359 } 3360 if (NDR_DIR_IS_IN) { 3361 NDR_TOPMOST_MEMBER (_ulong, switch_value); 3362 } 3363 if (NDR_DIR_IS_OUT) { 3364 NDR_TOPMOST_MEMBER (_ulong, address); 3365 } 3366 if (NDR_DIR_IS_OUT) { 3367 NDR_TOPMOST_MEMBER (_ushort, switch_index); 3368 } 3369 if (NDR_DIR_IS_OUT) { 3370 /* 3371 * Cannot use the canned offsets to unmarshall multiple 3372 * entry discriminated unions. The service must provide 3373 * this function to patch the offsets at runtime. 3374 */ 3375 fixup_samr_QueryGroupInfo(val); 3376 NDR_TOPMOST_MEMBER_WITH_SWITCH_IS (_samr_QueryGroupInfo_result_u, ru, 3377 val->switch_index); 3378 } 3379 if (NDR_DIR_IS_OUT) { 3380 NDR_TOPMOST_MEMBER (_ulong, status); 3381 } 3382 3383 return 1; 3384 } 3385 3386 3387 3388 int ndr__samr_StoreGroupInfo (struct ndr_reference *encl_ref); 3389 struct ndr_typeinfo ndt__samr_StoreGroupInfo = { 3390 1, /* NDR version */ 3391 3, /* alignment */ 3392 NDR_F_OPERATION, /* flags */ 3393 ndr__samr_StoreGroupInfo, /* ndr_func */ 3394 36, /* pdu_size_fixed_part */ 3395 0, /* pdu_size_variable_part */ 3396 36, /* c_size_fixed_part */ 3397 0, /* c_size_variable_part */ 3398 }; 3399 3400 3401 /* 3402 * [operation(21)] 3403 */ 3404 int 3405 ndr__samr_StoreGroupInfo (struct ndr_reference *encl_ref) 3406 { 3407 struct samr_StoreGroupInfo *val = (struct samr_StoreGroupInfo *) encl_ref->datum; 3408 struct ndr_reference myref; 3409 3410 (void) bzero(&myref, sizeof (myref)); 3411 myref.enclosing = encl_ref; 3412 myref.stream = encl_ref->stream; 3413 3414 /* do all members in order */ 3415 if (NDR_DIR_IS_IN) { 3416 NDR_TOPMOST_MEMBER (_samr_handle, group_handle); 3417 } 3418 if (NDR_DIR_IS_IN) { 3419 NDR_TOPMOST_MEMBER (_ulong, switch_value); 3420 } 3421 if (NDR_DIR_IS_IN) { 3422 NDR_TOPMOST_MEMBER (_samr_string, group_description); 3423 } 3424 if (NDR_DIR_IS_OUT) { 3425 NDR_TOPMOST_MEMBER (_ulong, status); 3426 } 3427 3428 return 1; 3429 } 3430 3431 3432 3433 int ndr__samr_AddAliasMember (struct ndr_reference *encl_ref); 3434 struct ndr_typeinfo ndt__samr_AddAliasMember = { 3435 1, /* NDR version */ 3436 3, /* alignment */ 3437 NDR_F_OPERATION, /* flags */ 3438 ndr__samr_AddAliasMember, /* ndr_func */ 3439 28, /* pdu_size_fixed_part */ 3440 0, /* pdu_size_variable_part */ 3441 28, /* c_size_fixed_part */ 3442 0, /* c_size_variable_part */ 3443 }; 3444 3445 3446 /* 3447 * [operation(31)] 3448 */ 3449 int 3450 ndr__samr_AddAliasMember (struct ndr_reference *encl_ref) 3451 { 3452 struct samr_AddAliasMember *val = (struct samr_AddAliasMember *) encl_ref->datum; 3453 struct ndr_reference myref; 3454 3455 (void) bzero(&myref, sizeof (myref)); 3456 myref.enclosing = encl_ref; 3457 myref.stream = encl_ref->stream; 3458 3459 /* do all members in order */ 3460 if (NDR_DIR_IS_IN) { 3461 NDR_TOPMOST_MEMBER (_samr_handle, alias_handle); 3462 } 3463 if (NDR_DIR_IS_IN) { 3464 NDR_TOPMOST_MEMBER_REF (_samr_sid, sid); 3465 } 3466 if (NDR_DIR_IS_OUT) { 3467 NDR_TOPMOST_MEMBER (_ulong, status); 3468 } 3469 3470 return 1; 3471 } 3472 3473 3474 3475 int ndr__samr_DeleteAliasMember (struct ndr_reference *encl_ref); 3476 struct ndr_typeinfo ndt__samr_DeleteAliasMember = { 3477 1, /* NDR version */ 3478 3, /* alignment */ 3479 NDR_F_OPERATION, /* flags */ 3480 ndr__samr_DeleteAliasMember, /* ndr_func */ 3481 28, /* pdu_size_fixed_part */ 3482 0, /* pdu_size_variable_part */ 3483 28, /* c_size_fixed_part */ 3484 0, /* c_size_variable_part */ 3485 }; 3486 3487 3488 /* 3489 * [operation(32)] 3490 */ 3491 int 3492 ndr__samr_DeleteAliasMember (struct ndr_reference *encl_ref) 3493 { 3494 struct samr_DeleteAliasMember *val = (struct samr_DeleteAliasMember *) encl_ref->datum; 3495 struct ndr_reference myref; 3496 3497 (void) bzero(&myref, sizeof (myref)); 3498 myref.enclosing = encl_ref; 3499 myref.stream = encl_ref->stream; 3500 3501 /* do all members in order */ 3502 if (NDR_DIR_IS_IN) { 3503 NDR_TOPMOST_MEMBER (_samr_handle, alias_handle); 3504 } 3505 if (NDR_DIR_IS_IN) { 3506 NDR_TOPMOST_MEMBER_REF (_samr_sid, sid); 3507 } 3508 if (NDR_DIR_IS_OUT) { 3509 NDR_TOPMOST_MEMBER (_ulong, status); 3510 } 3511 3512 return 1; 3513 } 3514 3515 3516 3517 int ndr__samr_SidList (struct ndr_reference *encl_ref); 3518 struct ndr_typeinfo ndt__samr_SidList = { 3519 1, /* NDR version */ 3520 3, /* alignment */ 3521 NDR_F_STRUCT, /* flags */ 3522 ndr__samr_SidList, /* ndr_func */ 3523 4, /* pdu_size_fixed_part */ 3524 0, /* pdu_size_variable_part */ 3525 4, /* c_size_fixed_part */ 3526 0, /* c_size_variable_part */ 3527 }; 3528 3529 3530 /* 3531 * */ 3532 int 3533 ndr__samr_SidList (struct ndr_reference *encl_ref) 3534 { 3535 struct samr_SidList *val = (struct samr_SidList *) encl_ref->datum; 3536 struct ndr_reference myref; 3537 3538 (void) bzero(&myref, sizeof (myref)); 3539 myref.enclosing = encl_ref; 3540 myref.stream = encl_ref->stream; 3541 3542 /* do all basic elements first */ 3543 3544 /* do all constructed elements w/o pointers */ 3545 3546 /* do members with pointers in order */ 3547 NDR_MEMBER_PTR (_samr_sid, sid, 0UL); 3548 3549 return 1; 3550 } 3551 3552 3553 3554 int ndr__samr_SidInfo (struct ndr_reference *encl_ref); 3555 struct ndr_typeinfo ndt__samr_SidInfo = { 3556 1, /* NDR version */ 3557 3, /* alignment */ 3558 NDR_F_STRUCT, /* flags */ 3559 ndr__samr_SidInfo, /* ndr_func */ 3560 8, /* pdu_size_fixed_part */ 3561 0, /* pdu_size_variable_part */ 3562 8, /* c_size_fixed_part */ 3563 0, /* c_size_variable_part */ 3564 }; 3565 3566 3567 /* 3568 * */ 3569 int 3570 ndr__samr_SidInfo (struct ndr_reference *encl_ref) 3571 { 3572 struct samr_SidInfo *val = (struct samr_SidInfo *) encl_ref->datum; 3573 struct ndr_reference myref; 3574 3575 (void) bzero(&myref, sizeof (myref)); 3576 myref.enclosing = encl_ref; 3577 myref.stream = encl_ref->stream; 3578 3579 /* do all basic elements first */ 3580 NDR_MEMBER (_ulong, n_entry, 0UL); 3581 3582 /* do all constructed elements w/o pointers */ 3583 3584 /* do members with pointers in order */ 3585 NDR_MEMBER_PTR_WITH_SIZE_IS (_samr_SidList, sidlist, 4UL, 3586 val->n_entry); 3587 3588 return 1; 3589 } 3590 3591 3592 3593 int ndr__samr_ListAliasMembers (struct ndr_reference *encl_ref); 3594 struct ndr_typeinfo ndt__samr_ListAliasMembers = { 3595 1, /* NDR version */ 3596 3, /* alignment */ 3597 NDR_F_OPERATION, /* flags */ 3598 ndr__samr_ListAliasMembers, /* ndr_func */ 3599 32, /* pdu_size_fixed_part */ 3600 0, /* pdu_size_variable_part */ 3601 32, /* c_size_fixed_part */ 3602 0, /* c_size_variable_part */ 3603 }; 3604 3605 3606 /* 3607 * [operation(33)] 3608 */ 3609 int 3610 ndr__samr_ListAliasMembers (struct ndr_reference *encl_ref) 3611 { 3612 struct samr_ListAliasMembers *val = (struct samr_ListAliasMembers *) encl_ref->datum; 3613 struct ndr_reference myref; 3614 3615 (void) bzero(&myref, sizeof (myref)); 3616 myref.enclosing = encl_ref; 3617 myref.stream = encl_ref->stream; 3618 3619 /* do all members in order */ 3620 if (NDR_DIR_IS_IN) { 3621 NDR_TOPMOST_MEMBER (_samr_handle, alias_handle); 3622 } 3623 if (NDR_DIR_IS_OUT) { 3624 NDR_TOPMOST_MEMBER (_samr_SidInfo, info); 3625 } 3626 if (NDR_DIR_IS_OUT) { 3627 NDR_TOPMOST_MEMBER (_ulong, status); 3628 } 3629 3630 return 1; 3631 } 3632 3633 3634 3635 int ndr__samr_GetUserPwInfo (struct ndr_reference *encl_ref); 3636 struct ndr_typeinfo ndt__samr_GetUserPwInfo = { 3637 1, /* NDR version */ 3638 3, /* alignment */ 3639 NDR_F_OPERATION, /* flags */ 3640 ndr__samr_GetUserPwInfo, /* ndr_func */ 3641 28, /* pdu_size_fixed_part */ 3642 0, /* pdu_size_variable_part */ 3643 28, /* c_size_fixed_part */ 3644 0, /* c_size_variable_part */ 3645 }; 3646 3647 3648 /* 3649 * [operation(44)] 3650 */ 3651 int 3652 ndr__samr_GetUserPwInfo (struct ndr_reference *encl_ref) 3653 { 3654 struct samr_GetUserPwInfo *val = (struct samr_GetUserPwInfo *) encl_ref->datum; 3655 struct ndr_reference myref; 3656 3657 (void) bzero(&myref, sizeof (myref)); 3658 myref.enclosing = encl_ref; 3659 myref.stream = encl_ref->stream; 3660 3661 /* do all members in order */ 3662 if (NDR_DIR_IS_IN) { 3663 NDR_TOPMOST_MEMBER (_samr_handle, user_handle); 3664 } 3665 if (NDR_DIR_IS_OUT) { 3666 NDR_TOPMOST_MEMBER_REF (_samr_password_info, pwinfo); 3667 } 3668 if (NDR_DIR_IS_OUT) { 3669 NDR_TOPMOST_MEMBER (_ulong, status); 3670 } 3671 3672 return 1; 3673 } 3674 3675 3676 3677 int ndr__samr_CreateUser (struct ndr_reference *encl_ref); 3678 struct ndr_typeinfo ndt__samr_CreateUser = { 3679 1, /* NDR version */ 3680 3, /* alignment */ 3681 NDR_F_OPERATION, /* flags */ 3682 ndr__samr_CreateUser, /* ndr_func */ 3683 68, /* pdu_size_fixed_part */ 3684 0, /* pdu_size_variable_part */ 3685 68, /* c_size_fixed_part */ 3686 0, /* c_size_variable_part */ 3687 }; 3688 3689 3690 /* 3691 * [operation(50)] 3692 */ 3693 int 3694 ndr__samr_CreateUser (struct ndr_reference *encl_ref) 3695 { 3696 struct samr_CreateUser *val = (struct samr_CreateUser *) encl_ref->datum; 3697 struct ndr_reference myref; 3698 3699 (void) bzero(&myref, sizeof (myref)); 3700 myref.enclosing = encl_ref; 3701 myref.stream = encl_ref->stream; 3702 3703 /* do all members in order */ 3704 if (NDR_DIR_IS_IN) { 3705 NDR_TOPMOST_MEMBER (_samr_handle, handle); 3706 } 3707 if (NDR_DIR_IS_IN) { 3708 NDR_TOPMOST_MEMBER (_samr_vcbuf, username); 3709 } 3710 if (NDR_DIR_IS_IN) { 3711 NDR_TOPMOST_MEMBER (_ulong, account_flags); 3712 } 3713 if (NDR_DIR_IS_IN) { 3714 NDR_TOPMOST_MEMBER (_ulong, desired_access); 3715 } 3716 if (NDR_DIR_IS_OUT) { 3717 NDR_TOPMOST_MEMBER (_samr_handle, user_handle); 3718 } 3719 if (NDR_DIR_IS_OUT) { 3720 NDR_TOPMOST_MEMBER (_ulong, maybe_ptr); 3721 } 3722 if (NDR_DIR_IS_OUT) { 3723 NDR_TOPMOST_MEMBER (_ulong, rid); 3724 } 3725 if (NDR_DIR_IS_OUT) { 3726 NDR_TOPMOST_MEMBER (_ulong, status); 3727 } 3728 3729 return 1; 3730 } 3731 3732 3733 3734 int ndr__samr_ChangePasswordUser2 (struct ndr_reference *encl_ref); 3735 struct ndr_typeinfo ndt__samr_ChangePasswordUser2 = { 3736 1, /* NDR version */ 3737 3, /* alignment */ 3738 NDR_F_OPERATION, /* flags */ 3739 ndr__samr_ChangePasswordUser2, /* ndr_func */ 3740 32, /* pdu_size_fixed_part */ 3741 0, /* pdu_size_variable_part */ 3742 32, /* c_size_fixed_part */ 3743 0, /* c_size_variable_part */ 3744 }; 3745 3746 3747 /* 3748 * [operation(55)] 3749 */ 3750 int 3751 ndr__samr_ChangePasswordUser2 (struct ndr_reference *encl_ref) 3752 { 3753 struct samr_ChangePasswordUser2 *val = (struct samr_ChangePasswordUser2 *) encl_ref->datum; 3754 struct ndr_reference myref; 3755 3756 (void) bzero(&myref, sizeof (myref)); 3757 myref.enclosing = encl_ref; 3758 myref.stream = encl_ref->stream; 3759 3760 /* do all members in order */ 3761 if (NDR_DIR_IS_IN) { 3762 NDR_TOPMOST_MEMBER_PTR (_samr_string, servername); 3763 } 3764 if (NDR_DIR_IS_IN) { 3765 NDR_TOPMOST_MEMBER_REF (_samr_string, username); 3766 } 3767 if (NDR_DIR_IS_IN) { 3768 NDR_TOPMOST_MEMBER_PTR (_samr_encr_passwd, nt_newpw); 3769 } 3770 if (NDR_DIR_IS_IN) { 3771 NDR_TOPMOST_MEMBER_PTR (_samr_encr_hash, nt_oldpw); 3772 } 3773 if (NDR_DIR_IS_IN) { 3774 NDR_TOPMOST_MEMBER (_uchar, lm_present); 3775 } 3776 if (NDR_DIR_IS_IN) { 3777 NDR_TOPMOST_MEMBER_PTR (_samr_encr_passwd, lm_newpw); 3778 } 3779 if (NDR_DIR_IS_IN) { 3780 NDR_TOPMOST_MEMBER_PTR (_samr_encr_hash, lm_oldpw); 3781 } 3782 if (NDR_DIR_IS_OUT) { 3783 NDR_TOPMOST_MEMBER (_ulong, status); 3784 } 3785 3786 return 1; 3787 } 3788 3789 3790 3791 int ndr__samr_GetDomainPwInfo (struct ndr_reference *encl_ref); 3792 struct ndr_typeinfo ndt__samr_GetDomainPwInfo = { 3793 1, /* NDR version */ 3794 3, /* alignment */ 3795 NDR_F_OPERATION, /* flags */ 3796 ndr__samr_GetDomainPwInfo, /* ndr_func */ 3797 12, /* pdu_size_fixed_part */ 3798 0, /* pdu_size_variable_part */ 3799 12, /* c_size_fixed_part */ 3800 0, /* c_size_variable_part */ 3801 }; 3802 3803 3804 /* 3805 * [operation(56)] 3806 */ 3807 int 3808 ndr__samr_GetDomainPwInfo (struct ndr_reference *encl_ref) 3809 { 3810 struct samr_GetDomainPwInfo *val = (struct samr_GetDomainPwInfo *) encl_ref->datum; 3811 struct ndr_reference myref; 3812 3813 (void) bzero(&myref, sizeof (myref)); 3814 myref.enclosing = encl_ref; 3815 myref.stream = encl_ref->stream; 3816 3817 /* do all members in order */ 3818 if (NDR_DIR_IS_IN) { 3819 NDR_TOPMOST_MEMBER (_ulong, unused); 3820 } 3821 if (NDR_DIR_IS_OUT) { 3822 NDR_TOPMOST_MEMBER_REF (_samr_password_info, pwinfo); 3823 } 3824 if (NDR_DIR_IS_OUT) { 3825 NDR_TOPMOST_MEMBER (_ulong, status); 3826 } 3827 3828 return 1; 3829 } 3830 3831 3832 3833 int ndr__samr_SetUserInfo16 (struct ndr_reference *encl_ref); 3834 struct ndr_typeinfo ndt__samr_SetUserInfo16 = { 3835 1, /* NDR version */ 3836 3, /* alignment */ 3837 NDR_F_STRUCT, /* flags */ 3838 ndr__samr_SetUserInfo16, /* ndr_func */ 3839 4, /* pdu_size_fixed_part */ 3840 0, /* pdu_size_variable_part */ 3841 4, /* c_size_fixed_part */ 3842 0, /* c_size_variable_part */ 3843 }; 3844 3845 3846 /* 3847 * */ 3848 int 3849 ndr__samr_SetUserInfo16 (struct ndr_reference *encl_ref) 3850 { 3851 struct samr_SetUserInfo16 *val = (struct samr_SetUserInfo16 *) encl_ref->datum; 3852 struct ndr_reference myref; 3853 3854 (void) bzero(&myref, sizeof (myref)); 3855 myref.enclosing = encl_ref; 3856 myref.stream = encl_ref->stream; 3857 3858 /* do all basic elements first */ 3859 NDR_MEMBER (_ulong, UserAccountControl, 0UL); 3860 3861 /* do all constructed elements w/o pointers */ 3862 3863 /* do members with pointers in order */ 3864 3865 return 1; 3866 } 3867 3868 3869 3870 int ndr__samr_SetUserInfo21 (struct ndr_reference *encl_ref); 3871 struct ndr_typeinfo ndt__samr_SetUserInfo21 = { 3872 1, /* NDR version */ 3873 3, /* alignment */ 3874 NDR_F_STRUCT, /* flags */ 3875 ndr__samr_SetUserInfo21, /* ndr_func */ 3876 196, /* pdu_size_fixed_part */ 3877 0, /* pdu_size_variable_part */ 3878 196, /* c_size_fixed_part */ 3879 0, /* c_size_variable_part */ 3880 }; 3881 3882 3883 /* 3884 * */ 3885 int 3886 ndr__samr_SetUserInfo21 (struct ndr_reference *encl_ref) 3887 { 3888 struct samr_SetUserInfo21 *val = (struct samr_SetUserInfo21 *) encl_ref->datum; 3889 struct ndr_reference myref; 3890 3891 (void) bzero(&myref, sizeof (myref)); 3892 myref.enclosing = encl_ref; 3893 myref.stream = encl_ref->stream; 3894 3895 /* do all basic elements first */ 3896 NDR_MEMBER (_ulong, UserId, 160UL); 3897 NDR_MEMBER (_ulong, PrimaryGroupId, 164UL); 3898 NDR_MEMBER (_ulong, UserAccountControl, 168UL); 3899 NDR_MEMBER (_ulong, WhichFields, 172UL); 3900 NDR_MEMBER (_ushort, BadPasswordCount, 184UL); 3901 NDR_MEMBER (_ushort, LogonCount, 186UL); 3902 NDR_MEMBER (_ushort, CountryCode, 188UL); 3903 NDR_MEMBER (_ushort, CodePage, 190UL); 3904 NDR_MEMBER (_uchar, LmPasswordPresent, 192UL); 3905 NDR_MEMBER (_uchar, NtPasswordPresent, 193UL); 3906 NDR_MEMBER (_uchar, PasswordExpired, 194UL); 3907 NDR_MEMBER (_uchar, PrivateDataSensitive, 195UL); 3908 3909 /* do all constructed elements w/o pointers */ 3910 NDR_MEMBER (_samr_quad, LastLogon, 0UL); 3911 NDR_MEMBER (_samr_quad, LastLogoff, 8UL); 3912 NDR_MEMBER (_samr_quad, PasswordLastSet, 16UL); 3913 NDR_MEMBER (_samr_quad, AccountExpires, 24UL); 3914 NDR_MEMBER (_samr_quad, PasswordCanChange, 32UL); 3915 NDR_MEMBER (_samr_quad, PasswordMustChange, 40UL); 3916 NDR_MEMBER (_samr_logon_info, LogonHours, 176UL); 3917 3918 /* do members with pointers in order */ 3919 NDR_MEMBER (_samr_vcbuf, UserName, 48UL); 3920 NDR_MEMBER (_samr_vcbuf, FullName, 56UL); 3921 NDR_MEMBER (_samr_vcbuf, HomeDirectory, 64UL); 3922 NDR_MEMBER (_samr_vcbuf, HomeDirectoryDrive, 72UL); 3923 NDR_MEMBER (_samr_vcbuf, ScriptPath, 80UL); 3924 NDR_MEMBER (_samr_vcbuf, ProfilePath, 88UL); 3925 NDR_MEMBER (_samr_vcbuf, AdminComment, 96UL); 3926 NDR_MEMBER (_samr_vcbuf, WorkStations, 104UL); 3927 NDR_MEMBER (_samr_vcbuf, UserComment, 112UL); 3928 NDR_MEMBER (_samr_vcbuf, Parameters, 120UL); 3929 NDR_MEMBER (_samr_short_blob, LmOwfPassword, 128UL); 3930 NDR_MEMBER (_samr_short_blob, NtOwfPassword, 136UL); 3931 NDR_MEMBER (_samr_vcbuf, PrivateData, 144UL); 3932 NDR_MEMBER (_samr_sd, SecurityDescriptor, 152UL); 3933 3934 return 1; 3935 } 3936 3937 3938 3939 int ndr__samr_SetUserInfo23 (struct ndr_reference *encl_ref); 3940 struct ndr_typeinfo ndt__samr_SetUserInfo23 = { 3941 1, /* NDR version */ 3942 3, /* alignment */ 3943 NDR_F_STRUCT, /* flags */ 3944 ndr__samr_SetUserInfo23, /* ndr_func */ 3945 712, /* pdu_size_fixed_part */ 3946 0, /* pdu_size_variable_part */ 3947 712, /* c_size_fixed_part */ 3948 0, /* c_size_variable_part */ 3949 }; 3950 3951 3952 /* 3953 * */ 3954 int 3955 ndr__samr_SetUserInfo23 (struct ndr_reference *encl_ref) 3956 { 3957 struct samr_SetUserInfo23 *val = (struct samr_SetUserInfo23 *) encl_ref->datum; 3958 struct ndr_reference myref; 3959 3960 (void) bzero(&myref, sizeof (myref)); 3961 myref.enclosing = encl_ref; 3962 myref.stream = encl_ref->stream; 3963 3964 /* do all basic elements first */ 3965 3966 /* do all constructed elements w/o pointers */ 3967 NDR_MEMBER (_samr_encr_passwd, encr_pw, 196UL); 3968 3969 /* do members with pointers in order */ 3970 NDR_MEMBER (_samr_SetUserInfo21, info21, 0UL); 3971 3972 return 1; 3973 } 3974 3975 3976 3977 int ndr__samr_SetUserInfo24 (struct ndr_reference *encl_ref); 3978 struct ndr_typeinfo ndt__samr_SetUserInfo24 = { 3979 1, /* NDR version */ 3980 0, /* alignment */ 3981 NDR_F_STRUCT, /* flags */ 3982 ndr__samr_SetUserInfo24, /* ndr_func */ 3983 517, /* pdu_size_fixed_part */ 3984 0, /* pdu_size_variable_part */ 3985 517, /* c_size_fixed_part */ 3986 0, /* c_size_variable_part */ 3987 }; 3988 3989 3990 /* 3991 * */ 3992 int 3993 ndr__samr_SetUserInfo24 (struct ndr_reference *encl_ref) 3994 { 3995 struct samr_SetUserInfo24 *val = (struct samr_SetUserInfo24 *) encl_ref->datum; 3996 struct ndr_reference myref; 3997 3998 (void) bzero(&myref, sizeof (myref)); 3999 myref.enclosing = encl_ref; 4000 myref.stream = encl_ref->stream; 4001 4002 /* do all basic elements first */ 4003 NDR_MEMBER (_uchar, password_expired, 516UL); 4004 4005 /* do all constructed elements w/o pointers */ 4006 NDR_MEMBER (_samr_encr_passwd, encr_pw, 0UL); 4007 4008 /* do members with pointers in order */ 4009 4010 return 1; 4011 } 4012 4013 4014 4015 int ndr__samr_SetUserInfo_u (struct ndr_reference *encl_ref); 4016 struct ndr_typeinfo ndt__samr_SetUserInfo_u = { 4017 1, /* NDR version */ 4018 3, /* alignment */ 4019 NDR_F_UNION, /* flags */ 4020 ndr__samr_SetUserInfo_u, /* ndr_func */ 4021 712, /* pdu_size_fixed_part */ 4022 0, /* pdu_size_variable_part */ 4023 712, /* c_size_fixed_part */ 4024 0, /* c_size_variable_part */ 4025 }; 4026 4027 4028 /* 4029 * */ 4030 int 4031 ndr__samr_SetUserInfo_u (struct ndr_reference *encl_ref) 4032 { 4033 union samr_SetUserInfo_u *val = (union samr_SetUserInfo_u *) encl_ref->datum; 4034 struct ndr_reference myref; 4035 4036 (void) bzero(&myref, sizeof (myref)); 4037 myref.enclosing = encl_ref; 4038 myref.stream = encl_ref->stream; 4039 4040 switch (encl_ref->switch_is) { 4041 case 16: 4042 NDR_MEMBER (_samr_SetUserInfo16, info16, 0UL); 4043 break; 4044 4045 case 21: 4046 NDR_MEMBER (_samr_SetUserInfo21, info21, 0UL); 4047 break; 4048 4049 case 23: 4050 NDR_MEMBER (_samr_SetUserInfo23, info23, 0UL); 4051 break; 4052 4053 case 24: 4054 NDR_MEMBER (_samr_SetUserInfo24, info24, 0UL); 4055 break; 4056 4057 default: 4058 NDR_MEMBER (_ulong, nothing, 0UL); 4059 break; 4060 4061 } 4062 4063 4064 return 1; 4065 } 4066 4067 4068 4069 int ndr__samr_SetUserInfo_s (struct ndr_reference *encl_ref); 4070 struct ndr_typeinfo ndt__samr_SetUserInfo_s = { 4071 1, /* NDR version */ 4072 3, /* alignment */ 4073 NDR_F_STRUCT, /* flags */ 4074 ndr__samr_SetUserInfo_s, /* ndr_func */ 4075 716, /* pdu_size_fixed_part */ 4076 0, /* pdu_size_variable_part */ 4077 716, /* c_size_fixed_part */ 4078 0, /* c_size_variable_part */ 4079 }; 4080 4081 4082 /* 4083 * */ 4084 int 4085 ndr__samr_SetUserInfo_s (struct ndr_reference *encl_ref) 4086 { 4087 struct samr_SetUserInfo_s *val = (struct samr_SetUserInfo_s *) encl_ref->datum; 4088 struct ndr_reference myref; 4089 4090 (void) bzero(&myref, sizeof (myref)); 4091 myref.enclosing = encl_ref; 4092 myref.stream = encl_ref->stream; 4093 4094 /* do all basic elements first */ 4095 NDR_MEMBER (_ushort, info_level, 0UL); 4096 NDR_MEMBER (_ushort, switch_value, 2UL); 4097 4098 /* do all constructed elements w/o pointers */ 4099 4100 /* do members with pointers in order */ 4101 NDR_MEMBER_WITH_SWITCH_IS (_samr_SetUserInfo_u, ru, 4UL, 4102 val->switch_value); 4103 4104 return 1; 4105 } 4106 4107 4108 4109 int ndr__samr_SetUserInfo (struct ndr_reference *encl_ref); 4110 struct ndr_typeinfo ndt__samr_SetUserInfo = { 4111 1, /* NDR version */ 4112 3, /* alignment */ 4113 NDR_F_OPERATION, /* flags */ 4114 ndr__samr_SetUserInfo, /* ndr_func */ 4115 740, /* pdu_size_fixed_part */ 4116 0, /* pdu_size_variable_part */ 4117 740, /* c_size_fixed_part */ 4118 0, /* c_size_variable_part */ 4119 }; 4120 4121 4122 /* 4123 * [operation(58)] 4124 */ 4125 int 4126 ndr__samr_SetUserInfo (struct ndr_reference *encl_ref) 4127 { 4128 struct samr_SetUserInfo *val = (struct samr_SetUserInfo *) encl_ref->datum; 4129 struct ndr_reference myref; 4130 4131 (void) bzero(&myref, sizeof (myref)); 4132 myref.enclosing = encl_ref; 4133 myref.stream = encl_ref->stream; 4134 4135 /* do all members in order */ 4136 if (NDR_DIR_IS_IN) { 4137 NDR_TOPMOST_MEMBER (_samr_handle, user_handle); 4138 } 4139 if (NDR_DIR_IS_IN) { 4140 NDR_TOPMOST_MEMBER (_samr_SetUserInfo_s, info); 4141 } 4142 if (NDR_DIR_IS_OUT) { 4143 NDR_TOPMOST_MEMBER (_ulong, status); 4144 } 4145 4146 return 1; 4147 } 4148 4149 4150 4151 int ndr__samr_interface (struct ndr_reference *encl_ref); 4152 struct ndr_typeinfo ndt__samr_interface = { 4153 1, /* NDR version */ 4154 3, /* alignment */ 4155 NDR_F_INTERFACE, /* flags */ 4156 ndr__samr_interface, /* ndr_func */ 4157 740, /* pdu_size_fixed_part */ 4158 0, /* pdu_size_variable_part */ 4159 740, /* c_size_fixed_part */ 4160 0, /* c_size_variable_part */ 4161 }; 4162 4163 4164 /* 4165 * [interface(0)] 4166 */ 4167 int 4168 ndr__samr_interface (struct ndr_reference *encl_ref) 4169 { 4170 union samr_interface *val = (union samr_interface *) encl_ref->datum; 4171 struct ndr_reference myref; 4172 4173 (void) bzero(&myref, sizeof (myref)); 4174 myref.enclosing = encl_ref; 4175 myref.stream = encl_ref->stream; 4176 4177 switch (encl_ref->switch_is) { 4178 case 0: 4179 NDR_PARAMS_MEMBER (_samr_Connect, Connect); 4180 break; 4181 4182 case 1: 4183 NDR_PARAMS_MEMBER (_samr_CloseHandle, CloseHandle); 4184 break; 4185 4186 case 5: 4187 NDR_PARAMS_MEMBER (_samr_LookupDomain, LookupDomain); 4188 break; 4189 4190 case 6: 4191 NDR_PARAMS_MEMBER (_samr_EnumLocalDomain, EnumLocalDomain); 4192 break; 4193 4194 case 7: 4195 NDR_PARAMS_MEMBER (_samr_OpenDomain, OpenDomain); 4196 break; 4197 4198 case 8: 4199 NDR_PARAMS_MEMBER (_samr_QueryDomainInfo, QueryDomainInfo); 4200 break; 4201 4202 case 46: 4203 NDR_PARAMS_MEMBER (_samr_QueryInfoDomain2, QueryInfoDomain2); 4204 break; 4205 4206 case 17: 4207 NDR_PARAMS_MEMBER (_samr_LookupNames, LookupNames); 4208 break; 4209 4210 case 34: 4211 NDR_PARAMS_MEMBER (_samr_OpenUser, OpenUser); 4212 break; 4213 4214 case 35: 4215 NDR_PARAMS_MEMBER (_samr_DeleteUser, DeleteUser); 4216 break; 4217 4218 case 36: 4219 NDR_PARAMS_MEMBER (_samr_QueryUserInfo, QueryUserInfo); 4220 break; 4221 4222 case 39: 4223 NDR_PARAMS_MEMBER (_samr_QueryUserGroups, QueryUserGroups); 4224 break; 4225 4226 case 19: 4227 NDR_PARAMS_MEMBER (_samr_OpenGroup, OpenGroup); 4228 break; 4229 4230 case 31: 4231 NDR_PARAMS_MEMBER (_samr_AddAliasMember, AddAliasMember); 4232 break; 4233 4234 case 32: 4235 NDR_PARAMS_MEMBER (_samr_DeleteAliasMember, DeleteAliasMember); 4236 break; 4237 4238 case 33: 4239 NDR_PARAMS_MEMBER (_samr_ListAliasMembers, ListAliasMembers); 4240 break; 4241 4242 case 44: 4243 NDR_PARAMS_MEMBER (_samr_GetUserPwInfo, GetUserPwInfo); 4244 break; 4245 4246 case 50: 4247 NDR_PARAMS_MEMBER (_samr_CreateUser, CreateUser); 4248 break; 4249 4250 case 55: 4251 NDR_PARAMS_MEMBER (_samr_ChangePasswordUser2, ChangePasswordUser2); 4252 break; 4253 4254 case 56: 4255 NDR_PARAMS_MEMBER (_samr_GetDomainPwInfo, GetDomainPwInfo); 4256 break; 4257 4258 case 57: 4259 NDR_PARAMS_MEMBER (_samr_Connect2, Connect2); 4260 break; 4261 4262 case 58: 4263 NDR_PARAMS_MEMBER (_samr_SetUserInfo, SetUserInfo); 4264 break; 4265 4266 case 62: 4267 NDR_PARAMS_MEMBER (_samr_Connect4, Connect4); 4268 break; 4269 4270 case 64: 4271 NDR_PARAMS_MEMBER (_samr_Connect5, Connect5); 4272 break; 4273 4274 case 40: 4275 NDR_PARAMS_MEMBER (_samr_QueryDispInfo, QueryDispInfo); 4276 break; 4277 4278 case 27: 4279 NDR_PARAMS_MEMBER (_samr_OpenAlias, OpenAlias); 4280 break; 4281 4282 case 14: 4283 NDR_PARAMS_MEMBER (_samr_CreateDomainAlias, CreateDomainAlias); 4284 break; 4285 4286 case 29: 4287 NDR_PARAMS_MEMBER (_samr_SetAliasInfo, SetAliasInfo); 4288 break; 4289 4290 case 28: 4291 NDR_PARAMS_MEMBER (_samr_QueryAliasInfo, QueryAliasInfo); 4292 break; 4293 4294 case 30: 4295 NDR_PARAMS_MEMBER (_samr_DeleteDomainAlias, DeleteDomainAlias); 4296 break; 4297 4298 case 15: 4299 NDR_PARAMS_MEMBER (_samr_EnumDomainAliases, EnumDomainAliases); 4300 break; 4301 4302 case 48: 4303 NDR_PARAMS_MEMBER (_samr_EnumDomainGroups, EnumDomainGroups); 4304 break; 4305 4306 default: 4307 NDR_SET_ERROR(encl_ref, NDR_ERR_SWITCH_VALUE_INVALID); 4308 return 0; 4309 break; 4310 } 4311 4312 4313 return 1; 4314 } 4315