Rebase against 9d75caf4e1deea0ec8d5ad3f829e7218bc1e3c16

This commit is contained in:
Alistair Leslie-Hughes 2019-04-23 09:04:10 +10:00
parent 6f1e25e1c0
commit 477e9faba2
16 changed files with 99 additions and 418 deletions

View File

@ -1,4 +1,4 @@
From dd6544561d6432555f14a9004e107e6b87564949 Mon Sep 17 00:00:00 2001
From 19cfff2a16953b65f9767fee571a4ce5d51b0536 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 5 Aug 2017 03:39:55 +0200
Subject: [PATCH] ntdll: Implement process token elevation through manifests.
@ -12,10 +12,10 @@ Subject: [PATCH] ntdll: Implement process token elevation through manifests.
5 files changed, 68 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
index d7dbe57..7588d5a 100644
index c0708c6..479608f 100644
--- a/dlls/ntdll/loader.c
+++ b/dlls/ntdll/loader.c
@@ -3321,6 +3321,32 @@ void WINAPI LdrInitializeThunk( CONTEXT *context, void **entry, ULONG_PTR unknow
@@ -3505,6 +3505,32 @@ void WINAPI LdrInitializeThunk( CONTEXT *context, void **entry, ULONG_PTR unknow
/***********************************************************************
@ -48,7 +48,7 @@ index d7dbe57..7588d5a 100644
* load_global_options
*/
static void load_global_options(void)
@@ -3373,6 +3399,7 @@ static void load_global_options(void)
@@ -3557,6 +3583,7 @@ static void load_global_options(void)
}
@ -56,7 +56,7 @@ index d7dbe57..7588d5a 100644
/***********************************************************************
* RtlImageDirectoryEntryToData (NTDLL.@)
*/
@@ -3408,7 +3435,6 @@ PVOID WINAPI RtlImageDirectoryEntryToData( HMODULE module, BOOL image, WORD dir,
@@ -3592,7 +3619,6 @@ PVOID WINAPI RtlImageDirectoryEntryToData( HMODULE module, BOOL image, WORD dir,
return RtlImageRvaToVa( nt, module, addr, NULL );
}
@ -64,16 +64,16 @@ index d7dbe57..7588d5a 100644
/***********************************************************************
* RtlImageRvaToSection (NTDLL.@)
*/
@@ -3505,7 +3531,7 @@ void __wine_process_init(void)
{
static const WCHAR kernel32W[] = {'k','e','r','n','e','l','3','2','.','d','l','l',0};
@@ -3691,7 +3717,7 @@ void __wine_process_init(void)
's','y','s','t','e','m','3','2','\\',
'k','e','r','n','e','l','3','2','.','d','l','l',0};
static const WCHAR globalflagW[] = {'G','l','o','b','a','l','F','l','a','g',0};
-
+ ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION runlevel;
WINE_MODREF *wm;
NTSTATUS status;
ANSI_STRING func_name;
@@ -3556,6 +3582,16 @@ void __wine_process_init(void)
@@ -3742,6 +3768,16 @@ void __wine_process_init(void)
&NtCurrentTeb()->Peb->NtGlobalFlag, sizeof(DWORD), NULL );
heap_set_debug_flags( GetProcessHeap() );
@ -91,10 +91,10 @@ index d7dbe57..7588d5a 100644
RemoveEntryList( &wm->ldr.InLoadOrderModuleList );
InsertHeadList( &NtCurrentTeb()->Peb->LdrData->InLoadOrderModuleList, &wm->ldr.InLoadOrderModuleList );
diff --git a/server/process.c b/server/process.c
index 0a25f44..3988b52 100644
index d8fdfcc..2c9365a 100644
--- a/server/process.c
+++ b/server/process.c
@@ -1109,6 +1109,14 @@ struct process_snapshot *process_snap( int *count )
@@ -1129,6 +1129,14 @@ struct process_snapshot *process_snap( int *count )
return snapshot;
}
@ -110,10 +110,10 @@ index 0a25f44..3988b52 100644
DECL_HANDLER(new_process)
{
diff --git a/server/process.h b/server/process.h
index 4566a04..029b328 100644
index d9d29f0..a494eab 100644
--- a/server/process.h
+++ b/server/process.h
@@ -138,6 +138,7 @@ extern void break_process( struct process *process );
@@ -139,6 +139,7 @@ extern void break_process( struct process *process );
extern void detach_debugged_processes( struct thread *debugger );
extern struct process_snapshot *process_snap( int *count );
extern void enum_processes( int (*cb)(struct process*, void*), void *user);
@ -122,10 +122,10 @@ index 4566a04..029b328 100644
/* console functions */
extern void inherit_console(struct thread *parent_thread, struct process *process, obj_handle_t hconin);
diff --git a/server/protocol.def b/server/protocol.def
index 071f740..cc44503 100644
index 2b8d51a..650c279 100644
--- a/server/protocol.def
+++ b/server/protocol.def
@@ -3674,6 +3674,13 @@ struct handle_info
@@ -3721,6 +3721,13 @@ struct handle_info
@END
@ -140,10 +140,10 @@ index 071f740..cc44503 100644
@REQ(create_completion)
unsigned int access; /* desired access to a port */
diff --git a/server/token.c b/server/token.c
index e449e61..961fbe7 100644
index fcab799..181219d 100644
--- a/server/token.c
+++ b/server/token.c
@@ -1797,3 +1797,17 @@ DECL_HANDLER(create_token)
@@ -1806,3 +1806,17 @@ DECL_HANDLER(create_token)
release_object( token );
}
}

View File

