[Bug 45798] New: NVIDIA GeForce Experience 3.x installer fails due to missing support for 'WinHttpSetOption( ..., WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT, ...)'

wine-bugs at winehq.org wine-bugs at winehq.org
Sat Sep 8 11:14:32 CDT 2018


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

            Bug ID: 45798
           Summary: NVIDIA GeForce Experience 3.x installer fails due to
                    missing support for 'WinHttpSetOption( ...,
                    WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT, ...)'
           Product: Wine
           Version: 3.15
          Hardware: x86-64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: winhttp
          Assignee: wine-bugs at winehq.org
          Reporter: focht at gmx.net
      Distribution: ---

Hello folks,

continuation of bug 45797

--- snip ---
$ WINEDEBUG=+seh,+relay,+msi,+winhttp wine ./setup.exe >>log.txt 2>&1
...
0047:Call KERNEL32.OutputDebugStringW(02e1d648 L"     20.201 |     INFO:
[NVI2.Telemetry] 1293 at CTelemetry::UploadData : Sending request to
\"https://telemetry.nvidia.com/installer-telemetry\". \n") ret=1003cbe7 
...
0047:Call winhttp.WinHttpOpen(10378b9c L"NVIDIA Installer
v2.1002.291.0",00000000,00000000,00000000,00000000) ret=10286886 
...
0047:Ret  winhttp.WinHttpOpen() retval=00000001 ret=10286886
0047:Call winhttp.WinHttpCrackUrl(02e099d0
L"https://telemetry.nvidia.com/installer-telemetry",00000030,00000000,02e09968)
ret=102868e5 
...
0047:Call winhttp.WinHttpConnect(00000001,02dd2cd0
L"telemetry.nvidia.com",000001bb,00000000) ret=102869a3
0047:trace:winhttp:WinHttpConnect 0x1, L"telemetry.nvidia.com", 443, 0 
...
0047:trace:winhttp:WinHttpConnect returning 0x2
0047:Ret  winhttp.WinHttpConnect() retval=00000002 ret=102869a3
...
0047:Call winhttp.WinHttpOpenRequest(00000002,10378cd0 L"POST",02e09a08
L"/installer-telemetry",00000000,00000000,00000000,00800000) ret=10287f23
0047:trace:winhttp:WinHttpOpenRequest 0x2, L"POST", L"/installer-telemetry",
(null), (null), (nil), 0x00800000 
...
0047:Ret  winhttp.WinHttpOpenRequest() retval=00000003 ret=10287f23 
...
0047:Call winhttp.WinHttpSetOption(00000003,00000003,02d78480,00000004)
ret=102883c6
0047:trace:winhttp:WinHttpSetOption 0x3, 3, 0x2d78480, 4
0047:trace:winhttp:addref_object 0x2e20a50 -> refcount = 2
0047:trace:winhttp:grab_object handle 0x3 -> 0x2e20a50
0047:trace:winhttp:release_object object 0x2e20a50 refcount = 1
0047:Ret  winhttp.WinHttpSetOption() retval=00000001 ret=102883c6
0047:Call winhttp.WinHttpSetOption(00000003,00000006,02d78484,00000004)
ret=102883c6
0047:trace:winhttp:WinHttpSetOption 0x3, 6, 0x2d78484, 4
0047:trace:winhttp:addref_object 0x2e20a50 -> refcount = 2
0047:trace:winhttp:grab_object handle 0x3 -> 0x2e20a50
0047:trace:winhttp:release_object object 0x2e20a50 refcount = 1
0047:Ret  winhttp.WinHttpSetOption() retval=00000001 ret=102883c6
0047:Call winhttp.WinHttpSetOption(00000003,00000007,02d78488,00000004)
ret=102883c6
0047:trace:winhttp:WinHttpSetOption 0x3, 7, 0x2d78488, 4
0047:trace:winhttp:addref_object 0x2e20a50 -> refcount = 2
0047:trace:winhttp:grab_object handle 0x3 -> 0x2e20a50
0047:fixme:winhttp:request_set_option unimplemented option 7
0047:trace:winhttp:release_object object 0x2e20a50 refcount = 1
0047:Ret  winhttp.WinHttpSetOption() retval=00000000 ret=102883c6
0047:Call KERNEL32.GetLastError() ret=1028844d
0047:Ret  KERNEL32.GetLastError() retval=00002ee9 ret=1028844d
...
0047:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,00e6fa54)
ret=102c4338
0047:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b4473c3
ip=7b4473c3 tid=0047
0047:trace:seh:raise_exception  info[0]=19930520
0047:trace:seh:raise_exception  info[1]=00e6fa70
0047:trace:seh:raise_exception  info[2]=10489b00
0047:trace:seh:raise_exception  eax=7b435899 ebx=00e6fa70 ecx=00000000
edx=00e6fa34 esi=00e6fa34 edi=00e6fa00
0047:trace:seh:raise_exception  ebp=00e6f9d8 esp=00e6f974 cs=e60023 ds=6332002b
es=e6002b fs=f7bd0063 gs=e7006b flags=00000216
0047:trace:seh:call_stack_handlers calling handler at 0x10369098 code=e06d7363
flags=1 
...
0047:Call KERNEL32.OutputDebugStringW(02e1d648 L"     20.203 |  WARNING:
[NVI2.Telemetry] 1260 at CTelemetry::SendTelemetry : Ignoring exception Exception
{0x80072ee9; File: Url.cpp; Line: 504; WinHttpSetOption failed.}. \n")
ret=1003cbe7 
...
--- snip ---

Installer log:

--- snip ---
...
     20.213 |     INFO: [NVI2.NVInstaller]
4990 at CNVInstaller::GetOverallDownloadSize : Package "MSVCRuntime2017" has URL
"http://download-cdn.gfe.nvidia.com/packages/vcredist/4be642f2-cc77-4d46-a246-9b4f4e0d0b9b/MSVCRTx64x86_2017.exe". 
     20.215 |    ERROR: [NVI2.InstallThread] 54 at CInstallThread::ThreadProc :
Install failed - Exception {0x80072ee9; File: Url.cpp; Line: 504;
WinHttpSetOption failed.} - going to fail state. 
     20.218 |     INFO: [NVI2.NVInstaller]
3820 at CNVInstaller::InternalProcessFinalStatus : Calling all extensions to
process final status -2147012887. 
...
--- snip ---

Microsoft Docs:

https://docs.microsoft.com/en-us/windows/desktop/winhttp/option-flags

Wine source:

https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/winhttp/session.c#l847

--- snip ---
 847 static BOOL request_set_option( object_header_t *hdr, DWORD option, LPVOID
buffer, DWORD buflen )
 848 {
 849     request_t *request = (request_t *)hdr;
 850 
 851     switch (option)
 852     {
 853     case WINHTTP_OPTION_PROXY:
 854     {
 855         WINHTTP_PROXY_INFO *pi = buffer;
 856 
 857         FIXME("%u %s %s\n", pi->dwAccessType, debugstr_w(pi->lpszProxy),
debugstr_w(pi->lpszProxyBypass));
 858         return TRUE;
 859     }
...
 992     case WINHTTP_OPTION_CONNECT_RETRIES:
 993         FIXME("WINHTTP_OPTION_CONNECT_RETRIES\n");
 994         return TRUE;
 995     default:
 996         FIXME("unimplemented option %u\n", option);
 997         set_last_error( ERROR_WINHTTP_INVALID_OPTION );
 998         return FALSE;
 999     }
1000 }
--- snip ---

With the option supported, the installer is able to download MS VC++ 2017
runtime package.

$ sha1sum GeForce_Experience_v3.14.1.48.exe 
67f7326ce6d328b0f5384bcb8a7a6eb7cde6efc5  GeForce_Experience_v3.14.1.48.exe

$ du -sh GeForce_Experience_v3.14.1.48.exe 
84M    GeForce_Experience_v3.14.1.48.exe

$ wine --version
wine-3.15-97-g58338eac8b

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