3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS system libraries
5 * FILE: include/lsass/lsass.h
6 * PURPOSE: LSASS API declarations
11 #ifndef __INCLUDE_LSASS_LSASS_H
12 #define __INCLUDE_LSASS_LSASS_H
17 #define LSASS_REQUEST_REGISTER_LOGON_PROCESS (1)
18 #define LSASS_REQUEST_CALL_AUTHENTICATION_PACKAGE (2)
19 #define LSASS_REQUEST_DEREGISTER_LOGON_PROCESS (3)
20 #define LSASS_REQUEST_LOGON_USER (4)
21 #define LSASS_REQUEST_LOOKUP_AUTHENTICATION_PACKAGE (5)
22 #define LSASS_REQUEST_MAXIMUM (6)
24 typedef struct _LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REQUEST
26 ULONG PackageNameLength
;
28 } LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REQUEST
,
29 *PLSASS_LOOKUP_AUTHENTICATION_PACKAGE_REQUEST
;
31 typedef struct _LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REPLY
34 } LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REPLY
,
35 *PLSASS_LOOKUP_AUTHENTICATION_PACKAGE_REPLY
;
37 typedef struct _LSASS_DEREGISTER_LOGON_PROCESS_REQUEST
39 } LSASS_DEREGISTER_LOGON_PROCESS_REQUEST
,
40 *PLSASS_DEREGISTER_LOGON_PROCES_REQUEST
;
42 typedef struct _LSASS_DEREGISTER_LOGON_PROCESS_REPLY
44 } LSASS_DEREGISTER_LOGON_PROCESS_REPLY
,
45 *PLSASS_DEREGISTER_LOGON_PROCESS_REPLY
;
47 typedef struct _LSASS_CALL_AUTHENTICATION_PACKAGE_REQUEST
49 ULONG AuthenticationPackage
;
52 } LSASS_CALL_AUTHENTICATION_PACKAGE_REQUEST
,
53 *PLSASS_CALL_AUTHENTICATION_PACKAGE_REQUEST
;
55 typedef struct _LSASS_CALL_AUTHENTICATION_PACKAGE_REPLY
57 ULONG OutBufferLength
;
59 } LSASS_CALL_AUTHENTICATION_PACKAGE_REPLY
,
60 *PLSASS_CALL_AUTHENTICATION_PACKAGE_REPLY
;
62 typedef struct _LSASS_LOGON_USER_REQUEST
64 ULONG OriginNameLength
;
66 SECURITY_LOGON_TYPE LogonType
;
67 ULONG AuthenticationPackage
;
68 PVOID AuthenticationInformation
;
69 ULONG AuthenticationInformationLength
;
70 ULONG LocalGroupsCount
;
71 PSID_AND_ATTRIBUTES LocalGroups
;
72 TOKEN_SOURCE SourceContext
;
74 } LSASS_LOGON_USER_REQUEST
, *PLSASS_LOGON_USER_REQUEST
;
76 typedef struct _LSASS_LOGON_USER_REPLY
79 ULONG ProfileBufferLength
;
85 } LSASS_LOGON_USER_REPLY
, *PLSASS_LOGON_USER_REPLY
;
87 typedef struct _LSASS_REGISTER_LOGON_PROCESS_REQUEST
90 WCHAR LogonProcessNameBuffer
[127];
91 } LSASS_REGISTER_LOGON_PROCESS_REQUEST
, *PLSASS_REGISTER_LOGON_PROCESS_REQUEST
;
93 typedef struct _LSASS_REGISTER_LOGON_PROCESS_REPLY
95 LSA_OPERATIONAL_MODE OperationalMode
;
96 } LSASS_REGISTER_LOGON_PROCESS_REPLY
, *PLSASS_REGISTER_LOGON_PROCESS_REPLY
;
98 typedef struct _LSASS_REQUEST
104 LSASS_REGISTER_LOGON_PROCESS_REQUEST RegisterLogonProcessRequest
;
105 LSASS_LOGON_USER_REQUEST LogonUserRequest
;
106 LSASS_CALL_AUTHENTICATION_PACKAGE_REQUEST
107 CallAuthenticationPackageRequest
;
108 LSASS_DEREGISTER_LOGON_PROCESS_REPLY DeregisterLogonProcessRequest
;
109 LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REQUEST
110 LookupAuthenticationPackageRequest
;
112 } LSASS_REQUEST
, *PLSASS_REQUEST
;
114 typedef struct _LSASS_REPLY
120 LSASS_REGISTER_LOGON_PROCESS_REPLY RegisterLogonProcessReply
;
121 LSASS_LOGON_USER_REPLY LogonUserReply
;
122 LSASS_CALL_AUTHENTICATION_PACKAGE_REPLY CallAuthenticationPackageReply
;
123 LSASS_DEREGISTER_LOGON_PROCESS_REPLY DeregisterLogonProcessReply
;
124 LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REPLY
125 LookupAuthenticationPackageReply
;
127 } LSASS_REPLY
, *PLSASS_REPLY
;
129 #endif /* __INCLUDE_LSASS_LSASS_H */