ReactOS  0.4.14-dev-317-g96040ec
subauth.h
Go to the documentation of this file.
1 #ifndef _SUBAUTH_H
2 #define _SUBAUTH_H
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 #ifndef NT_SUCCESS
8 #define NT_SUCCESS(x) ((x)>=0)
9 #define STATUS_SUCCESS 0
10 #endif
11 #define CYPHER_BLOCK_LENGTH 8
12 #define USER_SESSION_KEY_LENGTH (CYPHER_BLOCK_LENGTH*2)
13 #define CLEAR_BLOCK_LENGTH 8
14 #define MSV1_0_PASSTHRU 1
15 #define MSV1_0_GUEST_LOGON 2
16 #define MSV1_0_VALIDATION_LOGOFF_TIME 1
17 #define MSV1_0_VALIDATION_KICKOFF_TIME 2
18 #define MSV1_0_VALIDATION_LOGON_SERVER 4
19 #define MSV1_0_VALIDATION_LOGON_DOMAIN 8
20 #define MSV1_0_VALIDATION_SESSION_KEY 16
21 #define MSV1_0_VALIDATION_USER_FLAGS 32
22 #define MSV1_0_VALIDATION_USER_ID 64
23 #define MSV1_0_SUBAUTH_ACCOUNT_DISABLED 1
24 #define MSV1_0_SUBAUTH_PASSWORD 2
25 #define MSV1_0_SUBAUTH_WORKSTATIONS 4
26 #define MSV1_0_SUBAUTH_LOGON_HOURS 8
27 #define MSV1_0_SUBAUTH_ACCOUNT_EXPIRY 16
28 #define MSV1_0_SUBAUTH_PASSWORD_EXPIRY 32
29 #define MSV1_0_SUBAUTH_ACCOUNT_TYPE 64
30 #define MSV1_0_SUBAUTH_LOCKOUT 128
31 #define NEXT_FREE_ACCOUNT_CONTROL_BIT 131072
32 #define SAM_DAYS_PER_WEEK 7
33 #define SAM_HOURS_PER_WEEK 168
34 #define SAM_MINUTES_PER_WEEK 10080
35 #define STATUS_INVALID_INFO_CLASS 0xC0000003L
36 #define STATUS_NO_SUCH_USER 0xC0000064L
37 #define STATUS_WRONG_PASSWORD 0xC000006AL
38 #define STATUS_PASSWORD_RESTRICTION 0xC000006CL
39 #define STATUS_LOGON_FAILURE 0xC000006DL
40 #define STATUS_ACCOUNT_RESTRICTION 0xC000006EL
41 #define STATUS_INVALID_LOGON_HOURS 0xC000006FL
42 #define STATUS_INVALID_WORKSTATION 0xC0000070L
43 #define STATUS_PASSWORD_EXPIRED 0xC0000071L
44 #define STATUS_ACCOUNT_DISABLED 0xC0000072L
45 #define STATUS_INSUFFICIENT_RESOURCES 0xC000009AL
46 #define STATUS_ACCOUNT_EXPIRED 0xC0000193L
47 #define STATUS_PASSWORD_MUST_CHANGE 0xC0000224L
48 #define STATUS_ACCOUNT_LOCKED_OUT 0xC0000234L
49 #define USER_ACCOUNT_DISABLED 1
50 #define USER_HOME_DIRECTORY_REQUIRED 2
51 #define USER_PASSWORD_NOT_REQUIRED 4
52 #define USER_TEMP_DUPLICATE_ACCOUNT 8
53 #define USER_NORMAL_ACCOUNT 16
54 #define USER_MNS_LOGON_ACCOUNT 32
55 #define USER_INTERDOMAIN_TRUST_ACCOUNT 64
56 #define USER_WORKSTATION_TRUST_ACCOUNT 128
57 #define USER_SERVER_TRUST_ACCOUNT 256
58 #define USER_DONT_EXPIRE_PASSWORD 512
59 #define USER_ACCOUNT_AUTO_LOCKED 1024
60 #define USER_ENCRYPTED_TEXT_PASSWORD_ALLOWED 2048
61 #define USER_SMARTCARD_REQUIRED 4096
62 #define USER_TRUSTED_FOR_DELEGATION 8192
63 #define USER_NOT_DELEGATED 16384
64 #define USER_USE_DES_KEY_ONLY 32768
65 #define USER_DONT_REQUIRE_PREAUTH 65536
66 #define USER_MACHINE_ACCOUNT_MASK 448
67 #define USER_ACCOUNT_TYPE_MASK 472
68 #define USER_ALL_PARAMETERS 2097152
69 #if !defined(_NTDEF_H) && !defined(_NTSECAPI_H)
71 typedef struct _UNICODE_STRING {
72  USHORT Length;
74  PWSTR Buffer;
76 typedef struct _STRING {
77  USHORT Length;
79  PCHAR Buffer;
80 } STRING, *PSTRING;
81 #endif
83 typedef struct _OLD_LARGE_INTEGER {
93 typedef struct _CYPHER_BLOCK {
96 typedef struct _CLEAR_BLOCK {
99 typedef struct _LM_OWF_PASSWORD {
102 typedef struct _USER_SESSION_KEY {
108 typedef struct _LOGON_HOURS {
112 typedef struct _SR_SECURITY_DESCRIPTOR {
113  ULONG Length;
116 #pragma pack(push,4)
117 typedef struct _USER_ALL_INFORMATION {
138  ULONG UserId;
152 #pragma pack(pop)
153 typedef struct _MSV1_0_VALIDATION_INFO {
176 typedef struct _NETLOGON_GENERIC_INFO {
182 typedef struct _NETLOGON_NETWORK_INFO {
188 typedef struct _NETLOGON_SERVICE_INFO {
203 #ifdef __cplusplus
204 }
205 #endif
206 #endif /* _SUBAUTH_H */
LOGON_HOURS LogonHours
Definition: ntsam.h:682
signed char * PCHAR
Definition: retypes.h:7
NT_OWF_PASSWORD NtOwfPassword
Definition: subauth.h:174
NT_OWF_PASSWORD NtOwfPassword
Definition: subauth.h:191
NTSTATUS NTAPI Msv1_0SubAuthenticationFilter(NETLOGON_LOGON_INFO_CLASS, PVOID, ULONG, PUSER_ALL_INFORMATION, PULONG, PULONG, PBOOLEAN, PLARGE_INTEGER, PLARGE_INTEGER)
ULONG PrimaryGroupId
Definition: ntsam.h:679
#define CLEAR_BLOCK_LENGTH
Definition: subauth.h:13
UNICODE_STRING Workstation
Definition: subauth.h:169
LARGE_INTEGER AccountExpires
Definition: ntsam.h:661
LARGE_INTEGER PasswordLastSet
Definition: ntsam.h:660
UNICODE_STRING ScriptPath
Definition: ntsam.h:668
BOOLEAN PasswordExpired
Definition: ntsam.h:689
USHORT CountryCode
Definition: ntsam.h:685
#define CYPHER_BLOCK_LENGTH
Definition: subauth.h:11
USHORT MaximumLength
Definition: env_spec_w32.h:370
UNICODE_STRING PrivateData
Definition: ntsam.h:676
BOOLEAN PrivateDataSensitive
Definition: ntsam.h:690
UNICODE_STRING LogonDomainName
Definition: subauth.h:157
struct _NETLOGON_SERVICE_INFO * PNETLOGON_SERVICE_INFO
struct _USER_SESSION_KEY * PUSER_SESSION_KEY
enum _NETLOGON_LOGON_INFO_CLASS NETLOGON_LOGON_INFO_CLASS
uint16_t * PWSTR
Definition: typedefs.h:54
NETLOGON_LOGON_IDENTITY_INFO Identity
Definition: subauth.h:183
CLEAR_BLOCK * PLM_CHALLENGE
Definition: subauth.h:105
UNICODE_STRING HomeDirectoryDrive
Definition: ntsam.h:667
unsigned char * PUCHAR
Definition: retypes.h:3
char CHAR
Definition: xmlstorage.h:175
UNICODE_STRING UserName
Definition: subauth.h:168
LONG NTSTATUS
Definition: precomp.h:26
struct _OLD_LARGE_INTEGER OLD_LARGE_INTEGER
BOOLEAN LmPasswordPresent
Definition: ntsam.h:687
unsigned short Length
Definition: sprintf.c:451
struct _LOGON_HOURS * PLOGON_HOURS
LONG NTSTATUS
Definition: subauth.h:70
UNICODE_STRING ProfilePath
Definition: ntsam.h:669
struct _OLD_LARGE_INTEGER * POLD_LARGE_INTEGER
ULONG UserAccountControl
Definition: ntsam.h:680
CLEAR_BLOCK LM_CHALLENGE
Definition: subauth.h:105
USHORT UnitsPerWeek
Definition: ntsam.h:474
LARGE_INTEGER PasswordCanChange
Definition: ntsam.h:662
UNICODE_STRING LmPassword
Definition: ntsam.h:674
STRING LmChallengeResponse
Definition: subauth.h:186
struct _MSV1_0_VALIDATION_INFO MSV1_0_VALIDATION_INFO
NETLOGON_LOGON_IDENTITY_INFO Identity
Definition: subauth.h:177
void * Buffer
Definition: sprintf.c:453
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
NETLOGON_LOGON_IDENTITY_INFO Identity
Definition: subauth.h:172
struct _CYPHER_BLOCK * PCYPHER_BLOCK
LM_OWF_PASSWORD * PNT_OWF_PASSWORD
Definition: subauth.h:106
long LONG
Definition: pedump.c:60
PUCHAR LogonHours
Definition: ntsam.h:475
struct _CLEAR_BLOCK CLEAR_BLOCK
struct _LOGON_HOURS LOGON_HOURS
struct _NETLOGON_INTERACTIVE_INFO NETLOGON_INTERACTIVE_INFO
struct _NETLOGON_GENERIC_INFO * PNETLOGON_GENERIC_INFO
unsigned char BOOLEAN
NETLOGON_LOGON_IDENTITY_INFO Identity
Definition: subauth.h:189
struct _SR_SECURITY_DESCRIPTOR SR_SECURITY_DESCRIPTOR
struct _USER_ALL_INFORMATION * PUSER_ALL_INFORMATION
UNICODE_STRING AdminComment
Definition: ntsam.h:670
struct _LM_OWF_PASSWORD * PLM_OWF_PASSWORD
struct _STRING STRING
struct _STRING * PSTRING
LM_CHALLENGE NT_CHALLENGE
Definition: subauth.h:107
struct _UNICODE_STRING UNICODE_STRING
struct _UNICODE_STRING * PUNICODE_STRING
NTSTATUS NTAPI Msv1_0SubAuthenticationRoutineEx(NETLOGON_LOGON_INFO_CLASS, PVOID, ULONG, PUSER_ALL_INFORMATION, SAM_HANDLE, PMSV1_0_VALIDATION_INFO, PULONG)
LM_CHALLENGE * PNT_CHALLENGE
Definition: subauth.h:107
PUCHAR SecurityDescriptor
Definition: ntsam.h:481
LARGE_INTEGER PasswordMustChange
Definition: ntsam.h:663
PVOID * PSAM_HANDLE
Definition: subauth.h:82
UNICODE_STRING HomeDirectory
Definition: ntsam.h:666
LARGE_INTEGER LogoffTime
Definition: subauth.h:154
LONG * PNTSTATUS
Definition: subauth.h:70
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
struct _NETLOGON_INTERACTIVE_INFO * PNETLOGON_INTERACTIVE_INFO
struct _NETLOGON_GENERIC_INFO NETLOGON_GENERIC_INFO
struct _CLEAR_BLOCK * PCLEAR_BLOCK
LARGE_INTEGER LastLogoff
Definition: ntsam.h:659
std::wstring STRING
Definition: fontsub.cpp:33
struct _USER_SESSION_KEY USER_SESSION_KEY
char * PBOOLEAN
Definition: retypes.h:11
UNICODE_STRING UserName
Definition: ntsam.h:664
struct _MSV1_0_VALIDATION_INFO * PMSV1_0_VALIDATION_INFO
UNICODE_STRING PackageName
Definition: subauth.h:178
struct _NETLOGON_NETWORK_INFO NETLOGON_NETWORK_INFO
BOOLEAN NtPasswordPresent
Definition: ntsam.h:688
PVOID SAM_HANDLE
Definition: subauth.h:82
NTSTATUS NTAPI Msv1_0SubAuthenticationRoutineGeneric(PVOID, ULONG, PULONG, PVOID *)
UNICODE_STRING WorkStations
Definition: ntsam.h:671
UNICODE_STRING LogonServer
Definition: subauth.h:156
UNICODE_STRING FullName
Definition: ntsam.h:665
struct _NETLOGON_LOGON_IDENTITY_INFO * PNETLOGON_LOGON_IDENTITY_INFO
struct _NETLOGON_NETWORK_INFO * PNETLOGON_NETWORK_INFO
LARGE_INTEGER LastLogon
Definition: ntsam.h:658
LM_CHALLENGE LmChallenge
Definition: subauth.h:184
NTSTATUS NTAPI Msv1_0SubAuthenticationRoutine(NETLOGON_LOGON_INFO_CLASS, PVOID, ULONG, PUSER_ALL_INFORMATION, PULONG, PULONG, PBOOLEAN, PLARGE_INTEGER, PLARGE_INTEGER)
unsigned short USHORT
Definition: pedump.c:61
struct _NETLOGON_SERVICE_INFO NETLOGON_SERVICE_INFO
USHORT BadPasswordCount
Definition: ntsam.h:683
UNICODE_STRING UserComment
Definition: ntsam.h:672
USER_SESSION_KEY SessionKey
Definition: subauth.h:158
unsigned int * PULONG
Definition: retypes.h:1
OLD_LARGE_INTEGER LogonId
Definition: subauth.h:167
struct _USER_ALL_INFORMATION USER_ALL_INFORMATION
_NETLOGON_LOGON_INFO_CLASS
Definition: subauth.h:87
struct _NETLOGON_LOGON_IDENTITY_INFO NETLOGON_LOGON_IDENTITY_INFO
UNICODE_STRING LogonDomainName
Definition: subauth.h:165
struct _CYPHER_BLOCK CYPHER_BLOCK
unsigned int ULONG
Definition: retypes.h:1
struct _SR_SECURITY_DESCRIPTOR * PSR_SECURITY_DESCRIPTOR
LM_OWF_PASSWORD LmOwfPassword
Definition: subauth.h:190
LARGE_INTEGER KickoffTime
Definition: subauth.h:155
UNICODE_STRING NtPassword
Definition: ntsam.h:675
LM_OWF_PASSWORD NT_OWF_PASSWORD
Definition: subauth.h:106
LM_OWF_PASSWORD LmOwfPassword
Definition: subauth.h:173
unsigned short MaximumLength
Definition: sprintf.c:452
struct _LM_OWF_PASSWORD LM_OWF_PASSWORD
SR_SECURITY_DESCRIPTOR SecurityDescriptor
Definition: ntsam.h:677
STRING NtChallengeResponse
Definition: subauth.h:185
UNICODE_STRING Parameters
Definition: ntsam.h:673