[Bug 37845] PTC Mathcad Prime 3.0 Web installer fails to download applications ( payloads)

wine-bugs at winehq.org wine-bugs at winehq.org
Sat Mar 16 18:46:01 CDT 2019


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

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|http://free-dl.ptc.com/inst |https://web.archive.org/web
                   |all/pim_installmgr_mathcad. |/20150427071145/free-dl.ptc
                   |exe                         |.com/install/pim_installmgr
                   |                            |_mathcad.exe

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

revisiting, still present.

Adding stable link to old installer using Internet Archive.

https://web.archive.org/web/20150427071145/free-dl.ptc.com/install/pim_installmgr_mathcad.exe

Extract the inner installer:

--- snip ---
$ mkdir -p installer_unpacked && cd $_

$ 7z x ../pim_installmgr_mathcad.exe 

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.utf8,Utf16=on,HugeFiles=on,64 bits,8 CPUs
Intel(R) Core(TM) i7-4700HQ CPU @ 2.40GHz (306C3),ASM,AES-NI)

Scanning the drive for archives:
1 file, 19903496 bytes (19 MiB)

Extracting archive: ../pim_installmgr_mathcad.exe
--       
Path = ../pim_installmgr_mathcad.exe
Type = 7z
Offset = 93451
Physical Size = 19810045
Headers Size = 3065
Method = LZMA:26 BCJ2
Solid = +
Blocks = 2

Everything is Ok                                                             

Folders: 30
Files: 163
Size:       60153296
Compressed: 19903496

$ tree --charset=ANSI -L 3
.
|-- export_affirmation.pdf
|-- msvcp110.dll
|-- msvcr110.dll
|-- pim
|   |-- i486_nt
|   |   |-- asyncoremt.dll
|   |   |-- baselibmt.dll
|   |   |-- btkzlibmt.dll
|   |   |-- coretools_sh.dll
|   |   |-- coreutils_sh.dll
|   |   |-- dlmmgrmt.dll
|   |   |-- i18nmt.dll
|   |   |-- ic_sh.dll
|   |   |-- installmgr.dll
|   |   |-- ipc_comms_sh.dll
|   |   |-- libbrowser_api_sh.dll
|   |   |-- libui_sh.dll
|   |   |-- licommonmt.dll
|   |   |-- limanifestmt.dll
|   |   |-- lutilsmt.dll
|   |   |-- msvcp110.dll
|   |   |-- msvcr110.dll
|   |   |-- rtlcoremt.dll
|   |   |-- srvcmgrmt.dll
|   |   |-- ucore46.dll
|   |   |-- udata46.dll
|   |   |-- uitools_sh.dll
|   |   |-- utfstrmt.dll
|   |   |-- xercesc280mt.dll
|   |   `-- zbutils_sh.dll
|   |-- proe
|   |   `-- uitools
|   |-- text
|   |   |-- chinese_cn
|   |   |-- chinese_tw
|   |   |-- compiled_resource
|   |   |-- eula
|   |   |-- french
|   |   |-- german
|   |   |-- italian
|   |   |-- japanese
|   |   |-- korean
|   |   |-- license.res
|   |   |-- pro_i18n.res
|   |   |-- russian
|   |   |-- spanish
|   |   `-- usascii
|   `-- xml
|       `-- sessioninfo.xml
`-- setup.exe

18 directories, 32 files
--- snip ---

Run the inner installer:

