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
18 #define LSASS_REQUEST_REGISTER_LOGON_PROCESS (1)
19 #define LSASS_REQUEST_CALL_AUTHENTICATION_PACKAGE (2)
20 #define LSASS_REQUEST_DEREGISTER_LOGON_PROCESS (3)
21 #define LSASS_REQUEST_LOGON_USER (4)
22 #define LSASS_REQUEST_LOOKUP_AUTHENTICATION_PACKAGE (5)
23 #define LSASS_REQUEST_MAXIMUM (6)
25 typedef struct _LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REQUEST
27 ULONG PackageNameLength;
29 } LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REQUEST,
30 *PLSASS_LOOKUP_AUTHENTICATION_PACKAGE_REQUEST;
32 typedef struct _LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REPLY
35 } LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REPLY,
36 *PLSASS_LOOKUP_AUTHENTICATION_PACKAGE_REPLY;
38 typedef struct _LSASS_DEREGISTER_LOGON_PROCESS_REQUEST
40 } LSASS_DEREGISTER_LOGON_PROCESS_REQUEST,
41 *PLSASS_DEREGISTER_LOGON_PROCES_REQUEST;
43 typedef struct _LSASS_DEREGISTER_LOGON_PROCESS_REPLY
45 } LSASS_DEREGISTER_LOGON_PROCESS_REPLY,
46 *PLSASS_DEREGISTER_LOGON_PROCESS_REPLY;
48 typedef struct _LSASS_CALL_AUTHENTICATION_PACKAGE_REQUEST
50 ULONG AuthenticationPackage;
53 } LSASS_CALL_AUTHENTICATION_PACKAGE_REQUEST,
54 *PLSASS_CALL_AUTHENTICATION_PACKAGE_REQUEST;
56 typedef struct _LSASS_CALL_AUTHENTICATION_PACKAGE_REPLY
58 ULONG OutBufferLength;
60 } LSASS_CALL_AUTHENTICATION_PACKAGE_REPLY,
61 *PLSASS_CALL_AUTHENTICATION_PACKAGE_REPLY;
63 typedef struct _LSASS_LOGON_USER_REQUEST
65 ULONG OriginNameLength;
67 SECURITY_LOGON_TYPE LogonType;
68 ULONG AuthenticationPackage;
69 PVOID AuthenticationInformation;
70 ULONG AuthenticationInformationLength;
71 ULONG LocalGroupsCount;
72 PSID_AND_ATTRIBUTES LocalGroups;
73 TOKEN_SOURCE SourceContext;
75 } LSASS_LOGON_USER_REQUEST, *PLSASS_LOGON_USER_REQUEST;
77 typedef struct _LSASS_LOGON_USER_REPLY
80 ULONG ProfileBufferLength;
86 } LSASS_LOGON_USER_REPLY, *PLSASS_LOGON_USER_REPLY;
88 typedef struct _LSASS_REGISTER_LOGON_PROCESS_REQUEST
91 WCHAR LogonProcessNameBuffer[127];
92 } LSASS_REGISTER_LOGON_PROCESS_REQUEST, *PLSASS_REGISTER_LOGON_PROCESS_REQUEST;
94 typedef struct _LSASS_REGISTER_LOGON_PROCESS_REPLY
96 LSA_OPERATIONAL_MODE OperationalMode;
97 } LSASS_REGISTER_LOGON_PROCESS_REPLY, *PLSASS_REGISTER_LOGON_PROCESS_REPLY;
99 typedef struct _LSASS_REQUEST
105 LSASS_REGISTER_LOGON_PROCESS_REQUEST RegisterLogonProcessRequest;
106 LSASS_LOGON_USER_REQUEST LogonUserRequest;
107 LSASS_CALL_AUTHENTICATION_PACKAGE_REQUEST
108 CallAuthenticationPackageRequest;
109 LSASS_DEREGISTER_LOGON_PROCESS_REPLY DeregisterLogonProcessRequest;
110 LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REQUEST
111 LookupAuthenticationPackageRequest;
113 } LSASS_REQUEST, *PLSASS_REQUEST;
115 typedef struct _LSASS_REPLY
121 LSASS_REGISTER_LOGON_PROCESS_REPLY RegisterLogonProcessReply;
122 LSASS_LOGON_USER_REPLY LogonUserReply;
123 LSASS_CALL_AUTHENTICATION_PACKAGE_REPLY CallAuthenticationPackageReply;
124 LSASS_DEREGISTER_LOGON_PROCESS_REPLY DeregisterLogonProcessReply;
125 LSASS_LOOKUP_AUTHENTICATION_PACKAGE_REPLY
126 LookupAuthenticationPackageReply;
128 } LSASS_REPLY, *PLSASS_REPLY;
130 #endif /* __INCLUDE_LSASS_LSASS_H */