xref: /reactos/dll/win32/msv1_0/lsa.c (revision 6b700c6a)
1 /*
2  * PROJECT:     Authentication Package DLL
3  * LICENSE:     GPL - See COPYING in the top level directory
4  * FILE:        dll/win32/msv1_0/lsa.c
5  * PURPOSE:     NTLM-functions returned from SpLsaModeInitialize
6                 (PSECPKG_FUNCTION_TABLE)
7  * COPYRIGHT:   Copyright 2019-2020 Andreas Maier <staubim@quantentunnel.de>
8  */
9 
10 #include "precomp.h"
11 
12 #include "wine/debug.h"
13 WINE_DEFAULT_DEBUG_CHANNEL(msv1_0);
14 
15 SECPKG_FUNCTION_TABLE NtlmLsaFn[1];
16 
17 NTSTATUS
18 NTAPI
19 SpInitialize(
20     _In_ ULONG_PTR PackageId,
21     _In_ PSECPKG_PARAMETERS Parameters,
22     _In_ PLSA_SECPKG_FUNCTION_TABLE FunctionTable)
23 {
24     TRACE("LsaSpInitialize (0x%p, 0x%p, 0x%p)\n",
25           PackageId, Parameters, FunctionTable);
26     return STATUS_NOT_IMPLEMENTED;
27 }
28 
29 NTSTATUS
30 NTAPI
31 LsaSpShutDown(VOID)
32 {
33     TRACE("LsaSpShutDown\n");
34     return STATUS_NOT_IMPLEMENTED;
35 }
36 
37 /* MS doc says name must be SpAcceptCredentials! */
38 NTSTATUS
39 NTAPI
40 SpAcceptCredentials(
41     _In_ SECURITY_LOGON_TYPE LogonType,
42     _In_ PUNICODE_STRING AccountName,
43     _In_ PSECPKG_PRIMARY_CRED PrimaryCredentials,
44     _In_ PSECPKG_SUPPLEMENTAL_CRED SupplementalCredentials)
45 {
46     TRACE("LsaSpAcceptCredentials(%li %wZ 0x%p 0x%p)\n",
47           LogonType, AccountName, PrimaryCredentials, SupplementalCredentials);
48     return STATUS_NOT_IMPLEMENTED;
49 }
50 
51 NTSTATUS
52 NTAPI
53 LsaSpAcquireCredentialsHandle(
54     _In_ PUNICODE_STRING PrincipalName,
55     _In_ ULONG CredentialUseFlags,
56     _In_ PLUID LogonId,
57     _In_ PVOID AuthorizationData,
58     _In_ PVOID GetKeyFunciton,
59     _In_ PVOID GetKeyArgument,
60     _Out_ PLSA_SEC_HANDLE CredentialHandle,
61     _Out_ PTimeStamp ExpirationTime)
62 {
63     TRACE("LsaSpAcquireCredentialsHandle(%wZ 0x%lx 0x%p 0x%p 0x%p 0x%p 0x%p 0x%p)\n",
64           PrincipalName, CredentialUseFlags, LogonId,
65           AuthorizationData, GetKeyFunciton, GetKeyArgument,
66           CredentialHandle, ExpirationTime);
67     return STATUS_NOT_IMPLEMENTED;
68 }
69 
70 NTSTATUS
71 NTAPI
72 LsaSpQueryCredentialsAttributes(
73     _In_ LSA_SEC_HANDLE CredentialHandle,
74     _In_ ULONG CredentialAttribute,
75     _Inout_ PVOID Buffer)
76 {
77     TRACE("LsaSpQueryCredentialsAttributes(0x%p 0x%lx 0x%p)\n",
78           CredentialHandle, CredentialAttribute, Buffer);
79     return STATUS_NOT_IMPLEMENTED;
80 }
81 
82 NTSTATUS
83 NTAPI
84 LsaSpFreeCredentialsHandle(
85     _In_ LSA_SEC_HANDLE CredentialHandle)
86 {
87     TRACE("LsaSpFreeCredentialsHandle(0x%p)", CredentialHandle);
88     return STATUS_NOT_IMPLEMENTED;
89 }
90 
91 NTSTATUS
92 NTAPI
93 LsaSpSaveCredentials(
94     _In_ LSA_SEC_HANDLE CredentialHandle,
95     _In_ PSecBuffer Credentials)
96 {
97     TRACE("LsaSpSaveCredentials(0x%p 0x%p)\n", CredentialHandle, Credentials);
98     return STATUS_NOT_IMPLEMENTED;
99 }
100 
101 NTSTATUS
102 NTAPI
103 LsaSpGetCredentials(
104     _In_ LSA_SEC_HANDLE CredentialHandle,
105     _Inout_ PSecBuffer Credentials)
106 {
107     TRACE("LsaSpGetCredentials(0x%p 0x%p)\n", CredentialHandle, Credentials);
108     return STATUS_NOT_IMPLEMENTED;
109 }
110 
111 NTSTATUS
112 NTAPI
113 LsaSpDeleteCredentials(
114     _In_ LSA_SEC_HANDLE CredentialHandle,
115     _In_ PSecBuffer Key)
116 {
117     TRACE("LsaSpDeleteCredentials(0x%p 0x%p)\n", CredentialHandle, Key);
118     return STATUS_NOT_IMPLEMENTED;
119 }
120 
121 NTSTATUS
122 NTAPI
123 LsaSpGetInfoW(
124     _Out_ PSecPkgInfoW PackageInfo)
125 {
126     TRACE("LsaGetInfo(0x%p)\n", PackageInfo);
127     return STATUS_NOT_IMPLEMENTED;
128 }
129 
130 NTSTATUS
131 NTAPI
132 LsaSpInitLsaModeContext(
133     _In_ LSA_SEC_HANDLE CredentialHandle,
134     _In_ LSA_SEC_HANDLE ContextHandle,
135     _In_ PUNICODE_STRING TargetName,
136     _In_ ULONG ContextRequirements,
137     _In_ ULONG TargetDataRep,
138     _In_ PSecBufferDesc InputBuffers,
139     _Out_ PLSA_SEC_HANDLE NewContextHandle,
140     _Inout_ PSecBufferDesc OutputBuffers,
141     _Out_ PULONG ContextAttributes,
142     _Out_ PTimeStamp ExpirationTime,
143     _Out_ PBOOLEAN MappedContext,
144     _Out_ PSecBuffer ContextData)
145 {
146     TRACE("LsaSpInitLsaModeContext(0x%p 0x%p %wZ 0x%lx %i 0x%p 0x%p 0x%p "
147           "0x%p 0x%p 0x%p 0x%p 0x%p 0x%p 0x%p 0x%p)\n",
148           CredentialHandle, ContextHandle, TargetName,
149           ContextRequirements, TargetDataRep, InputBuffers,
150           NewContextHandle, OutputBuffers, ContextAttributes,
151           ExpirationTime, MappedContext, ContextData);
152     return STATUS_NOT_IMPLEMENTED;
153 }
154 
155 NTSTATUS
156 NTAPI
157 LsaSpAcceptLsaModeContext(
158     _In_ LSA_SEC_HANDLE CredentialHandle,
159     _In_ LSA_SEC_HANDLE ContextHandle,
160     _In_ PSecBufferDesc InputBuffer,
161     _In_ ULONG ContextRequirements,
162     _In_ ULONG TargetDataRep,
163     _Out_ PLSA_SEC_HANDLE NewContextHandle,
164     _Inout_ PSecBufferDesc OutputBuffer,
165     _Out_ PULONG ContextAttributes,
166     _Out_ PTimeStamp ExpirationTime,
167     _Out_ PBOOLEAN MappedContext,
168     _Out_ PSecBuffer ContextData)
169 {
170     TRACE("LsaSpAcceptLsaModeContext(0x%p 0x%p 0x%p %i %i 0x%p 0x%p 0x%p "
171           "0x%p 0x%p 0x%p)\n",
172           CredentialHandle, ContextHandle, InputBuffer, ContextRequirements,
173           TargetDataRep, NewContextHandle, OutputBuffer,
174           ContextAttributes, ExpirationTime, MappedContext, ContextData);
175     return STATUS_NOT_IMPLEMENTED;
176 }
177 
178 NTSTATUS
179 NTAPI
180 LsaSpDeleteContext(
181     _In_ LSA_SEC_HANDLE ContextHandle)
182 {
183     TRACE("LsaSpDeleteContext(0x%p)\n", ContextHandle);
184     return STATUS_NOT_IMPLEMENTED;
185 }
186 
187 NTSTATUS
188 NTAPI
189 LsaSpApplyControlToken(
190     _In_ LSA_SEC_HANDLE ContextHandle,
191     _In_ PSecBufferDesc ControlToken)
192 {
193     TRACE("LsaSpApplyControlToken(0x%p 0x%p)\n", ContextHandle, ControlToken);
194     return STATUS_NOT_IMPLEMENTED;
195 }
196 
197 NTSTATUS
198 NTAPI
199 LsaSpGetUserInfo(
200     _In_ PLUID LogonId,
201     _In_ ULONG Flags,
202     _Out_ PSecurityUserData *UserData)
203 {
204     TRACE("LsaSpGetUserInfo(0x%p 0x%lx 0x%p)\n", LogonId, Flags, UserData);
205     return STATUS_NOT_IMPLEMENTED;
206 }
207 
208 NTSTATUS
209 NTAPI
210 LsaSpGetExtendedInformation(
211     _In_ SECPKG_EXTENDED_INFORMATION_CLASS Class,
212     _Out_ PSECPKG_EXTENDED_INFORMATION *ppInfo)
213 {
214     TRACE("LsaSpGetExtendedInformation(0x%lx 0x%p)\n",
215           Class, ppInfo);
216     return STATUS_NOT_IMPLEMENTED;
217 }
218 
219 NTSTATUS
220 NTAPI
221 LsaSpSetExtendedInformation(
222     _In_ SECPKG_EXTENDED_INFORMATION_CLASS Class,
223     _In_ PSECPKG_EXTENDED_INFORMATION Info)
224 {
225     TRACE("LsaSpSetExtendedInformation(0x%lx 0x%p)\n",
226           Class, Info);
227     return STATUS_NOT_IMPLEMENTED;
228 }
229