--- snip ---
$ WINEDEBUG=+seh,+loaddll,+process,+wininet,+urlmon wine ./setup.exe -mathcad
-applications mathcad.xml:mathcadpdsi.xml:qualityagent.xml:dotnet4.xml
...
0031:trace:wininet:INTERNET_SendCallback  end callback().
0031:trace:wininet:gzip_read (8192 0)
0031:trace:wininet:chunked_read state 2
0031:trace:wininet:chunked_read state 2
0031:trace:wininet:NETCON_recv received 861 bytes
0031:trace:wininet:chunked_read state 3
0031:trace:wininet:chunked_read state 3
0031:trace:wininet:chunked_read state 0
0031:trace:wininet:chunked_read state 0
0031:trace:wininet:chunked_read reading 0 byte chunk
0031:trace:wininet:chunked_read state 1
0031:trace:wininet:chunked_read state 1
0031:trace:wininet:chunked_read state 4
0031:trace:wininet:chunked_read state 4
0031:trace:wininet:chunked_read state 5
0031:trace:wininet:chunked_read read 1178 bytes
0031:trace:wininet:gzip_read end of data
0031:trace:wininet:gzip_read read 5781 bytes
0031:trace:wininet:refill_read_buffer read 5781 bytes, read_size 5781
0031:trace:wininet:INTERNET_SendCallback  callback(0x7ca9fa89) (0x5
(0x24bf1b8), 024da7b0, 41 (INTERNET_STATUS_RESPONSE_RECEIVED), 0xbeab928, 4)
0031:warn:urlmon:internet_status_callback Unhandled Internet status callback 41
0031:trace:wininet:INTERNET_SendCallback  end callback().
0031:trace:wininet:WININET_Release object 0x24bf1b8 refcount = 1
0031:trace:wininet:InternetReadFile 0x5 0xbeadc07 5781 0xbeab9cc
0031:trace:wininet:WININET_AddRef 0x24bf1b8 -> refcount = 2
0031:trace:wininet:get_handle_object handle 5 -> 0x24bf1b8
0031:trace:wininet:HTTPREQ_ReadFile (0x24bf1b8 0xbeadc07 5781 0)
0031:trace:wininet:WININET_Release object 0x24bf1b8 refcount = 1
0031:trace:wininet:InternetReadFile -- TRUE (0) (bytes read: 5781)
0031:trace:urlmon:protocol_read current_position 63125, available_bytes 0
0031:trace:wininet:InternetQueryDataAvailable (0x5 0x24da830 0 0)
0031:trace:wininet:WININET_AddRef 0x24bf1b8 -> refcount = 2
0031:trace:wininet:get_handle_object handle 5 -> 0x24bf1b8
0031:trace:wininet:HTTPREQ_QueryDataAvailable (0x24bf1b8 0x24da830 0 0)
0031:trace:wininet:WININET_Release object 0x24bf1b8 refcount = 1
0031:trace:urlmon:BPInternetProtocolSink_ReportData (0x21be98)->(6 63125 0)
0031:trace:urlmon:BPInternetProtocolSink_ReportResult (0x21be98)->(00000000 0
(null))
0031:trace:urlmon:ProtocolStream_Read (0x24e1c28)->(0xbeabc04 16383 0xbeabb8c)
0031:trace:urlmon:BindProtocol_Read (0x21be98)->(0xbeabc04 16383 0xbeabb14)
0031:trace:urlmon:ProtocolHandler_Read (0x21be98)->(0xbeabc04 16383 0xbeabb14)
0031:trace:urlmon:HttpProtocol_Read (0x24da7b0)->(0xbeabc04 16383 0xbeaba60)
Segmentation fault (core dumped)
--- snip ---

It now core dumps every time which is even worse. Sadly native 'urlmon' and
'wininet' from 'winetricks -q ie8' recipe don't help here anymore - it just
keeps hanging. Wine-Staging doesn't help either.

Using pure gdb to see the SIGSEGV:

--- snip ---
Thread 8 "setup.exe" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 22627]
0x00a7828e in ?? ()
(gdb) bt
#0  0x00a7828e in ?? ()
#1  0x007f5d30 in ?? ()
#2  0x005a8656 in ?? ()
#3  0x005a651e in ?? ()
#4  0x006e0072 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

(gdb) info reg
eax            0x20    32
ecx            0x36a4f7c    57298812
edx            0x36b9f60    57384800
ebx            0x0    0
esp            0x10419244    0x10419244
ebp            0x10419f24    0x10419f24
esi            0x10424000    272777216
edi            0x1041a690    272737936
eip            0xa7828e    0xa7828e
eflags         0x10283    [ CF SF IF RF ]
cs             0x23    35
ss             0x2b    43
ds             0x2b    43
es             0x2b    43
fs             0x63    99
gs             0x6b    107

