1 /* INCLUDES ****************************************************************/
3 #define WIN32_NO_STATUS
14 #include <wine/debug.h>
16 typedef enum _LSA_DB_HANDLE_TYPE
21 } LSA_DB_HANDLE_TYPE
, *PLSA_DB_HANDLE_TYPE
;
23 typedef struct _LSA_DB_HANDLE
26 LSA_DB_HANDLE_TYPE HandleType
;
29 } LSA_DB_HANDLE
, *PLSA_DB_HANDLE
;
31 #define LSAP_DB_SIGNATURE 0x12345678
33 static RTL_CRITICAL_SECTION PolicyHandleTableLock
;
35 WINE_DEFAULT_DEBUG_CHANNEL(lsasrv
);
38 /* FUNCTIONS ***************************************************************/
41 LsapCreateDbHandle(LSA_DB_HANDLE_TYPE HandleType
,
42 ACCESS_MASK DesiredAccess
)
44 PLSA_DB_HANDLE DbHandle
;
46 // RtlEnterCriticalSection(&PolicyHandleTableLock);
48 DbHandle
= (PLSA_DB_HANDLE
)RtlAllocateHeap(RtlGetProcessHeap(),
50 sizeof(LSA_DB_HANDLE
));
53 DbHandle
->Signature
= LSAP_DB_SIGNATURE
;
54 DbHandle
->RefCount
= 1;
55 DbHandle
->HandleType
= HandleType
;
56 DbHandle
->Access
= DesiredAccess
;
59 // RtlLeaveCriticalSection(&PolicyHandleTableLock);
61 return (LSAPR_HANDLE
)DbHandle
;
66 LsapValidateDbHandle(LSAPR_HANDLE Handle
,
67 LSA_DB_HANDLE_TYPE HandleType
)
69 PLSA_DB_HANDLE DbHandle
= (PLSA_DB_HANDLE
)Handle
;
74 if (DbHandle
->Signature
== LSAP_DB_SIGNATURE
)
76 if (HandleType
== LsaDbIgnoreHandle
)
78 else if (DbHandle
->HandleType
== HandleType
)
82 _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER
)
96 LsarStartRpcServer(VOID
)
100 RtlInitializeCriticalSection(&PolicyHandleTableLock
);
102 TRACE("LsarStartRpcServer() called\n");
104 Status
= RpcServerUseProtseqEpW(L
"ncacn_np",
108 if (Status
!= RPC_S_OK
)
110 WARN("RpcServerUseProtseqEpW() failed (Status %lx)\n", Status
);
114 Status
= RpcServerRegisterIf(lsarpc_v0_0_s_ifspec
,
117 if (Status
!= RPC_S_OK
)
119 WARN("RpcServerRegisterIf() failed (Status %lx)\n", Status
);
123 Status
= RpcServerListen(1, 20, TRUE
);
124 if (Status
!= RPC_S_OK
)
126 WARN("RpcServerListen() failed (Status %lx)\n", Status
);
130 TRACE("LsarStartRpcServer() done\n");
134 void __RPC_USER
LSAPR_HANDLE_rundown(LSAPR_HANDLE hHandle
)
142 LSAPR_HANDLE
*ObjectHandle
)
144 NTSTATUS Status
= STATUS_SUCCESS
;
146 TRACE("0x%p\n", ObjectHandle
);
148 // RtlEnterCriticalSection(&PolicyHandleTableLock);
150 if (LsapValidateDbHandle(*ObjectHandle
, LsaDbIgnoreHandle
))
152 RtlFreeHeap(RtlGetProcessHeap(), 0, *ObjectHandle
);
153 *ObjectHandle
= NULL
;
156 Status
= STATUS_INVALID_HANDLE
;
158 // RtlLeaveCriticalSection(&PolicyHandleTableLock);
166 LSAPR_HANDLE ObjectHandle
)
169 return STATUS_NOT_SUPPORTED
;
174 NTSTATUS
LsarEnumeratePrivileges(
175 LSAPR_HANDLE PolicyHandle
,
176 DWORD
*EnumerationContext
,
177 PLSAPR_PRIVILEGE_ENUM_BUFFER EnumerationBuffer
,
178 DWORD PreferedMaximumLength
)
181 return STATUS_NOT_IMPLEMENTED
;
186 NTSTATUS
LsarQuerySecurityObject(
187 LSAPR_HANDLE ObjectHandle
,
188 SECURITY_INFORMATION SecurityInformation
,
189 PLSAPR_SR_SECURITY_DESCRIPTOR
*SecurityDescriptor
)
192 return STATUS_NOT_IMPLEMENTED
;
197 NTSTATUS
LsarSetSecurityObject(
198 LSAPR_HANDLE ObjectHandle
,
199 SECURITY_INFORMATION SecurityInformation
,
200 PLSAPR_SR_SECURITY_DESCRIPTOR SecurityDescriptor
)
203 return STATUS_NOT_IMPLEMENTED
;
208 NTSTATUS
LsarChangePassword(
210 PRPC_UNICODE_STRING String1
,
211 PRPC_UNICODE_STRING String2
,
212 PRPC_UNICODE_STRING String3
,
213 PRPC_UNICODE_STRING String4
,
214 PRPC_UNICODE_STRING String5
)
217 return STATUS_NOT_IMPLEMENTED
;
222 NTSTATUS
LsarOpenPolicy(
224 PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes
,
225 ACCESS_MASK DesiredAccess
,
226 LSAPR_HANDLE
*PolicyHandle
)
228 NTSTATUS Status
= STATUS_SUCCESS
;
230 TRACE("LsarOpenPolicy called!\n");
232 RtlEnterCriticalSection(&PolicyHandleTableLock
);
234 *PolicyHandle
= LsapCreateDbHandle(LsaDbPolicyHandle
,
236 if (*PolicyHandle
== NULL
)
237 Status
= STATUS_INSUFFICIENT_RESOURCES
;
239 RtlLeaveCriticalSection(&PolicyHandleTableLock
);
241 TRACE("LsarOpenPolicy done!\n");
248 NTSTATUS
LsarQueryInformationPolicy(
249 LSAPR_HANDLE PolicyHandle
,
250 POLICY_INFORMATION_CLASS InformationClass
,
251 PLSAPR_POLICY_INFORMATION
*PolicyInformation
)
254 return STATUS_NOT_IMPLEMENTED
;
259 NTSTATUS
LsarSetInformationPolicy(
260 LSAPR_HANDLE PolicyHandle
,
261 POLICY_INFORMATION_CLASS InformationClass
,
262 PLSAPR_POLICY_INFORMATION PolicyInformation
)
265 return STATUS_NOT_IMPLEMENTED
;
270 NTSTATUS
LsarClearAuditLog(
271 LSAPR_HANDLE ObjectHandle
)
274 return STATUS_NOT_IMPLEMENTED
;
279 NTSTATUS
LsarCreateAccount(
280 LSAPR_HANDLE PolicyHandle
,
282 ACCESS_MASK DesiredAccess
,
283 LSAPR_HANDLE
*AccountHandle
)
286 return STATUS_NOT_IMPLEMENTED
;
291 NTSTATUS
LsarEnumerateAccounts(
292 LSAPR_HANDLE PolicyHandle
,
293 DWORD
*EnumerationContext
,
294 PLSAPR_ACCOUNT_ENUM_BUFFER EnumerationBuffer
,
295 DWORD PreferedMaximumLength
)
298 return STATUS_NOT_IMPLEMENTED
;
303 NTSTATUS
LsarCreateTrustedDomain(
304 LSAPR_HANDLE PolicyHandle
,
305 PLSAPR_TRUST_INFORMATION TrustedDomainInformation
,
306 ACCESS_MASK DesiredAccess
,
307 LSAPR_HANDLE
*TrustedDomainHandle
)
310 return STATUS_NOT_IMPLEMENTED
;
315 NTSTATUS
LsarEnumerateTrustedDomains(
316 LSAPR_HANDLE PolicyHandle
,
317 DWORD
*EnumerationContext
,
318 PLSAPR_TRUSTED_ENUM_BUFFER EnumerationBuffer
,
319 DWORD PreferedMaximumLength
)
322 return STATUS_NOT_IMPLEMENTED
;
327 NTSTATUS
LsarLookupNames(
328 LSAPR_HANDLE PolicyHandle
,
330 PRPC_UNICODE_STRING Names
,
331 PLSAPR_REFERENCED_DOMAIN_LIST
*ReferencedDomains
,
332 PLSAPR_TRANSLATED_SIDS TranslatedSids
,
333 LSAP_LOOKUP_LEVEL LookupLevel
,
337 return STATUS_NOT_IMPLEMENTED
;
342 NTSTATUS
LsarLookupSids(
343 LSAPR_HANDLE PolicyHandle
,
344 PLSAPR_SID_ENUM_BUFFER SidEnumBuffer
,
345 PLSAPR_REFERENCED_DOMAIN_LIST
*ReferencedDomains
,
346 PLSAPR_TRANSLATED_NAMES TranslatedNames
,
347 LSAP_LOOKUP_LEVEL LookupLevel
,
350 static const UNICODE_STRING UserName
= RTL_CONSTANT_STRING(L
"Administrator");
351 PLSAPR_TRANSLATED_NAME OutputNames
= NULL
;
352 ULONG OutputNamesLength
;
355 TRACE("LsarLookupSids(%p, %p, %p, %p, %d, %p)\n",
356 PolicyHandle
, SidEnumBuffer
, ReferencedDomains
, TranslatedNames
,
357 LookupLevel
, MappedCount
);
359 TranslatedNames
->Entries
= SidEnumBuffer
->Entries
;
360 TranslatedNames
->Names
= NULL
;
361 *ReferencedDomains
= NULL
;
363 OutputNamesLength
= SidEnumBuffer
->Entries
* sizeof(LSA_TRANSLATED_NAME
);
364 OutputNames
= MIDL_user_allocate(OutputNamesLength
);
365 if (OutputNames
== NULL
)
367 return STATUS_INSUFFICIENT_RESOURCES
;
370 RtlZeroMemory(OutputNames
, OutputNamesLength
);
372 for (i
= 0; i
< SidEnumBuffer
->Entries
; i
++)
374 OutputNames
[i
].Use
= SidTypeWellKnownGroup
;
375 OutputNames
[i
].DomainIndex
= 0;
376 OutputNames
[i
].Name
.Buffer
= MIDL_user_allocate(UserName
.MaximumLength
);
377 OutputNames
[i
].Name
.Length
= UserName
.Length
;
378 OutputNames
[i
].Name
.MaximumLength
= UserName
.MaximumLength
;
379 RtlCopyMemory(OutputNames
[i
].Name
.Buffer
, UserName
.Buffer
, UserName
.MaximumLength
);
382 *MappedCount
= SidEnumBuffer
->Entries
;
384 TranslatedNames
->Entries
= SidEnumBuffer
->Entries
;
385 TranslatedNames
->Names
= OutputNames
;
387 return STATUS_SUCCESS
;
392 NTSTATUS
LsarCreateSecret(
393 LSAPR_HANDLE PolicyHandle
,
394 PRPC_UNICODE_STRING SecretName
,
395 ACCESS_MASK DesiredAccess
,
396 LSAPR_HANDLE
*SecretHandle
)
399 return STATUS_NOT_IMPLEMENTED
;
404 NTSTATUS
LsarOpenAccount(
405 LSAPR_HANDLE PolicyHandle
,
407 ACCESS_MASK DesiredAccess
,
408 LSAPR_HANDLE
*AccountHandle
)
411 return STATUS_NOT_IMPLEMENTED
;
416 NTSTATUS
LsarEnumeratePrivilegesAccount(
417 LSAPR_HANDLE AccountHandle
,
418 PLSAPR_PRIVILEGE_SET
*Privileges
)
421 return STATUS_NOT_IMPLEMENTED
;
426 NTSTATUS
LsarAddPrivilegesToAccount(
427 LSAPR_HANDLE AccountHandle
,
428 PLSAPR_PRIVILEGE_SET Privileges
)
431 return STATUS_NOT_IMPLEMENTED
;
436 NTSTATUS
LsarRemovePrivilegesFromAccount(
437 LSAPR_HANDLE AccountHandle
,
439 PLSAPR_PRIVILEGE_SET Privileges
)
442 return STATUS_NOT_IMPLEMENTED
;
447 NTSTATUS
LsarGetQuotasForAccount(
448 LSAPR_HANDLE AccountHandle
,
449 PQUOTA_LIMITS QuotaLimits
)
452 return STATUS_NOT_IMPLEMENTED
;
457 NTSTATUS
LsarSetQuotasForAccount(
458 LSAPR_HANDLE AccountHandle
,
459 PQUOTA_LIMITS QuotaLimits
)
462 return STATUS_NOT_IMPLEMENTED
;
467 NTSTATUS
LsarGetSystemAccessAccount(
468 LSAPR_HANDLE AccountHandle
,
469 ACCESS_MASK
*SystemAccess
)
472 return STATUS_NOT_IMPLEMENTED
;
477 NTSTATUS
LsarSetSystemAccessAccount(
478 LSAPR_HANDLE AccountHandle
,
479 ACCESS_MASK SystemAccess
)
482 return STATUS_NOT_IMPLEMENTED
;
487 NTSTATUS
LsarOpenTrustedDomain(
488 LSAPR_HANDLE PolicyHandle
,
489 PRPC_SID TrustedDomainSid
,
490 ACCESS_MASK DesiredAccess
,
491 LSAPR_HANDLE
*TrustedDomainHandle
)
494 return STATUS_NOT_IMPLEMENTED
;
499 NTSTATUS
LsarQueryInfoTrustedDomain(
500 LSAPR_HANDLE TrustedDomainHandle
,
501 TRUSTED_INFORMATION_CLASS InformationClass
,
502 PLSAPR_TRUSTED_DOMAIN_INFO
*TrustedDomainInformation
)
505 return STATUS_NOT_IMPLEMENTED
;
510 NTSTATUS
LsarSetInformationTrustedDomain(
511 LSAPR_HANDLE TrustedDomainHandle
,
512 TRUSTED_INFORMATION_CLASS InformationClass
,
513 PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation
)
516 return STATUS_NOT_IMPLEMENTED
;
521 NTSTATUS
LsarOpenSecret(
522 LSAPR_HANDLE PolicyHandle
,
523 PRPC_UNICODE_STRING SecretName
,
524 ACCESS_MASK DesiredAccess
,
525 LSAPR_HANDLE
*SecretHandle
)
528 return STATUS_NOT_IMPLEMENTED
;
533 NTSTATUS
LsarSetSecret(
534 LSAPR_HANDLE
*SecretHandle
,
535 PLSAPR_CR_CIPHER_VALUE EncryptedCurrentValue
,
536 PLSAPR_CR_CIPHER_VALUE EncryptedOldValue
)
539 return STATUS_NOT_IMPLEMENTED
;
544 NTSTATUS
LsarQuerySecret(
545 LSAPR_HANDLE SecretHandle
,
546 PLSAPR_CR_CIPHER_VALUE
*EncryptedCurrentValue
,
547 PLARGE_INTEGER CurrentValueSetTime
,
548 PLSAPR_CR_CIPHER_VALUE
*EncryptedOldValue
,
549 PLARGE_INTEGER OldValueSetTime
)
552 return STATUS_NOT_IMPLEMENTED
;
557 NTSTATUS
LsarLookupPrivilegeValue(
558 LSAPR_HANDLE PolicyHandle
,
559 PRPC_UNICODE_STRING Name
,
564 TRACE("LsarLookupPrivilegeValue(%p, %wZ, %p)\n",
565 PolicyHandle
, Name
, Value
);
567 if (!LsapValidateDbHandle(PolicyHandle
, LsaDbPolicyHandle
))
569 ERR("Invalid handle\n");
570 return STATUS_INVALID_HANDLE
;
573 TRACE("Privilege: %wZ\n", Name
);
575 Status
= LsarpLookupPrivilegeValue((PUNICODE_STRING
)Name
,
583 NTSTATUS
LsarLookupPrivilegeName(
584 LSAPR_HANDLE PolicyHandle
,
586 PRPC_UNICODE_STRING
*Name
)
590 TRACE("LsarLookupPrivilegeName(%p, %p, %p)\n",
591 PolicyHandle
, Value
, Name
);
593 if (!LsapValidateDbHandle(PolicyHandle
, LsaDbPolicyHandle
))
595 ERR("Invalid handle\n");
596 return STATUS_INVALID_HANDLE
;
599 Status
= LsarpLookupPrivilegeName(Value
, (PUNICODE_STRING
*)Name
);
606 NTSTATUS
LsarLookupPrivilegeDisplayName(
607 LSAPR_HANDLE PolicyHandle
,
608 PRPC_UNICODE_STRING Name
,
609 USHORT ClientLanguage
,
610 USHORT ClientSystemDefaultLanguage
,
611 PRPC_UNICODE_STRING
*DisplayName
,
612 USHORT
*LanguageReturned
)
615 return STATUS_NOT_IMPLEMENTED
;
620 NTSTATUS
LsarDeleteObject(
621 LSAPR_HANDLE
*ObjectHandle
)
624 return STATUS_NOT_IMPLEMENTED
;
629 NTSTATUS
LsarEnumerateAccountsWithUserRight(
630 LSAPR_HANDLE PolicyHandle
,
631 PRPC_UNICODE_STRING UserRight
,
632 PLSAPR_ACCOUNT_ENUM_BUFFER EnumerationBuffer
)
635 return STATUS_NOT_IMPLEMENTED
;
640 NTSTATUS
LsarEnmuerateAccountRights(
641 LSAPR_HANDLE PolicyHandle
,
643 PLSAPR_USER_RIGHT_SET UserRights
)
645 FIXME("(%p,%p,%p) stub\n", PolicyHandle
, AccountSid
, UserRights
);
647 if (!LsapValidateDbHandle(PolicyHandle
, LsaDbPolicyHandle
))
648 return STATUS_INVALID_HANDLE
;
650 UserRights
->Entries
= 0;
651 UserRights
->UserRights
= NULL
;
652 return STATUS_OBJECT_NAME_NOT_FOUND
;
657 NTSTATUS
LsarAddAccountRights(
658 LSAPR_HANDLE PolicyHandle
,
660 PLSAPR_USER_RIGHT_SET UserRights
)
663 return STATUS_NOT_IMPLEMENTED
;
668 NTSTATUS
LsarRemoveAccountRights(
669 LSAPR_HANDLE PolicyHandle
,
672 PLSAPR_USER_RIGHT_SET UserRights
)
675 return STATUS_NOT_IMPLEMENTED
;
680 NTSTATUS
LsarQueryTrustedDomainInfo(
681 LSAPR_HANDLE PolicyHandle
,
682 PRPC_SID TrustedDomainSid
,
683 TRUSTED_INFORMATION_CLASS InformationClass
,
684 PLSAPR_TRUSTED_DOMAIN_INFO
*TrustedDomainInformation
)
687 return STATUS_NOT_IMPLEMENTED
;
692 NTSTATUS
LsarSetTrustedDomainInfo(
693 LSAPR_HANDLE PolicyHandle
,
694 PRPC_SID TrustedDomainSid
,
695 TRUSTED_INFORMATION_CLASS InformationClass
,
696 PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation
)
699 return STATUS_NOT_IMPLEMENTED
;
704 NTSTATUS
LsarDeleteTrustedDomain(
705 LSAPR_HANDLE PolicyHandle
,
706 PRPC_SID TrustedDomainSid
)
709 return STATUS_NOT_IMPLEMENTED
;
714 NTSTATUS
LsarStorePrivateData(
715 LSAPR_HANDLE PolicyHandle
,
716 PRPC_UNICODE_STRING KeyName
,
717 PLSAPR_CR_CIPHER_VALUE EncryptedData
)
720 return STATUS_NOT_IMPLEMENTED
;
725 NTSTATUS
LsarRetrievePrivateData(
726 LSAPR_HANDLE PolicyHandle
,
727 PRPC_UNICODE_STRING KeyName
,
728 PLSAPR_CR_CIPHER_VALUE
*EncryptedData
)
731 return STATUS_NOT_IMPLEMENTED
;
736 NTSTATUS
LsarOpenPolicy2(
738 PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes
,
739 ACCESS_MASK DesiredAccess
,
740 LSAPR_HANDLE
*PolicyHandle
)
743 return STATUS_NOT_IMPLEMENTED
;
748 NTSTATUS
LsarGetUserName(
750 PRPC_UNICODE_STRING
*UserName
,
751 PRPC_UNICODE_STRING
*DomainName
)
754 return STATUS_NOT_IMPLEMENTED
;
759 NTSTATUS
LsarQueryInformationPolicy2(
760 LSAPR_HANDLE PolicyHandle
,
761 POLICY_INFORMATION_CLASS InformationClass
,
762 unsigned long *PolicyInformation
)
765 return STATUS_NOT_IMPLEMENTED
;
770 NTSTATUS
LsarSetInformationPolicy2(
771 LSAPR_HANDLE PolicyHandle
,
772 POLICY_INFORMATION_CLASS InformationClass
,
773 unsigned long PolicyInformation
)
776 return STATUS_NOT_IMPLEMENTED
;
781 NTSTATUS
LsarQueryTrustedDomainInfoByName(
782 LSAPR_HANDLE PolicyHandle
,
783 PRPC_UNICODE_STRING TrustedDomainName
,
784 POLICY_INFORMATION_CLASS InformationClass
,
785 unsigned long *PolicyInformation
)
788 return STATUS_NOT_IMPLEMENTED
;
793 NTSTATUS
LsarSetTrustedDomainInfoByName(
794 LSAPR_HANDLE PolicyHandle
,
795 PRPC_UNICODE_STRING TrustedDomainName
,
796 POLICY_INFORMATION_CLASS InformationClass
,
797 unsigned long PolicyInformation
)
800 return STATUS_NOT_IMPLEMENTED
;
805 NTSTATUS
LsarEnumerateTrustedDomainsEx(
806 LSAPR_HANDLE PolicyHandle
,
807 DWORD
*EnumerationContext
,
808 PLSAPR_TRUSTED_ENUM_BUFFER_EX EnumerationBuffer
,
809 DWORD PreferedMaximumLength
)
812 return STATUS_NOT_IMPLEMENTED
;
817 NTSTATUS
LsarCreateTrustedDomainEx(
818 LSAPR_HANDLE PolicyHandle
,
819 PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInformation
,
820 PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION AuthentificationInformation
,
821 ACCESS_MASK DesiredAccess
,
822 LSAPR_HANDLE
*TrustedDomainHandle
)
825 return STATUS_NOT_IMPLEMENTED
;
830 NTSTATUS
LsarSetPolicyReplicationHandle(
831 PLSAPR_HANDLE PolicyHandle
)
834 return STATUS_NOT_IMPLEMENTED
;
839 NTSTATUS
LsarQueryDomainInformationPolicy(
840 LSAPR_HANDLE PolicyHandle
,
841 POLICY_INFORMATION_CLASS InformationClass
,
842 unsigned long *PolicyInformation
)
845 return STATUS_NOT_IMPLEMENTED
;
850 NTSTATUS
LsarSetDomainInformationPolicy(
851 LSAPR_HANDLE PolicyHandle
,
852 POLICY_INFORMATION_CLASS InformationClass
,
853 unsigned long PolicyInformation
)
856 return STATUS_NOT_IMPLEMENTED
;
861 NTSTATUS
LsarOpenTrustedDomainByName(
862 LSAPR_HANDLE PolicyHandle
,
863 PRPC_UNICODE_STRING TrustedDomainName
,
864 ACCESS_MASK DesiredAccess
,
865 LSAPR_HANDLE
*TrustedDomainHandle
)
868 return STATUS_NOT_IMPLEMENTED
;
873 NTSTATUS
LsarTestCall(
877 return STATUS_NOT_IMPLEMENTED
;
882 NTSTATUS
LsarLookupSids2(
883 LSAPR_HANDLE PolicyHandle
,
884 PLSAPR_SID_ENUM_BUFFER SidEnumBuffer
,
885 PLSAPR_REFERENCED_DOMAIN_LIST
*ReferencedDomains
,
886 PLSAPR_TRANSLATED_NAMES_EX TranslatedNames
,
887 LSAP_LOOKUP_LEVEL LookupLevel
,
890 DWORD ClientRevision
)
893 return STATUS_NOT_IMPLEMENTED
;
898 NTSTATUS
LsarLookupNames2(
899 LSAPR_HANDLE PolicyHandle
,
901 PRPC_UNICODE_STRING Names
,
902 PLSAPR_REFERENCED_DOMAIN_LIST
*ReferencedDomains
,
903 PLSAPR_TRANSLATED_SID_EX TranslatedSids
,
904 LSAP_LOOKUP_LEVEL LookupLevel
,
907 DWORD ClientRevision
)
910 return STATUS_NOT_IMPLEMENTED
;
915 NTSTATUS
LsarCreateTrustedDomainEx2(
916 LSAPR_HANDLE PolicyHandle
,
917 PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInformation
,
918 PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL AuthentificationInformation
,
919 ACCESS_MASK DesiredAccess
,
920 LSAPR_HANDLE
*TrustedDomainHandle
)
923 return STATUS_NOT_IMPLEMENTED
;
932 return STATUS_NOT_IMPLEMENTED
;
941 return STATUS_NOT_IMPLEMENTED
;
946 NTSTATUS
CredrEnumerate(
950 return STATUS_NOT_IMPLEMENTED
;
955 NTSTATUS
CredrWriteDomainCredentials(
959 return STATUS_NOT_IMPLEMENTED
;
964 NTSTATUS
CredrReadDomainCredentials(
968 return STATUS_NOT_IMPLEMENTED
;
973 NTSTATUS
CredrDelete(
977 return STATUS_NOT_IMPLEMENTED
;
982 NTSTATUS
CredrGetTargetInfo(
986 return STATUS_NOT_IMPLEMENTED
;
991 NTSTATUS
CredrProfileLoaded(
995 return STATUS_NOT_IMPLEMENTED
;
1000 NTSTATUS
LsarLookupNames3(
1001 LSAPR_HANDLE PolicyHandle
,
1003 PRPC_UNICODE_STRING Names
,
1004 PLSAPR_REFERENCED_DOMAIN_LIST
*ReferencedDomains
,
1005 PLSAPR_TRANSLATED_SID_EX2 TranslatedSids
,
1006 LSAP_LOOKUP_LEVEL LookupLevel
,
1008 DWORD LookupOptions
,
1009 DWORD ClientRevision
)
1012 return STATUS_NOT_IMPLEMENTED
;
1017 NTSTATUS
CredrGetSessionTypes(
1021 return STATUS_NOT_IMPLEMENTED
;
1026 NTSTATUS
LsarRegisterAuditEvent(
1030 return STATUS_NOT_IMPLEMENTED
;
1035 NTSTATUS
LsarGenAuditEvent(
1039 return STATUS_NOT_IMPLEMENTED
;
1044 NTSTATUS
LsarUnregisterAuditEvent(
1048 return STATUS_NOT_IMPLEMENTED
;
1053 NTSTATUS
LsarQueryForestTrustInformation(
1054 LSAPR_HANDLE PolicyHandle
,
1055 PLSA_UNICODE_STRING TrustedDomainName
,
1056 LSA_FOREST_TRUST_RECORD_TYPE HighestRecordType
,
1057 PLSA_FOREST_TRUST_INFORMATION
*ForestTrustInfo
)
1060 return STATUS_NOT_IMPLEMENTED
;
1065 NTSTATUS
LsarSetForestTrustInformation(
1066 LSAPR_HANDLE PolicyHandle
,
1067 PLSA_UNICODE_STRING TrustedDomainName
,
1068 LSA_FOREST_TRUST_RECORD_TYPE HighestRecordType
,
1069 PLSA_FOREST_TRUST_INFORMATION ForestTrustInfo
,
1071 PLSA_FOREST_TRUST_COLLISION_INFORMATION
*CollisionInfo
)
1074 return STATUS_NOT_IMPLEMENTED
;
1079 NTSTATUS
CredrRename(
1083 return STATUS_NOT_IMPLEMENTED
;
1088 NTSTATUS
LsarLookupSids3(
1089 LSAPR_HANDLE PolicyHandle
,
1090 PLSAPR_SID_ENUM_BUFFER SidEnumBuffer
,
1091 PLSAPR_REFERENCED_DOMAIN_LIST
*ReferencedDomains
,
1092 PLSAPR_TRANSLATED_NAMES_EX TranslatedNames
,
1093 LSAP_LOOKUP_LEVEL LookupLevel
,
1095 DWORD LookupOptions
,
1096 DWORD ClientRevision
)
1099 return STATUS_NOT_IMPLEMENTED
;
1104 NTSTATUS
LsarLookupNames4(
1107 PRPC_UNICODE_STRING Names
,
1108 PLSAPR_REFERENCED_DOMAIN_LIST
*ReferencedDomains
,
1109 PLSAPR_TRANSLATED_SID_EX2 TranslatedSids
,
1110 LSAP_LOOKUP_LEVEL LookupLevel
,
1112 DWORD LookupOptions
,
1113 DWORD ClientRevision
)
1116 return STATUS_NOT_IMPLEMENTED
;
1121 NTSTATUS
LsarOpenPolicySce(
1125 return STATUS_NOT_IMPLEMENTED
;
1130 NTSTATUS
LsarAdtRegisterSecurityEventSource(
1134 return STATUS_NOT_IMPLEMENTED
;
1139 NTSTATUS
LsarAdtUnregisterSecurityEventSource(
1143 return STATUS_NOT_IMPLEMENTED
;
1148 NTSTATUS
LsarAdtReportSecurityEvent(
1152 return STATUS_NOT_IMPLEMENTED
;
1157 NTSTATUS
CredrFindBestCredential(
1161 return STATUS_NOT_IMPLEMENTED
;
1166 NTSTATUS
LsarSetAuditPolicy(
1170 return STATUS_NOT_IMPLEMENTED
;
1175 NTSTATUS
LsarQueryAuditPolicy(
1179 return STATUS_NOT_IMPLEMENTED
;
1184 NTSTATUS
LsarEnumerateAuditPolicy(
1188 return STATUS_NOT_IMPLEMENTED
;
1193 NTSTATUS
LsarEnumerateAuditCategories(
1197 return STATUS_NOT_IMPLEMENTED
;
1202 NTSTATUS
LsarEnumerateAuditSubCategories(
1206 return STATUS_NOT_IMPLEMENTED
;
1211 NTSTATUS
LsarLookupAuditCategoryName(
1215 return STATUS_NOT_IMPLEMENTED
;
1220 NTSTATUS
LsarLookupAuditSubCategoryName(
1224 return STATUS_NOT_IMPLEMENTED
;
1229 NTSTATUS
LsarSetAuditSecurity(
1233 return STATUS_NOT_IMPLEMENTED
;
1238 NTSTATUS
LsarQueryAuditSecurity(
1242 return STATUS_NOT_IMPLEMENTED
;
1247 NTSTATUS
CredReadByTokenHandle(
1251 return STATUS_NOT_IMPLEMENTED
;
1256 NTSTATUS
CredrRestoreCredentials(
1260 return STATUS_NOT_IMPLEMENTED
;
1265 NTSTATUS
CredrBackupCredentials(
1269 return STATUS_NOT_IMPLEMENTED
;