http://bugs.winehq.org/show_bug.cgi?id=29756
Bug #: 29756 Summary: ws2_32: getaddrinfo edge cases broken on OS X Product: Wine Version: unspecified Platform: x86 OS/Version: Mac OS X Status: UNCONFIRMED Severity: normal Priority: P2 Component: winsock AssignedTo: wine-bugs@winehq.org ReportedBy: code@klickverbot.at Classification: Unclassified
getaddrinfo() responds differently to edge cases on Windows, Linux and OS X; notably, the Winsock incarnation accepts more combinations of null/empty host/port strings than the others do. Some steps to resolve the issues this creates for Wine clients have been made in commits 75be2284 and 8e5d5bf5.
Unfortunately, the current implementation (1.4-rc1, Git f0cfa7cf) does not work on OS X, because the host part of the FQDN of the local machine usually doesn't resolve. The attached patch fixes this issue and another difference in behavior between Winsock/Windows and Wine/OSX.
While tracking this down, I compared a number of param/flag combinations; the detailed results are at http://klickverbot.at/blog/2012/01/getaddrinfo-edge-case-behavior-on-windows....
http://bugs.winehq.org/show_bug.cgi?id=29756
--- Comment #1 from David Nadlinger code@klickverbot.at 2012-01-31 18:00:39 CST --- Created attachment 38631 --> http://bugs.winehq.org/attachment.cgi?id=38631 Proposed patch, 1/2.
http://bugs.winehq.org/show_bug.cgi?id=29756
--- Comment #2 from David Nadlinger code@klickverbot.at 2012-01-31 18:01:00 CST --- Created attachment 38632 --> http://bugs.winehq.org/attachment.cgi?id=38632 Proposed patch, 2/2.
http://bugs.winehq.org/show_bug.cgi?id=29756
David Nadlinger code@klickverbot.at changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch
http://bugs.winehq.org/show_bug.cgi?id=29756
--- Comment #3 from Austin English austinenglish@gmail.com 2012-01-31 22:19:15 CST --- Patches should be sent to wine-patches@winehq.org. See http://wiki.winehq.org/SubmittingPatches
http://bugs.winehq.org/show_bug.cgi?id=29756
Dmitry Timoshkov dmitry@baikal.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|unspecified |1.4-rc1
http://bugs.winehq.org/show_bug.cgi?id=29756
--- Comment #4 from David Nadlinger code@klickverbot.at 2012-02-02 10:07:13 CST --- Thanks, unfortunately I only found that page after I opened the issue here. Posted to wine-patches: - http://source.winehq.org/patches/data/83394 - http://source.winehq.org/patches/data/83393
http://bugs.winehq.org/show_bug.cgi?id=29756
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW CC| |00cpxxx@gmail.com Ever Confirmed|0 |1
--- Comment #5 from Bruno Jesus 00cpxxx@gmail.com 2012-03-22 18:46:14 CDT --- I can confirm this issue. What happened to the patches? Were they deferred due to the code freeze or they broke something?
IMO the patch subjects should be: ws2_32: Use a broader way to get hostname ws2_32: Fix edge cases of getaddrinfo in other systems
And in the email texts it should be stated that they fix this bug.
These patches will most likely fix the same issue in BSD as seen in: http://test.winehq.org/data/1517f3df30232daf3ccfc88e53f1377d0c5a2a20/bsd_fg-...
And may help with Solaris which has several errors as seen in: http://test.winehq.org/data/1517f3df30232daf3ccfc88e53f1377d0c5a2a20/solaris...
https://bugs.winehq.org/show_bug.cgi?id=29756
--- Comment #6 from Austin English austinenglish@gmail.com --- This is your friendly reminder that there has been no bug activity for 2 years. Is this still an issue in current (1.7.16 or newer) wine?
https://bugs.winehq.org/show_bug.cgi?id=29756
--- Comment #7 from Bruno Jesus 00cpxxx@gmail.com --- Still in 1.7.16, OS X is required to test and validate the first patch. The second patch was commited.
https://bugs.winehq.org/show_bug.cgi?id=29756
Qian Hong fracting@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fracting@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=29756
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |super_man@post.com
--- Comment #8 from super_man@post.com --- (In reply to Bruno Jesus from comment #7)
Still in 1.7.16, OS X is required to test and validate the first patch. The second patch was commited.
patching file dlls/ws2_32/socket.c Hunk #1 succeeded at 6377 (offset 1575 lines).
still valid 1.9.6