(gdb) info thread
  Id   Target Id         Frame 
  1    LWP 22581 "setup.exe" 0xf7ffdb59 in ?? ()
  3    LWP 22619 "setup.exe" 0xf7ffdb59 in ?? ()
  4    LWP 22620 "setup.exe" 0xf7ffdb59 in ?? ()
  6    LWP 22622 "setup.exe" 0xf7ffdb59 in ?? ()
  7    LWP 22624 "setup.exe" 0xf7ffdb59 in ?? ()
* 8    LWP 22627 "setup.exe" 0x00a7828e in ?? ()

(gdb) disas 0x00a78230, +100
Dump of assembler code from 0xa78230 to 0xa78294:
   0x00a78230:    add    $0x2,%ecx
   0x00a78233:    cmp    %ebx,%esi
   0x00a78235:    jne    0xa78220
   0x00a78237:    mov    -0x10(%ebp),%ecx
   0x00a7823a:    mov    %esi,-0x28(%ebp)
   0x00a7823d:    jmp    0xa781c2
   0x00a7823f:    mov    -0x18(%ebp),%ecx
   0x00a78242:    mov    -0x54(%ebp),%eax
   0x00a78245:    mov    -0x40(%ebp),%edx
   0x00a78248:    sub    %edx,%eax
   0x00a7824a:    mov    $0x0,%edi
   0x00a7824f:    cmovs  %edi,%eax
   0x00a78252:    lea    (%esi,%eax,2),%eax
   0x00a78255:    cmp    %ecx,%esi
   0x00a78257:    je     0xa78271
   0x00a78259:    mov    $0x30,%edi
   0x00a7825e:    mov    %edi,%edi
   0x00a78260:    cmp    %eax,%esi
   0x00a78262:    je     0xa7826e
   0x00a78264:    mov    %di,(%esi)
   0x00a78267:    add    $0x2,%esi
   0x00a7826a:    cmp    %ecx,%esi
   0x00a7826c:    jne    0xa78260
   0x00a7826e:    mov    %esi,-0x28(%ebp)
   0x00a78271:    mov    -0x18(%ebp),%edi
   0x00a78274:    xor    %ecx,%ecx
   0x00a78276:    test   %edx,%edx
   0x00a78278:    mov    %edx,%eax
   0x00a7827a:    cmovs  %ecx,%eax
   0x00a7827d:    mov    -0x2c(%ebp),%ecx
   0x00a78280:    lea    (%ecx,%eax,2),%edx
   0x00a78283:    cmp    %edi,%esi
   0x00a78285:    je     0xa7829e
   0x00a78287:    cmp    %edx,%ecx
   0x00a78289:    je     0xa7829b
   0x00a7828b:    mov    (%ecx),%ax
=> 0x00a7828e:    mov    %ax,(%esi)
   0x00a78291:    add    $0x2,%esi
End of assembler dump.
--- snip ---

--- snip ---
...
008e0000-008e1000 r--p 00000000 fd:03 1707047                           
/home/focht/Downloads/install/pim/i486_nt/baselibmt.dll
008e1000-009ab000 r-xp 00000000 00:00 0 
009ab000-00a32000 r--p 00000000 00:00 0 
00a32000-00a39000 rw-p 00000000 00:00 0 
00a39000-00a4a000 r--p 00000000 00:00 0 
00a4a000-00a50000 ---p 00000000 00:00 0 
00a50000-00a51000 r--p 00000000 fd:03 1707144                           
/home/focht/Downloads/install/pim/i486_nt/rtlcoremt.dll
00a51000-00a7c000 r-xp 00000000 00:00 0 
00a7c000-00a8a000 r--p 00000000 00:00 0 
00a8a000-00a9e000 rw-p 00000000 00:00 0 
00a9e000-00aa3000 r--p 00000000 00:00 0 
00aa3000-00ab0000 ---p 00000000 00:00 0 
00ab0000-00ab1000 r--p 00000000 fd:03 1707059                           
/home/focht/Downloads/install/pim/i486_nt/i18nmt.dll
00ab1000-00ad9000 r-xp 00000000 00:00 0 
00ad9000-00adf000 r--p 00000000 00:00 0 
00adf000-00ae1000 rw-p 00000000 00:00 0 
00ae1000-00ae3000 r--p 00000000 00:00 0 
00ae3000-00af0000 ---p 00000000 00:00 0 
...
--- snip ---

