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@winehq.org Reporter: focht@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@CTelemetry::UploadData : Sending request to "https://telemetry.nvidia.com/installer-telemetry%5C". \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%22,00000030,00000000,02e099...) 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@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@CNVInstaller::GetOverallDownloadSize : Package "MSVCRuntime2017" has URL "http://download-cdn.gfe.nvidia.com/packages/vcredist/4be642f2-cc77-4d46-a246...". 20.215 | ERROR: [NVI2.InstallThread] 54@CInstallThread::ThreadProc : Install failed - Exception {0x80072ee9; File: Url.cpp; Line: 504; WinHttpSetOption failed.} - going to fail state. 20.218 | INFO: [NVI2.NVInstaller] 3820@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#l84...
--- 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
https://bugs.winehq.org/show_bug.cgi?id=45798
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://us.download.nvidia. | |com/GFE/GFEClient/3.14.1.48 | |/GeForce_Experience_v3.14.1 | |.48.exe Keywords| |download, Installer
https://bugs.winehq.org/show_bug.cgi?id=45798
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Fixed by SHA1| |af3920dc1863d9d8a49ddf54aef | |7d97a7b38c5ad Resolution|--- |FIXED
--- Comment #1 from Anastasius Focht focht@gmx.net --- Hello folks,
this is fixed by commit https://source.winehq.org/git/wine.git/commitdiff/af3920dc1863d9d8a49ddf54ae...
Thanks Hans
Regards
https://bugs.winehq.org/show_bug.cgi?id=45798
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #2 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 3.16.
https://bugs.winehq.org/show_bug.cgi?id=45798
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|https://us.download.nvidia. |https://web.archive.org/web |com/GFE/GFEClient/3.14.1.48 |/20200323180303/https://us. |/GeForce_Experience_v3.14.1 |download.nvidia.com/GFE/GFE |.48.exe |Client/3.14.1.48/GeForce_Ex | |perience_v3.14.1.48.exe