Wolfgang Thallergcc16 merge934c3885 months agoHistory
275 lines · 7.8 KB · D
RawDownload
/** * Windows API header module * * Translated from MinGW Windows headers * * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) * Source: $(DRUNTIMESRC core/sys/windows/_subauth.d) */module core.sys.windows.subauth;version (Windows): import core.sys.windows.ntdef, core.sys.windows.windef; /+alias LONG NTSTATUS;alias NTSTATUS* PNTSTATUS;+/ enum : ULONG {    MSV1_0_PASSTHRU    = 1,    MSV1_0_GUEST_LOGON = 2} // USER_ALL_INFORMATION.WhichFields (Undocumented)enum ULONG    MSV1_0_VALIDATION_LOGOFF_TIME  = 1,    MSV1_0_VALIDATION_KICKOFF_TIME = 2,    MSV1_0_VALIDATION_LOGON_SERVER = 4,    MSV1_0_VALIDATION_LOGON_DOMAIN = 8,    MSV1_0_VALIDATION_SESSION_KEY  = 16,    MSV1_0_VALIDATION_USER_FLAGS   = 32,    MSV1_0_VALIDATION_USER_ID      = 64; // ?ActionsPerformed? (Undocumented)enum MSV1_0_SUBAUTH_ACCOUNT_DISABLED = 1;enum MSV1_0_SUBAUTH_PASSWORD         = 2;enum MSV1_0_SUBAUTH_WORKSTATIONS = 4;enum MSV1_0_SUBAUTH_LOGON_HOURS = 8;enum MSV1_0_SUBAUTH_ACCOUNT_EXPIRY = 16;enum MSV1_0_SUBAUTH_PASSWORD_EXPIRY = 32;enum MSV1_0_SUBAUTH_ACCOUNT_TYPE = 64;enum MSV1_0_SUBAUTH_LOCKOUT = 128; enum NEXT_FREE_ACCOUNT_CONTROL_BIT = 131072; enum SAM_DAYS_PER_WEEK    = 7;enum SAM_HOURS_PER_WEEK   = 168;enum SAM_MINUTES_PER_WEEK = 10080; enum : NTSTATUS {    STATUS_SUCCESS                = 0,    STATUS_INVALID_INFO_CLASS     = 0xC0000003,    STATUS_NO_SUCH_USER           = 0xC0000064,    STATUS_WRONG_PASSWORD         = 0xC000006A,    STATUS_PASSWORD_RESTRICTION   = 0xC000006C,    STATUS_LOGON_FAILURE          = 0xC000006D,    STATUS_ACCOUNT_RESTRICTION    = 0xC000006E,    STATUS_INVALID_LOGON_HOURS    = 0xC000006F,    STATUS_INVALID_WORKSTATION    = 0xC0000070,    STATUS_PASSWORD_EXPIRED       = 0xC0000071,    STATUS_ACCOUNT_DISABLED       = 0xC0000072,    STATUS_INSUFFICIENT_RESOURCES = 0xC000009A,    STATUS_ACCOUNT_EXPIRED        = 0xC0000193,    STATUS_PASSWORD_MUST_CHANGE   = 0xC0000224,    STATUS_ACCOUNT_LOCKED_OUT     = 0xC0000234} // Note: undocumented in MSDN// USER_ALL_INFORMATION.UserAccountControlenum ULONG    USER_ACCOUNT_DISABLED                = 1,    USER_HOME_DIRECTORY_REQUIRED         = 2,    USER_PASSWORD_NOT_REQUIRED           = 4,    USER_TEMP_DUPLICATE_ACCOUNT          = 8,    USER_NORMAL_ACCOUNT                  = 16,    USER_MNS_LOGON_ACCOUNT               = 32,    USER_INTERDOMAIN_TRUST_ACCOUNT       = 64,    USER_WORKSTATION_TRUST_ACCOUNT       = 128,    USER_SERVER_TRUST_ACCOUNT            = 256,    USER_DONT_EXPIRE_PASSWORD            = 512,    USER_ACCOUNT_AUTO_LOCKED             = 1024,    USER_ENCRYPTED_TEXT_PASSWORD_ALLOWED = 2048,    USER_SMARTCARD_REQUIRED              = 4096,    USER_TRUSTED_FOR_DELEGATION          = 8192,    USER_NOT_DELEGATED                   = 16384,    USER_USE_DES_KEY_ONLY                = 32768,    USER_DONT_REQUIRE_PREAUTH            = 65536,     USER_MACHINE_ACCOUNT_MASK            = 448,    USER_ACCOUNT_TYPE_MASK               = 472,    USER_ALL_PARAMETERS                  = 2097152; /+struct UNICODE_STRING {    USHORT Length;    USHORT MaximumLength;    PWSTR Buffer;}alias UNICODE_STRING* PUNICODE_STRING; struct STRING {    USHORT Length;    USHORT MaximumLength;    PCHAR Buffer;}alias STRING* PSTRING;+/ alias SAM_HANDLE = HANDLE;alias PSAM_HANDLE = SAM_HANDLE*; struct OLD_LARGE_INTEGER {    ULONG LowPart;    LONG HighPart;}alias POLD_LARGE_INTEGER = OLD_LARGE_INTEGER*; enum NETLOGON_LOGON_INFO_CLASS {    NetlogonInteractiveInformation = 1,    NetlogonNetworkInformation,    NetlogonServiceInformation,    NetlogonGenericInformation,    NetlogonInteractiveTransitiveInformation,    NetlogonNetworkTransitiveInformation,    NetlogonServiceTransitiveInformation}  enum CYPHER_BLOCK_LENGTH = 8;enum USER_SESSION_KEY_LENGTH = CYPHER_BLOCK_LENGTH * 2;enum CLEAR_BLOCK_LENGTH = 8; struct CYPHER_BLOCK {    CHAR[CYPHER_BLOCK_LENGTH] data = 0;}alias PCYPHER_BLOCK = CYPHER_BLOCK*; struct CLEAR_BLOCK {    CHAR[CLEAR_BLOCK_LENGTH] data = 0;}alias PCLEAR_BLOCK = CLEAR_BLOCK*; struct LM_OWF_PASSWORD {    CYPHER_BLOCK[2] data;}alias PLM_OWF_PASSWORD = LM_OWF_PASSWORD*; struct USER_SESSION_KEY {    CYPHER_BLOCK[2] data;}alias PUSER_SESSION_KEY = USER_SESSION_KEY*; alias LM_CHALLENGE = CLEAR_BLOCK;alias PLM_CHALLENGE = LM_CHALLENGE*; alias NT_OWF_PASSWORD = LM_OWF_PASSWORD;alias PNT_OWF_PASSWORD = NT_OWF_PASSWORD*;alias NT_CHALLENGE = LM_CHALLENGE;alias PNT_CHALLENGE = NT_CHALLENGE*; struct LOGON_HOURS {    USHORT UnitsPerWeek;    PUCHAR LogonHours;}alias PLOGON_HOURS = LOGON_HOURS*; struct SR_SECURITY_DESCRIPTOR {    ULONG Length;    PUCHAR SecurityDescriptor;}alias PSR_SECURITY_DESCRIPTOR = SR_SECURITY_DESCRIPTOR*; align(4):struct USER_ALL_INFORMATION {    LARGE_INTEGER LastLogon;    LARGE_INTEGER LastLogoff;    LARGE_INTEGER PasswordLastSet;    LARGE_INTEGER AccountExpires;    LARGE_INTEGER PasswordCanChange;    LARGE_INTEGER PasswordMustChange;    UNICODE_STRING UserName;    UNICODE_STRING FullName;    UNICODE_STRING HomeDirectory;    UNICODE_STRING HomeDirectoryDrive;    UNICODE_STRING ScriptPath;    UNICODE_STRING ProfilePath;    UNICODE_STRING AdminComment;    UNICODE_STRING WorkStations;    UNICODE_STRING UserComment;    UNICODE_STRING Parameters;    UNICODE_STRING LmPassword;    UNICODE_STRING NtPassword;    UNICODE_STRING PrivateData;    SR_SECURITY_DESCRIPTOR SecurityDescriptor;    ULONG UserId;    ULONG PrimaryGroupId;    ULONG UserAccountControl;    ULONG WhichFields;    LOGON_HOURS LogonHours;    USHORT BadPasswordCount;    USHORT LogonCount;    USHORT CountryCode;    USHORT CodePage;    BOOLEAN LmPasswordPresent;    BOOLEAN NtPasswordPresent;    BOOLEAN PasswordExpired;    BOOLEAN PrivateDataSensitive;}alias PUSER_ALL_INFORMATION = USER_ALL_INFORMATION*;align: struct MSV1_0_VALIDATION_INFO {    LARGE_INTEGER LogoffTime;    LARGE_INTEGER KickoffTime;    UNICODE_STRING LogonServer;    UNICODE_STRING LogonDomainName;    USER_SESSION_KEY SessionKey;    BOOLEAN Authoritative;    ULONG UserFlags;    ULONG WhichFields;    ULONG UserId;}alias PMSV1_0_VALIDATION_INFO = MSV1_0_VALIDATION_INFO*; struct NETLOGON_LOGON_IDENTITY_INFO {    UNICODE_STRING LogonDomainName;    ULONG ParameterControl;    OLD_LARGE_INTEGER LogonId;    UNICODE_STRING UserName;    UNICODE_STRING Workstation;}alias PNETLOGON_LOGON_IDENTITY_INFO = NETLOGON_LOGON_IDENTITY_INFO*; struct NETLOGON_INTERACTIVE_INFO {    NETLOGON_LOGON_IDENTITY_INFO Identity;    LM_OWF_PASSWORD LmOwfPassword;    NT_OWF_PASSWORD NtOwfPassword;}alias PNETLOGON_INTERACTIVE_INFO = NETLOGON_INTERACTIVE_INFO*; struct NETLOGON_GENERIC_INFO {    NETLOGON_LOGON_IDENTITY_INFO Identity;    UNICODE_STRING PackageName;    ULONG DataLength;    PUCHAR LogonData;}alias PNETLOGON_GENERIC_INFO = NETLOGON_GENERIC_INFO*; struct NETLOGON_NETWORK_INFO {    NETLOGON_LOGON_IDENTITY_INFO Identity;    LM_CHALLENGE LmChallenge;    STRING NtChallengeResponse;    STRING LmChallengeResponse;}alias PNETLOGON_NETWORK_INFO = NETLOGON_NETWORK_INFO*; struct NETLOGON_SERVICE_INFO {    NETLOGON_LOGON_IDENTITY_INFO Identity;    LM_OWF_PASSWORD LmOwfPassword;    NT_OWF_PASSWORD NtOwfPassword;}alias PNETLOGON_SERVICE_INFO = NETLOGON_SERVICE_INFO*; extern (Windows) {NTSTATUS Msv1_0SubAuthenticationRoutine(NETLOGON_LOGON_INFO_CLASS,PVOID,    ULONG,PUSER_ALL_INFORMATION,PULONG,PULONG,    PBOOLEAN,PLARGE_INTEGER,PLARGE_INTEGER);NTSTATUS Msv1_0SubAuthenticationFilter(NETLOGON_LOGON_INFO_CLASS,PVOID,    ULONG,PUSER_ALL_INFORMATION,PULONG,PULONG,    PBOOLEAN,PLARGE_INTEGER,PLARGE_INTEGER);NTSTATUS Msv1_0SubAuthenticationRoutineGeneric(PVOID,ULONG,PULONG,PVOID*);NTSTATUS Msv1_0SubAuthenticationRoutineEx(NETLOGON_LOGON_INFO_CLASS,PVOID,    ULONG,PUSER_ALL_INFORMATION,SAM_HANDLE,    PMSV1_0_VALIDATION_INFO,PULONG);}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t