https://bugs.winehq.org/show_bug.cgi?id=43041
Bug ID: 43041 Summary: CodeXL install fails Product: Wine Version: 2.8 Hardware: x86 URL: https://github.com/GPUOpen-Tools/CodeXL/releases/tag/v 2.3 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: the.ideals@gmail.com Distribution: ---
Created attachment 58198 --> https://bugs.winehq.org/attachment.cgi?id=58198 wine log
wine CodeXL_Win_2.3.629.exe
Asks to install of prerequisites Microsoft Universal C Runtime Update (KB299226) for Microsoft Visual C++ 2015 and Microsoft Debuggers and Tools x86 (Possibly from Windows Software Development Kit - Windows 10.0.26624).
Skipping prereqs and continuing to the application installer. As soon as the installer attempts to install the application. The installer crashes.
sha1sum CodeXL_Win_2.3.629.exe b3a776aeff9e81f9a0169bad1500387381f9b038 CodeXL_Win_2.3.629.exe
du -sh CodeXL_Win_2.3.629.exe 135M CodeXL_Win_2.3.629.exe
https://bugs.winehq.org/show_bug.cgi?id=43041
--- Comment #1 from John the.ideals@gmail.com --- Created attachment 58199 --> https://bugs.winehq.org/attachment.cgi?id=58199 installer crash log
https://bugs.winehq.org/show_bug.cgi?id=43041
John the.ideals@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
https://bugs.winehq.org/show_bug.cgi?id=43041
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|CodeXL install fails |Multiple application | |installers crash due to | |missing message string for | |0x800b0100 | |(TRUST_E_NOSIGNATURE) | |(CodeXL 2.3, RT Se7en Lite) CC| |focht@gmx.net Keywords| |Installer Ever confirmed|0 |1 Component|-unknown |kernel32 Status|UNCONFIRMED |NEW
--- Comment #2 from Anastasius Focht focht@gmx.net --- Hello folks,
the trace leading to the failure is exactly the same as bug 27576 (uses same installer technology)
--- snip --- $ WINEDEBUG=+tid,+seh,+relay,+msi,+imagehlp,+wintrust,+crypt wine ./CodeXL_Win_2.3.629.exe >>log.txt 2>&1 ... 003d:Call KERNEL32.CreateProcessW(00000000,00b1c9b4 L""Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe" /i "C:\users\focht\Application Data\GPUOpen.com\CodeXL 2.3.629\install\ED00F2E\setup.msi" ADDSOURCE="X86DebuggersAndTo" SECONDSEQUENCE="1" EXECUTEACTION="INSTALL" ACTION="INSTALL" CLIENTUILEVEL="0" ADDLOCAL="Profile_Srv_32,Pr"...,00000000,00000000,00000000,00000410,00000000,00000000,00b1c490,00b1c480) ret=7e87595c ... 0049:Call KERNEL32.__wine_kernel_init() ret=7bc69f60 ... 003d:Ret KERNEL32.CreateProcessW() retval=00000001 ret=7e87595c ... 0049:Call msi.MsiGetFileSignatureInformationW(0060c3c0 L"Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe",00000001,0033efe8,00000000,00000000) ret=004a9156 0049:trace:msi:MsiGetFileSignatureInformationW L"Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe" 00000001 0x33efe8 (nil) (nil) ... 0049:Call wintrust.WinVerifyTrustEx(ffffffff,7d151fac,0033eef4) ret=7d09f41a 0049:trace:wintrust:WinVerifyTrust (0xffffffff, {00aac56b-cd44-11d0-8cc2-00c04fc295ee}, 0x33eef4) 0049:trace:wintrust:dump_wintrust_data 0x33eef4 0049:trace:wintrust:dump_wintrust_data cbStruct: 52 0049:trace:wintrust:dump_wintrust_data pPolicyCallbackData: (nil) 0049:trace:wintrust:dump_wintrust_data pSIPClientData: (nil) 0049:trace:wintrust:dump_wintrust_data dwUIChoice: 2 0049:trace:wintrust:dump_wintrust_data fdwRevocationChecks: 00000001 0049:trace:wintrust:dump_wintrust_data dwUnionChoice: 1 0049:trace:wintrust:dump_file_info 0x33eee4 0049:trace:wintrust:dump_file_info cbStruct: 16 0049:trace:wintrust:dump_file_info pcwszFilePath: L"Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe" 0049:trace:wintrust:dump_file_info hFile: (nil) 0049:trace:wintrust:dump_file_info pgKnownSubject: (null) 0049:trace:wintrust:dump_wintrust_data dwStateAction: 1 0049:trace:wintrust:dump_wintrust_data hWVTStateData: (nil) 0049:trace:wintrust:dump_wintrust_data pwszURLReference: (null) 0049:trace:wintrust:dump_wintrust_data dwProvFlags: 00000000 0049:trace:wintrust:dump_wintrust_data dwUIContext: 1 0049:trace:wintrust:WINTRUST_DefaultVerify (0xffffffff, {00aac56b-cd44-11d0-8cc2-00c04fc295ee}, 0x33eef4) ... 0049:Call crypt32.CryptSIPRetrieveSubjectGuid(0060c3c0 L"Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe",00000088,001920d4) ret=7ce7dffb 0049:trace:crypt:CryptSIPRetrieveSubjectGuid (L"Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe" 0x88 0x1920d4) 0049:Call KERNEL32.SetFilePointerEx(00000088,00000000,00000000,0033eb98,00000001) ret=7cde9c31 0049:Ret KERNEL32.SetFilePointerEx() retval=00000001 ret=7cde9c31 0049:Call KERNEL32.SetFilePointer(00000088,00000000,00000000,00000000) ret=7cde9c42 0049:Ret KERNEL32.SetFilePointer() retval=00000000 ret=7cde9c42 0049:Call KERNEL32.ReadFile(00000088,0033eb94,00000004,0033eba8,00000000) ret=7cde9c5c 0049:Ret KERNEL32.ReadFile() retval=00000001 ret=7cde9c5c 0049:trace:crypt:CryptSIPRetrieveSubjectGuid file magic = 0x4d5a9000 0049:Call KERNEL32.SetFilePointerEx(00000088,00000000,00000000,00000000,00000000) ret=7cdea421 0049:Ret KERNEL32.SetFilePointerEx() retval=00000001 ret=7cdea421 0049:Ret crypt32.CryptSIPRetrieveSubjectGuid() retval=00000001 ret=7ce7dffb 0049:trace:wintrust:SOFTPUB_GetFileSubject returning 0 .... 0049:trace:crypt:CryptSIPGetSignedDataMsg (0x197610 0x192078 0 0x33ec80 (nil)) 0049:Call wintrust.CryptSIPGetSignedDataMsg(00197610,00192078,00000000,0033ec80,00000000) ret=7cdeabd4 0049:trace:wintrust:CryptSIPGetSignedDataMsg (0x197610 0x192078 0 0x33ec80 (nil)) 0049:trace:wintrust:WINTRUST_GetSignedMsgFromPEFile (0x197610 0x192078 0 0x33ec80 (nil)) ... 0049:Call imagehlp.ImageGetCertificateHeader(00000088,00000000,0033eb10) ret=7ce7690c 0049:trace:imagehlp:ImageGetCertificateHeader 0x88 0 0x33eb10 0049:trace:imagehlp:IMAGEHLP_GetNTHeaders handle 0x88 0049:Call KERNEL32.SetFilePointer(00000088,00000000,00000000,00000000) ret=7cd722ad 0049:Ret KERNEL32.SetFilePointer() retval=00000000 ret=7cd722ad 0049:Call KERNEL32.ReadFile(00000088,0033e794,00000040,0033e790,00000000) ret=7cd722e0 0049:Ret KERNEL32.ReadFile() retval=00000001 ret=7cd722e0 0049:Call KERNEL32.SetFilePointer(00000088,000000e8,00000000,00000000) ret=7cd7233a 0049:Ret KERNEL32.SetFilePointer() retval=000000e8 ret=7cd7233a 0049:Call KERNEL32.ReadFile(00000088,0033e908,000000f8,0033e790,00000000) ret=7cd7236f 0049:Ret KERNEL32.ReadFile() retval=00000001 ret=7cd7236f 0049:trace:imagehlp:IMAGEHLP_GetSecurityDirOffset ret = 0 size = 0 addr = 0 0049:Call KERNEL32.SetFilePointer(00000088,00000000,00000000,00000000) ret=7cd726c9 0049:Ret KERNEL32.SetFilePointer() retval=00000000 ret=7cd726c9 0049:Call KERNEL32.ReadFile(00000088,0033ea34,00000004,0033ea38,00000000) ret=7cd726f5 0049:Ret KERNEL32.ReadFile() retval=00000001 ret=7cd726f5 0049:Ret imagehlp.ImageGetCertificateHeader() retval=00000000 ret=7ce7690c ... 0049:trace:wintrust:CryptSIPGetSignedDataMsg returning 0 0049:Ret wintrust.CryptSIPGetSignedDataMsg() retval=00000000 ret=7cdeabd4 0049:trace:crypt:CryptSIPGetSignedDataMsg returning 0 0049:Call KERNEL32.CloseHandle(00000088) ret=7ce7e953 0049:Ret KERNEL32.CloseHandle() retval=00000001 ret=7ce7e953 0049:trace:wintrust:SoftpubLoadMessage returning 1 (800b0100) 0049:Ret wintrust.SoftpubLoadMessage() retval=00000001 ret=7ce80ebf 0049:trace:wintrust:WINTRUST_DefaultVerify returning 800b0100 0049:trace:wintrust:WinVerifyTrust returning 800b0100 0049:Ret wintrust.WinVerifyTrustEx() retval=800b0100 ret=7d09f41a 0049:Call wintrust.WinVerifyTrustEx(ffffffff,7d151fac,0033eef4) ret=7d09f50b 0049:trace:wintrust:WinVerifyTrust (0xffffffff, {00aac56b-cd44-11d0-8cc2-00c04fc295ee}, 0x33eef4) 0049:trace:wintrust:dump_wintrust_data 0x33eef4 0049:trace:wintrust:dump_wintrust_data cbStruct: 52 0049:trace:wintrust:dump_wintrust_data pPolicyCallbackData: (nil) 0049:trace:wintrust:dump_wintrust_data pSIPClientData: (nil) 0049:trace:wintrust:dump_wintrust_data dwUIChoice: 2 0049:trace:wintrust:dump_wintrust_data fdwRevocationChecks: 00000001 0049:trace:wintrust:dump_wintrust_data dwUnionChoice: 1 0049:trace:wintrust:dump_file_info 0x33eee4 0049:trace:wintrust:dump_file_info cbStruct: 16 0049:trace:wintrust:dump_file_info pcwszFilePath: L"Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe" 0049:trace:wintrust:dump_file_info hFile: 0xffffffff 0049:trace:wintrust:dump_file_info pgKnownSubject: (null) 0049:trace:wintrust:dump_wintrust_data dwStateAction: 2 0049:trace:wintrust:dump_wintrust_data hWVTStateData: 0x192040 0049:trace:wintrust:dump_wintrust_data pwszURLReference: (null) 0049:trace:wintrust:dump_wintrust_data dwProvFlags: 00000000 0049:trace:wintrust:dump_wintrust_data dwUIContext: 1 0049:trace:wintrust:WINTRUST_DefaultClose (0xffffffff, {00aac56b-cd44-11d0-8cc2-00c04fc295ee}, 0x33eef4) 0049:Call wintrust.SoftpubCleanup(00192040) ret=7ce8139a ... 0049:Call crypt32.CryptMsgClose(00000000) ret=7ce80788 0049:trace:crypt:CryptMsgClose ((nil)) 0049:Ret crypt32.CryptMsgClose() retval=00000001 ret=7ce80788 0049:Ret wintrust.SoftpubCleanup() retval=00000000 ret=7ce8139a ... 0049:trace:wintrust:WINTRUST_DefaultClose returning 00000000 0049:trace:wintrust:WinVerifyTrust returning 00000000 0049:Ret wintrust.WinVerifyTrustEx() retval=00000000 ret=7d09f50b 0049:Ret msi.MsiGetFileSignatureInformationW() retval=800b0100 ret=004a9156 0049:Call KERNEL32.FormatMessageW(00001300,00000000,800b0100,00000400,0033ef90,00000000,00000000) ret=004aa67d 0049:Ret KERNEL32.FormatMessageW() retval=00000000 ret=004aa67d 0049:trace:seh:raise_exception code=c0000005 flags=0 addr=0x4c42b1 ip=004c42b1 tid=0049 0049:trace:seh:raise_exception info[0]=00000000 0049:trace:seh:raise_exception info[1]=00000000 0049:trace:seh:raise_exception eax=00000000 ebx=00000000 ecx=0033eff8 edx=0000013d esi=0033eff8 edi=0033eff8 0049:trace:seh:raise_exception ebp=0033ef60 esp=0033ef60 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00210202 0049:trace:seh:call_stack_handlers calling handler at 0x4eb487 code=c0000005 flags=0 ... --- snip ---
The first problem is 'MsiGetFileSignatureInformationW' failing, leading to failing 0x800b0100 (TRUST_E_NOSIGNATURE) message string resource lookup which causes a crash. Unlike bug 27576 the app crash handler catches it properly here (no recursion) and displays an error dialog.
As already said in bug 27576 the call to 'MsiGetFileSignatureInformation' looks kinda fishy, it will always fail. The executable doesn't contain a signature at all. Maybe it's generic installer (framework) code that gets always executed, regardless if the playload has been digitally signed or not.
--- snip --- -=[ ProtectionID v0.6.8.5 DECEMBER]=- (c) 2003-2017 CDKiLLER & TippeX Build 24/12/16-13:09:21 Ready... Scanning -> Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe File Type : 32-Bit Exe (Subsystem : Win GUI / 2), Size : 141227628 (086AF66Ch) Byte(s) | Machine: 0x14C (I386) Compilation TimeStamp : 0x55F7D8C6 -> Tue 15th Sep 2015 08:37:26 (GMT) [TimeStamp] 0x55F7D8C6 -> Tue 15th Sep 2015 08:37:26 (GMT) | PE Header | - | Offset: 0x000000F0 | VA: 0x004000F0 | - [TimeStamp] 0x55F7D8C6 -> Tue 15th Sep 2015 08:37:26 (GMT) | DebugDirectory | - | Offset: 0x000FD444 | VA: 0x004FE844 | - -> File has 139200108 (084C066Ch) bytes of appended data starting at offset 01EF000h [!] Executable uses SEH Tables (/SAFESEH) (1489 calculated 1489 recorded... 0 invalid addresses) [File Heuristics] -> Flag #1 : 00000100000001001101000000000100 (0x0404D004) [Entrypoint Section Entropy] : 6.63 (section #0) ".text " | Size : 0xFC61C (1033756) byte(s) [DllCharacteristics] -> Flag : (0x8140) -> ASLR | DEP | TSA [SectionCount] 5 (0x5) | ImageSize 0x1F9000 (2068480) byte(s) [VersionInfo] Company Name : GPUOpen.com [VersionInfo] Product Name : CodeXL [VersionInfo] Product Version : 2.3.629 [VersionInfo] File Description : CodeXL 2.3.629 installer [VersionInfo] File Version : 2.3.629 [VersionInfo] Original FileName : CodeXL_Win_2.3.629.exe [VersionInfo] Internal Name : CodeXL_Win_2.3.629 [VersionInfo] Legal Copyrights : Copyright (C) 2017 GPUOpen.com [ModuleReport] [IAT] Modules -> KERNEL32.dll | USER32.dll | GDI32.dll | ADVAPI32.dll | SHELL32.dll | ole32.dll | OLEAUT32.dll | dbghelp.dll | SHLWAPI.dll | COMCTL32.dll | MSIMG32.dll | VERSION.dll | MPR.dll | COMDLG32.dll [ModuleReport] [DelayImport] Modules -> msi.dll | gdiplus.dll | UxTheme.dll | WININET.dll | dwmapi.dll [Debug Info] (record 1 of 1) (file offset 0xFD440) Characteristics : 0x0 | TimeDateStamp : 0x55F7D8C6 (Tue 15th Sep 2015 08:37:26 (GMT)) | MajorVer : 0 / MinorVer : 0 -> (0.0) Type : 2 (0x2) -> CodeView | Size : 0x47 (71) AddressOfRawData : 0x116D20 | PointerToRawData : 0x115920 CvSig : 0x53445352 | SigGuid A6356DD1-3EFD-4526-8C413FF1E37610E2 Age : 0x1 (1) | Pdb : C:\Branch\win\Release\stubs\x86\ExternalUi.pdb [-= Installer =-] Advanced Installer Module ! [CompilerDetect] -> Visual C++ 9.0 (Visual Studio 2008) - Scan Took : 3.952 Second(s) [000000BE8h (3048) tick(s)] [566 of 580 scan(s) done] --- snip ---
Using 'signtool.exe' from Windows SDK:
--- snip --- $ wine signtool.exe verify /pa /v CodeXL_Win_2.3.629.exe
Verifying: CodeXL_Win_2.3.629.exe SignTool Error: No signature found.
Number of files successfully Verified: 0 Number of warnings: 0 Number of errors: 1 --- snip ---
Using a modified of the patch from https://bugs.winehq.org/show_bug.cgi?id=27576#c4 with severity value fixed it runs into bug 34989
--- snip --- 0066:Call KERNEL32.CreateFileW(00954070 L"\\.\pipe\ToServerAdvinst_Extract_Z:\home\focht\Downloads\CodeXL_Win_2.3.629.exe",c0000000,00000000,00000000,00000003,00000000,00000000) ret=00348f01 0066:Ret KERNEL32.CreateFileW() retval=000000e8 ret=00348f01 ... 0037:Ret KERNEL32.WaitForSingleObject() retval=00000102 ret=0047e5b3 0037:Call KERNEL32.WaitForSingleObject(00000064,000000c8) ret=0047e5b3 0037:Ret KERNEL32.WaitForSingleObject() retval=00000102 ret=0047e5b3 0037:Call KERNEL32.WaitForSingleObject(00000064,000000c8) ret=0047e5b3 0037:Ret KERNEL32.WaitForSingleObject() retval=00000102 ret=0047e5b3 ... <forever> --- snip ---
The patch from https://bugs.winehq.org/show_bug.cgi?id=34989#c22 makes it run to completion.
I'd keep bug 27576 around for the hang (another problem on top) and use this one for the message string failure.
@austin
https://bugs.winehq.org/attachment.cgi?id=49966
'Severity=Error' (0x3) is wrong, the severity value is shifted 30 bits so 0x800b0100 -> severity = 0x2
It seems there is a specific severity for COM/OLE errors, represented by 'STATUS_SEVERITY_COERROR' -> 'CoError=0x2'
$ wine --version wine-2.8-133-g3f01ab4c39
$ sha1sum CodeXL_Win_2.3.629.exe b2a0b3def9ce00da17c88b1ca539dca2dacb3860 CodeXL_Win_2.3.629.exe
$ du -sh CodeXL_Win_2.3.629.exe 135M CodeXL_Win_2.3.629.exe
Regards
https://bugs.winehq.org/show_bug.cgi?id=43041
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |27576
https://bugs.winehq.org/show_bug.cgi?id=43041
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dmitry@baikal.ru, | |erich.e.hoover@wine-staging | |.com, michael@fds-team.de, | |sebastian@fds-team.de Staged patchset| |https://github.com/wine-com | |pholio/wine-staging/tree/ma | |ster/patches/kernel32-TRUST | |_E_NOSIGNATURE Status|NEW |STAGED
https://bugs.winehq.org/show_bug.cgi?id=43041
Louis Lenders xerox.xerox2000x@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |taoky99@outlook.com
--- Comment #3 from Louis Lenders xerox.xerox2000x@gmail.com --- *** Bug 40558 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=43041
--- Comment #4 from Nikolay Sivov bunglehead@gmail.com --- Is there a reason this patch was not submitted?
https://bugs.winehq.org/show_bug.cgi?id=43041
Louis Lenders xerox.xerox2000x@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |xerox.xerox2000x@gmail.com
--- Comment #5 from Louis Lenders xerox.xerox2000x@gmail.com --- (In reply to Nikolay Sivov from comment #4)
Is there a reason this patch was not submitted?
I submitted it to wine-staging because the other bug that affects all these installer is still not fixed (bug 34989) If that one has a proper fix then we could retest all the installers and see if things work correctly with this patch i thought. If you think it`s ok to send it now upstream then that could be done of course
https://bugs.winehq.org/show_bug.cgi?id=43041
--- Comment #6 from Nikolay Sivov bunglehead@gmail.com --- We need this error message to work regardless of msi problem. So yes, please send it in when you have time.
https://bugs.winehq.org/show_bug.cgi?id=43041
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Fixed by SHA1| |1ae2036f24b92464610589ece5e | |d070625e8d276 Status|STAGED |RESOLVED
--- Comment #7 from Nikolay Sivov bunglehead@gmail.com --- Marking fixed, 1ae2036f24b92464610589ece5ed070625e8d276.
https://bugs.winehq.org/show_bug.cgi?id=43041
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #8 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 3.3.
https://bugs.winehq.org/show_bug.cgi?id=43041
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |3.0.x
https://bugs.winehq.org/show_bug.cgi?id=43041
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|3.0.x |---
--- Comment #9 from Michael Stefaniuc mstefani@winehq.org --- Removing the 3.0.x milestone from bugs included in 3.0.1.