diff --git a/dlls/advapi32/advapi32.spec b/dlls/advapi32/advapi32.spec index 892e84a327b..0515b72644a 100644 --- a/dlls/advapi32/advapi32.spec +++ b/dlls/advapi32/advapi32.spec @@ -540,8 +540,8 @@ @ stdcall ReportEventA (long long long long ptr long long str ptr) @ stdcall ReportEventW (long long long long ptr long long wstr ptr) @ stdcall RevertToSelf() -# @ stub SaferCloseLevel -# @ stub SaferComputeTokenFromLevel +@ stdcall SaferCloseLevel(ptr) +@ stdcall SaferComputeTokenFromLevel(ptr ptr ptr long ptr) @ stdcall SaferCreateLevel(long long long ptr ptr) # @ stub SaferGetLevelInformation @ stdcall SaferGetPolicyInformation(long long long ptr ptr ptr) diff --git a/dlls/advapi32/security.c b/dlls/advapi32/security.c index 821fb869e55..d86bb1b7ce4 100644 --- a/dlls/advapi32/security.c +++ b/dlls/advapi32/security.c @@ -5418,7 +5418,30 @@ BOOL WINAPI SaferCreateLevel(DWORD ScopeId, DWORD LevelId, DWORD OpenFlags, SAFER_LEVEL_HANDLE* LevelHandle, LPVOID lpReserved) { FIXME("(%u, %x, %u, %p, %p) stub\n", ScopeId, LevelId, OpenFlags, LevelHandle, lpReserved); - return FALSE; + + *LevelHandle = (SAFER_LEVEL_HANDLE)0xdeadbeef; + return TRUE; +} + +/****************************************************************************** + * SaferComputeTokenFromLevel [ADVAPI32.@] + */ +BOOL WINAPI SaferComputeTokenFromLevel(SAFER_LEVEL_HANDLE handle, HANDLE token, PHANDLE access_token, + DWORD flags, LPVOID reserved) +{ + FIXME("(%p, %p, %p, %x, %p) stub\n", handle, token, access_token, flags, reserved); + + *access_token = (HANDLE)0xdeadbeef; + return TRUE; +} + +/****************************************************************************** + * SaferCloseLevel [ADVAPI32.@] + */ +BOOL WINAPI SaferCloseLevel(SAFER_LEVEL_HANDLE handle) +{ + FIXME("(%p) stub\n", handle); + return TRUE; } DWORD WINAPI TreeResetNamedSecurityInfoW( LPWSTR pObjectName,