From 43a3110e95f58e375a0e71435b647f81f99b7eca Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Tue, 23 Feb 2021 12:57:13 +1100 Subject: [PATCH] Rebase against 4981785f0fbcafbdc6a9dc4f71d06b137d558597. This rebase is affected by the same upstream bug. https://bugs.winehq.org/show_bug.cgi?id=50713 --- ...1-cryptext-Implement-CryptExtOpenCER.patch | 54 ++++++++++----- patches/patchinstall.sh | 2 +- .../0001-aclui-Add-basic-ACE-viewer.patch | 69 ++++++++++--------- staging/upstream-commit | 2 +- 4 files changed, 74 insertions(+), 53 deletions(-) diff --git a/patches/cryptext-CryptExtOpenCER/0001-cryptext-Implement-CryptExtOpenCER.patch b/patches/cryptext-CryptExtOpenCER/0001-cryptext-Implement-CryptExtOpenCER.patch index 2c69886d..ebec823c 100644 --- a/patches/cryptext-CryptExtOpenCER/0001-cryptext-Implement-CryptExtOpenCER.patch +++ b/patches/cryptext-CryptExtOpenCER/0001-cryptext-Implement-CryptExtOpenCER.patch @@ -1,4 +1,4 @@ -From 645cdde83d5430c5096fcb4ec4191aab7e8063ce Mon Sep 17 00:00:00 2001 +From 4a511591eb74436feb8aa12e33f6caac544ba54a Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Fri, 5 Jul 2019 13:20:23 +0800 Subject: [PATCH] cryptext: Implement CryptExtOpenCER. @@ -8,19 +8,19 @@ Signed-off-by: Dmitry Timoshkov configure | 1 + configure.ac | 1 + dlls/cryptext/Makefile.in | 3 +- - dlls/cryptext/cryptext.spec | 4 +-- - dlls/cryptext/cryptext_main.c | 64 +++++++++++++++++++++++++++++++++ - dlls/cryptext/tests/Makefile.in | 4 +++ - dlls/cryptext/tests/cryptext.c | 61 +++++++++++++++++++++++++++++++ - 7 files changed, 135 insertions(+), 3 deletions(-) + dlls/cryptext/cryptext.spec | 4 +- + dlls/cryptext/cryptext_main.c | 80 +++++++++++++++++++++++++++++++++ + dlls/cryptext/tests/Makefile.in | 4 ++ + dlls/cryptext/tests/cryptext.c | 61 +++++++++++++++++++++++++ + 7 files changed, 151 insertions(+), 3 deletions(-) create mode 100644 dlls/cryptext/tests/Makefile.in create mode 100644 dlls/cryptext/tests/cryptext.c diff --git a/configure b/configure -index 8567a9ca4ef..9b4ff8a2d7a 100755 +index 08936ff0ec1..79c966d23b1 100755 --- a/configure +++ b/configure -@@ -20276,6 +20276,7 @@ wine_fn_config_makefile dlls/crypt32/tests enable_tests +@@ -20347,6 +20347,7 @@ wine_fn_config_makefile dlls/crypt32/tests enable_tests wine_fn_config_makefile dlls/cryptdlg enable_cryptdlg wine_fn_config_makefile dlls/cryptdll enable_cryptdll wine_fn_config_makefile dlls/cryptext enable_cryptext @@ -29,10 +29,10 @@ index 8567a9ca4ef..9b4ff8a2d7a 100755 wine_fn_config_makefile dlls/cryptnet/tests enable_tests wine_fn_config_makefile dlls/cryptsp enable_cryptsp diff --git a/configure.ac b/configure.ac -index 0549a9ee78a..b58b05d4dd7 100644 +index fea6fe89c83..1a10f687682 100644 --- a/configure.ac +++ b/configure.ac -@@ -3070,6 +3070,7 @@ WINE_CONFIG_MAKEFILE(dlls/crypt32/tests) +@@ -3095,6 +3095,7 @@ WINE_CONFIG_MAKEFILE(dlls/crypt32/tests) WINE_CONFIG_MAKEFILE(dlls/cryptdlg) WINE_CONFIG_MAKEFILE(dlls/cryptdll) WINE_CONFIG_MAKEFILE(dlls/cryptext) @@ -41,7 +41,7 @@ index 0549a9ee78a..b58b05d4dd7 100644 WINE_CONFIG_MAKEFILE(dlls/cryptnet/tests) WINE_CONFIG_MAKEFILE(dlls/cryptsp) diff --git a/dlls/cryptext/Makefile.in b/dlls/cryptext/Makefile.in -index 9c9f84cee87..0e817ffda6c 100644 +index 3acce60ae88..590074a806f 100644 --- a/dlls/cryptext/Makefile.in +++ b/dlls/cryptext/Makefile.in @@ -1,4 +1,5 @@ @@ -49,7 +49,7 @@ index 9c9f84cee87..0e817ffda6c 100644 +MODULE = cryptext.dll +IMPORTS = crypt32 cryptui user32 - EXTRADLLFLAGS = -mno-cygwin + EXTRADLLFLAGS = -mno-cygwin -Wb,--prefer-native diff --git a/dlls/cryptext/cryptext.spec b/dlls/cryptext/cryptext.spec index 0dba38e3934..911ab2f4ba4 100644 @@ -67,10 +67,10 @@ index 0dba38e3934..911ab2f4ba4 100644 @ stub CryptExtOpenCRLW @ stub CryptExtOpenCTL diff --git a/dlls/cryptext/cryptext_main.c b/dlls/cryptext/cryptext_main.c -index f7c7bd1f554..2a381782d68 100644 +index 537ba66cd3b..2a381782d68 100644 --- a/dlls/cryptext/cryptext_main.c +++ b/dlls/cryptext/cryptext_main.c -@@ -22,10 +22,29 @@ +@@ -22,10 +22,45 @@ #include "windef.h" #include "winbase.h" @@ -97,10 +97,26 @@ index f7c7bd1f554..2a381782d68 100644 + return ret; +} + - BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID reserved) - { - TRACE("(%p, %u, %p)\n", instance, reason, reserved); -@@ -59,3 +78,48 @@ HRESULT WINAPI CryptExtAddPFXW(LPCWSTR filename) ++BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID reserved) ++{ ++ TRACE("(%p, %u, %p)\n", instance, reason, reserved); ++ ++ switch (reason) ++ { ++ case DLL_WINE_PREATTACH: ++ return FALSE; /* prefer native version */ ++ case DLL_PROCESS_ATTACH: ++ DisableThreadLibraryCalls(instance); ++ break; ++ } ++ ++ return TRUE; ++} ++ + /*********************************************************************** + * CryptExtAddPFX (CRYPTEXT.@) + */ +@@ -43,3 +78,48 @@ HRESULT WINAPI CryptExtAddPFXW(LPCWSTR filename) FIXME("stub: %s\n", debugstr_w(filename)); return E_NOTIMPL; } @@ -227,5 +243,5 @@ index 00000000000..cc62a772b59 + test_CryptExtOpenCER(); +} -- -2.20.1 +2.30.0 diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 123fba26..5c9fe511 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -51,7 +51,7 @@ usage() # Get the upstream commit sha upstream_commit() { - echo "4de079bb7247c8b849558c0f27a280a9546c5570" + echo "4981785f0fbcafbdc6a9dc4f71d06b137d558597" } # Show version information diff --git a/patches/shell32-ACE_Viewer/0001-aclui-Add-basic-ACE-viewer.patch b/patches/shell32-ACE_Viewer/0001-aclui-Add-basic-ACE-viewer.patch index 34fe815c..81ca519d 100644 --- a/patches/shell32-ACE_Viewer/0001-aclui-Add-basic-ACE-viewer.patch +++ b/patches/shell32-ACE_Viewer/0001-aclui-Add-basic-ACE-viewer.patch @@ -1,21 +1,21 @@ -From 51438c7eb7bf3b04dd70c50ea860a3ce8b1628d0 Mon Sep 17 00:00:00 2001 +From f28a857b189d801435e899ed039611cc6fb116f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Mon, 8 May 2017 23:01:28 +0200 Subject: [PATCH] aclui: Add basic ACE viewer. --- dlls/aclui/Makefile.in | 3 + - dlls/aclui/aclui.rc | 58 ++++++ - dlls/aclui/aclui_main.c | 513 +++++++++++++++++++++++++++++++++++++++++++++- - dlls/aclui/resource.h | 38 ++++ + dlls/aclui/aclui.rc | 58 +++++ + dlls/aclui/aclui_main.c | 531 +++++++++++++++++++++++++++++++++++++- + dlls/aclui/resource.h | 38 +++ dlls/aclui/user_icons.bmp | Bin 0 -> 2730 bytes - 5 files changed, 608 insertions(+), 4 deletions(-) + 5 files changed, 626 insertions(+), 4 deletions(-) create mode 100644 dlls/aclui/aclui.rc create mode 100644 dlls/aclui/resource.h create mode 100644 dlls/aclui/user_icons.bmp diff --git a/dlls/aclui/Makefile.in b/dlls/aclui/Makefile.in -index 83bd379..dc6a5e0 100644 +index e79b3fe9e33..1eac32f0700 100644 --- a/dlls/aclui/Makefile.in +++ b/dlls/aclui/Makefile.in @@ -1,6 +1,9 @@ @@ -23,14 +23,14 @@ index 83bd379..dc6a5e0 100644 IMPORTLIB = aclui +IMPORTS = comctl32 user32 advapi32 gdi32 - EXTRADLLFLAGS = -mno-cygwin + EXTRADLLFLAGS = -mno-cygwin -Wb,--prefer-native C_SRCS = aclui_main.c + +RC_SRCS = aclui.rc diff --git a/dlls/aclui/aclui.rc b/dlls/aclui/aclui.rc new file mode 100644 -index 0000000..08f8b56 +index 00000000000..08f8b567314 --- /dev/null +++ b/dlls/aclui/aclui.rc @@ -0,0 +1,58 @@ @@ -93,10 +93,10 @@ index 0000000..08f8b56 +/* @makedep: user_icons.bmp */ +IDB_USER_ICONS BITMAP user_icons.bmp diff --git a/dlls/aclui/aclui_main.c b/dlls/aclui/aclui_main.c -index 033a471..ea35bba 100644 +index 1a03f30df24..a3a789e2daa 100644 --- a/dlls/aclui/aclui_main.c +++ b/dlls/aclui/aclui_main.c -@@ -20,17 +20,53 @@ +@@ -20,25 +20,548 @@ #include @@ -116,6 +116,10 @@ index 033a471..ea35bba 100644 WINE_DEFAULT_DEBUG_CHANNEL(aclui); +-HPROPSHEETPAGE WINAPI CreateSecurityPage(LPSECURITYINFO psi) ++ ++HPROPSHEETPAGE WINAPI CreateSecurityPage(LPSECURITYINFO psi); ++ +/* the aclui.h files does not contain the necessary COBJMACROS */ +#define ISecurityInformation_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ISecurityInformation_Release(This) (This)->lpVtbl->Release(This) @@ -147,21 +151,22 @@ index 033a471..ea35bba 100644 + +static HINSTANCE aclui_instance; + - BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) - { - TRACE("(0x%p, %d, %p)\n", hinstDLL, fdwReason, lpvReserved); -@@ -40,20 +76,489 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) - case DLL_WINE_PREATTACH: - return FALSE; /* prefer native version */ - case DLL_PROCESS_ATTACH: ++BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) ++{ ++ TRACE("(0x%p, %d, %p)\n", hinstDLL, fdwReason, lpvReserved); ++ ++ switch (fdwReason) ++ { ++ case DLL_WINE_PREATTACH: ++ return FALSE; /* prefer native version */ ++ case DLL_PROCESS_ATTACH: + aclui_instance = hinstDLL; - DisableThreadLibraryCalls(hinstDLL); - break; - } - return TRUE; - } - --HPROPSHEETPAGE WINAPI CreateSecurityPage(LPSECURITYINFO psi) ++ DisableThreadLibraryCalls(hinstDLL); ++ break; ++ } ++ return TRUE; ++} ++ +static WCHAR* WINAPIV load_formatstr(UINT resource, ...) +{ + __ms_va_list valist; @@ -195,7 +200,8 @@ index 033a471..ea35bba 100644 +} + +static void users_clear(struct security_page *page) -+{ + { +- FIXME("(%p): stub\n", psi); + struct user *user, *user2; + + LIST_FOR_EACH_ENTRY_SAFE(user, user2, &page->users, struct user, entry) @@ -209,8 +215,7 @@ index 033a471..ea35bba 100644 +} + +static WCHAR *get_sid_name(PSID sid, SID_NAME_USE *sid_type) - { -- FIXME("(%p): stub\n", psi); ++{ + WCHAR *name, *domain; + DWORD domain_len = 0; + DWORD name_len = 0; @@ -235,8 +240,7 @@ index 033a471..ea35bba 100644 -BOOL WINAPI EditSecurity(HWND owner, LPSECURITYINFO psi) +static BOOL users_add(struct security_page *page, PSID sid) - { -- FIXME("(%p, %p): stub\n", owner, psi); ++{ + SID_NAME_USE sid_type; + struct user *user; + DWORD sid_len; @@ -518,7 +522,8 @@ index 033a471..ea35bba 100644 +} + +static INT_PTR CALLBACK security_page_proc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) -+{ + { +- FIXME("(%p, %p): stub\n", owner, psi); + switch (msg) + { + case WM_INITDIALOG: @@ -646,7 +651,7 @@ index 033a471..ea35bba 100644 +} diff --git a/dlls/aclui/resource.h b/dlls/aclui/resource.h new file mode 100644 -index 0000000..ba3eb81 +index 00000000000..ba3eb8160ab --- /dev/null +++ b/dlls/aclui/resource.h @@ -0,0 +1,38 @@ @@ -724,5 +729,5 @@ literal 0 HcmV?d00001 -- -1.9.1 +2.30.0 diff --git a/staging/upstream-commit b/staging/upstream-commit index 594b6f74..096fc9ef 100644 --- a/staging/upstream-commit +++ b/staging/upstream-commit @@ -1 +1 @@ -4de079bb7247c8b849558c0f27a280a9546c5570 +4981785f0fbcafbdc6a9dc4f71d06b137d558597