@ -1,30 +1,28 @@
From 2cc1bac9dcbe9d52e395baea3811bfbb38c1ec0b Mon Sep 17 00:00:00 2001
From b314f9b084341f4d6f9cec5d8b92736b4f9a9ae7 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Wed, 13 Jun 2018 10:44:49 -0500
Subject: [PATCH 01/83] configure: Check for sys/eventfd.h, ppoll(), and
shm_open().
Subject: [PATCH] configure: Check for sys/eventfd.h, ppoll(), and shm_open().
We use ppoll() instead of poll() for the better time granularity.
Although perhaps we shouldn't since the server doesn't do this.
---
configure.ac | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/configure.ac b/configure.ac
index b2c614726..b44729df7 100644
index 11947e5..957d4e1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -505,6 +505,7 @@ AC_CHECK_HEADERS(\
@@ -498,6 +498,7 @@ AC_CHECK_HEADERS(\
sys/elf32.h \
sys/epoll.h \
sys/event.h \
+ sys/eventfd.h \
sys/exec_elf.h \
sys/filio.h \
sys/inotify.h \
@@ -2245,6 +2246,7 @@ AC_CHECK_FUNCS(\
sys/ioctl.h \
@@ -2206,6 +2207,7 @@ AC_CHECK_FUNCS(\
pipe2 \
poll \
port_create \
@ -32,7 +30,7 @@ index b2c614726..b44729df7 100644
prctl \
pread \
proc_pidinfo \
@@ -2317,6 +2319,16 @@ AC_SEARCH_LIBS(clock_gettime, rt,
@@ -2274,6 +2276,16 @@ AC_SEARCH_LIBS(clock_gettime, rt,
test "$ac_res" = "none required" || AC_SUBST(RT_LIBS,"$ac_res")])
LIBS=$ac_save_LIBS
@ -50,5 +48,5 @@ index b2c614726..b44729df7 100644
if test "x$with_ldap" != "xno"
then
--
2.20.1
1.9.1

View File

@ -1,46 +0,0 @@
From 3010466bbbf82e2757f0d2d7774f56c184c572dd Mon Sep 17 00:00:00 2001
From: Bruno Jesus <bjesus@codeweavers.com>
Date: Thu, 3 Jan 2019 14:26:39 +1100
Subject: [PATCH] mciavi32: Add Support for MCI_MCIAVI_PLAY_FULLSCREEN
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=15934
---
dlls/mciavi32/mciavi.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/dlls/mciavi32/mciavi.c b/dlls/mciavi32/mciavi.c
index b32accb..9aa6cd8 100644
--- a/dlls/mciavi32/mciavi.c
+++ b/dlls/mciavi32/mciavi.c
@@ -556,7 +556,7 @@ static DWORD MCIAVI_mciPlay(UINT wDevID, DWORD dwFlags, LPMCI_PLAY_PARMS lpParms
if (dwFlags & MCI_DGV_PLAY_REVERSE) return MCIERR_UNSUPPORTED_FUNCTION;
if (dwFlags & MCI_TEST) return 0;
- if (dwFlags & (MCI_MCIAVI_PLAY_WINDOW|MCI_MCIAVI_PLAY_FULLSCREEN|MCI_MCIAVI_PLAY_FULLBY2))
+ if (dwFlags & (MCI_MCIAVI_PLAY_WINDOW|MCI_MCIAVI_PLAY_FULLBY2))
FIXME("Unsupported flag %08x\n", dwFlags);
EnterCriticalSection(&wma->cs);
@@ -591,7 +591,18 @@ static DWORD MCIAVI_mciPlay(UINT wDevID, DWORD dwFlags, LPMCI_PLAY_PARMS lpParms
LeaveCriticalSection(&wma->cs);
- if (!(GetWindowLongW(wma->hWndPaint, GWL_STYLE) & WS_VISIBLE))
+ if (dwFlags & MCI_MCIAVI_PLAY_FULLSCREEN)
+ {
+ HMONITOR mon = MonitorFromWindow(wma->hWndPaint, MONITOR_DEFAULTTONEAREST);
+ MONITORINFO mi;
+ mi.cbSize = sizeof(mi);
+ GetMonitorInfoA(mon, &mi);
+ wma->hWndPaint = CreateWindowA("STATIC", NULL, WS_POPUP | WS_VISIBLE, mi.rcMonitor.left,
+ mi.rcMonitor.top, mi.rcMonitor.right - mi.rcMonitor.left, mi.rcMonitor.bottom - mi.rcMonitor.top,
+ NULL, NULL, NULL, 0);
+ }
+ /* if not fullscreen ensure the window is visible */
+ else if (!(GetWindowLongW(wma->hWndPaint, GWL_STYLE) & WS_VISIBLE))
ShowWindow(wma->hWndPaint, SW_SHOWNA);
EnterCriticalSection(&wma->cs);
--
1.9.1

View File

@ -1 +0,0 @@
Fixes: [15934] mciavi32: Add Support for MCI_MCIAVI_PLAY_FULLSCREEN

View File

@ -1,29 +0,0 @@
From 317b8941e2c36fd568799915c8023332b5054331 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Sat, 6 Apr 2019 21:31:55 -0500
Subject: [PATCH] ntdll: Add stub for
NtQuerySystemInformation(SystemExtendedProcessInformation).
---
dlls/ntdll/nt.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c
index f42934969..c019a9c29 100644
--- a/dlls/ntdll/nt.c
+++ b/dlls/ntdll/nt.c
@@ -2768,6 +2768,11 @@ NTSTATUS WINAPI NtQuerySystemInformation(
}
}
break;
+ case SystemExtendedProcessInformation:
+ FIXME("SystemExtendedProcessInformation, len %u, buffer %p, stub!\n", Length, SystemInformation);
+ memset(SystemInformation, 0, Length);
+ ret = STATUS_SUCCESS;
+ break;
default:
FIXME("(0x%08x,%p,0x%08x,%p) stub\n",
SystemInformationClass,SystemInformation,Length,ResultLength);
--
2.20.1

View File

@ -1 +0,0 @@
Fixes: [46870] League of Legends 8.12+ fails to start a game in Vista+ mode (anticheat engine, SystemExtendedProcessInformation)

View File

@ -52,7 +52,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "9d7d68747b06a03893df99c4beea36b762508603"
echo "9d75caf4e1deea0ec8d5ad3f829e7218bc1e3c16"
}
# Show version information
@ -172,7 +172,6 @@ patch_enable_all ()
enable_krnl386_exe16_Invalid_Console_Handles="$1"
enable_libs_Debug_Channel="$1"
enable_libs_Unicode_Collation="$1"
enable_mciavi32_fullscreen_support="$1"
enable_mmsystem_dll16_MIDIHDR_Refcount="$1"
enable_mountmgr_DosDevices="$1"
enable_mscoree_CorValidateImage="$1"
@ -217,7 +216,6 @@ patch_enable_all ()
enable_ntdll_Stack_Guard_Page="$1"
enable_ntdll_Stack_Overflow="$1"
enable_ntdll_Status_Mapping="$1"
enable_ntdll_SystemExtendedProcessInformation="$1"
enable_ntdll_SystemInterruptInformation="$1"
enable_ntdll_SystemModuleInformation="$1"
enable_ntdll_SystemRoot_Symlink="$1"
@ -285,7 +283,6 @@ patch_enable_all ()
enable_shlwapi_UrlCombine="$1"
enable_stdole32_idl_Typelib="$1"
enable_stdole32_tlb_SLTG_Typelib="$1"
enable_taskmgr_Memory_Usage="$1"
enable_uianimation_stubs="$1"
enable_user32_DM_SETDEFID="$1"
enable_user32_Dialog_Paint_Event="$1"
@ -365,7 +362,6 @@ patch_enable_all ()
enable_winmm_mciSendCommandA="$1"
enable_wintab32_improvements="$1"
enable_wintrust_WTHelperGetProvCertFromChain="$1"
enable_wintrust_WinVerifyTrust="$1"
enable_wow64cpu_Wow64Transition="$1"
enable_wpcap_Dynamic_Linking="$1"
enable_ws2_32_APC_Performance="$1"
@ -654,9 +650,6 @@ patch_enable ()
libs-Unicode_Collation)
enable_libs_Unicode_Collation="$2"
;;
mciavi32-fullscreen_support)
enable_mciavi32_fullscreen_support="$2"
;;
mmsystem.dll16-MIDIHDR_Refcount)
enable_mmsystem_dll16_MIDIHDR_Refcount="$2"
;;
@ -789,9 +782,6 @@ patch_enable ()
ntdll-Status_Mapping)
enable_ntdll_Status_Mapping="$2"
;;
ntdll-SystemExtendedProcessInformation)
enable_ntdll_SystemExtendedProcessInformation="$2"
;;
ntdll-SystemInterruptInformation)
enable_ntdll_SystemInterruptInformation="$2"
;;
@ -993,9 +983,6 @@ patch_enable ()
stdole32.tlb-SLTG_Typelib)
enable_stdole32_tlb_SLTG_Typelib="$2"
;;
taskmgr-Memory_Usage)
enable_taskmgr_Memory_Usage="$2"
;;
uianimation-stubs)
enable_uianimation_stubs="$2"
;;
@ -1233,9 +1220,6 @@ patch_enable ()
wintrust-WTHelperGetProvCertFromChain)
enable_wintrust_WTHelperGetProvCertFromChain="$2"
;;
wintrust-WinVerifyTrust)
enable_wintrust_WinVerifyTrust="$2"
;;
wow64cpu-Wow64Transition)
enable_wow64cpu_Wow64Transition="$2"
;;
@ -1657,13 +1641,6 @@ if test "$enable_xaudio2_7_CreateFX_FXEcho" -eq 1; then
enable_xaudio2_revert=1
fi
if test "$enable_wintrust_WTHelperGetProvCertFromChain" -eq 1; then
if test "$enable_wintrust_WinVerifyTrust" -gt 1; then
abort "Patchset wintrust-WinVerifyTrust disabled, but wintrust-WTHelperGetProvCertFromChain depends on that."
fi
enable_wintrust_WinVerifyTrust=1
fi
if test "$enable_winex11_WM_WINDOWPOSCHANGING" -eq 1; then
if test "$enable_winex11__NET_ACTIVE_WINDOW" -gt 1; then
abort "Patchset winex11-_NET_ACTIVE_WINDOW disabled, but winex11-WM_WINDOWPOSCHANGING depends on that."
@ -4359,21 +4336,6 @@ if test "$enable_libs_Unicode_Collation" -eq 1; then
) >> "$patchlist"
fi
# Patchset mciavi32-fullscreen_support
# |
# | This patchset fixes the following Wine bugs:
# | * [#15934] mciavi32: Add Support for MCI_MCIAVI_PLAY_FULLSCREEN
# |
# | Modified files:
# | * dlls/mciavi32/mciavi.c
# |
if test "$enable_mciavi32_fullscreen_support" -eq 1; then
patch_apply mciavi32-fullscreen_support/0001-mciavi32-Add-Support-for-MCI_MCIAVI_PLAY_FULLSCREEN.patch
(
printf '%s\n' '+ { "Bruno Jesus", "mciavi32: Add Support for MCI_MCIAVI_PLAY_FULLSCREEN.", 1 },';
) >> "$patchlist"
fi
# Patchset mmsystem.dll16-MIDIHDR_Refcount
# |
# | This patchset fixes the following Wine bugs:
@ -5100,22 +5062,6 @@ if test "$enable_ntdll_Status_Mapping" -eq 1; then
) >> "$patchlist"
fi
# Patchset ntdll-SystemExtendedProcessInformation
# |
# | This patchset fixes the following Wine bugs:
# | * [#46870] League of Legends 8.12+ fails to start a game in Vista+ mode (anticheat engine,
# | SystemExtendedProcessInformation)
# |
# | Modified files:
# | * dlls/ntdll/nt.c
# |
if test "$enable_ntdll_SystemExtendedProcessInformation" -eq 1; then
patch_apply ntdll-SystemExtendedProcessInformation/0001-ntdll-Add-stub-for-NtQuerySystemInformation-SystemEx.patch
(
printf '%s\n' '+ { "Zebediah Figura", "ntdll: Add stub for NtQuerySystemInformation(SystemExtendedProcessInformation).", 1 },';
) >> "$patchlist"
fi
# Patchset ntdll-SystemInterruptInformation
# |
# | This patchset fixes the following Wine bugs:
@ -6086,20 +6032,6 @@ if test "$enable_stdole32_tlb_SLTG_Typelib" -eq 1; then
) >> "$patchlist"
fi
# Patchset taskmgr-Memory_Usage
# |
# | Modified files:
# | * dlls/ntdll/nt.c
# |
if test "$enable_taskmgr_Memory_Usage" -eq 1; then
patch_apply taskmgr-Memory_Usage/0002-ntdll-Report-system-information-SystemPerformanceInf.patch
patch_apply taskmgr-Memory_Usage/0005-ntdll-Implement-basic-IO-stats-for-SystemPerformance.patch
(
printf '%s\n' '+ { "Michael Müller", "ntdll: Report system information SystemPerformanceInformation info class.", 2 },';
printf '%s\n' '+ { "Michael Müller", "ntdll: Implement basic IO stats for SystemPerformanceInformation in NtQuerySystemInformation.", 1 },';
) >> "$patchlist"
fi
# Patchset uianimation-stubs
# |
# | This patchset fixes the following Wine bugs:
@ -7332,26 +7264,8 @@ if test "$enable_wintab32_improvements" -eq 1; then
) >> "$patchlist"
fi
# Patchset wintrust-WinVerifyTrust
# |
# | This patchset fixes the following Wine bugs:
# | * [#42518] Implement image hash verification in WinVerifyTrust
# |
# | Modified files:
# | * dlls/wintrust/softpub.c
# |
if test "$enable_wintrust_WinVerifyTrust" -eq 1; then
patch_apply wintrust-WinVerifyTrust/0004-wintrust-use-enhanced-crypto-provider-in-VerifyImage.patch
(
printf '%s\n' '+ { "Marko Friedemann", "wintrust: Use enhanced crypto provider in VerifyImageHash.", 1 },';
) >> "$patchlist"
fi
# Patchset wintrust-WTHelperGetProvCertFromChain
# |
# | This patchset has the following (direct or indirect) dependencies:
# | * wintrust-WinVerifyTrust
# |
# | This patchset fixes the following Wine bugs:
# | * [#44061] Check Parameter in WTHelperGetProvCertFromChain
# |

