Print this page
1575 untangle libmlrpc ... (smbsrv)


  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
  24  * Copyright 2015 Nexenta Systems, Inc.  All rights reserved.
  25  */
  26 
  27 #ifndef _MLSVC_SAM_NDL_
  28 #define _MLSVC_SAM_NDL_
  29 
  30 /*
  31  * Security Accounts Manager RPC (SAMR) interface definition.
  32  */
  33 
  34 #include "ndrtypes.ndl"
  35 
  36 /* Windows NT */
  37 #define SAMR_OPNUM_Connect                      0x00    /* SamrConnect */
  38 #define SAMR_OPNUM_CloseHandle                  0x01
  39 #define SAMR_OPNUM_SetSecObject                 0x02
  40 #define SAMR_OPNUM_QuerySecObject               0x03
  41 #define SAMR_OPNUM_ShutdownSamServer            0x04    /* NotUsedOnWire */
  42 #define SAMR_OPNUM_LookupDomain                 0x05
  43 #define SAMR_OPNUM_EnumLocalDomains             0x06
  44 #define SAMR_OPNUM_OpenDomain                   0x07
  45 #define SAMR_OPNUM_QueryDomainInfo              0x08
  46 #define SAMR_OPNUM_SetDomainInfo                0x09
  47 #define SAMR_OPNUM_CreateDomainGroup            0x0a
  48 #define SAMR_OPNUM_QueryDomainGroups            0x0b
  49 #define SAMR_OPNUM_CreateDomainUser             0x0c
  50 #define SAMR_OPNUM_EnumDomainUsers              0x0d
  51 #define SAMR_OPNUM_CreateDomainAlias            0x0e
  52 #define SAMR_OPNUM_EnumDomainAliases            0x0f
  53 #define SAMR_OPNUM_LookupIds                    0x10    /* GetAliasMembership */
  54 #define SAMR_OPNUM_LookupNames                  0x11


 346 };
 347 
 348 struct samr_logon_hours_all {
 349         WORD    units_per_week;
 350   SIZE_IS(units_per_week / 8)
 351         BYTE    *hours;
 352 };
 353 
 354 /*
 355  * SAMPR_USER_PASSWORD (in the MS Net API) or
 356  * struct samr_user_password (internal use) is
 357  * the "clear" form of struct samr_encr_passwd
 358  * (SAMPR_ENCRYPTED_USER_PASSWORD in MS Net).
 359  * It's not used by ndrgen, but is declared here
 360  * to help clarify the relationship between these,
 361  * and for the benefit of our client-side code.
 362  */
 363 #ifndef NDRGEN
 364 #define SAMR_USER_PWLEN 256
 365 struct samr_user_password {
 366         smb_wchar_t     Buffer[SAMR_USER_PWLEN];
 367         DWORD Length;
 368 };
 369 #endif  /* NDRGEN */
 370 
 371 /* SAMPR_ENCRYPTED_USER_PASSWORD */
 372 #define SAMR_ENCR_PWLEN 516     /* sizeof samr_user_password */
 373 struct samr_encr_passwd {
 374         BYTE data[SAMR_ENCR_PWLEN];
 375 };
 376 
 377 /* ENCRYPTED_NT_OWF_PASSWORD */
 378 #define SAMR_PWHASH_LEN 16
 379 struct samr_encr_hash {
 380         BYTE data[SAMR_PWHASH_LEN];
 381 };
 382 
 383 /*
 384  ***********************************************************************
 385  * SamrConnect.
 386  ***********************************************************************




  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
  24  * Copyright 2015 Nexenta Systems, Inc.  All rights reserved.
  25  */
  26 
  27 #ifndef _MLSVC_SAM_NDL_
  28 #define _MLSVC_SAM_NDL_
  29 
  30 /*
  31  * Security Accounts Manager RPC (SAMR) interface definition.
  32  */
  33 
  34 #include <libmlrpc/ndrtypes.ndl>
  35 
  36 /* Windows NT */
  37 #define SAMR_OPNUM_Connect                      0x00    /* SamrConnect */
  38 #define SAMR_OPNUM_CloseHandle                  0x01
  39 #define SAMR_OPNUM_SetSecObject                 0x02
  40 #define SAMR_OPNUM_QuerySecObject               0x03
  41 #define SAMR_OPNUM_ShutdownSamServer            0x04    /* NotUsedOnWire */
  42 #define SAMR_OPNUM_LookupDomain                 0x05
  43 #define SAMR_OPNUM_EnumLocalDomains             0x06
  44 #define SAMR_OPNUM_OpenDomain                   0x07
  45 #define SAMR_OPNUM_QueryDomainInfo              0x08
  46 #define SAMR_OPNUM_SetDomainInfo                0x09
  47 #define SAMR_OPNUM_CreateDomainGroup            0x0a
  48 #define SAMR_OPNUM_QueryDomainGroups            0x0b
  49 #define SAMR_OPNUM_CreateDomainUser             0x0c
  50 #define SAMR_OPNUM_EnumDomainUsers              0x0d
  51 #define SAMR_OPNUM_CreateDomainAlias            0x0e
  52 #define SAMR_OPNUM_EnumDomainAliases            0x0f
  53 #define SAMR_OPNUM_LookupIds                    0x10    /* GetAliasMembership */
  54 #define SAMR_OPNUM_LookupNames                  0x11


 346 };
 347 
 348 struct samr_logon_hours_all {
 349         WORD    units_per_week;
 350   SIZE_IS(units_per_week / 8)
 351         BYTE    *hours;
 352 };
 353 
 354 /*
 355  * SAMPR_USER_PASSWORD (in the MS Net API) or
 356  * struct samr_user_password (internal use) is
 357  * the "clear" form of struct samr_encr_passwd
 358  * (SAMPR_ENCRYPTED_USER_PASSWORD in MS Net).
 359  * It's not used by ndrgen, but is declared here
 360  * to help clarify the relationship between these,
 361  * and for the benefit of our client-side code.
 362  */
 363 #ifndef NDRGEN
 364 #define SAMR_USER_PWLEN 256
 365 struct samr_user_password {
 366         ndr_wchar_t     Buffer[SAMR_USER_PWLEN];
 367         DWORD Length;
 368 };
 369 #endif  /* NDRGEN */
 370 
 371 /* SAMPR_ENCRYPTED_USER_PASSWORD */
 372 #define SAMR_ENCR_PWLEN 516     /* sizeof samr_user_password */
 373 struct samr_encr_passwd {
 374         BYTE data[SAMR_ENCR_PWLEN];
 375 };
 376 
 377 /* ENCRYPTED_NT_OWF_PASSWORD */
 378 #define SAMR_PWHASH_LEN 16
 379 struct samr_encr_hash {
 380         BYTE data[SAMR_PWHASH_LEN];
 381 };
 382 
 383 /*
 384  ***********************************************************************
 385  * SamrConnect.
 386  ***********************************************************************