https://bugs.winehq.org/show_bug.cgi?id=42578
Bug ID: 42578 Summary: WSAStringToAddress fails to parse IP v6 addresses with port number Product: Wine Version: 2.0 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winsock Assignee: wine-bugs@winehq.org Reporter: mterrisse@free.fr Distribution: ---
Created attachment 57489 --> https://bugs.winehq.org/attachment.cgi?id=57489 A console win64 application to test WSAStringToAddress
Ubuntu 16.10, PlayOnLinux, Wine 2.0
WSAStringToAddress can parse "fe80::4145:833f:f90d:4ba8" but fails to parse "[fe80::4145:833f:f90d:4ba8]:1234" (in fact all IP v6 addresses with ports, like "[::]:256")
In attachment you can find an executable TestWSAStringToAddress.exe
TestWSAStringToAddress.exe AF_INET 192.168.200.10 Works fine TestWSAStringToAddress.exe AF_INET 192.168.200.10:1234 Works fine TestWSAStringToAddress.exe AF_INET6 fe80::4145:833f:f90d:4ba8 Works fine TestWSAStringToAddress.exe AF_INET6 [fe80::4145:833f:f90d:4ba8]:1234 Fails - 10022 (WSAEINVAL)
To see the output WINEDEBUG=-all wine TestWSAStringToAddress.exe ... and to have just winsock messages WINEDEBUG=-all,+winsock wine TestWSAStringToAddress.exe ...
The same executable works fine on Windows (tested on Windows 7, Windows 8.1 and Windows 10).
Note something surprising: the behaviour is different with winedbg WINEDEBUG=-all,+winsock winedbg TestWSAStringToAddress.exe AF_INET6 [fe80::4145:833f:f90d:4ba8]:1234 wait WSAStringToAddress succeeds, WSAAddressToString succeeds too, but it returns [::]:1234 I can't understand why the behaviour is different with wine and winedbg