Commit f9f3b21f authored by Erich E. Hoover's avatar Erich E. Hoover Committed by Alexandre Julliard

advapi32: Implement RegSetKeySecurity on top of NtSetSecurityObject.

parent 113a2abb
......@@ -2488,9 +2488,9 @@ LSTATUS WINAPI RegSetKeySecurity( HKEY hkey, SECURITY_INFORMATION SecurityInfo,
if (!pSecurityDesc)
return ERROR_INVALID_PARAMETER;
FIXME(":(%p,%d,%p): stub\n",hkey,SecurityInfo,pSecurityDesc);
if (!(hkey = get_special_root_hkey( hkey, 0 ))) return ERROR_INVALID_HANDLE;
return ERROR_SUCCESS;
return RtlNtStatusToDosError( NtSetSecurityObject( hkey, SecurityInfo, pSecurityDesc ) );
}
......
......@@ -1103,14 +1103,15 @@ static void test_reg_open_key(void)
}
else
{
/* The "sanctioned" methods of setting a registry ACL aren't implemented in Wine. */
bRet = SetKernelObjectSecurity(hkRoot64, DACL_SECURITY_INFORMATION, sd);
ok(bRet == TRUE,
"Expected SetKernelObjectSecurity to return TRUE, got %d, last error %u\n", bRet, GetLastError());
LONG error;
bRet = SetKernelObjectSecurity(hkRoot32, DACL_SECURITY_INFORMATION, sd);
ok(bRet == TRUE,
"Expected SetKernelObjectSecurity to return TRUE, got %d, last error %u\n", bRet, GetLastError());
error = RegSetKeySecurity(hkRoot64, DACL_SECURITY_INFORMATION, sd);
ok(error == ERROR_SUCCESS,
"Expected RegSetKeySecurity to return success, got error %u\n", error);
bRet = RegSetKeySecurity(hkRoot32, DACL_SECURITY_INFORMATION, sd);
ok(error == ERROR_SUCCESS,
"Expected RegSetKeySecurity to return success, got error %u\n", error);
hkResult = NULL;
ret = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine", 0, KEY_WOW64_64KEY | KEY_READ, &hkResult);
......@@ -1264,14 +1265,13 @@ static void test_reg_create_key(void)
}
else
{
/* The "sanctioned" methods of setting a registry ACL aren't implemented in Wine. */
bRet = SetKernelObjectSecurity(hkRoot64, DACL_SECURITY_INFORMATION, sd);
ok(bRet == TRUE,
"Expected SetKernelObjectSecurity to return TRUE, got %d, last error %u\n", bRet, GetLastError());
bRet = SetKernelObjectSecurity(hkRoot32, DACL_SECURITY_INFORMATION, sd);
ok(bRet == TRUE,
"Expected SetKernelObjectSecurity to return TRUE, got %d, last error %u\n", bRet, GetLastError());
ret = RegSetKeySecurity(hkRoot64, DACL_SECURITY_INFORMATION, sd);
ok(ret == ERROR_SUCCESS,
"Expected RegSetKeySecurity to return success, got error %u\n", ret);
ret = RegSetKeySecurity(hkRoot32, DACL_SECURITY_INFORMATION, sd);
ok(ret == ERROR_SUCCESS,
"Expected RegSetKeySecurity to return success, got error %u\n", ret);
hkey1 = NULL;
ret = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine", 0, NULL, 0,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment