https://bugs.winehq.org/show_bug.cgi?id=26725
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Summary|Java: online installer |Oracle Java online |fails to download files |bootstrapper fails to | |download full installer, | |reporting 'error 403 - | |forbidden'
--- Comment #6 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming.
Download: http://download.oracle.com/otn-pub/java/jdk/7u71-b14/jre-7u71-windows-i586-i...
The bootstrapper makes a bunch of HEAD requests to figure out the state of the package (where it exists). On the way to the final destination (tm), the server changes.
--- snip --- 0041:Call wininet.InternetConnectA(00000001,005d36cc "javadl.oracle.com",00000050,00000000,00000000,00000003,00000000,00000000) ret=00414888 ... 0041:Ret wininet.InternetConnectA() retval=00000002 ret=00414888 ... 0041:Call wininet.HttpOpenRequestA(00000002,004372a0 "HEAD",005d37cc "/webapps/download/GetFile/1.7.0_71-b14/windows-i586/jre1.7.0_71-c.msi",004372a8 "HTTP/1.1",004351c0 "",00000000,04400000,00000000) ret=0041491b ... 0041:trace:wininet:HTTP_HttpSendRequestW Going to url L"javadl.oracle.com" L"/webapps/download/GetFile/1.7.0_71-b14/windows-i586/jre1.7.0_71-c.msi" ... 0041:trace:wininet:HTTP_HttpSendRequestW Going to url L"javadl.oracle.com" L"/webapps/download/AutoDL?BundleId=97811" ... 0041:trace:wininet:HTTP_HttpSendRequestW Going to url L"sdlc-esd.sun.com" L"/ESD6/JSCDL/jdk/7u71-b14/jre/jre1.7.0_71-c.msi?AuthParam=1421447042_f2335ab341435899bdd8edc8b5a286ad&GroupName=JSC&FilePath=/ESD6/JSCDL/jdk/7u71-b14/jre/jre1.7.0_71-c.msi&File=jre1.7.0_71-c.msi&BHost=javadl.sun.com" ... 0041:Call wininet.HttpOpenRequestA(00000002,0043804c "GET",005d37cc "/webapps/download/GetFile/1.7.0_71-b14/windows-i586/jre1.7.0_71-c.msi",004372a8 "HTTP/1.1",004351c0 "",00000000,04400000,00000000) ret=00414aa5 0041:trace:wininet:HttpOpenRequestA (0x2, "GET", "/webapps/download/GetFile/1.7.0_71-b14/windows-i586/jre1.7.0_71-c.msi", "HTTP/1.1", "", (nil), 04400000, 00000000) ... 0041:trace:wininet:HTTP_ProcessHeader --> L"Host": L"sdlc-esd.sun.com" - 0x22000000 0041:trace:wininet:HTTP_InsertCustomHeader --> L"Host": L"sdlc-esd.sun.com" ... 0041:trace:wininet:HTTP_HttpSendRequestW Going to url L"sdlc-esd.sun.com" L"/webapps/download/GetFile/1.7.0_71-b14/windows-i586/jre1.7.0_71-c.msi" ... 0041:trace:wininet:HTTP_HttpSendRequestW Request header -> L"GET /webapps/download/GetFile/1.7.0_71-b14/windows-i586/jre1.7.0_71-c.msi HTTP/1.1\r\nHost: sdlc-esd.sun.com\r\nUser-Agent: JAVACLIENT\r\nConnection: Keep-Alive\r\n\r\n" ... 0041:Call user32.MessageBoxA(00010020,008de208 "There was an error downloading Java to your machine.\nThere may be proxy, firewall, or other network issues causing an HTTP Error 403.\nPlease refer to http://java.com/error403%22,008de608 "Error - Java Installer",00000040) ret=0041455f --- snip ---
Wireshark TCP stream capture to show it better.
HEAD requests:
--- snip --- HEAD /webapps/download/GetFile/1.7.0_71-b14/windows-i586/jre1.7.0_71-c.msi HTTP/1.1 Host: javadl.oracle.com Content-Length: 0 User-Agent: JAVACLIENT Cache-Control: no-cache Connection: Keep-Alive
HTTP/1.1 302 Moved Temporarily Server: Sun Java System Web Server 6.1 Date: Fri, 16 Jan 2015 22:43:08 GMT Content-length: 0 Content-type: text/html Location: http://javadl.oracle.com/webapps/download/AutoDL?BundleId=97811 Connection: close
=====
HEAD /webapps/download/AutoDL?BundleId=97811 HTTP/1.1 User-Agent: JAVACLIENT Cache-Control: no-cache Host: javadl.oracle.com Connection: Keep-Alive
HTTP/1.1 302 Moved Temporarily Server: Sun Java System Web Server 6.1 Date: Fri, 16 Jan 2015 22:43:08 GMT Content-length: 0 Content-type: text/html Location: http://sdlc-esd.sun.com/ESD6/JSCDL/jdk/7u71-b14/jre/jre1.7.0_71-c.msi?AuthPa... Connection: close
=====
HEAD /ESD6/JSCDL/jdk/7u71-b14/jre/jre1.7.0_71-c.msi?AuthParam=1421448310_39d1d865451721e62a0c7726324877db&GroupName=JSC&FilePath=/ESD6/JSCDL/jdk/7u71-b14/jre/jre1.7.0_71-c.msi&File=jre1.7.0_71-c.msi&BHost=javadl.sun.com HTTP/1.1 User-Agent: JAVACLIENT Cache-Control: no-cache Host: sdlc-esd.sun.com Connection: Keep-Alive
HTTP/1.1 200 OK Server: Apache ETag: "f2a0e48bd44797d4e158bff873bef249:1412012718" Last-Modified: Sat, 27 Sep 2014 03:03:14 GMT Accept-Ranges: bytes Content-Length: 25066739 Content-Type: text/plain Expires: Fri, 16 Jan 2015 22:43:10 GMT Cache-Control: max-age=0, no-cache Pragma: no-cache Date: Fri, 16 Jan 2015 22:43:10 GMT Connection: keep-alive --- snip ---
Ok, found the final location. Now, starting the whole enchilada with 'GET' request(s) again:
--- snip --- GET /webapps/download/GetFile/1.7.0_71-b14/windows-i586/jre1.7.0_71-c.msi HTTP/1.1 Host: sdlc-esd.sun.com User-Agent: JAVACLIENT Connection: Keep-Alive
HTTP/1.1 403 Forbidden Server: AkamaiGHost Mime-Version: 1.0 Content-Type: text/html Content-Length: 176 Expires: Fri, 16 Jan 2015 22:43:10 GMT Cache-Control: max-age=0, no-cache Pragma: no-cache Date: Fri, 16 Jan 2015 22:43:10 GMT Connection: keep-alive
<HTML><HEAD><TITLE>Error</TITLE></HEAD><BODY> An error occurred while processing your request.<p> Reference #50.32ee9c3e.1421448190.16162c54 </BODY></HTML> --- snip ---
The 'GET' request re-uses the last server encountered when the 'HEAD' requests successfully resolved to final location.
This is incorrect. It has to start with the server again that was used to initiate the connection -> 'javadl.oracle.com'.
$ sha1sum jre-7u71-windows-i586-iftw.exe bce44de8b65b173c5f133dd366da956dcd6b3372 jre-7u71-windows-i586-iftw.exe
$ du -sh jre-7u71-windows-i586-iftw.exe 916K jre-7u71-windows-i586-iftw.exe
$ wine --version wine-1.7.34-74-gcf92569
Regards