[Bug 30187] Cisco IP Communicator 7.0.4.0 installation fails (Cisco 'certmgr.exe' tool fails to install certificate to the system-wide trusted certificate store)

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Aug 16 08:24:52 CDT 2015


https://bugs.winehq.org/show_bug.cgi?id=30187

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |download
             Status|CLOSED                      |REOPENED
                URL|                            |http://www.tmcs.co.uk/downl
                   |                            |oad/cisco-ip-communicator-s
                   |                            |etup-version-7-0-4/
                 CC|                            |focht at gmx.net
         Resolution|ABANDONED                   |---
            Summary|Cisco IP Communicator       |Cisco IP Communicator
                   |7.0.4.0 installation fails  |7.0.4.0 installation fails
                   |                            |(Cisco 'certmgr.exe' tool
                   |                            |fails to install
                   |                            |certificate to the
                   |                            |system-wide trusted
                   |                            |certificate store)
     Ever confirmed|0                           |1

--- Comment #16 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

I was looking at bug 31306 which was suffering from different issue/broken user
environment (now marked 'abandoned') and found this issue still being present.

Reopening since I could reproduce this and a download exists.

Although the bug has already been analysed with some trace snippets, here is a
slightly longer version (for search/indexers):

--- snip ---
$ WINEDEBUG=+tid,+seh,+relay,+msi wine msiexec -i CiscoIPCommunicatorSetup.msi
>>log.txt 2>&1
...
002e:trace:msi:MSI_EvaluateConditionW 1 <- L"NOT REMOVE~=\"ALL\" AND Not
VersionNT64"
002e:trace:msi:ACTION_PerformUIAction Performing action
(L"AddCertsRoot.7A023C9A_603E_41F5_8E96_FA2CB0894D3E") 
...
002e:trace:msi:ACTION_CustomAction Handling custom action
L"AddCertsRoot.7A023C9A_603E_41F5_8E96_FA2CB0894D3E" (c12
L"certmgr.exe.7A023C9A_603E_41F5_8E96_FA2CB0894D3E" L"-add -all
\"[CDP.7A023C9A_603E_41F5_8E96_FA2CB0894D3E]CDPcredentials.spc\" -s -r
localMachine root") 
...
002e:trace:msi:HANDLE_CustomType18 exe L"C:\\Program Files\\Cisco
Systems\\Cisco IP Communicator\\CDP\\certmgr.exe" arg L"-add -all \"C:\\Program
Files\\Cisco Systems\\Cisco IP Communicator\\CDP\\CDPcredentials.spc\" -s -r
localMachine root"
...
002e:Call KERNEL32.SearchPathW(00000000,003ab2a8 L"C:\\Program Files\\Cisco
Systems\\Cisco IP Communicator\\CDP\\certmgr.exe",7ed15708
L".exe",00000104,011408f0,00000000) ret=7eca0591
002e:Ret  KERNEL32.SearchPathW() retval=00000044 ret=7eca0591
...
002e:Call KERNEL32.CreateProcessW(011408f0 L"C:\\Program Files\\Cisco
Systems\\Cisco IP Communicator\\CDP\\certmgr.exe",01140e28 L"\"C:\\Program
Files\\Cisco Systems\\Cisco IP Communicator\\CDP\\certmgr.exe\" -add -all
\"C:\\Program Files\\Cisco Systems\\Cisco IP
Communicator\\CDP\\CDPcredentials.spc\" -s -r localMachine
root",00000000,00000000,00000000,00000000,00000000,7ed14c48
L"C:\\",0033f6cc,0033f6bc) ret=7eca07ed
....
0034:Call KERNEL32.__wine_kernel_init() ret=7bc6b5d4
002e:Ret  KERNEL32.CreateProcessW() retval=00000001 ret=7eca07ed
...
0034:Starting process L"C:\\Program Files\\Cisco Systems\\Cisco IP
Communicator\\CDP\\certmgr.exe" (entryproc=0x1008320) 
...
0034:Call KERNEL32.CreateFileW(001155fa L"C:\\Program Files\\Cisco
Systems\\Cisco IP
Communicator\\CDP\\CDPcredentials.spc",80000000,00000001,00000000,00000004,00000080,00000000)
ret=7ebb050b
0034:Ret  KERNEL32.CreateFileW() retval=00000058 ret=7ebb050b 
....
0034:Ret  crypt32.CertAddCertificateContextToStore() retval=00000001
ret=01003aee
0034:Call crypt32.CertEnumCertificatesInStore(00155a68,00152d94) ret=01003adb
0034:Ret  crypt32.CertEnumCertificatesInStore() retval=00153c9c ret=01003adb
0034:Call
crypt32.CertAddCertificateContextToStore(00155ab8,00153c9c,00000003,00000000)
ret=01003aee 
...
0034:Ret  crypt32.CertAddCertificateContextToStore() retval=00000001
ret=01003aee
0034:Call crypt32.CertEnumCertificatesInStore(00155a68,00153c9c) ret=01003adb
0034:Ret  crypt32.CertEnumCertificatesInStore() retval=00000000 ret=01003adb
0034:Call crypt32.CertGetCRLFromStore(00155a68,00000000,00000000,0033fd24)
ret=01003b41
0034:Ret  crypt32.CertGetCRLFromStore() retval=00000000 ret=01003b41
0034:Call crypt32.CertEnumCTLsInStore(00155a68,00000000) ret=01003b0a
0034:Ret  crypt32.CertEnumCTLsInStore() retval=00000000 ret=01003b0a
0034:Call crypt32.CertOpenStore(0000000a,00010001,00000000,00020000,001156b8)
ret=0100372c
0034:Call KERNEL32.lstrcmpiW(001156b8 L"root",7ebe2c16 L"Root") ret=7ebcf485
0034:Ret  KERNEL32.lstrcmpiW() retval=00000000 ret=7ebcf485 
...
0034:Ret  crypt32.CertOpenStore() retval=0020de30 ret=0100372c
0034:Call crypt32.CertEnumCertificatesInStore(00155ab8,00000000) ret=01003adb
0034:Ret  crypt32.CertEnumCertificatesInStore() retval=001560fc ret=01003adb
0034:Call
crypt32.CertAddCertificateContextToStore(0020de30,001560fc,00000003,00000000)
ret=01003aee
...
0034:Ret  crypt32.CertAddCertificateContextToStore() retval=00000000
ret=01003aee
0034:Call crypt32.CertFreeCertificateContext(001560fc) ret=01003b78
0034:Ret  crypt32.CertFreeCertificateContext() retval=00000001 ret=01003b78
0034:Call user32.LoadStringW(01000000,000017c7,0100a6b8,00000200) ret=010086bf
0034:Ret  user32.LoadStringW() retval=0000002f ret=010086bf
0034:Call msvcrt.vwprintf(0100a6b8 L"Error: Failed to save to the destination
store\n",0033fd28) ret=01008800
...
0034:Ret  msvcrt.vwprintf() retval=0000002f ret=01008800
0034:Call crypt32.CertCloseStore(0020de30,00000000) ret=0100376d
...
0034:Ret  crypt32.CertCloseStore() retval=00000001 ret=01001a03
0034:Call msvcrt.exit(ffffffff) ret=0100842c
...
0034:Call KERNEL32.ExitProcess(ffffffff) ret=7ecfaeca
...
0034:Call KERNEL32.WriteFile(00000010,00342360,00000070,0033f88c,00000000)
ret=7ed03155
Error: Failed to save to the destination store
Error: Failed to save to the destination store
CertMgr Failed
0034:Ret  KERNEL32.WriteFile() retval=00000001 ret=7ed03155 
...
002e:err:msi:ITERATE_Actions Execution halted, action
L"AddCertsRoot.7A023C9A_603E_41F5_8E96_FA2CB0894D3E" returned 1627 
...
002e:trace:msi:MSI_ProcessMessage (nil) (nil) (nil) 0 10 L"Action ended
14:41:38: ExecuteAction. Return value 1627." 
...
002e:warn:msi:MSI_InstallPackage installation failed, running rollback script
002e:trace:msi:execute_script executing script 2
...
--- snip ---

To support this feature, Wine would need to maintain certificate stores in
registry just as Windows does.

MSDN:
https://msdn.microsoft.com/en-us/library/windows/desktop/aa388136%28v=vs.85%29.aspx

The system certificates are stored as BLOBs in the registry.

'HKLM\\Software\\Microsoft\\SystemCertificates'
'HKCU\\Software\\Microsoft\\SystemCertificates'

$ du -sh CiscoIPCommunicatorSetup.msi 
32M    CiscoIPCommunicatorSetup.msi

$ sha1sum CiscoIPCommunicatorSetup.msi 
0d08b1c6f18953e3b1fe69f2e3f26cb7450bb033  CiscoIPCommunicatorSetup.msi

$ wine --version
wine-1.7.49-41-g36a39ce

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list