ReactOS  0.4.15-dev-1397-g19779b3
lsa.h
Go to the documentation of this file.
1 /*
2  * PROJECT: Authentication Package DLL
3  * LICENSE: GPL - See COPYING in the top level directory
4  * FILE: dll/win32/msv1_0/lsa.h
5  * PURPOSE: header for lsa.c
6  * COPYRIGHT: Copyright 2019-2020 Andreas Maier <staubim@quantentunnel.de>
7  */
8 
9 #ifndef _MSV1_0_LSA_H_
10 #define _MSV1_0_LSA_H_
11 
12 // functions we provide to LSA in SpLsaModeInitialize
14 
16 NTAPI
21 
23 NTAPI
25 
27 NTAPI
30  _In_ PUNICODE_STRING AccountName,
31  _In_ PSECPKG_PRIMARY_CRED PrimaryCredentials,
32  _In_ PSECPKG_SUPPLEMENTAL_CRED SupplementalCredentials);
33 
35 NTAPI
37  _In_ PUNICODE_STRING PrincipalName,
38  _In_ ULONG CredentialUseFlags,
40  _In_ PVOID AuthorizationData,
41  _In_ PVOID GetKeyFunciton,
42  _In_ PVOID GetKeyArgument,
43  _Out_ PLSA_SEC_HANDLE CredentialHandle,
44  _Out_ PTimeStamp ExpirationTime);
45 
47 NTAPI
49  _In_ LSA_SEC_HANDLE CredentialHandle,
50  _In_ ULONG CredentialAttribute,
52 
54 NTAPI
56  _In_ LSA_SEC_HANDLE CredentialHandle);
57 
59 NTAPI
61  _In_ LSA_SEC_HANDLE CredentialHandle,
62  _In_ PSecBuffer Credentials);
63 
65 NTAPI
67  _In_ LSA_SEC_HANDLE CredentialHandle,
68  _Inout_ PSecBuffer Credentials);
69 
71 NTAPI
73  _In_ LSA_SEC_HANDLE CredentialHandle,
75 
77 NTAPI
79  _Out_ PSecPkgInfoW PackageInfo);
80 
82 NTAPI
84  _In_ LSA_SEC_HANDLE CredentialHandle,
85  _In_ LSA_SEC_HANDLE ContextHandle,
87  _In_ ULONG ContextRequirements,
88  _In_ ULONG TargetDataRep,
89  _In_ PSecBufferDesc InputBuffers,
90  _Out_ PLSA_SEC_HANDLE NewContextHandle,
91  _Inout_ PSecBufferDesc OutputBuffers,
92  _Out_ PULONG ContextAttributes,
93  _Out_ PTimeStamp ExpirationTime,
94  _Out_ PBOOLEAN MappedContext,
95  _Out_ PSecBuffer ContextData);
96 
98 NTAPI
100  _In_ LSA_SEC_HANDLE CredentialHandle,
101  _In_ LSA_SEC_HANDLE ContextHandle,
103  _In_ ULONG ContextRequirements,
104  _In_ ULONG TargetDataRep,
105  _Out_ PLSA_SEC_HANDLE NewContextHandle,
107  _Out_ PULONG ContextAttributes,
108  _Out_ PTimeStamp ExpirationTime,
109  _Out_ PBOOLEAN MappedContext,
110  _Out_ PSecBuffer ContextData);
111 
112 NTSTATUS
113 NTAPI
115  _In_ LSA_SEC_HANDLE ContextHandle);
116 
117 NTSTATUS
118 NTAPI
120  _In_ LSA_SEC_HANDLE ContextHandle,
121  _In_ PSecBufferDesc ControlToken);
122 
123 NTSTATUS
124 NTAPI
127  _In_ ULONG Flags,
129 
130 NTSTATUS
131 NTAPI
135 
136 NTSTATUS
137 NTAPI
141 
142 #endif /* _MSV1_0_LSA_H_ */
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST _In_opt_ WDFFILEOBJECT _Inout_opt_ PWDF_REQUEST_PARAMETERS Parameters
Definition: wdfio.h:863
NTSTATUS NTAPI LsaSpGetUserInfo(_In_ PLUID LogonId, _In_ ULONG Flags, _Out_ PSecurityUserData *UserData)
Definition: lsa.c:199
NTSTATUS NTAPI LsaSpApplyControlToken(_In_ LSA_SEC_HANDLE ContextHandle, _In_ PSecBufferDesc ControlToken)
Definition: lsa.c:189
LONG NTSTATUS
Definition: precomp.h:26
NTSTATUS NTAPI SpInitialize(_In_ ULONG_PTR PackageId, _In_ PSECPKG_PARAMETERS Parameters, _In_ PLSA_SECPKG_FUNCTION_TABLE FunctionTable)
Definition: lsa.c:19
SECPKG_FUNCTION_TABLE NtlmLsaFn[1]
Definition: lsa.c:15
NTSTATUS NTAPI SpAcceptCredentials(_In_ SECURITY_LOGON_TYPE LogonType, _In_ PUNICODE_STRING AccountName, _In_ PSECPKG_PRIMARY_CRED PrimaryCredentials, _In_ PSECPKG_SUPPLEMENTAL_CRED SupplementalCredentials)
Definition: lsa.c:40
uint32_t ULONG_PTR
Definition: typedefs.h:65
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
Definition: wdfchildlist.h:683
NTSTATUS NTAPI LsaSpInitLsaModeContext(_In_ LSA_SEC_HANDLE CredentialHandle, _In_ LSA_SEC_HANDLE ContextHandle, _In_ PUNICODE_STRING TargetName, _In_ ULONG ContextRequirements, _In_ ULONG TargetDataRep, _In_ PSecBufferDesc InputBuffers, _Out_ PLSA_SEC_HANDLE NewContextHandle, _Inout_ PSecBufferDesc OutputBuffers, _Out_ PULONG ContextAttributes, _Out_ PTimeStamp ExpirationTime, _Out_ PBOOLEAN MappedContext, _Out_ PSecBuffer ContextData)
Definition: lsa.c:132
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
NTSTATUS NTAPI LsaSpAcquireCredentialsHandle(_In_ PUNICODE_STRING PrincipalName, _In_ ULONG CredentialUseFlags, _In_ PLUID LogonId, _In_ PVOID AuthorizationData, _In_ PVOID GetKeyFunciton, _In_ PVOID GetKeyArgument, _Out_ PLSA_SEC_HANDLE CredentialHandle, _Out_ PTimeStamp ExpirationTime)
Definition: lsa.c:53
#define _Out_
Definition: no_sal2.h:160
Definition: bufpool.h:45
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer
Definition: wdfiotarget.h:859
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer
Definition: wdfiotarget.h:949
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
enum _SECPKG_EXTENDED_INFORMATION_CLASS SECPKG_EXTENDED_INFORMATION_CLASS
NTSTATUS NTAPI LsaSpDeleteContext(_In_ LSA_SEC_HANDLE ContextHandle)
Definition: lsa.c:180
PVOID *typedef PSecBuffer
Definition: ntsecpkg.h:440
#define _Inout_
Definition: no_sal2.h:162
char * PBOOLEAN
Definition: retypes.h:11
NTSTATUS NTAPI LsaSpDeleteCredentials(_In_ LSA_SEC_HANDLE CredentialHandle, _In_ PSecBuffer Key)
Definition: lsa.c:113
ULONG * PLSA_SEC_HANDLE
Definition: ntsecpkg.h:208
ULONG LSA_SEC_HANDLE
Definition: ntsecpkg.h:208
NTSTATUS NTAPI LsaSpGetExtendedInformation(_In_ SECPKG_EXTENDED_INFORMATION_CLASS Class, _Out_ PSECPKG_EXTENDED_INFORMATION *ppInfo)
Definition: lsa.c:210
WCHAR TargetName[256]
Definition: arping.c:27
NTSTATUS NTAPI LsaSpFreeCredentialsHandle(_In_ LSA_SEC_HANDLE CredentialHandle)
Definition: lsa.c:84
NTSTATUS NTAPI LsaSpQueryCredentialsAttributes(_In_ LSA_SEC_HANDLE CredentialHandle, _In_ ULONG CredentialAttribute, _Inout_ PVOID Buffer)
Definition: lsa.c:72
#define _In_
Definition: no_sal2.h:158
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE LogonType
NTSTATUS NTAPI LsaSpShutDown(VOID)
Definition: lsa.c:31
enum _SECURITY_LOGON_TYPE SECURITY_LOGON_TYPE
unsigned int * PULONG
Definition: retypes.h:1
_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
NTSTATUS NTAPI LsaSpSaveCredentials(_In_ LSA_SEC_HANDLE CredentialHandle, _In_ PSecBuffer Credentials)
Definition: lsa.c:93
unsigned int ULONG
Definition: retypes.h:1
NTSTATUS NTAPI LsaSpSetExtendedInformation(_In_ SECPKG_EXTENDED_INFORMATION_CLASS Class, _In_ PSECPKG_EXTENDED_INFORMATION Info)
Definition: lsa.c:221
static WLX_DISPATCH_VERSION_1_4 FunctionTable
Definition: wlx.c:736
NTSTATUS NTAPI LsaSpAcceptLsaModeContext(_In_ LSA_SEC_HANDLE CredentialHandle, _In_ LSA_SEC_HANDLE ContextHandle, _In_ PSecBufferDesc InputBuffer, _In_ ULONG ContextRequirements, _In_ ULONG TargetDataRep, _Out_ PLSA_SEC_HANDLE NewContextHandle, _Inout_ PSecBufferDesc OutputBuffer, _Out_ PULONG ContextAttributes, _Out_ PTimeStamp ExpirationTime, _Out_ PBOOLEAN MappedContext, _Out_ PSecBuffer ContextData)
Definition: lsa.c:157
static ULONG PackageId
Definition: authpackage.c:163
NTSTATUS NTAPI LsaSpGetInfoW(_Out_ PSecPkgInfoW PackageInfo)
Definition: lsa.c:123
NTSTATUS NTAPI LsaSpGetCredentials(_In_ LSA_SEC_HANDLE CredentialHandle, _Inout_ PSecBuffer Credentials)
Definition: lsa.c:103