wine/dlls/winsock/socket.c: Force SO_REUSEADDR ...

Christoph Frick frick at SC-Networks.de
Tue Dec 10 04:13:47 CST 2002


On 10 Dec 2002, Martin Wilck wrote:

Hi Martin!

> judging from the Traces these programs are rare examples of lame network
> programming. You find series of things that shouldn't be done, such as
> bind()ing in a client application, not closing down a socket cleanly but
> expecting the next bind() to the same address to succeed, polling the socket
> with ioctl (FIONREAD), etc.

And this is only the coding side - also the logic used for the network code is
not that smart. But id like to say that both games use quite the same code and
both applications run AFAIK without problems in win9X, win2k and winxp. I
could also trace it with other -winver settings if you like. But the last time
i tested the games both where not able to find their network devices in >win9X
- which let me believe that there is something like HK../NetTrans/... also in
the NT branch of windows.

So whatever they do, the do it either because wine makes them believe they
have to do it or the behaviour of windows differs here in handling this
situation. Id be glad to help where i can - but i dont have much more clues
about it here.

> I am really asking myself if it's right to hack wine to violate the specs
> just for the sake of so poorly programmed applications. 
> I'd be grateful for advice by experienced Wine hackers here.  Perhaps we
> need to introduce Windows version-dependent behavior.

My intention was not to cause much trouble with this hack. My intention was to
make the games work and therefore ask for some help here. If this results in
much work and trouble id say its not worth it. I will provide my hack further
for the people asking me for it and i will make it clear to them, that this
hack is in no way good, tested, ok with this group, ...

CU!




More information about the wine-devel mailing list