bogus patch to bind() dlls/winsock/socket.c (request removal)
Jeremy White
jwhite at codeweavers.com
Sun Jan 11 17:43:59 CST 2004
> Well, the patch apparently helps in some cases and hurts in others, so
> the only way to decide is to write a test and determine what the exact
> behavior is under Windows. I agree the current behavior looks wrong,
> but that doesn't mean anything when dealing with Microsoft code...
A quick foo.c shows that even Windows 98 respects the lack
of the REUSEADDR flag in meaningful ways; the attached
socktest.c shows that binding the same port twice fails
on the second request, but emulating the current Wine
behavior (which can be done by turning on parm #4)
causes a success.
As such, Wine is badly broken; any algorithm that relies
on iterating through possible ports and doing something
meaningful when a port is already in use will be utterly
useless with the current code.
I'll go ahead and see if I can't figure out how to
modify the regression tests to properly test for this.
Cheers,
Jer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: socktest.c
Type: text/x-c
Size: 2239 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20040111/9b285e73/socktest.bin
More information about the wine-devel
mailing list