View File

@ -1,8 +1,8 @@
From 3b870c439904eef2623f7d027213e66dc99822f0 Mon Sep 17 00:00:00 2001
From 5a1db7cf17d8204d65fa6294c782a05bdf4cf14f Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Mon, 30 Mar 2015 12:50:21 +0200
Subject: server: Temporarily store the full security descriptor for file
objects.
Subject: [PATCH] server: Temporarily store the full security descriptor for
file objects.
---
dlls/advapi32/tests/security.c | 16 +++-----
@ -12,10 +12,10 @@ Subject: server: Temporarily store the full security descriptor for file
4 files changed, 74 insertions(+), 41 deletions(-)
diff --git a/dlls/advapi32/tests/security.c b/dlls/advapi32/tests/security.c
index 059f798..0bf7228 100644
index 9ad5881..4c44f44 100644
--- a/dlls/advapi32/tests/security.c
+++ b/dlls/advapi32/tests/security.c
@@ -3540,7 +3540,6 @@ static void test_CreateDirectoryA(void)
@@ -3701,7 +3701,6 @@ static void test_CreateDirectoryA(void)
ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %d\n", error);
bret = pGetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
ok(bret, "GetAclInformation failed\n");
@ -23,7 +23,7 @@ index 059f798..0bf7228 100644
ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%d != 0).\n",
acl_size.AceCount);
LocalFree(pSD);
@@ -3616,7 +3615,6 @@ static void test_CreateDirectoryA(void)
@@ -3777,7 +3776,6 @@ static void test_CreateDirectoryA(void)
ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %d\n", error);
bret = pGetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
ok(bret, "GetAclInformation failed\n");
@ -31,7 +31,7 @@ index 059f798..0bf7228 100644
ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%d != 0).\n",
acl_size.AceCount);
LocalFree(pSD);
@@ -3762,7 +3760,6 @@ static void test_CreateDirectoryA(void)
@@ -3923,7 +3921,6 @@ static void test_CreateDirectoryA(void)
ok(error == ERROR_SUCCESS, "GetNamedSecurityInfo failed with error %d\n", error);
bret = pGetAclInformation(pDacl, &acl_size, sizeof(acl_size), AclSizeInformation);
ok(bret, "GetAclInformation failed\n");
@ -39,7 +39,7 @@ index 059f798..0bf7228 100644
ok(acl_size.AceCount == 0, "GetAclInformation returned unexpected entry count (%d != 0).\n",
acl_size.AceCount);
LocalFree(pSD);
@@ -4742,23 +4739,22 @@ static void test_GetSecurityInfo(void)
@@ -4954,23 +4951,22 @@ static void test_GetSecurityInfo(void)
bret = pGetAce(pDacl, 0, (VOID **)&ace);
ok(bret, "Failed to get Current User ACE.\n");
bret = EqualSid(&ace->SidStart, user_sid);
@ -70,12 +70,12 @@ index 059f798..0bf7228 100644
LocalFree(pSD);
CloseHandle(obj);
diff --git a/server/change.c b/server/change.c
index 66ac1d6..a6ed1c6 100644
index f89c34c..f67b547 100644
--- a/server/change.c
+++ b/server/change.c
@@ -1125,7 +1125,8 @@ static int dir_add_to_existing_notify( struct dir *dir )
@@ -1076,7 +1076,8 @@ static int dir_add_to_existing_notify( struct dir *dir )
#endif /* USE_INOTIFY */
#endif /* HAVE_SYS_INOTIFY_H */
-struct object *create_dir_obj( struct fd *fd, unsigned int access, mode_t mode )
+struct object *create_dir_obj( struct fd *fd, unsigned int access, mode_t mode,
@ -83,7 +83,7 @@ index 66ac1d6..a6ed1c6 100644
{
struct dir *dir;
@@ -1145,6 +1146,11 @@ struct object *create_dir_obj( struct fd *fd, unsigned int access, mode_t mode )
@@ -1096,6 +1097,11 @@ struct object *create_dir_obj( struct fd *fd, unsigned int access, mode_t mode )
dir->client_process = NULL;
set_fd_user( fd, &dir_fd_ops, &dir->obj );
@ -96,10 +96,10 @@ index 66ac1d6..a6ed1c6 100644
return &dir->obj;
diff --git a/server/file.c b/server/file.c
index 81a7496..be98fa1 100644
index 6c89387..aae2aa1 100644
--- a/server/file.c
+++ b/server/file.c
@@ -176,7 +176,8 @@ struct file *create_file_for_fd_obj( struct fd *fd, unsigned int access, unsigne
@@ -173,7 +173,8 @@ struct file *create_file_for_fd_obj( struct fd *fd, unsigned int access, unsigne
return file;
}
@ -109,7 +109,7 @@ index 81a7496..be98fa1 100644
{
struct file *file = alloc_object( &file_ops );
@@ -187,6 +188,12 @@ static struct object *create_file_obj( struct fd *fd, unsigned int access, mode_
@@ -184,6 +185,12 @@ static struct object *create_file_obj( struct fd *fd, unsigned int access, mode_
file->fd = fd;
grab_object( fd );
set_fd_user( fd, &file_fd_ops, &file->obj );
@ -122,7 +122,7 @@ index 81a7496..be98fa1 100644
return &file->obj;
}
@@ -253,11 +260,11 @@ static struct object *create_file( struct fd *root, const char *nameptr, data_si
@@ -250,11 +257,11 @@ static struct object *create_file( struct fd *root, const char *nameptr, data_si
if (!fd) goto done;
if (S_ISDIR(mode))
@ -136,7 +136,7 @@ index 81a7496..be98fa1 100644
release_object( fd );
@@ -573,46 +580,66 @@ mode_t sd_to_mode( const struct security_descriptor *sd, const SID *owner )
@@ -564,46 +571,66 @@ mode_t sd_to_mode( const struct security_descriptor *sd, const SID *owner )
int set_file_sd( struct object *obj, struct fd *fd, mode_t *mode, uid_t *uid,
const struct security_descriptor *sd, unsigned int set_info )
{
@ -228,7 +228,7 @@ index 81a7496..be98fa1 100644
}
static struct object *file_lookup_name( struct object *obj, struct unicode_str *name, unsigned int attr )
@@ -748,7 +775,10 @@ DECL_HANDLER(create_file)
@@ -740,7 +767,10 @@ DECL_HANDLER(create_file)
if ((file = create_file( root_fd, name, name_len, req->access, req->sharing,
req->create, req->options, req->attrs, sd )))
{
@ -241,10 +241,10 @@ index 81a7496..be98fa1 100644
}
if (root_fd) release_object( root_fd );
diff --git a/server/file.h b/server/file.h
index e11d19f..32bf595 100644
index d1a80c1..2bea255 100644
--- a/server/file.h
+++ b/server/file.h
@@ -154,7 +154,8 @@ extern struct device *create_unix_device( struct object *root, const struct unic
@@ -183,7 +183,8 @@ extern int shmglobal_fd;
extern void do_change_notify( int unix_fd );
extern void sigio_callback(void);
@ -255,5 +255,5 @@ index e11d19f..32bf595 100644
/* completion */
--
2.8.0
1.9.1

View File

@ -1,73 +0,0 @@
From 46a184710ee4e78749c9d102ae2929a754c1433b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Thu, 28 Jan 2016 06:43:00 +0100
Subject: ntdll: Report system information SystemPerformanceInformation info
class. (v2)
---
dlls/ntdll/nt.c | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c
index 46393a4..0bf7803 100644
--- a/dlls/ntdll/nt.c
+++ b/dlls/ntdll/nt.c
@@ -30,6 +30,9 @@
#ifdef HAVE_SYS_SYSCTL_H
# include <sys/sysctl.h>
#endif
+#ifdef HAVE_SYS_SYSINFO_H
+# include <sys/sysinfo.h>
+#endif
#ifdef HAVE_MACHINE_CPU_H
# include <machine/cpu.h>
#endif
@@ -1861,6 +1864,9 @@ NTSTATUS WINAPI NtQuerySystemInformation(
SYSTEM_PERFORMANCE_INFORMATION spi;
static BOOL fixme_written = FALSE;
FILE *fp;
+ #ifdef HAVE_SYSINFO
+ struct sysinfo sinfo;
+ #endif
memset(&spi, 0 , sizeof(spi));
len = sizeof(spi);
@@ -1882,6 +1888,35 @@ NTSTATUS WINAPI NtQuerySystemInformation(
spi.IdleTime.QuadPart = ++idle;
}
+ #ifdef HAVE_SYSINFO
+ if (!sysinfo(&sinfo))
+ {
+ ULONG64 freeram = (ULONG64)sinfo.freeram * sinfo.mem_unit;
+ ULONG64 totalram = (ULONG64)sinfo.totalram * sinfo.mem_unit;
+ ULONG64 totalswap = (ULONG64)sinfo.totalswap * sinfo.mem_unit;
+ ULONG64 freeswap = (ULONG64)sinfo.freeswap * sinfo.mem_unit;
+
+ if ((fp = fopen("/proc/meminfo", "r")))
+ {
+ unsigned long long available;
+ char line[64];
+ while (fgets(line, sizeof(line), fp))
+ {
+ if (sscanf(line, "MemAvailable: %llu kB", &available) == 1)
+ {
+ freeram = min(available * 1024, totalram);
+ break;
+ }
+ }
+ fclose(fp);
+ }
+
+ spi.AvailablePages = freeram / page_size;
+ spi.TotalCommittedPages = (totalram + totalswap - freeram - freeswap) / page_size;
+ spi.TotalCommitLimit = (totalram + totalswap) / page_size;
+ }
+ #endif
+
if (Length >= len)
{
if (!SystemInformation) ret = STATUS_ACCESS_VIOLATION;
--
2.9.0

View File

@ -1,52 +0,0 @@
From 02cb8d6b85421c1f302a706803249cc574f48cdc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Wed, 8 Mar 2017 23:09:54 +0100
Subject: ntdll: Implement basic IO stats for SystemPerformanceInformation in
NtQuerySystemInformation.
---
dlls/ntdll/nt.c | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c
index 9e61bd96022..947ecc73f32 100644
--- a/dlls/ntdll/nt.c
+++ b/dlls/ntdll/nt.c
@@ -1943,6 +1943,34 @@ NTSTATUS WINAPI NtQuerySystemInformation(
}
#endif
+ if ((fp = fopen("/proc/diskstats", "r")))
+ {
+ unsigned long long reads, reads_merged, sectors_read, read_time;
+ unsigned long long writes, writes_merged, sectors_written, write_time;
+ unsigned long long io_time, weighted_io_time, current_io;
+ unsigned int major, minor;
+ char dev[30], buffer[256];
+
+ /* the exact size (32 or 64 bits) depends on the kernel */
+ while (fscanf(fp, "%u %u %s %llu %llu %llu %llu %llu %llu %llu %llu %llu %llu %llu",
+ &major, &minor, dev, &reads, &reads_merged, &sectors_read, &read_time,
+ &writes, &writes_merged, &sectors_written, &write_time,
+ &current_io, &io_time, &weighted_io_time) == 14)
+ {
+ /* we have to ignore partitions as their I/O is also included in the block device */
+ sprintf(buffer, "/sys/dev/block/%u:%u/device", major, minor);
+ if (access(buffer, F_OK) != 0)
+ continue;
+
+ spi.ReadTransferCount.QuadPart += sectors_read * 512;
+ spi.WriteTransferCount.QuadPart += sectors_written * 512;
+ spi.ReadOperationCount += reads;
+ spi.WriteOperationCount += writes;
+ }
+
+ fclose(fp);
+ }
+
if (Length >= len)
{
if (!SystemInformation) ret = STATUS_ACCESS_VIOLATION;
--
2.11.0

View File

@ -1 +0,0 @@
Fixes: Implement IO stats for SystemPerformanceInformation in NtQuerySystemInformation

View File

@ -1,4 +1,4 @@
From 5e328eb8ce74a65f1cd7e7332c12c7548119e848 Mon Sep 17 00:00:00 2001
From 02bb8239600800a77a9e27661a6c45baba7f4fa1 Mon Sep 17 00:00:00 2001
From: Ivan Akulinchev <ivan.akulinchev@gmail.com>
Date: Sat, 9 Feb 2019 15:18:54 -0600
Subject: [PATCH] uxtheme: Initial implementation of GTK backend.
@ -23,25 +23,25 @@ Additional changes by Sebastian Lackner <sebastian@fds-team.de>:
configure.ac | 20 +
dlls/uxtheme/Makefile.in | 15 +
dlls/uxtheme/draw.c | 30 ++
dlls/uxtheme/gtk-button.c | 516 +++++++++++++++++++
dlls/uxtheme/gtk-combobox.c | 242 +++++++++
dlls/uxtheme/gtk-edit.c | 211 ++++++++
dlls/uxtheme/gtk-header.c | 128 +++++
dlls/uxtheme/gtk-listbox.c | 119 +++++
dlls/uxtheme/gtk-button.c | 516 ++++++++++++++++++++++++
dlls/uxtheme/gtk-combobox.c | 242 +++++++++++
dlls/uxtheme/gtk-edit.c | 211 ++++++++++
dlls/uxtheme/gtk-header.c | 128 ++++++
dlls/uxtheme/gtk-listbox.c | 119 ++++++
dlls/uxtheme/gtk-listview.c | 38 ++
dlls/uxtheme/gtk-menu.c | 189 +++++++
dlls/uxtheme/gtk-rebar.c | 102 ++++
dlls/uxtheme/gtk-status.c | 157 ++++++
dlls/uxtheme/gtk-tab.c | 207 ++++++++
dlls/uxtheme/gtk-toolbar.c | 171 +++++++
dlls/uxtheme/gtk-trackbar.c | 188 +++++++
dlls/uxtheme/gtk-window.c | 172 +++++++
dlls/uxtheme/gtk.c | 962 ++++++++++++++++++++++++++++++++++++
dlls/uxtheme/metric.c | 24 +
dlls/uxtheme/gtk-menu.c | 189 +++++++++
dlls/uxtheme/gtk-rebar.c | 102 +++++
dlls/uxtheme/gtk-status.c | 157 ++++++++
dlls/uxtheme/gtk-tab.c | 207 ++++++++++
dlls/uxtheme/gtk-toolbar.c | 171 ++++++++
dlls/uxtheme/gtk-trackbar.c | 188 +++++++++
dlls/uxtheme/gtk-window.c | 172 ++++++++
dlls/uxtheme/gtk.c | 962 ++++++++++++++++++++++++++++++++++++++++++++
dlls/uxtheme/metric.c | 24 ++
dlls/uxtheme/property.c | 40 ++
dlls/uxtheme/system.c | 34 +-
dlls/uxtheme/uxthemedll.h | 72 +++
dlls/uxtheme/uxthemegtk.h | 129 +++++
dlls/uxtheme/uxthemedll.h | 72 ++++
dlls/uxtheme/uxthemegtk.h | 129 ++++++
23 files changed, 3785 insertions(+), 1 deletion(-)
create mode 100644 dlls/uxtheme/gtk-button.c
create mode 100644 dlls/uxtheme/gtk-combobox.c
@ -60,10 +60,10 @@ Additional changes by Sebastian Lackner <sebastian@fds-team.de>:
create mode 100644 dlls/uxtheme/uxthemegtk.h
diff --git a/aclocal.m4 b/aclocal.m4
index 25ac678f..04bb6ed7 100644
index ed0c3a8..4151fe7 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -125,6 +125,26 @@ test -z "$ac_libs" || ac_libs=`echo " $ac_libs" | sed 's/ -L\([[^/]]\)/ -L\$(top
@@ -126,6 +126,26 @@ test -z "$ac_libs" || ac_libs=`echo " $ac_libs" | sed 's/ -L\([[^/]]\)/ -L\$(top
AS_VAR_POPDEF([ac_libs])dnl
AS_VAR_POPDEF([ac_cflags])])dnl
@ -91,7 +91,7 @@ index 25ac678f..04bb6ed7 100644
dnl
dnl Usage: WINE_TRY_ASM_LINK(asm-code,includes,function,[action-if-found,[action-if-not-found]])
diff --git a/configure.ac b/configure.ac
index 1b425d22..2f2d2025 100644
index c2f97e0..7034c42 100644
--- a/configure.ac
+++ b/configure.ac
@@ -56,6 +56,7 @@ AC_ARG_WITH(gsm, AS_HELP_STRING([--without-gsm],[do not use libgsm (GSM 06
@ -100,9 +100,9 @@ index 1b425d22..2f2d2025 100644
AC_ARG_WITH(gstreamer, AS_HELP_STRING([--without-gstreamer],[do not use GStreamer (codecs support)]))
+AC_ARG_WITH(gtk3, AS_HELP_STRING([--without-gtk3],[do not use gtk3 (gtk3 theming support)]))
AC_ARG_WITH(hal, AS_HELP_STRING([--without-hal],[do not use HAL (dynamic device support)]))
AC_ARG_WITH(inotify, AS_HELP_STRING([--without-inotify],[do not use inotify (filesystem change notifications)]))
AC_ARG_WITH(jpeg, AS_HELP_STRING([--without-jpeg],[do not use JPEG]))
AC_ARG_WITH(krb5, AS_HELP_STRING([--without-krb5],[do not use krb5 (Kerberos)]))
@@ -1471,6 +1472,25 @@ fi
@@ -1502,6 +1503,25 @@ fi
WINE_NOTICE_WITH(cms,[test "$ac_cv_lib_lcms2_cmsOpenProfileFromFile" != "yes"],
[liblcms2 ${notice_platform}development files not found, Color Management won't be supported.])
@ -129,7 +129,7 @@ index 1b425d22..2f2d2025 100644
if test "x$with_freetype" != "xno"
then
diff --git a/dlls/uxtheme/Makefile.in b/dlls/uxtheme/Makefile.in
index c3fff30b..e09f891e 100644
index c3fff30..e09f891 100644
--- a/dlls/uxtheme/Makefile.in
+++ b/dlls/uxtheme/Makefile.in
@@ -2,10 +2,25 @@ MODULE = uxtheme.dll
@ -159,7 +159,7 @@ index c3fff30b..e09f891e 100644
metric.c \
msstyles.c \
diff --git a/dlls/uxtheme/draw.c b/dlls/uxtheme/draw.c
index 69c53b9e..dbcbaab7 100644
index 69c53b9..dbcbaab 100644
--- a/dlls/uxtheme/draw.c
+++ b/dlls/uxtheme/draw.c
@@ -55,6 +55,10 @@ HRESULT WINAPI EnableThemeDialogTexture(HWND hwnd, DWORD dwFlags)
@ -257,7 +257,7 @@ index 69c53b9e..dbcbaab7 100644
if (bgtype != BT_IMAGEFILE) return FALSE;
diff --git a/dlls/uxtheme/gtk-button.c b/dlls/uxtheme/gtk-button.c
new file mode 100644
index 00000000..f8b3da0d
index 0000000..f8b3da0
--- /dev/null
+++ b/dlls/uxtheme/gtk-button.c
@@ -0,0 +1,516 @@
@ -779,7 +779,7 @@ index 00000000..f8b3da0d
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-combobox.c b/dlls/uxtheme/gtk-combobox.c
new file mode 100644
index 00000000..60bcb0e6
index 0000000..60bcb0e
--- /dev/null
+++ b/dlls/uxtheme/gtk-combobox.c
@@ -0,0 +1,242 @@
@ -1027,7 +1027,7 @@ index 00000000..60bcb0e6
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-edit.c b/dlls/uxtheme/gtk-edit.c
new file mode 100644
index 00000000..dee00d7b
index 0000000..dee00d7
--- /dev/null
+++ b/dlls/uxtheme/gtk-edit.c
@@ -0,0 +1,211 @@
@ -1244,7 +1244,7 @@ index 00000000..dee00d7b
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-header.c b/dlls/uxtheme/gtk-header.c
new file mode 100644
index 00000000..8a5b235e
index 0000000..8a5b235
--- /dev/null
+++ b/dlls/uxtheme/gtk-header.c
@@ -0,0 +1,128 @@
@ -1378,7 +1378,7 @@ index 00000000..8a5b235e
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-listbox.c b/dlls/uxtheme/gtk-listbox.c
new file mode 100644
index 00000000..6e275925
index 0000000..6e27592
--- /dev/null
+++ b/dlls/uxtheme/gtk-listbox.c
@@ -0,0 +1,119 @@
@ -1503,7 +1503,7 @@ index 00000000..6e275925
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-listview.c b/dlls/uxtheme/gtk-listview.c
new file mode 100644
index 00000000..9b98983f
index 0000000..9b98983
--- /dev/null
+++ b/dlls/uxtheme/gtk-listview.c
@@ -0,0 +1,38 @@
@ -1547,7 +1547,7 @@ index 00000000..9b98983f
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-menu.c b/dlls/uxtheme/gtk-menu.c
new file mode 100644
index 00000000..5d00afdf
index 0000000..5d00afd
--- /dev/null
+++ b/dlls/uxtheme/gtk-menu.c
@@ -0,0 +1,189 @@
@ -1742,7 +1742,7 @@ index 00000000..5d00afdf
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-rebar.c b/dlls/uxtheme/gtk-rebar.c
new file mode 100644
index 00000000..5d5b5a48
index 0000000..5d5b5a4
--- /dev/null
+++ b/dlls/uxtheme/gtk-rebar.c
@@ -0,0 +1,102 @@
@ -1850,7 +1850,7 @@ index 00000000..5d5b5a48
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-status.c b/dlls/uxtheme/gtk-status.c
new file mode 100644
index 00000000..38f8646e
index 0000000..38f8646
--- /dev/null
+++ b/dlls/uxtheme/gtk-status.c
@@ -0,0 +1,157 @@
@ -2013,7 +2013,7 @@ index 00000000..38f8646e
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-tab.c b/dlls/uxtheme/gtk-tab.c
new file mode 100644
index 00000000..d6417f64
index 0000000..d6417f6
--- /dev/null
+++ b/dlls/uxtheme/gtk-tab.c
@@ -0,0 +1,207 @@
@ -2226,7 +2226,7 @@ index 00000000..d6417f64
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-toolbar.c b/dlls/uxtheme/gtk-toolbar.c
new file mode 100644
index 00000000..b23cf0b4
index 0000000..b23cf0b
--- /dev/null
+++ b/dlls/uxtheme/gtk-toolbar.c
@@ -0,0 +1,171 @@
@ -2403,7 +2403,7 @@ index 00000000..b23cf0b4
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-trackbar.c b/dlls/uxtheme/gtk-trackbar.c
new file mode 100644
index 00000000..a58540e3
index 0000000..a58540e
--- /dev/null
+++ b/dlls/uxtheme/gtk-trackbar.c
@@ -0,0 +1,188 @@
@ -2597,7 +2597,7 @@ index 00000000..a58540e3
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk-window.c b/dlls/uxtheme/gtk-window.c
new file mode 100644
index 00000000..657cfb03
index 0000000..657cfb0
--- /dev/null
+++ b/dlls/uxtheme/gtk-window.c
@@ -0,0 +1,172 @@
@ -2775,7 +2775,7 @@ index 00000000..657cfb03
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/gtk.c b/dlls/uxtheme/gtk.c
new file mode 100644
index 00000000..bbee8e87
index 0000000..9459b1f
--- /dev/null
+++ b/dlls/uxtheme/gtk.c
@@ -0,0 +1,962 @@
@ -3742,7 +3742,7 @@ index 00000000..bbee8e87
+
+#endif /* HAVE_GTK_GTK_H */
diff --git a/dlls/uxtheme/metric.c b/dlls/uxtheme/metric.c
index 073422f1..244187d1 100644
index 073422f..244187d 100644
--- a/dlls/uxtheme/metric.c
+++ b/dlls/uxtheme/metric.c
@@ -31,6 +31,7 @@
@ -3819,7 +3819,7 @@ index 073422f1..244187d1 100644
WARN("Unknown StringID: %d\n", iStringID);
return STG_E_INVALIDPARAMETER;
diff --git a/dlls/uxtheme/property.c b/dlls/uxtheme/property.c
index 0e077aee..ada48287 100644
index 0e077ae..ada4828 100644
--- a/dlls/uxtheme/property.c
+++ b/dlls/uxtheme/property.c
@@ -31,6 +31,7 @@
@ -3961,7 +3961,7 @@ index 0e077aee..ada48287 100644
*pOrigin = PO_NOTFOUND;
return S_OK;
diff --git a/dlls/uxtheme/system.c b/dlls/uxtheme/system.c
index c898ad32..2f7d40fc 100644
index c898ad3..2f7d40f 100644
--- a/dlls/uxtheme/system.c
+++ b/dlls/uxtheme/system.c
@@ -558,6 +558,10 @@ BOOL WINAPI IsAppThemed(void)
@ -4069,7 +4069,7 @@ index c898ad32..2f7d40fc 100644
return TRUE;
return FALSE;
diff --git a/dlls/uxtheme/uxthemedll.h b/dlls/uxtheme/uxthemedll.h
index fee152c9..cdc5958d 100644
index fee152c..cdc5958 100644
--- a/dlls/uxtheme/uxthemedll.h
+++ b/dlls/uxtheme/uxthemedll.h
@@ -21,6 +21,14 @@
@ -4160,7 +4160,7 @@ index fee152c9..cdc5958d 100644
/* "Cheap" binary alpha blending - but possibly faster */
diff --git a/dlls/uxtheme/uxthemegtk.h b/dlls/uxtheme/uxthemegtk.h
new file mode 100644
index 00000000..87cd0456
index 0000000..87cd045
--- /dev/null
+++ b/dlls/uxtheme/uxthemegtk.h
@@ -0,0 +1,129 @@
@ -4294,5 +4294,5 @@ index 00000000..87cd0456
+
+#endif /* UXTHEMEGTK_H */
--
2.20.1
1.9.1

View File

@ -1,2 +1 @@
Fixes: [44061] Check Parameter in WTHelperGetProvCertFromChain
Depends: wintrust-WinVerifyTrust

View File

@ -1,28 +0,0 @@
From e6f3153b82f6592607a9e78585da8ba5b0bd9f06 Mon Sep 17 00:00:00 2001
From: Marko Friedemann <marko@friedemann.email>
Date: Wed, 2 Aug 2017 01:56:39 +0200
Subject: wintrust: use enhanced crypto provider in VerifyImageHash
Softpub VerifyImageHash uses the default crypto provider and fails for
certificates using SHA256 et al. with NTE_BAD_ALGID (80090008).
Fixes startup cert error with SWTOR launcher as-of 2017-08-01.
---
dlls/wintrust/softpub.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/wintrust/softpub.c b/dlls/wintrust/softpub.c
index 35c0d7b5abb..0c04001985b 100644
--- a/dlls/wintrust/softpub.c
+++ b/dlls/wintrust/softpub.c
@@ -349,7 +349,7 @@ static DWORD SOFTPUB_VerifyImageHash(CRYPT_PROVIDER_DATA *data, HANDLE file)
if (!prov)
{
- if (!CryptAcquireContextW(&prov, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT))
+ if (!CryptAcquireContextW(&prov, NULL, MS_ENH_RSA_AES_PROV_W, PROV_RSA_AES, CRYPT_VERIFYCONTEXT))
return GetLastError();
release_prov = TRUE;
}
--
2.13.1

View File

@ -1 +0,0 @@
Fixes: [42518] Implement image hash verification in WinVerifyTrust

View File

@ -1,4 +1,4 @@
From 467f0c1ac0eff47aa0ee1f8b7dd1e1882e6e0eb9 Mon Sep 17 00:00:00 2001
From bee8746cd94c609317194df846542a4a4ce8330a Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Wed, 8 Aug 2018 20:00:15 -0500
Subject: [PATCH] ntdll: Add a stub implementation of Wow64Transition.
@ -9,10 +9,10 @@ Subject: [PATCH] ntdll: Add a stub implementation of Wow64Transition.
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
index 97bcd47..9ad943a 100644
index 5c75f0c..f4eac57 100644
--- a/dlls/ntdll/loader.c
+++ b/dlls/ntdll/loader.c
@@ -3766,16 +3766,18 @@ BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserved )
@@ -3889,18 +3889,20 @@ BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserved )
return TRUE;
}
@ -24,7 +24,9 @@ index 97bcd47..9ad943a 100644
void __wine_process_init(void)
{
+ static const WCHAR wow64cpuW[] = {'w','o','w','6','4','c','p','u','.','d','l','l',0};
static const WCHAR kernel32W[] = {'k','e','r','n','e','l','3','2','.','d','l','l',0};
static const WCHAR kernel32W[] = {'C',':','\\','w','i','n','d','o','w','s','\\',
's','y','s','t','e','m','3','2','\\',
'k','e','r','n','e','l','3','2','.','d','l','l',0};
static const WCHAR globalflagW[] = {'G','l','o','b','a','l','F','l','a','g',0};
ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION runlevel;
- WINE_MODREF *wm;
@ -32,7 +34,7 @@ index 97bcd47..9ad943a 100644
NTSTATUS status;
ANSI_STRING func_name;
UNICODE_STRING nt_name;
@@ -3803,6 +3805,13 @@ void __wine_process_init(void)
@@ -3928,6 +3930,13 @@ void __wine_process_init(void)
MESSAGE( "wine: could not load kernel32.dll, status %x\n", status );
exit(1);
}
@ -47,7 +49,7 @@ index 97bcd47..9ad943a 100644
if ((status = LdrGetProcedureAddress( wm->ldr.BaseAddress, &func_name,
0, (void **)&init_func )) != STATUS_SUCCESS)
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index 5af02ab..b5765dc 100644
index 415e868..343ab66 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -1048,6 +1048,7 @@