Signed-off-by: Alex Henrie <alexhenrie24(a)gmail.com>
---
dlls/faultrep/tests/faultrep.c | 62 ++++------------------------------
1 file changed, 6 insertions(+), 56 deletions(-)
diff --git a/dlls/faultrep/tests/faultrep.c b/dlls/faultrep/tests/faultrep.c
index d0b30f70cf1..30664bd29be 100644
--- a/dlls/faultrep/tests/faultrep.c
+++ b/dlls/faultrep/tests/faultrep.c
@@ -36,65 +36,15 @@ static const char regpath_exclude[] = "ExclusionList";
static BOOL is_process_limited(void)
{
- static BOOL (WINAPI *pCheckTokenMembership)(HANDLE,PSID,PBOOL) = NULL;
- static BOOL (WINAPI *pOpenProcessToken)(HANDLE, DWORD, PHANDLE) = NULL;
- SID_IDENTIFIER_AUTHORITY NtAuthority = {SECURITY_NT_AUTHORITY};
- PSID Group;
- BOOL IsInGroup;
HANDLE token;
+ TOKEN_ELEVATION_TYPE type = TokenElevationTypeDefault;
+ DWORD size;
- if (!pOpenProcessToken)
- {
- HMODULE hadvapi32 = GetModuleHandleA("advapi32.dll");
- pOpenProcessToken = (void*)GetProcAddress(hadvapi32, "OpenProcessToken");
- pCheckTokenMembership = (void*)GetProcAddress(hadvapi32, "CheckTokenMembership");
- if (!pCheckTokenMembership || !pOpenProcessToken)
- {
- /* Win9x (power to the masses) or NT4 (no way to know) */
- trace("missing pOpenProcessToken or CheckTokenMembership\n");
- return FALSE;
- }
- }
-
- if (!AllocateAndInitializeSid(&NtAuthority, 2, SECURITY_BUILTIN_DOMAIN_RID,
- DOMAIN_ALIAS_RID_ADMINS,
- 0, 0, 0, 0, 0, 0, &Group) ||
- !pCheckTokenMembership(NULL, Group, &IsInGroup))
- {
- trace("Could not check if the current user is an administrator\n");
- return FALSE;
- }
- FreeSid(Group);
- if (!IsInGroup)
- {
- if (!AllocateAndInitializeSid(&NtAuthority, 2,
- SECURITY_BUILTIN_DOMAIN_RID,
- DOMAIN_ALIAS_RID_POWER_USERS,
- 0, 0, 0, 0, 0, 0, &Group) ||
- !pCheckTokenMembership(NULL, Group, &IsInGroup))
- {
- trace("Could not check if the current user is a power user\n");
- return FALSE;
- }
- FreeSid(Group);
- if (!IsInGroup)
- {
- /* Only administrators and power users can be powerful */
- return TRUE;
- }
- }
+ OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &token);
+ GetTokenInformation(token, TokenElevationType, &type, sizeof(type), &size);
+ CloseHandle(token);
- if (pOpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &token))
- {
- BOOL ret;
- TOKEN_ELEVATION_TYPE type = TokenElevationTypeDefault;
- DWORD size;
-
- ret = GetTokenInformation(token, TokenElevationType, &type, sizeof(type), &size);
- CloseHandle(token);
- return (ret && type == TokenElevationTypeLimited);
- }
- return FALSE;
+ return type == TokenElevationTypeLimited;
}
--
2.34.1