mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-09-13 09:17:20 -07:00
Implement RegSetKeySecurity on top of NtSetSecurityObject.
This commit is contained in:
parent
b861c5731d
commit
24c6b554c9
3
debian/changelog
vendored
3
debian/changelog
vendored
@ -1,6 +1,7 @@
|
||||
wine-compholio (1.7.21) UNRELEASED; urgency=low
|
||||
* Added NT4 support to the process ACL tests.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Tue, 01 Jul 2014 18:30:47 -0600
|
||||
* Implement RegSetKeySecurity on top of NtSetSecurityObject.
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Tue, 01 Jul 2014 19:25:52 -0600
|
||||
|
||||
wine-compholio (1.7.21) unstable; urgency=low
|
||||
* Remove several patches (accepted upstream).
|
||||
|
@ -0,0 +1,78 @@
|
||||
From f578524f71033b89cbb1fda1d3ac676f2d330ea6 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Tue, 1 Jul 2014 19:23:30 -0600
|
||||
Subject: advapi: Implement RegSetKeySecurity on top of NtSetSecurityObject.
|
||||
|
||||
---
|
||||
dlls/advapi32/registry.c | 4 ++--
|
||||
dlls/advapi32/tests/registry.c | 30 +++++++++++++++---------------
|
||||
2 files changed, 17 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/dlls/advapi32/registry.c b/dlls/advapi32/registry.c
|
||||
index c7ba3ef..253e708 100644
|
||||
--- a/dlls/advapi32/registry.c
|
||||
+++ b/dlls/advapi32/registry.c
|
||||
@@ -2469,9 +2469,9 @@ LSTATUS WINAPI RegSetKeySecurity( HKEY hkey, SECURITY_INFORMATION SecurityInfo,
|
||||
if (!pSecurityDesc)
|
||||
return ERROR_INVALID_PARAMETER;
|
||||
|
||||
- FIXME(":(%p,%d,%p): stub\n",hkey,SecurityInfo,pSecurityDesc);
|
||||
+ TRACE("(%p,%d,%p)\n",hkey,SecurityInfo,pSecurityDesc);
|
||||
|
||||
- return ERROR_SUCCESS;
|
||||
+ return RtlNtStatusToDosError( NtSetSecurityObject( hkey, SecurityInfo, pSecurityDesc ) );
|
||||
}
|
||||
|
||||
|
||||
diff --git a/dlls/advapi32/tests/registry.c b/dlls/advapi32/tests/registry.c
|
||||
index 7c4db40..5069600 100644
|
||||
--- a/dlls/advapi32/tests/registry.c
|
||||
+++ b/dlls/advapi32/tests/registry.c
|
||||
@@ -1070,14 +1070,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);
|
||||
@@ -1231,14 +1232,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,
|
||||
--
|
||||
1.7.9.5
|
||||
|
@ -0,0 +1,3 @@
|
||||
Revision: 1
|
||||
Author: Erich E. Hoover
|
||||
Title: Implement RegSetKeySecurity on top of NtSetSecurityObject.
|
@ -6,7 +6,7 @@ diff --git a/libs/wine/config.c b/libs/wine/config.c
|
||||
index a273502..5fa0cd5 100644
|
||||
--- a/libs/wine/config.c
|
||||
+++ b/libs/wine/config.c
|
||||
@@ -478,6 +478,43 @@ const char *wine_get_version(void)
|
||||
@@ -478,6 +478,44 @@ const char *wine_get_version(void)
|
||||
return PACKAGE_VERSION;
|
||||
}
|
||||
|
||||
@ -29,6 +29,7 @@ index a273502..5fa0cd5 100644
|
||||
+ { "3d7c4774-9e7f-11e3-9cfc-0090f5c75ad5:1", "Erich E. Hoover", "Implement missing fonts expected by Silverlight." },
|
||||
+ { "e7581ed7-12b3-4ed3-835b-5a62afbf9c85:4", "Sebastian Lackner", "Use lockfree implementation for get_cached_fd." },
|
||||
+ { "3405aa34-f341-11e3-83ce-0090f5c75ad5:1", "Erich E. Hoover", "Add default security descriptor ownership and DACLs for processes." },
|
||||
+ { "a140df16-0187-11e4-a050-0090f5c75ad5:1", "Erich E. Hoover", "Implement RegSetKeySecurity on top of NtSetSecurityObject." },
|
||||
+ { "0b21d7ac-0387-4493-aa38-fbafe3e749f5:2", "Michael Müller", "Decrease minimum SetTimer interval to 5 ms." },
|
||||
+ { "2394843e-2bc4-4fa4-8368-1ef32093b89e:1", "Michael Müller", "Allow changing strict draw ordering through an exported function." },
|
||||
+ { "255473fa-4e0a-4f51-952b-4deecc1a2181:1", "Michael Müller", "Indicate direct rendering through OpenGL extension." },
|
||||
|
Loading…
Reference in New Issue
Block a user