Looks like the installer formats an internal error message in response to the
server returning a 404. Unfortunately the returned additional data is way to
big to fit into stack based buffer.

coretools_sh.pro_wsprintf -> rtlcoremt.btk_vswprintf

--- snip ---
0BE29F28   007F5D30  RETURN to coretool.007F5D30 from
<JMP.&rtlcoremt.btk_vswprintf>
0BE29F2C   0BE2A694  UNICODE "404"
0BE29F30   FFFFFFFF
0BE29F34   0BE29F40  UNICODE "%s"
0BE29F38   0BE2A354
0BE29F3C   0073A768  coreutil.0073A768
0BE29F40   00730025  coreutil.00730025
0BE29F44   00000000

0BE2A348  005A8656  RETURN to coreutil.005A8656 from coretool.pro_wsprintf
0BE2A34C  0BE2A694  UNICODE "<04"
0BE2A350  0BE2A56C  ASCII "%s"
0BE2A354  03708048  ASCII "<!DOCTYPE html>
<html>
<head>
    <!-- Google Tag Managers -->
    <script>
        (function (w, d, s, l, i) {
            w[l] = w[l] || []; w[l].push({
                'gtm.start':
                    new Date().getTime(), eve"...
0BE2A358  007989CC  UNICODE "s."
0BE2A35C  03708048  ASCII "<!DOCTYPE html>
<html>
<head>
    <!-- Google Tag Managers -->
    <script>
        (function (w, d, s, l, i) {
            w[l] = w[l] || []; w[l].push({
                'gtm.start':
                    new Date().getTime(), eve"...
0BE2A360  00000003
...
--- snip ---

--- snip ---
Call stack of thread 00000045
Address    Stack      Procedure / arguments                 Called from        
          Frame
0BE29F28   007F5D30   ? <JMP.&rtlcoremt.btk_vswprintf>      coretool.007F5D2B  
          0BE29F24
0BE2A348   005A8656   coretool.pro_wsprintf                 coreutil.005A8650  
          0BE2A344
0BE2A674   005A651E   coreutil.005A8570                     coreutil.005A6519  
          0BE2A670
0BE2AEE8   005A7F03   coreutil.005A6440                     coreutil.005A7EFE  
          0BE2AEE4
0BE2B32C   005A584E   coreutil.005A7D90                     coreutil.005A5849  
          0BE2B328
0BE2B354   100A4BAA   coreutil.msgID_sput_buffer            installm.100A4BA4  
          0BE2B350
0BE2BBCC   10107116   installm.100A4AE0                     installm.10107111  
          0BE2BBC8
0BE2FCF8   101068EF   installm.101069E0                     installm.101068EA  
          0BE2FCF4
0BE2FD24   100D5D4A   installm.101068D0                     installm.100D5D45  
          0BE2FD20
--- snip ---

The call frame 0BE2AEE4 get overwritten due to stack buffer overflow. Also the
SEH chain is destroyed in the process.

It's likely the 302 -> 404 with that big data is something the app installer
never expects to see.

--- snip ---
...
002e:trace:wininet:HTTP_HttpSendRequestW Going to url L"esd.ptc.com"
L"/files/PIM/MED-60893-CD-220_F000/pim/xml/Image.xml?dlm=no&wcn=null&cn=null&uname=universalmathcadprimetrialuser at nowhere.com&uid=null&__gda__=1552781705_1c72b43af10377787ddaa43abede6826"
...
002e:trace:wininet:read_line returning "HTTP/1.1 302 Moved Temporarily"
002e:trace:wininet:HTTP_GetResponseHeaders version [L"HTTP/1.1"] status code
[L"302"] status text [L"Moved Temporarily"]
002e:trace:wininet:HTTP_ProcessHeader --> L"Status": L"302" - 0xa0000000
002e:trace:wininet:HTTP_GetCustomHeaderIndex L"Status", 0, 0
002e:trace:wininet:HTTP_GetCustomHeaderIndex Return: -1
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Status": L"302"
002e:trace:wininet:read_line returning "Server: AkamaiGHost"
002e:trace:wininet:HTTP_GetResponseHeaders got line "Server: AkamaiGHost", now
interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader field(L"Server")
Value(L"AkamaiGHost")
002e:trace:wininet:HTTP_ProcessHeader --> L"Server": L"AkamaiGHost" -
0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Server": L"AkamaiGHost"
002e:trace:wininet:read_line returning "Content-Length: 0"
002e:trace:wininet:HTTP_GetResponseHeaders got line "Content-Length: 0", now
interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader field(L"Content-Length")
Value(L"0")
002e:trace:wininet:HTTP_ProcessHeader --> L"Content-Length": L"0" - 0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Content-Length": L"0"
002e:trace:wininet:read_line returning "Location:
https://www.ptc.com/esd/notfound.htm?dlm=no&wcn=null&cn=null&[email protected]&uid=null"
002e:trace:wininet:HTTP_GetResponseHeaders got line "Location:
https://www.ptc.com/esd/notfound.htm?dlm=no&wcn=null&cn=null&[email protected]&uid=null",
now interpreting
...
002e:trace:wininet:netconn_verify_cert verifying L"www.ptc.com"
002e:trace:wininet:netcon_secure_connect_setup established SSL connection
002e:trace:wininet:build_request_header Adding custom header L"Accept" (L"*/*")
002e:trace:wininet:build_request_header Adding custom header L"User-Agent"
(L"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/5.0; Wildfire)")
002e:trace:wininet:build_request_header Adding custom header L"Accept-Language"
(L"en-us")
002e:trace:wininet:build_request_header Adding custom header L"Accept-Encoding"
(L"gzip, deflate")
002e:trace:wininet:build_request_header Adding custom header L"Host"
(L"www.ptc.com")
002e:trace:wininet:build_request_header Adding custom header L"Connection"
(L"Keep-Alive")
002e:trace:wininet:build_request_header Adding custom header L"Cookie"
(L"visid_incap_1390363=kva+mGfgQ0m4oTPQOW9pRlN1jVwAAAAAQUIPAAAAAAAPrLXVazR1ZkOH1ij+C0qW;
incap_ses_408_1390363=AAtPXa0fgSUOssPLXYOpBVN1jVwAAAAABCj4G0iwzNJlVeCQC4U2WA==")
002e:trace:wininet:HTTP_HttpSendRequestW Request header -> L"GET
/esd/notfound.htm?dlm=no&wcn=null&cn=null&uname=universalmathcadprimetrialuser at nowhere.com&uid=null
HTTP/1.1\r\nAccept: */*\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 8.0;
Windows NT 5.1; Trident/5.0; Wildfire)\r\nAccept-Language:
en-us\r\nAccept-Encoding: gzip, deflate\r\nHost: www.ptc.com\r\n"...
002e:trace:wininet:HTTP_HttpSendRequestW full request -> "GET
/esd/notfound.htm?dlm=no&wcn=null&cn=null&uname=universalmathcadprimetrialuser at nowhere.com&uid=null
HTTP/1.1\r\nAccept: */*\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 8.0;
Windows NT 5.1; Trident/5.0; Wildfire)\r\nAccept-Language:
en-us\r\nAccept-Encoding: gzip, deflate\r\nHost: www.ptc.com\r\n"...
...
002e:trace:wininet:read_line returning "HTTP/1.1 404 Not Found"
002e:trace:wininet:HTTP_GetResponseHeaders version [L"HTTP/1.1"] status code
[L"404"] status text [L"Not Found"]
002e:trace:wininet:HTTP_ProcessHeader --> L"Status": L"404" - 0xa0000000
002e:trace:wininet:HTTP_GetCustomHeaderIndex L"Status", 0, 0
002e:trace:wininet:HTTP_GetCustomHeaderIndex Return: -1
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Status": L"404"
002e:trace:wininet:read_line returning "Content-Type: text/html; charset=utf-8"
002e:trace:wininet:HTTP_GetResponseHeaders got line "Content-Type: text/html;
charset=utf-8", now interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader field(L"Content-Type")
Value(L"text/html; charset=utf-8")
002e:trace:wininet:HTTP_ProcessHeader --> L"Content-Type": L"text/html;
charset=utf-8" - 0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Content-Type": L"text/html;
charset=utf-8"
002e:trace:wininet:read_line returning "Server: Microsoft-IIS/8.5"
002e:trace:wininet:HTTP_GetResponseHeaders got line "Server:
Microsoft-IIS/8.5", now interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader field(L"Server")
Value(L"Microsoft-IIS/8.5")
002e:trace:wininet:HTTP_ProcessHeader --> L"Server": L"Microsoft-IIS/8.5" -
0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Server": L"Microsoft-IIS/8.5"
002e:trace:wininet:read_line returning "Access-Control-Allow-Methods: GET,
POST, OPTIONS"
002e:trace:wininet:HTTP_GetResponseHeaders got line
"Access-Control-Allow-Methods: GET, POST, OPTIONS", now interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader
field(L"Access-Control-Allow-Methods") Value(L"GET, POST, OPTIONS")
002e:trace:wininet:HTTP_ProcessHeader --> L"Access-Control-Allow-Methods":
L"GET, POST, OPTIONS" - 0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Access-Control-Allow-Methods":
L"GET, POST, OPTIONS"
002e:trace:wininet:read_line returning "Access-Control-Allow-Headers: Origin"
002e:trace:wininet:HTTP_GetResponseHeaders got line
"Access-Control-Allow-Headers: Origin", now interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader
field(L"Access-Control-Allow-Headers") Value(L"Origin")
002e:trace:wininet:HTTP_ProcessHeader --> L"Access-Control-Allow-Headers":
L"Origin" - 0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Access-Control-Allow-Headers":
L"Origin"
002e:trace:wininet:read_line returning "X-XSS-Protection: 1; mode=block"
002e:trace:wininet:HTTP_GetResponseHeaders got line "X-XSS-Protection: 1;
mode=block", now interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader field(L"X-XSS-Protection")
Value(L"1; mode=block")
002e:trace:wininet:HTTP_ProcessHeader --> L"X-XSS-Protection": L"1; mode=block"
- 0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"X-XSS-Protection": L"1;
mode=block"
002e:trace:wininet:read_line returning "X-Frame-Options: https://www.ptc.com"
002e:trace:wininet:HTTP_GetResponseHeaders got line "X-Frame-Options:
https://www.ptc.com", now interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader field(L"X-Frame-Options")
Value(L"https://www.ptc.com")
002e:trace:wininet:HTTP_ProcessHeader --> L"X-Frame-Options":
L"https://www.ptc.com" - 0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"X-Frame-Options":
L"https://www.ptc.com"
002e:trace:wininet:read_line returning "Date: Sat, 16 Mar 2019 22:15:11 GMT"
002e:trace:wininet:HTTP_GetResponseHeaders got line "Date: Sat, 16 Mar 2019
22:15:11 GMT", now interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader field(L"Date") Value(L"Sat, 16 Mar
2019 22:15:11 GMT")
002e:trace:wininet:HTTP_ProcessHeader --> L"Date": L"Sat, 16 Mar 2019 22:15:11
GMT" - 0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Date": L"Sat, 16 Mar 2019
22:15:11 GMT"
002e:trace:wininet:read_line returning "Cteonnt-Length: 62675"
002e:trace:wininet:HTTP_GetResponseHeaders got line "Cteonnt-Length: 62675",
now interpreting
002e:trace:wininet:HTTP_InterpretHttpHeader field(L"Cteonnt-Length")
Value(L"62675")
002e:trace:wininet:HTTP_ProcessHeader --> L"Cteonnt-Length": L"62675" -
0x20000000
002e:trace:wininet:HTTP_InsertCustomHeader --> L"Cteonnt-Length": L"62675"
...
--- snip ---

Also 62675 bytes for 404 response data which is mostly a bloody jscript is just
hilarious. "Cteonnt-Length" ... rofl. Apparently I learned something new here.

www.nextthing.org/archives/2005/08/07/fun-with-http-headers

https://stackoverflow.com/questions/2942237/http-header-ntcoent-length/2942306#2942306

Anyway, the reason for the 302 -> 404 has to be further investigated.

$ sha1sum pim_installmgr_mathcad.exe
6cdcde6706c3604f1e4b53858222c9e73b224e3b  pim_installmgr_mathcad.exe

$ du -sh pim_installmgr_mathcad.exe
19M    pim_installmgr_mathcad.exe

$ wine --version
wine-4.4

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