ReactOS 0.4.15-dev-7704-gc07eb9f
lsasrv.h
Go to the documentation of this file.
1/*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: Local Security Authority (LSA) Server
4 * FILE: reactos/dll/win32/lsasrv/lsasrv.h
5 * PURPOSE: Common header file
6 *
7 * PROGRAMMERS: Eric Kohl
8 */
9
10#ifndef _LSASRV_H
11#define _LSASRV_H
12
13#include <stdarg.h>
14
15#define WIN32_NO_STATUS
16#define _INC_WINDOWS
17#define COM_NO_WINDOWS_H
18
19#include <windef.h>
20#include <winbase.h>
21#include <winreg.h>
22
23#define NTOS_MODE_USER
24#include <ndk/cmfuncs.h>
25#include <ndk/exfuncs.h>
26#include <ndk/kefuncs.h>
27#include <ndk/mmfuncs.h>
28#include <ndk/obfuncs.h>
29#include <ndk/psfuncs.h>
30#include <ndk/rtlfuncs.h>
31#include <ndk/sefuncs.h>
32#include <ndk/ketypes.h>
33#include <ndk/setypes.h>
34
35#include <ntsam.h>
36#include <ntlsa.h>
37#include <sddl.h>
38
39#include <srmp.h>
40
41#include <lsass.h>
42#include <lsa_s.h>
43
44#include <wine/debug.h>
46
48{
55
56typedef struct _LSA_DB_OBJECT
57{
66
67#define LSAP_DB_SIGNATURE 0x12345678
68
69#define POLICY_AUDIT_EVENT_TYPE_COUNT (AuditCategoryAccountLogon - AuditCategorySystem + 1)
71{
76
77typedef struct _LSAP_LOGON_CONTEXT
78{
84
85typedef struct _SAMPR_ULONG_ARRAY
86{
87 unsigned long Count;
88 unsigned long *Element;
90
92
98
103
104extern PSID LsapWorldSid;
105extern PSID LsapNetworkSid;
106extern PSID LsapBatchSid;
108extern PSID LsapServiceSid;
111
112
113/* authpackage.c */
116
119 PLSAP_LOGON_CONTEXT LogonContext);
120
123 PLSAP_LOGON_CONTEXT LogonContext);
124
126LsapLogonUser(PLSA_API_MSG RequestMsg,
127 PLSAP_LOGON_CONTEXT LogonContext);
128
129VOID
132
133
134/* authport.c */
137
138/* database.c */
141
144 IN LPWSTR ContainerName,
146 IN LSA_DB_OBJECT_TYPE HandleType,
148 IN BOOLEAN Trusted,
149 OUT PLSA_DB_OBJECT *DbObject);
150
153 IN LPWSTR ContainerName,
157 IN BOOLEAN Trusted,
158 OUT PLSA_DB_OBJECT *DbObject);
159
162 IN LSA_DB_OBJECT_TYPE HandleType,
164 OUT PLSA_DB_OBJECT *DbObject);
165
168
171
174 LPWSTR AttributeName,
176 PULONG AttributeSize);
177
180 LPWSTR AttributeName,
182 ULONG AttributeSize);
183
186 LPWSTR AttributeName);
187
188/* dssetup.c */
189VOID
191
192/* lookup.c */
195
196ULONG
198
202 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
203 PLSAPR_TRANSLATED_SIDS_EX2 TranslatedSids,
204 LSAP_LOOKUP_LEVEL LookupLevel,
205 DWORD *MappedCount,
206 DWORD LookupOptions,
207 DWORD ClientRevision);
208
211 PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains,
212 PLSAPR_TRANSLATED_NAMES_EX TranslatedNames,
213 LSAP_LOOKUP_LEVEL LookupLevel,
214 DWORD *MappedCount,
215 DWORD LookupOptions,
216 DWORD ClientRevision);
217
218/* lsarpc.c */
221
222/* notify.c */
223VOID
225
228 PLSA_API_MSG RequestMsg);
229
230VOID
233
234/* policy.c */
237 PLSAPR_POLICY_INFORMATION *PolicyInformation);
238
241 PLSAPR_POLICY_INFORMATION *PolicyInformation);
242
245 PLSAPR_POLICY_INFORMATION *PolicyInformation);
246
249 PLSAPR_POLICY_INFORMATION *PolicyInformation);
250
253 PLSAPR_POLICY_INFORMATION *PolicyInformation);
254
257 PLSAPR_POLICY_INFORMATION *PolicyInformation);
258
261 PLSAPR_POLICY_INFORMATION *PolicyInformation);
262
265 PLSAPR_POLICY_INFORMATION *PolicyInformation);
266
269 PLSAPR_POLICY_INFORMATION *PolicyInformation);
270
273 PLSAPR_POLICY_INFORMATION *PolicyInformation);
274
277 PLSAPR_POLICY_INFORMATION *PolicyInformation);
278
281 PLSAPR_POLICY_INFORMATION *PolicyInformation);
282
285 PLSAPR_POLICY_INFORMATION *PolicyInformation);
286
290
294
298
302
306
310
314
318
322
326
330
334
335/* privileges.c */
339
342 USHORT ClientLanguage,
343 USHORT ClientSystemDefaultLanguage,
344 PRPC_UNICODE_STRING *DisplayName,
345 USHORT *LanguageReturned);
346
347PLUID
350
352LsarpEnumeratePrivileges(DWORD *EnumerationContext,
353 PLSAPR_PRIVILEGE_ENUM_BUFFER EnumerationBuffer,
354 DWORD PreferedMaximumLength);
355
359
363
364/* registry.h */
367
369LsapRegCreateKey(IN HANDLE ParentKeyHandle,
373
375LsapRegDeleteSubKey(IN HANDLE ParentKeyHandle,
377
380
383 IN ULONG Index,
386
388LsapRegOpenKey(IN HANDLE ParentKeyHandle,
392
395 OUT PULONG SubKeyCount,
396 OUT PULONG MaxSubKeyNameLength,
397 OUT PULONG ValueCount);
398
402
405 IN ULONG Index,
407 IN OUT PULONG NameLength,
411
418
422 IN ULONG Type,
423 IN LPVOID Data,
425
426/* security.c */
429 PULONG PolicySdSize);
430
433 PULONG AccountSdSize);
434
437 PULONG SecretSdSize);
438
441 _In_ const TOKEN_USER *User,
443 _Out_ PULONG TokenSdSize);
444
445/* session.c */
446VOID
448
450NTAPI
452
454NTAPI
456
458NTAPI
462 _In_ PLSA_STRING PrimaryKeyValue,
463 _In_ PLSA_STRING Credential);
464
466NTAPI
470 _Inout_ PULONG QueryContext,
471 _In_ BOOLEAN RetrieveAllCredentials,
472 _Inout_ PLSA_STRING PrimaryKeyValue,
473 _Out_ PULONG PrimaryKeyLength,
474 _Out_ PLSA_STRING Credentials);
475
477NTAPI
481 _In_ PLSA_STRING PrimaryKeyValue);
482
487 _In_ PUNICODE_STRING UserName,
488 _In_ PUNICODE_STRING LogonDomain,
489 _In_ PSID Sid);
490
493
496
497/* srm.c */
500
503 PLUID LogonId);
504
507 PLUID LogonId);
508
509/* utils.c */
510INT
512 UINT uId,
514 INT nBufferMax);
515
516INT
519 _In_ UINT uId,
520 _In_ USHORT usLanguage);
521
522INT
525 _In_ UINT uId,
526 _In_ USHORT usLanguage,
528 _Out_ INT nBufferMax);
529
530PSID
532 PSID SrcSid,
533 ULONG Rid);
534
535#endif /* _LSASRV_H */
unsigned char BOOLEAN
PWSTR Names[]
Type
Definition: Type.h:7
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
Definition: precomp.h:23
LONG NTSTATUS
Definition: precomp.h:26
_In_ ULONG _In_opt_ WDFREQUEST _In_opt_ PVOID _In_ size_t _In_ PVOID _In_ size_t _Out_ size_t * DataLength
Definition: cdrom.h:1444
HINSTANCE hInstance
Definition: charmap.c:19
Definition: bufpool.h:45
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
Definition: db.cpp:175
ULONG AuthenticationPackage
Definition: logon.c:18
NTSTATUS LsarSetAccountDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_ACCOUNT_DOM_INFO Info)
Definition: policy.c:876
INT LsapLoadStringEx(_In_ HINSTANCE hInstance, _In_ UINT uId, _In_ USHORT usLanguage, _Out_ LPWSTR lpBuffer, _Out_ INT nBufferMax)
Definition: utils.c:99
struct _SAMPR_ULONG_ARRAY * PSAMPR_ULONG_ARRAY
NTSTATUS LsapCallAuthenticationPackage(PLSA_API_MSG RequestMsg, PLSAP_LOGON_CONTEXT LogonContext)
Definition: authpackage.c:564
NTSTATUS LsarSetReplicaSource(PLSA_DB_OBJECT PolicyObject, PPOLICY_LSA_REPLICA_SRCE_INFO Info)
Definition: policy.c:936
VOID DsSetupInit(VOID)
Definition: dssetup.c:22
NTSTATUS LsapLogonUser(PLSA_API_MSG RequestMsg, PLSAP_LOGON_CONTEXT LogonContext)
Definition: authpackage.c:1394
SID_IDENTIFIER_AUTHORITY CreatorSidAuthority
Definition: database.c:20
VOID LsapInitNotificationList(VOID)
Definition: notify.c:28
NTSTATUS NTAPI LsapAddCredential(_In_ PLUID LogonId, _In_ ULONG AuthenticationPackage, _In_ PLSA_STRING PrimaryKeyValue, _In_ PLSA_STRING Credential)
Definition: session.c:259
NTSTATUS LsapRegDeleteSubKey(IN HANDLE ParentKeyHandle, IN LPCWSTR KeyName)
Definition: registry.c:59
NTSTATUS LsapCreatePolicySd(PSECURITY_DESCRIPTOR *PolicySd, PULONG PolicySdSize)
Definition: security.c:14
NTSTATUS LsapInitDatabase(VOID)
Definition: database.c:539
NTSTATUS LsapRegEnumerateValue(IN HANDLE KeyHandle, IN ULONG Index, OUT LPWSTR Name, IN OUT PULONG NameLength, OUT PULONG Type OPTIONAL, OUT PVOID Data OPTIONAL, IN OUT PULONG DataLength OPTIONAL)
Definition: registry.c:225
UNICODE_STRING BuiltinDomainName
Definition: database.c:25
NTSTATUS LsarSetDnsDomainInt(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_DNS_DOMAIN_INFO Info)
Definition: policy.c:1017
NTSTATUS LsapRegisterNotification(PLSA_API_MSG RequestMsg)
Definition: notify.c:159
PSID LsapServiceSid
Definition: lookup.c:82
NTSTATUS LsarQueryDnsDomainInt(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:759
NTSTATUS NTAPI LsapGetCredentials(_In_ PLUID LogonId, _In_ ULONG AuthenticationPackage, _Inout_ PULONG QueryContext, _In_ BOOLEAN RetrieveAllCredentials, _Inout_ PLSA_STRING PrimaryKeyValue, _Out_ PULONG PrimaryKeyLength, _Out_ PLSA_STRING Credentials)
Definition: session.c:272
NTSTATUS LsarStartRpcServer(VOID)
Definition: lsarpc.c:40
NTSTATUS LsarQueryAuditEvents(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:70
PSID LsapAdministratorsSid
Definition: lookup.c:84
NTSTATUS LsarSetAuditEvents(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_AUDIT_EVENTS_INFO Info)
Definition: policy.c:792
NTSTATUS LsapCloseDbObject(IN PLSA_DB_OBJECT DbObject)
NT_PRODUCT_TYPE LsapProductType
Definition: lsasrv.c:13
PLUID LsarpLookupPrivilegeValue(IN PRPC_UNICODE_STRING Name)
Definition: privileges.c:227
NTSTATUS LsarSetDefaultQuota(PLSA_DB_OBJECT PolicyObject, PPOLICY_DEFAULT_QUOTA_INFO Info)
Definition: policy.c:945
NTSTATUS LsarQueryLocalAccountDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:769
VOID LsapTerminateLogon(_In_ PLUID LogonId)
Definition: authpackage.c:545
NTSTATUS LsarQueryPrimaryDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:157
NTSTATUS LsarpLookupPrivilegeName(PLUID Value, PRPC_UNICODE_STRING *Name)
Definition: privileges.c:80
struct _LSAP_LOGON_CONTEXT LSAP_LOGON_CONTEXT
NTSTATUS LsarSetPrimaryDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_PRIMARY_DOM_INFO Info)
Definition: policy.c:829
PSID LsapNetworkSid
Definition: lookup.c:79
NTSTATUS LsapRegQueryKeyInfo(IN HANDLE KeyHandle, OUT PULONG SubKeyCount, OUT PULONG MaxSubKeyNameLength, OUT PULONG ValueCount)
Definition: registry.c:176
NTSTATUS LsapRmDeleteLogonSession(PLUID LogonId)
Definition: srm.c:285
struct _LSAP_POLICY_AUDIT_EVENTS_DATA * PLSAP_POLICY_AUDIT_EVENTS_DATA
NTSTATUS LsarSetDnsDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_DNS_DOMAIN_INFO Info)
Definition: policy.c:1008
INT LsapGetResourceStringLengthEx(_In_ HINSTANCE hInstance, _In_ UINT uId, _In_ USHORT usLanguage)
Definition: utils.c:64
NTSTATUS LsarQueryReplicaSource(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:436
NTSTATUS LsapRegOpenKey(IN HANDLE ParentKeyHandle, IN LPCWSTR KeyName, IN ACCESS_MASK DesiredAccess, OUT HANDLE KeyHandle)
Definition: registry.c:153
NTSTATUS NTAPI LsapCreateLogonSession(IN PLUID LogonId)
Definition: session.c:159
NTSTATUS LsapDeleteDbObject(IN PLSA_DB_OBJECT DbObject)
Definition: database.c:901
NTSTATUS LsapRmCreateLogonSession(PLUID LogonId)
Definition: srm.c:245
NTSTATUS LsapLookupAuthenticationPackage(PLSA_API_MSG RequestMsg, PLSAP_LOGON_CONTEXT LogonContext)
Definition: authpackage.c:510
UNICODE_STRING AccountDomainName
Definition: database.c:26
NTSTATUS LsarSetAuditLog(PLSA_DB_OBJECT PolicyObject, PPOLICY_AUDIT_LOG_INFO Info)
Definition: policy.c:779
SID_IDENTIFIER_AUTHORITY NullSidAuthority
Definition: database.c:17
ULONG LsapGetRelativeIdFromSid(PSID Sid)
Definition: lookup.c:1038
NTSTATUS LsapLookupNames(DWORD Count, PRPC_UNICODE_STRING Names, PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, PLSAPR_TRANSLATED_SIDS_EX2 TranslatedSids, LSAP_LOOKUP_LEVEL LookupLevel, DWORD *MappedCount, DWORD LookupOptions, DWORD ClientRevision)
Definition: lookup.c:1813
NTSTATUS LsarSetAuditFull(PLSA_DB_OBJECT PolicyObject, PPOLICY_AUDIT_FULL_QUERY_INFO Info)
Definition: policy.c:971
ACCESS_MASK LsapLookupAccountRightValue(IN PRPC_UNICODE_STRING Name)
Definition: privileges.c:380
SID_IDENTIFIER_AUTHORITY LocalSidAuthority
Definition: database.c:19
NTSTATUS StartAuthenticationPort(VOID)
Definition: authport.c:327
struct _LSA_DB_OBJECT LSA_DB_OBJECT
NTSTATUS NTAPI LsapDeleteLogonSession(IN PLUID LogonId)
Definition: session.c:201
NTSTATUS NTAPI LsapDeleteCredential(_In_ PLUID LogonId, _In_ ULONG AuthenticationPackage, _In_ PLSA_STRING PrimaryKeyValue)
Definition: session.c:288
SID_IDENTIFIER_AUTHORITY WorldSidAuthority
Definition: database.c:18
NTSTATUS LsapValidateDbObject(IN LSAPR_HANDLE Handle, IN LSA_DB_OBJECT_TYPE HandleType, IN ACCESS_MASK GrantedAccess, OUT PLSA_DB_OBJECT *DbObject)
NTSTATUS LsarSetLocalAccountDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_ACCOUNT_DOM_INFO Info)
Definition: policy.c:1026
VOID LsapNotifyPolicyChange(POLICY_NOTIFICATION_INFORMATION_CLASS InformationClass)
Definition: notify.c:188
NTSTATUS LsarQueryDnsDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:542
enum _LSA_DB_OBJECT_TYPE LSA_DB_OBJECT_TYPE
NTSTATUS LsapRegCloseKey(IN HANDLE KeyHandle)
Definition: registry.c:23
NTSTATUS LsapRegDeleteKey(IN HANDLE KeyHandle)
Definition: registry.c:89
NTSTATUS LsapSetLogonSessionData(_In_ PLUID LogonId, _In_ ULONG LogonType, _In_ PUNICODE_STRING UserName, _In_ PUNICODE_STRING LogonDomain, _In_ PSID Sid)
Definition: session.c:67
NTSTATUS LsapRegDeleteValue(IN HANDLE KeyHandle, IN LPWSTR ValueName)
Definition: registry.c:211
SID_IDENTIFIER_AUTHORITY NtAuthority
Definition: database.c:21
_LSA_DB_OBJECT_TYPE
Definition: lsasrv.h:48
@ LsaDbIgnoreObject
Definition: lsasrv.h:49
@ LsaDbDomainObject
Definition: lsasrv.h:52
@ LsaDbSecretObject
Definition: lsasrv.h:53
@ LsaDbAccountObject
Definition: lsasrv.h:51
@ LsaDbPolicyObject
Definition: lsasrv.h:50
INT LsapLoadString(HINSTANCE hInstance, UINT uId, LPWSTR lpBuffer, INT nBufferMax)
Definition: utils.c:17
NTSTATUS LsapRegQueryValue(IN HANDLE KeyHandle, IN LPWSTR ValueName, OUT PULONG Type OPTIONAL, OUT LPVOID Data OPTIONAL, IN OUT PULONG DataLength OPTIONAL)
Definition: registry.c:331
NTSTATUS LsarQueryAccountDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:289
NTSTATUS LsarQueryAuditFull(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:510
NTSTATUS LsapDeleteObjectAttribute(PLSA_DB_OBJECT DbObject, LPWSTR AttributeName)
Definition: database.c:1082
NTSTATUS LsarQueryServerRole(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:398
NTSTATUS LsarSetModification(PLSA_DB_OBJECT PolicyObject, PPOLICY_MODIFICATION_INFO Info)
Definition: policy.c:958
NTSTATUS LsapCreateSecretSd(PSECURITY_DESCRIPTOR *SecretSd, PULONG SecretSdSize)
Definition: security.c:436
NTSTATUS LsarQueryModification(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:478
PSID LsapWorldSid
Definition: lookup.c:78
NTSTATUS LsapEnumLogonSessions(IN OUT PLSA_API_MSG RequestMsg)
Definition: session.c:299
NTSTATUS LsapLookupSids(PLSAPR_SID_ENUM_BUFFER SidEnumBuffer, PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, PLSAPR_TRANSLATED_NAMES_EX TranslatedNames, LSAP_LOOKUP_LEVEL LookupLevel, DWORD *MappedCount, DWORD LookupOptions, DWORD ClientRevision)
Definition: lookup.c:2412
NTSTATUS LsapInitAuthPackages(VOID)
Definition: authpackage.c:474
PSID LsapBatchSid
Definition: lookup.c:80
NTSTATUS LsapRegCreateKey(IN HANDLE ParentKeyHandle, IN LPCWSTR KeyName, IN ACCESS_MASK DesiredAccess, OUT HANDLE KeyHandle)
Definition: registry.c:30
PSID LsapAppendRidToSid(PSID SrcSid, ULONG Rid)
Definition: utils.c:152
NTSTATUS LsapGetObjectAttribute(PLSA_DB_OBJECT DbObject, LPWSTR AttributeName, LPVOID AttributeData, PULONG AttributeSize)
Definition: database.c:1012
PSID BuiltinDomainSid
Definition: globals.c:16
struct _LSAP_LOGON_CONTEXT * PLSAP_LOGON_CONTEXT
NTSTATUS LsarQueryAuditLog(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:38
NTSTATUS LsapCreateTokenSd(_In_ const TOKEN_USER *User, _Outptr_ PSECURITY_DESCRIPTOR *TokenSd, _Out_ PULONG TokenSdSize)
Creates a security descriptor for the token object.
Definition: security.c:637
NTSTATUS LsarQueryDefaultQuota(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:446
PSID LsapInteractiveSid
Definition: lookup.c:81
NTSTATUS LsapRegSetValue(IN HANDLE KeyHandle, IN LPWSTR ValueName, IN ULONG Type, IN LPVOID Data, IN ULONG DataLength)
struct _LSA_DB_OBJECT * PLSA_DB_OBJECT
struct _LSAP_POLICY_AUDIT_EVENTS_DATA LSAP_POLICY_AUDIT_EVENTS_DATA
#define POLICY_AUDIT_EVENT_TYPE_COUNT
Definition: lsasrv.h:69
NTSTATUS LsapGetLogonSessionData(IN OUT PLSA_API_MSG RequestMsg)
Definition: session.c:395
PSID LsapLocalSystemSid
Definition: lookup.c:83
NTSTATUS LsapRegEnumerateSubKey(IN HANDLE KeyHandle, IN ULONG Index, IN ULONG Length, OUT LPWSTR Buffer)
Definition: registry.c:96
NTSTATUS LsapOpenDbObject(IN PLSA_DB_OBJECT ParentObject, IN LPWSTR ContainerName, IN LPWSTR ObjectName, IN LSA_DB_OBJECT_TYPE ObjectType, IN ACCESS_MASK DesiredAccess, IN BOOLEAN Trusted, OUT PLSA_DB_OBJECT *DbObject)
Definition: database.c:712
NTSTATUS LsapCreateDbObject(IN PLSA_DB_OBJECT ParentObject, IN LPWSTR ContainerName, IN LPWSTR ObjectName, IN LSA_DB_OBJECT_TYPE HandleType, IN ACCESS_MASK DesiredAccess, IN BOOLEAN Trusted, OUT PLSA_DB_OBJECT *DbObject)
Definition: database.c:592
NTSTATUS LsarpEnumeratePrivileges(DWORD *EnumerationContext, PLSAPR_PRIVILEGE_ENUM_BUFFER EnumerationBuffer, DWORD PreferedMaximumLength)
Definition: privileges.c:246
NTSTATUS LsarSetServerRole(PLSA_DB_OBJECT PolicyObject, PPOLICY_LSA_SERVER_ROLE_INFO Info)
Definition: policy.c:923
NTSTATUS LsapCreateAccountSd(PSECURITY_DESCRIPTOR *AccountSd, PULONG AccountSdSize)
Definition: security.c:268
enum _LSA_DB_OBJECT_TYPE * PLSA_DB_OBJECT_TYPE
PSID AccountDomainSid
Definition: database.c:24
NTSTATUS LsapLookupAccountRightName(ULONG RightValue, PRPC_UNICODE_STRING *Name)
Definition: privileges.c:343
VOID LsapInitLogonSessions(VOID)
Definition: session.c:36
NTSTATUS LsapRmInitializeServer(VOID)
Definition: srm.c:167
NTSTATUS LsapInitSids(VOID)
Definition: lookup.c:182
NTSTATUS LsarQueryPdAccount(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
Definition: policy.c:267
NTSTATUS LsarpLookupPrivilegeDisplayName(PRPC_UNICODE_STRING Name, USHORT ClientLanguage, USHORT ClientSystemDefaultLanguage, PRPC_UNICODE_STRING *DisplayName, USHORT *LanguageReturned)
Definition: privileges.c:125
struct _SAMPR_ULONG_ARRAY SAMPR_ULONG_ARRAY
NTSTATUS LsapSetObjectAttribute(PLSA_DB_OBJECT DbObject, LPWSTR AttributeName, LPVOID AttributeData, ULONG AttributeSize)
Definition: database.c:961
enum _NT_PRODUCT_TYPE NT_PRODUCT_TYPE
@ AttributeData
Definition: ntfs.h:168
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
_In_ FILTER_INFORMATION_CLASS InformationClass
Definition: fltkernel.h:1713
ULONG Handle
Definition: gdb_input.c:15
enum _LSAP_LOOKUP_LEVEL LSAP_LOOKUP_LEVEL
ObjectType
Definition: metafile.c:81
#define _Inout_
Definition: ms_sal.h:378
#define _Outptr_
Definition: ms_sal.h:427
#define _Out_
Definition: ms_sal.h:345
#define _In_
Definition: ms_sal.h:308
unsigned int UINT
Definition: ndis.h:50
_Must_inspect_result_ _Out_ PNDIS_STATUS _In_ NDIS_HANDLE _In_ ULONG _Out_ PNDIS_STRING _Out_ PNDIS_HANDLE KeyHandle
Definition: ndis.h:4715
_In_ ULONG _In_ ACCESS_MASK _In_ PSID Sid
Definition: rtlfuncs.h:1133
int Count
Definition: noreturn.cpp:7
ULONG ACCESS_MASK
Definition: nt_native.h:40
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE LogonType
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG _In_opt_ PTOKEN_GROUPS _In_ PTOKEN_SOURCE _Out_ PVOID _Out_ PULONG _Inout_ PLUID LogonId
enum _POLICY_NOTIFICATION_INFORMATION_CLASS POLICY_NOTIFICATION_INFORMATION_CLASS
unsigned short USHORT
Definition: pedump.c:61
PULONG MinorVersion OPTIONAL
Definition: CrossNt.h:68
Definition: typedefs.h:120
BOOL TrustedCaller
Definition: lsasrv.h:82
LIST_ENTRY Entry
Definition: lsasrv.h:79
HANDLE ClientProcessHandle
Definition: lsasrv.h:80
HANDLE ConnectionHandle
Definition: lsasrv.h:81
DWORD AuditEvents[POLICY_AUDIT_EVENT_TYPE_COUNT]
Definition: lsasrv.h:73
ACCESS_MASK Access
Definition: lsasrv.h:61
HANDLE KeyHandle
Definition: lsasrv.h:62
ULONG RefCount
Definition: lsasrv.h:60
struct _LSA_DB_OBJECT * ParentObject
Definition: lsasrv.h:64
BOOLEAN Trusted
Definition: lsasrv.h:63
ULONG Signature
Definition: lsasrv.h:58
LSA_DB_OBJECT_TYPE ObjectType
Definition: lsasrv.h:59
unsigned long * Element
Definition: lsasrv.h:88
unsigned long Count
Definition: lsasrv.h:87
uint32_t * PULONG
Definition: typedefs.h:59
#define NTAPI
Definition: typedefs.h:36
int32_t INT
Definition: typedefs.h:58
#define IN
Definition: typedefs.h:39
uint32_t ULONG
Definition: typedefs.h:59
#define OUT
Definition: typedefs.h:40
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
Definition: wdfchildlist.h:690
_In_ WDFCOLLECTION _In_ ULONG Index
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
Definition: wdfdevice.h:2658
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING KeyName
Definition: wdfdevice.h:2699
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
Definition: wdfregistry.h:243
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName
Definition: cmfuncs.h:64
_In_ PSECURITY_SUBJECT_CONTEXT _In_ BOOLEAN _In_ ACCESS_MASK _In_ ACCESS_MASK _Outptr_opt_ PPRIVILEGE_SET _In_ PGENERIC_MAPPING _In_ KPROCESSOR_MODE _Out_ PACCESS_MASK GrantedAccess
Definition: sefuncs.h:20
WCHAR * LPWSTR
Definition: xmlstorage.h:184
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185