48 TRACE(
"LsarStartRpcServer() called\n");
56 WARN(
"RpcServerUseProtseqEpW() failed (Status %lx)\n",
Status);
65 WARN(
"RpcServerRegisterIf() failed (Status %lx)\n",
Status);
74 WARN(
"RpcServerListen() failed (Status %lx)\n",
Status);
79 TRACE(
"Creating notification event!\n");
83 L"LSA_RPC_SERVER_ACTIVE");
87 TRACE(
"Failed to create or open the notification event (Error %lu)\n", dwError);
93 L"LSA_RPC_SERVER_ACTIVE");
96 ERR(
"Could not open the notification event (Error %lu)\n",
GetLastError());
104 TRACE(
"Set notification event!\n");
109 TRACE(
"LsarStartRpcServer() done\n");
131 TRACE(
"LsarClose(%p)\n", ObjectHandle);
142 *ObjectHandle =
NULL;
157 TRACE(
"LsarDelete(%p)\n", ObjectHandle);
168 DWORD *EnumerationContext,
170 DWORD PreferedMaximumLength)
175 TRACE(
"LsarEnumeratePrivileges(%p %p %p %lu)\n",
176 PolicyHandle, EnumerationContext, EnumerationBuffer,
177 PreferedMaximumLength);
186 if (EnumerationContext ==
NULL)
191 PreferedMaximumLength);
208 ULONG RelativeSdSize = 0;
209 ULONG ResultSdSize = 0;
212 TRACE(
"LsarQuerySecurityObject(%p %lx %p)\n",
246 if (RelativeSd ==
NULL)
259 RelativeSd->
Owner = 0;
262 RelativeSd->
Group = 0;
265 RelativeSd->
Control &= ~SE_DACL_PRESENT;
268 RelativeSd->
Control &= ~SE_SACL_PRESENT;
279 if (ResultSd ==
NULL)
301 SdData->
Length = ResultSdSize;
309 if (ResultSd !=
NULL)
313 if (RelativeSd !=
NULL)
331 ULONG RelativeSdSize = 0;
336 TRACE(
"LsarSetSecurityObject(%p %lx %p)\n",
373 ERR(
"LsapValidateDbObject failed (Status 0x%08lx)\n",
Status);
410 if (RelativeSd ==
NULL)
427 ERR(
"RpcImpersonateClient returns 0x%08lx\n",
Status);
438 ERR(
"NtOpenThreadToken returns 0x%08lx\n",
Status);
451 ERR(
"RtlSetSecurityObject failed (Status 0x%08lx)\n",
Status);
462 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
469 if (RelativeSd !=
NULL)
504 TRACE(
"LsarOpenPolicy(%S %p %lx %p)\n",
522 TRACE(
"LsarOpenPolicy done!\n");
540 TRACE(
"LsarQueryInformationPolicy(%p,0x%08x,%p)\n",
543 if (PolicyInformation)
545 TRACE(
"*PolicyInformation %p\n", *PolicyInformation);
573 ERR(
"Invalid InformationClass!\n");
652 ERR(
"Invalid InformationClass!\n");
672 TRACE(
"LsarSetInformationPolicy(%p,0x%08x,%p)\n",
675 if (PolicyInformation)
677 TRACE(
"*PolicyInformation %p\n", *PolicyInformation);
709 ERR(
"Invalid InformationClass!\n");
828 ERR(
"ConvertSidToStringSid failed\n");
837 ERR(
"LsapCreateAccountSd returned 0x%08lx\n",
Status);
851 ERR(
"LsapCreateDbObject failed (Status 0x%08lx)\n",
Status);
870 if (SidString !=
NULL)
873 if (AccountSd !=
NULL)
893 TRACE(
"LsarCreateAccount(%p %p %lx %p)\n",
907 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
930 DWORD *EnumerationContext,
932 DWORD PreferedMaximumLength)
940 ULONG AccountKeyBufferSize;
948 TRACE(
"LsarEnumerateAccount(%p %p %p %lu)\n",
949 PolicyHandle, EnumerationContext, EnumerationBuffer, PreferedMaximumLength);
951 if (EnumerationContext ==
NULL ||
952 EnumerationBuffer ==
NULL)
965 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
978 &AccountKeyBufferSize,
982 ERR(
"LsapRegQueryKeyInfo returned 0x%08lx\n",
Status);
986 AccountKeyBufferSize +=
sizeof(
WCHAR);
987 AccountKeyBuffer =
RtlAllocateHeap(RtlGetProcessHeap(), 0, AccountKeyBufferSize);
988 if (AccountKeyBuffer ==
NULL)
993 EnumIndex = *EnumerationContext;
1001 AccountKeyBufferSize,
1006 TRACE(
"EnumIndex: %lu\n", EnumIndex);
1007 TRACE(
"Account key name: %S\n", AccountKeyBuffer);
1029 TRACE(
"LsapRegQueryValue returned %08lX\n",
Status);
1050 TRACE(
"EnumCount: %lu\n", EnumCount);
1061 EnumIndex = *EnumerationContext;
1062 for (
i = 0;
i < EnumCount;
i++, EnumIndex++)
1066 AccountKeyBufferSize,
1071 TRACE(
"EnumIndex: %lu\n", EnumIndex);
1072 TRACE(
"Account key name: %S\n", AccountKeyBuffer);
1094 TRACE(
"LsapRegQueryValue returned %08lX\n",
Status);
1110 TRACE(
"SampRegQueryValue returned %08lX\n",
Status);
1125 *EnumerationContext += EnumCount;
1145 if (AccountKeyBuffer !=
NULL)
1146 RtlFreeHeap(RtlGetProcessHeap(), 0, AccountKeyBuffer);
1148 if (AccountsKeyHandle !=
NULL)
1178 DWORD *EnumerationContext,
1180 DWORD PreferedMaximumLength)
1205 TRACE(
"LsarLookupNames(%p %lu %p %p %p %d %p)\n",
1206 PolicyHandle,
Count,
Names, ReferencedDomains, TranslatedSids,
1207 LookupLevel, MappedCount);
1211 *ReferencedDomains =
NULL;
1216 TranslatedSidsEx2.
Entries = 0;
1236 *ReferencedDomains =
NULL;
1240 for (
i = 0;
i < TranslatedSidsEx2.
Entries;
i++)
1268 TRACE(
"LsarLookupSids(%p %p %p %p %d %p)\n",
1269 PolicyHandle, SidEnumBuffer, ReferencedDomains, TranslatedNames,
1270 LookupLevel, MappedCount);
1276 *ReferencedDomains =
NULL;
1297 *ReferencedDomains =
NULL;
1301 for (
i = 0;
i < TranslatedNamesEx.
Entries;
i++)
1332 TRACE(
"LsarCreateSecret(%p %wZ %lx %p)\n",
1342 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
1350 ERR(
"NtQuerySystemTime failed (Status 0x%08lx)\n",
Status);
1359 ERR(
"LsapCreateAccountSd returned 0x%08lx\n",
Status);
1373 ERR(
"LsapCreateDbObject failed (Status 0x%08lx)\n",
Status);
1384 ERR(
"LsapSetObjectAttribute (CurrentTime) failed (Status 0x%08lx)\n",
Status);
1395 ERR(
"LsapSetObjectAttribute (OldTime) failed (Status 0x%08lx)\n",
Status);
1406 if (SecretSd !=
NULL)
1411 if (SecretObject !=
NULL)
1438 ERR(
"ConvertSidToStringSid failed\n");
1448 PolicyObject->Trusted,
1452 ERR(
"LsapOpenDbObject(Accounts/%S) failed (Status 0x%08lx)\n", SidString,
Status);
1455 if (SidString !=
NULL)
1474 TRACE(
"LsarOpenAccount(%p %p %lx %p)\n",
1488 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
1509 ULONG PrivilegeSetSize = 0;
1513 TRACE(
"LsarEnumeratePrivilegesAccount(%p %p)\n",
1525 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
1539 if (PrivilegeSet ==
NULL)
1570 ULONG PrivilegeSetSize = 0;
1571 ULONG PrivilegeCount;
1576 TRACE(
"LsarAddPrivilegesToAccount(%p %p)\n",
1586 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
1612 if (CurrentPrivileges ==
NULL)
1622 TRACE(
"LsapGetObjectAttribute() failed (Status 0x%08lx)\n",
Status);
1627 TRACE(
"Current privilege count: %lu\n", PrivilegeCount);
1643 if (bFound ==
FALSE)
1645 TRACE(
"Found new privilege\n");
1649 TRACE(
"New privilege count: %lu\n", PrivilegeCount);
1655 if (NewPrivileges ==
NULL)
1688 if (bFound ==
FALSE)
1693 &(NewPrivileges->
Privilege[PrivilegeCount]));
1706 if (CurrentPrivileges !=
NULL)
1709 if (NewPrivileges !=
NULL)
1727 ULONG PrivilegeSetSize = 0;
1728 ULONG PrivilegeCount;
1733 TRACE(
"LsarRemovePrivilegesFromAccount(%p %u %p)\n",
1748 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
1752 if (AllPrivileges !=
FALSE)
1771 if (PrivilegeSetSize == 0)
1779 if (CurrentPrivileges ==
NULL)
1789 TRACE(
"LsapGetObjectAttribute() failed (Status 0x%08lx)\n",
Status);
1794 TRACE(
"Current privilege count: %lu\n", PrivilegeCount);
1804 if (PrivilegeCount > 0)
1809 TRACE(
"New privilege count: %lu\n", PrivilegeCount);
1811 if (PrivilegeCount == 0)
1825 if (NewPrivileges ==
NULL)
1846 if (bFound ==
FALSE)
1865 if (CurrentPrivileges !=
NULL)
1868 if (NewPrivileges !=
NULL)
1886 TRACE(
"LsarGetQuotasForAccount(%p %p)\n",
1887 AccountHandle, QuotaLimits);
1896 ERR(
"Invalid handle (Status %lx)\n",
Status);
1922 TRACE(
"LsarSetQuotasForAccount(%p %p)\n",
1923 AccountHandle, QuotaLimits);
1932 ERR(
"Invalid handle (Status %lx)\n",
Status);
1940 &InternalQuotaLimits,
1944 TRACE(
"LsapGetObjectAttribute() failed (Status 0x%08lx)\n",
Status);
1967 &InternalQuotaLimits,
1985 TRACE(
"LsarGetSystemAccessAccount(%p %p)\n",
1986 AccountHandle, SystemAccess);
1995 ERR(
"Invalid handle (Status %lx)\n",
Status);
2019 TRACE(
"LsarSetSystemAccessAccount(%p %lx)\n",
2020 AccountHandle, SystemAccess);
2029 ERR(
"Invalid handle (Status %lx)\n",
Status);
2100 TRACE(
"LsarOpenSecret(%p %wZ %lx %p)\n",
2110 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
2124 ERR(
"LsapOpenDbObject failed (Status 0x%08lx)\n",
Status);
2131 if (SecretObject !=
NULL)
2154 ULONG CurrentValueLength = 0;
2155 ULONG OldValueLength = 0;
2159 TRACE(
"LsarSetSecret(%p %p %p)\n", SecretHandle,
2160 EncryptedCurrentValue, EncryptedOldValue);
2169 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
2173 if (EncryptedCurrentValue !=
NULL)
2176 CurrentValue = EncryptedCurrentValue->
Buffer;
2184 CurrentValueLength);
2187 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
2195 ERR(
"NtQuerySystemTime failed (Status 0x%08lx)\n",
Status);
2206 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
2210 if (EncryptedOldValue !=
NULL)
2213 OldValue = EncryptedOldValue->
Buffer;
2224 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
2235 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
2258 ULONG CurrentValueLength = 0;
2259 ULONG OldValueLength = 0;
2263 TRACE(
"LsarQuerySecret(%p %p %p %p %p)\n", SecretHandle,
2264 EncryptedCurrentValue, CurrentValueSetTime,
2265 EncryptedOldValue, OldValueSetTime);
2274 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
2278 if (EncryptedCurrentValue !=
NULL)
2280 CurrentValueLength = 0;
2286 &CurrentValueLength);
2292 if (CurrentValue ==
NULL)
2302 &CurrentValueLength);
2308 if (EncCurrentValue ==
NULL)
2320 if (CurrentValueSetTime !=
NULL)
2327 (
PBYTE)CurrentValueSetTime,
2333 if (EncryptedOldValue !=
NULL)
2347 if (OldValue ==
NULL)
2363 if (EncOldValue ==
NULL)
2375 if (OldValueSetTime !=
NULL)
2382 (
PBYTE)OldValueSetTime,
2392 if (EncryptedCurrentValue !=
NULL)
2393 *EncryptedCurrentValue = EncCurrentValue;
2395 if (EncryptedOldValue !=
NULL)
2396 *EncryptedOldValue = EncOldValue;
2400 if (EncryptedCurrentValue !=
NULL)
2401 *EncryptedCurrentValue =
NULL;
2403 if (EncryptedOldValue !=
NULL)
2404 *EncryptedOldValue =
NULL;
2406 if (EncCurrentValue !=
NULL)
2409 if (EncOldValue !=
NULL)
2412 if (CurrentValue !=
NULL)
2415 if (OldValue !=
NULL)
2419 TRACE(
"LsarQuerySecret done (Status 0x%08lx)\n",
Status);
2436 TRACE(
"LsarLookupPrivilegeValue(%p, %wZ, %p)\n",
2445 ERR(
"Invalid handle (Status %lx)\n",
Status);
2471 TRACE(
"LsarLookupPrivilegeName(%p, %p, %p)\n",
2480 ERR(
"Invalid handle\n");
2498 USHORT ClientSystemDefaultLanguage,
2500 USHORT *LanguageReturned)
2504 TRACE(
"LsarLookupPrivilegeDisplayName(%p, %p, %u, %u, %p, %p)\n",
2505 PolicyHandle,
Name, ClientLanguage, ClientSystemDefaultLanguage, DisplayName, LanguageReturned);
2513 ERR(
"Invalid handle\n");
2519 ClientSystemDefaultLanguage,
2536 TRACE(
"LsarDeleteObject(%p)\n", ObjectHandle);
2538 if (ObjectHandle ==
NULL)
2548 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
2560 ERR(
"LsapDeleteDbObject returned 0x%08lx\n",
Status);
2565 *ObjectHandle =
NULL;
2582 ULONG AccountKeyBufferSize;
2586 HKEY AttributeKeyHandle;
2590 ULONG SubKeyCount = 0;
2591 ULONG EnumIndex, EnumCount;
2596 TRACE(
"LsarEnumerateAccountsWithUserRights(%p %wZ %p)\n",
2597 PolicyHandle, UserRight, EnumerationBuffer);
2600 if (UserRight !=
NULL)
2606 if (AccountRight == 0)
2611 if (EnumerationBuffer ==
NULL)
2624 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
2631 &AccountsKeyHandle);
2634 ERR(
"LsapRegOpenKey returned 0x%08lx\n",
Status);
2640 &AccountKeyBufferSize,
2644 ERR(
"LsapRegOpenKey returned 0x%08lx\n",
Status);
2648 AccountKeyBufferSize +=
sizeof(
WCHAR);
2649 AccountKeyBuffer =
RtlAllocateHeap(RtlGetProcessHeap(), 0, AccountKeyBufferSize);
2650 if (AccountKeyBuffer ==
NULL)
2658 if (EnumBuffer ==
NULL)
2672 AccountKeyBufferSize,
2681 TRACE(
"EnumIndex: %lu\n", EnumIndex);
2682 TRACE(
"Account key name: %S\n", AccountKeyBuffer);
2690 if (Luid !=
NULL || AccountRight != 0)
2693 (Luid !=
NULL) ?
L"Privilgs" :
L"ActSysAc",
2695 &AttributeKeyHandle);
2721 TRACE(
"%S got the privilege!\n", AccountKeyBuffer);
2728 RtlFreeHeap(RtlGetProcessHeap(), 0, PrivilegeSet);
2732 else if (AccountRight != 0)
2741 if (SystemAccess & AccountRight)
2743 TRACE(
"%S got the account right!\n", AccountKeyBuffer);
2759 TRACE(
"Add account: %S\n", AccountKeyBuffer);
2764 &AttributeKeyHandle);
2776 if (EnumBuffer[EnumCount].
Sid !=
NULL)
2781 EnumBuffer[EnumCount].
Sid,
2789 TRACE(
"SampRegQueryValue returned %08lX\n",
Status);
2791 EnumBuffer[EnumCount].
Sid =
NULL;
2806 TRACE(
"EnumCount: %lu\n", EnumCount);
2811 if (ReturnBuffer ==
NULL)
2826 if (EnumBuffer !=
NULL)
2830 for (
i = 0;
i < EnumCount;
i++)
2840 if (AccountKeyBuffer !=
NULL)
2841 RtlFreeHeap(RtlGetProcessHeap(), 0, AccountKeyBuffer);
2863 ULONG RightsCount = 0;
2868 TRACE(
"LsarEnumerateAccountRights(%p %p %p)\n",
2869 PolicyHandle, AccountSid, UserRights);
2878 WARN(
"LsarOpenAccount returned 0x%08lx\n",
Status);
2887 WARN(
"LsarEnumeratePrivilegesAccount returned 0x%08lx\n",
Status);
2896 WARN(
"LsarGetSystemAccessAccount returned 0x%08lx\n",
Status);
2905 if (SystemAccess & (1 <<
i))
2910 if (RightsCount == 0)
2920 if (RightsBuffer ==
NULL)
2932 PrivilegeString =
NULL;
2938 WARN(
"LsarLookupPrivilegeName returned 0x%08lx\n",
Status);
2954 if (SystemAccess & (1 <<
i))
2960 WARN(
"LsarLookupAccountRightName returned 0x%08lx\n",
Status);
2973 UserRights->
Entries = RightsCount;
2979 if (RightsBuffer !=
NULL)
2991 if (PrivilegeSet !=
NULL)
3010 ULONG ulNewPrivileges = 0, ulNewRights = 0;
3014 ULONG PrivilegeSetBufferSize = 0;
3015 ULONG PrivilegeCount;
3020 TRACE(
"LsarAddAccountRights(%p %p %p)\n",
3021 PolicyHandle, AccountSid, UserRights);
3028 if (UserRights ==
NULL)
3047 TRACE(
"ulNewPrivileges: %lu\n", ulNewPrivileges);
3048 TRACE(
"ulNewRights: %lu\n", ulNewRights);
3057 WARN(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
3068 WARN(
"LsarpOpenAccount returned 0x%08lx\n",
Status);
3080 WARN(
"LsarpCreateAccount returned 0x%08lx\n",
Status);
3085 if (ulNewPrivileges > 0)
3102 PrivilegeSetBufferSize =
Size +
3108 PrivilegeSetBufferSize);
3109 if (PrivilegeSet ==
NULL)
3121 WARN(
"LsapGetObjectAttribute() failed (Status 0x%08lx)\n",
Status);
3126 PrivilegeCount = PrivilegeSet->PrivilegeCount;
3127 TRACE(
"Privilege count: %lu\n", PrivilegeCount);
3136 for (
j = 0;
j < PrivilegeSet->PrivilegeCount;
j++)
3138 if (
RtlEqualLuid(&(PrivilegeSet->Privilege[
j].Luid), pLuid))
3145 if (bFound ==
FALSE)
3148 RtlCopyMemory(&(PrivilegeSet->Privilege[PrivilegeSet->PrivilegeCount]),
3151 PrivilegeSet->PrivilegeCount++;
3156 if (PrivilegeCount != PrivilegeSet->PrivilegeCount)
3167 WARN(
"LsapSetObjectAttribute() failed (Status 0x%08lx)\n",
Status);
3173 if (ulNewRights > 0)
3190 SystemAccess |=
Value;
3201 if (PrivilegeSet !=
NULL)
3202 RtlFreeHeap(RtlGetProcessHeap(), 0, PrivilegeSet);
3204 if (AccountObject !=
NULL)
3222 ULONG PrivilegesToRemove = 0, RightsToRemove = 0;
3226 ULONG PrivilegeCount;
3230 TRACE(
"LsarRemoveAccountRights(%p %p %lu %p)\n",
3231 PolicyHandle, AccountSid, AllRights, UserRights);
3238 if (UserRights ==
NULL)
3246 PrivilegesToRemove++;
3264 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
3275 ERR(
"LsarpOpenAccount returned 0x%08lx\n",
Status);
3279 if (AllRights ==
FALSE)
3290 if ((
Size != 0) && (PrivilegesToRemove != 0))
3296 if (PrivilegeSet ==
NULL)
3306 ERR(
"LsapGetObjectAttribute() failed (Status 0x%08lx)\n",
Status);
3332 (Index < PrivilegeSet->PrivilegeCount - 1))
3357 ERR(
"LsapSetObjectAttribute() failed (Status 0x%08lx)\n",
Status);
3372 if ((
Size != 0) && (RightsToRemove != 0))
3374 ERR(
"Rights: 0x%lx\n", SystemAccess);
3383 ERR(
"New Rights: 0x%lx\n", SystemAccess);
3397 if (PrivilegeSet !=
NULL)
3398 RtlFreeHeap(RtlGetProcessHeap(), 0, PrivilegeSet);
3400 if (AccountObject !=
NULL)
3475 TRACE(
"LsarStorePrivateData(%p %p %p)\n",
3476 PolicyHandle,
KeyName, EncryptedData);
3485 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
3499 ERR(
"LsapOpenDbObject failed (Status 0x%08lx)\n",
Status);
3503 if (EncryptedData ==
NULL)
3515 ERR(
"LsapOpenDbObject failed (Status 0x%08lx)\n",
Status);
3522 SecretObject =
NULL;
3536 ERR(
"LsapCreateDbObject failed (Status 0x%08lx)\n",
Status);
3548 ERR(
"NtQuerySystemTime failed (Status 0x%08lx)\n",
Status);
3559 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
3570 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
3578 ERR(
"NtQuerySystemTime failed (Status 0x%08lx)\n",
Status);
3589 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
3600 ERR(
"LsapSetObjectAttribute failed (Status 0x%08lx)\n",
Status);
3605 if (SecretObject !=
NULL)
3608 if (SecretsObject !=
NULL)
3626 ULONG CurrentValueLength = 0;
3630 TRACE(
"LsarRetrievePrivateData(%p %wZ %p)\n",
3631 PolicyHandle,
KeyName, EncryptedData);
3640 ERR(
"LsapValidateDbObject returned 0x%08lx\n",
Status);
3654 ERR(
"LsapOpenDbObject failed (Status 0x%08lx)\n",
Status);
3662 &CurrentValueLength);
3668 if (CurrentValue ==
NULL)
3678 &CurrentValueLength);
3684 if (EncCurrentValue ==
NULL)
3693 EncCurrentValue->
Buffer = (
PBYTE)(EncCurrentValue + 1);
3696 CurrentValueLength);
3701 if (EncryptedData !=
NULL)
3702 *EncryptedData = EncCurrentValue;
3706 if (EncryptedData !=
NULL)
3707 *EncryptedData =
NULL;
3709 if (EncCurrentValue !=
NULL)
3713 if (SecretObject !=
NULL)
3818 DWORD *EnumerationContext,
3820 DWORD PreferedMaximumLength)
3928 DWORD LookupOptions,
3929 DWORD ClientRevision)
3933 TRACE(
"LsarLookupSids2(%p %p %p %p %d %p %lu %lu)\n",
3934 PolicyHandle, SidEnumBuffer, ReferencedDomains, TranslatedNames,
3935 LookupLevel, MappedCount, LookupOptions, ClientRevision);
3939 *ReferencedDomains =
NULL;
3966 DWORD LookupOptions,
3967 DWORD ClientRevision)
3973 TRACE(
"LsarLookupNames2(%p %lu %p %p %p %d %p %lu %lu)\n",
3974 PolicyHandle,
Count,
Names, ReferencedDomains, TranslatedSids,
3975 LookupLevel, MappedCount, LookupOptions, ClientRevision);
3979 *ReferencedDomains =
NULL;
3984 TranslatedSidsEx2.
Entries = 0;
4004 *ReferencedDomains =
NULL;
4008 for (
i = 0;
i < TranslatedSidsEx2.
Entries;
i++)
4146 DWORD LookupOptions,
4147 DWORD ClientRevision)
4151 TRACE(
"LsarLookupNames3(%p %lu %p %p %p %d %p %lu %lu)\n",
4152 PolicyHandle,
Count,
Names, ReferencedDomains, TranslatedSids,
4153 LookupLevel, MappedCount, LookupOptions, ClientRevision);
4157 *ReferencedDomains =
NULL;
4180 DWORD MaximumPersistCount,
4181 DWORD *MaximumPersist)
4276 DWORD LookupOptions,
4277 DWORD ClientRevision)
4281 TRACE(
"LsarLookupSids3(%p %p %p %p %d %p %lu %lu)\n",
4282 PolicyHandle, SidEnumBuffer, ReferencedDomains, TranslatedNames,
4283 LookupLevel, MappedCount, LookupOptions, ClientRevision);
4287 *ReferencedDomains =
NULL;
4314 DWORD LookupOptions,
4315 DWORD ClientRevision)
4319 TRACE(
"LsarLookupNames4(%p %lu %p %p %p %d %p %lu %lu)\n",
4320 RpcHandle,
Count,
Names, ReferencedDomains, TranslatedSids,
4321 LookupLevel, MappedCount, LookupOptions, ClientRevision);
4325 *ReferencedDomains =
NULL;
PVOID NTAPI RtlAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size)
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
_In_ ULONG _In_opt_ WDFREQUEST _In_opt_ PVOID _In_ size_t _In_ PVOID _In_ size_t _Out_ size_t * DataLength
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
#define STATUS_INVALID_HANDLE
#define STATUS_NOT_IMPLEMENTED
#define NT_SUCCESS(StatCode)
DWORD WINAPI GetLengthSid(PSID pSid)
#define ERROR_INVALID_PARAMETER
NTSTATUS LsapCreateDbObject(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)
NTSTATUS LsapDeleteDbObject(IN PLSA_DB_OBJECT DbObject)
NTSTATUS LsapCloseDbObject(PLSA_DB_OBJECT DbObject)
NTSTATUS LsapDeleteObjectAttribute(PLSA_DB_OBJECT DbObject, LPWSTR AttributeName)
NTSTATUS LsapValidateDbObject(LSAPR_HANDLE Handle, LSA_DB_OBJECT_TYPE ObjectType, ACCESS_MASK DesiredAccess, PLSA_DB_OBJECT *DbObject)
NTSTATUS LsapGetObjectAttribute(PLSA_DB_OBJECT DbObject, LPWSTR AttributeName, LPVOID AttributeData, PULONG AttributeSize)
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)
NTSTATUS LsapSetObjectAttribute(PLSA_DB_OBJECT DbObject, LPWSTR AttributeName, LPVOID AttributeData, ULONG AttributeSize)
ULONG LsapGetRelativeIdFromSid(PSID Sid_)
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)
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)
NTSTATUS LsarSetAccountDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_ACCOUNT_DOM_INFO Info)
NTSTATUS LsarSetReplicaSource(PLSA_DB_OBJECT PolicyObject, PPOLICY_LSA_REPLICA_SRCE_INFO Info)
NTSTATUS LsarSetDnsDomainInt(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_DNS_DOMAIN_INFO Info)
NTSTATUS LsarQueryDnsDomainInt(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarQueryAuditEvents(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarSetAuditEvents(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_AUDIT_EVENTS_INFO Info)
PLUID LsarpLookupPrivilegeValue(IN PRPC_UNICODE_STRING Name)
NTSTATUS LsarSetDefaultQuota(PLSA_DB_OBJECT PolicyObject, PPOLICY_DEFAULT_QUOTA_INFO Info)
NTSTATUS LsarQueryLocalAccountDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarQueryPrimaryDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarpLookupPrivilegeName(PLUID Value, PRPC_UNICODE_STRING *Name)
NTSTATUS LsarSetPrimaryDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_PRIMARY_DOM_INFO Info)
NTSTATUS LsapRegQueryKeyInfo(IN HANDLE KeyHandle, OUT PULONG SubKeyCount, OUT PULONG MaxSubKeyNameLength, OUT PULONG ValueCount)
NTSTATUS LsarSetDnsDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_DNS_DOMAIN_INFO Info)
NTSTATUS LsarQueryReplicaSource(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsapRegOpenKey(IN HANDLE ParentKeyHandle, IN LPCWSTR KeyName, IN ACCESS_MASK DesiredAccess, OUT HANDLE KeyHandle)
NTSTATUS LsarSetAuditLog(PLSA_DB_OBJECT PolicyObject, PPOLICY_AUDIT_LOG_INFO Info)
NTSTATUS LsarSetAuditFull(PLSA_DB_OBJECT PolicyObject, PPOLICY_AUDIT_FULL_QUERY_INFO Info)
ACCESS_MASK LsapLookupAccountRightValue(IN PRPC_UNICODE_STRING Name)
NTSTATUS LsarSetLocalAccountDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_ACCOUNT_DOM_INFO Info)
VOID LsapNotifyPolicyChange(POLICY_NOTIFICATION_INFORMATION_CLASS InformationClass)
NTSTATUS LsarQueryDnsDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsapRegCloseKey(IN HANDLE KeyHandle)
NTSTATUS LsapRegQueryValue(IN HANDLE KeyHandle, IN LPWSTR ValueName, OUT PULONG Type OPTIONAL, OUT LPVOID Data OPTIONAL, IN OUT PULONG DataLength OPTIONAL)
NTSTATUS LsarQueryAccountDomain(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarQueryAuditFull(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarQueryServerRole(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarSetModification(PLSA_DB_OBJECT PolicyObject, PPOLICY_MODIFICATION_INFO Info)
NTSTATUS LsapCreateSecretSd(PSECURITY_DESCRIPTOR *SecretSd, PULONG SecretSdSize)
NTSTATUS LsarQueryModification(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarQueryAuditLog(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarQueryDefaultQuota(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsapRegEnumerateSubKey(IN HANDLE KeyHandle, IN ULONG Index, IN ULONG Length, OUT LPWSTR Buffer)
NTSTATUS LsarpEnumeratePrivileges(DWORD *EnumerationContext, PLSAPR_PRIVILEGE_ENUM_BUFFER EnumerationBuffer, DWORD PreferedMaximumLength)
NTSTATUS LsarSetServerRole(PLSA_DB_OBJECT PolicyObject, PPOLICY_LSA_SERVER_ROLE_INFO Info)
NTSTATUS LsapCreateAccountSd(PSECURITY_DESCRIPTOR *AccountSd, PULONG AccountSdSize)
NTSTATUS LsapLookupAccountRightName(ULONG RightValue, PRPC_UNICODE_STRING *Name)
NTSTATUS LsarQueryPdAccount(PLSA_DB_OBJECT PolicyObject, PLSAPR_POLICY_INFORMATION *PolicyInformation)
NTSTATUS LsarpLookupPrivilegeDisplayName(PRPC_UNICODE_STRING Name, USHORT ClientLanguage, USHORT ClientSystemDefaultLanguage, PRPC_UNICODE_STRING *DisplayName, USHORT *LanguageReturned)
static PVOID Mapping[EMS_PHYSICAL_PAGES]
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ SECURITY_INFORMATION SecurityInformation
_In_ FILTER_INFORMATION_CLASS InformationClass
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
HLOCAL NTAPI LocalFree(HLOCAL hMem)
NTSYSAPI ULONG WINAPI RtlLengthSecurityDescriptor(PSECURITY_DESCRIPTOR)
NTSYSAPI void WINAPI RtlCopyLuid(PLUID, const LUID *)
void *__RPC_USER MIDL_user_allocate(SIZE_T size)
void __RPC_USER MIDL_user_free(void *p)
struct _LSAPR_ACCOUNT_INFORMATION LSAPR_ACCOUNT_INFORMATION
struct _QUOTA_LIMITS QUOTA_LIMITS
LPWSTR PLSAPR_SERVER_NAME
enum _LSAP_LOOKUP_LEVEL LSAP_LOOKUP_LEVEL
NTSTATUS WINAPI LsarSetSystemAccessAccount(LSAPR_HANDLE AccountHandle, ACCESS_MASK SystemAccess)
NTSTATUS WINAPI LsarEnumerateAccountsWithUserRight(LSAPR_HANDLE PolicyHandle, PRPC_UNICODE_STRING UserRight, PLSAPR_ACCOUNT_ENUM_BUFFER EnumerationBuffer)
NTSTATUS WINAPI CredrWrite(PLSAPR_SERVER_NAME SystemName)
NTSTATUS WINAPI LsarSetTrustedDomainInfo(LSAPR_HANDLE PolicyHandle, PRPC_SID TrustedDomainSid, TRUSTED_INFORMATION_CLASS InformationClass, PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation)
NTSTATUS WINAPI LsarEnumerateTrustedDomains(LSAPR_HANDLE PolicyHandle, DWORD *EnumerationContext, PLSAPR_TRUSTED_ENUM_BUFFER EnumerationBuffer, DWORD PreferedMaximumLength)
static RTL_CRITICAL_SECTION PolicyHandleTableLock
NTSTATUS WINAPI LsarQueryDomainInformationPolicy(LSAPR_HANDLE PolicyHandle, POLICY_INFORMATION_CLASS InformationClass, PLSAPR_POLICY_DOMAIN_INFORMATION *PolicyInformation)
NTSTATUS WINAPI LsarCreateTrustedDomainEx2(LSAPR_HANDLE PolicyHandle, PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInformation, PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION_INTERNAL AuthentificationInformation, ACCESS_MASK DesiredAccess, LSAPR_HANDLE *TrustedDomainHandle)
NTSTATUS WINAPI CredrWriteDomainCredentials(PLSAPR_SERVER_NAME SystemName)
NTSTATUS LsarpCreateAccount(PLSA_DB_OBJECT PolicyObject, PRPC_SID AccountSid, ACCESS_MASK DesiredAccess, PLSA_DB_OBJECT *AccountObject)
NTSTATUS WINAPI LsarQuerySecret(LSAPR_HANDLE SecretHandle, PLSAPR_CR_CIPHER_VALUE *EncryptedCurrentValue, PLARGE_INTEGER CurrentValueSetTime, PLSAPR_CR_CIPHER_VALUE *EncryptedOldValue, PLARGE_INTEGER OldValueSetTime)
NTSTATUS LsarStartRpcServer(VOID)
NTSTATUS WINAPI LsarLookupSids2(LSAPR_HANDLE PolicyHandle, 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)
NTSTATUS WINAPI CredrDelete(PLSAPR_SERVER_NAME SystemName, LPWSTR TargetName, DWORD Type, DWORD Flags)
NTSTATUS WINAPI LsarAdtReportSecurityEvent(handle_t hBinding)
NTSTATUS WINAPI LsarOpenAccount(LSAPR_HANDLE PolicyHandle, PRPC_SID AccountSid, ACCESS_MASK DesiredAccess, LSAPR_HANDLE *AccountHandle)
NTSTATUS WINAPI LsarSetPolicyReplicationHandle(PLSAPR_HANDLE PolicyHandle)
NTSTATUS WINAPI LsarOpenPolicy2(LPWSTR SystemName, PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes, ACCESS_MASK DesiredAccess, LSAPR_HANDLE *PolicyHandle)
NTSTATUS WINAPI LsarSetInformationPolicy(LSAPR_HANDLE PolicyHandle, POLICY_INFORMATION_CLASS InformationClass, PLSAPR_POLICY_INFORMATION PolicyInformation)
NTSTATUS WINAPI LsarEnumeratePrivileges(LSAPR_HANDLE PolicyHandle, DWORD *EnumerationContext, PLSAPR_PRIVILEGE_ENUM_BUFFER EnumerationBuffer, DWORD PreferedMaximumLength)
void __RPC_USER LSAPR_HANDLE_rundown(LSAPR_HANDLE hHandle)
NTSTATUS WINAPI LsarGetQuotasForAccount(LSAPR_HANDLE AccountHandle, PQUOTA_LIMITS QuotaLimits)
NTSTATUS WINAPI LsarAdtUnregisterSecurityEventSource(handle_t hBinding)
NTSTATUS WINAPI LsarOpenTrustedDomain(LSAPR_HANDLE PolicyHandle, PRPC_SID TrustedDomainSid, ACCESS_MASK DesiredAccess, LSAPR_HANDLE *TrustedDomainHandle)
NTSTATUS WINAPI LsarRemovePrivilegesFromAccount(LSAPR_HANDLE AccountHandle, BOOLEAN AllPrivileges, PLSAPR_PRIVILEGE_SET Privileges)
NTSTATUS WINAPI LsarRetrievePrivateData(LSAPR_HANDLE PolicyHandle, PRPC_UNICODE_STRING KeyName, PLSAPR_CR_CIPHER_VALUE *EncryptedData)
NTSTATUS WINAPI LsarEnumerateAccounts(LSAPR_HANDLE PolicyHandle, DWORD *EnumerationContext, PLSAPR_ACCOUNT_ENUM_BUFFER EnumerationBuffer, DWORD PreferedMaximumLength)
NTSTATUS WINAPI LsarDeleteTrustedDomain(LSAPR_HANDLE PolicyHandle, PRPC_SID TrustedDomainSid)
NTSTATUS WINAPI LsarRegisterAuditEvent(handle_t hBinding)
static GENERIC_MAPPING LsapSecretMapping
NTSTATUS WINAPI LsarDeleteObject(LSAPR_HANDLE *ObjectHandle)
NTSTATUS WINAPI CredrReadDomainCredentials(PLSAPR_SERVER_NAME SystemName)
NTSTATUS WINAPI LsarLookupPrivilegeName(LSAPR_HANDLE PolicyHandle, PLUID Value, PRPC_UNICODE_STRING *Name)
NTSTATUS WINAPI LsarSetInformationTrustedDomain(LSAPR_HANDLE TrustedDomainHandle, TRUSTED_INFORMATION_CLASS InformationClass, PLSAPR_TRUSTED_DOMAIN_INFO TrustedDomainInformation)
NTSTATUS WINAPI LsarLookupNames(LSAPR_HANDLE PolicyHandle, DWORD Count, PRPC_UNICODE_STRING Names, PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, PLSAPR_TRANSLATED_SIDS TranslatedSids, LSAP_LOOKUP_LEVEL LookupLevel, DWORD *MappedCount)
NTSTATUS WINAPI LsarTestCall(handle_t hBinding)
NTSTATUS WINAPI LsarQueryTrustedDomainInfo(LSAPR_HANDLE PolicyHandle, PRPC_SID TrustedDomainSid, TRUSTED_INFORMATION_CLASS InformationClass, PLSAPR_TRUSTED_DOMAIN_INFO *TrustedDomainInformation)
NTSTATUS WINAPI LsarCreateTrustedDomainEx(LSAPR_HANDLE PolicyHandle, PLSAPR_TRUSTED_DOMAIN_INFORMATION_EX TrustedDomainInformation, PLSAPR_TRUSTED_DOMAIN_AUTH_INFORMATION AuthentificationInformation, ACCESS_MASK DesiredAccess, LSAPR_HANDLE *TrustedDomainHandle)
NTSTATUS WINAPI LsarLookupPrivilegeValue(LSAPR_HANDLE PolicyHandle, PRPC_UNICODE_STRING Name, PLUID Value)
NTSTATUS WINAPI LsarGetUserName(LPWSTR SystemName, PRPC_UNICODE_STRING *UserName, PRPC_UNICODE_STRING *DomainName)
NTSTATUS WINAPI LsarSetSecret(LSAPR_HANDLE SecretHandle, PLSAPR_CR_CIPHER_VALUE EncryptedCurrentValue, PLSAPR_CR_CIPHER_VALUE EncryptedOldValue)
NTSTATUS WINAPI LsarLookupSids3(LSAPR_HANDLE PolicyHandle, 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)
NTSTATUS WINAPI CredrRead(PLSAPR_SERVER_NAME SystemName)
static NTSTATUS LsarpOpenAccount(IN PLSA_DB_OBJECT PolicyObject, IN PRPC_SID AccountSid, IN ACCESS_MASK DesiredAccess, OUT PLSA_DB_OBJECT *AccountObject)
NTSTATUS WINAPI LsarGenAuditEvent(handle_t hBinding)
static GENERIC_MAPPING LsapAccountMapping
NTSTATUS WINAPI LsarOpenPolicy(LPWSTR SystemName, PLSAPR_OBJECT_ATTRIBUTES ObjectAttributes, ACCESS_MASK DesiredAccess, LSAPR_HANDLE *PolicyHandle)
NTSTATUS WINAPI LsarLookupNames3(LSAPR_HANDLE PolicyHandle, 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)
NTSTATUS WINAPI LsarQueryInfoTrustedDomain(LSAPR_HANDLE TrustedDomainHandle, TRUSTED_INFORMATION_CLASS InformationClass, PLSAPR_TRUSTED_DOMAIN_INFO *TrustedDomainInformation)
NTSTATUS WINAPI LsarOpenSecret(LSAPR_HANDLE PolicyHandle, PRPC_UNICODE_STRING SecretName, ACCESS_MASK DesiredAccess, LSAPR_HANDLE *SecretHandle)
NTSTATUS WINAPI LsarEnumeratePrivilegesAccount(LSAPR_HANDLE AccountHandle, PLSAPR_PRIVILEGE_SET *Privileges)
NTSTATUS WINAPI LsarClearAuditLog(LSAPR_HANDLE ObjectHandle)
NTSTATUS WINAPI LsarClose(LSAPR_HANDLE *ObjectHandle)
NTSTATUS WINAPI LsarUnregisterAuditEvent(handle_t hBinding)
NTSTATUS WINAPI LsarCreateTrustedDomain(LSAPR_HANDLE PolicyHandle, PLSAPR_TRUST_INFORMATION TrustedDomainInformation, ACCESS_MASK DesiredAccess, LSAPR_HANDLE *TrustedDomainHandle)
NTSTATUS WINAPI LsarSetQuotasForAccount(LSAPR_HANDLE AccountHandle, PQUOTA_LIMITS QuotaLimits)
NTSTATUS WINAPI LsarGetSystemAccessAccount(LSAPR_HANDLE AccountHandle, ACCESS_MASK *SystemAccess)
NTSTATUS WINAPI LsarAddPrivilegesToAccount(LSAPR_HANDLE AccountHandle, PLSAPR_PRIVILEGE_SET Privileges)
NTSTATUS WINAPI LsarLookupNames2(LSAPR_HANDLE PolicyHandle, DWORD Count, PRPC_UNICODE_STRING Names, PLSAPR_REFERENCED_DOMAIN_LIST *ReferencedDomains, PLSAPR_TRANSLATED_SIDS_EX TranslatedSids, LSAP_LOOKUP_LEVEL LookupLevel, DWORD *MappedCount, DWORD LookupOptions, DWORD ClientRevision)
NTSTATUS WINAPI CredrGetTargetInfo(PLSAPR_SERVER_NAME SystemName, LPWSTR TargetName, DWORD Flags, CREDPR_TARGET_INFORMATION *TargetInformation)
NTSTATUS WINAPI LsarStorePrivateData(LSAPR_HANDLE PolicyHandle, PRPC_UNICODE_STRING KeyName, PLSAPR_CR_CIPHER_VALUE EncryptedData)