AFAIR the workaround was to do your own ARP request first in order
to check whether the destination exists or not, utilizing the IP
Helper API.
Yes, that what I did.
How can I confirm that this is what's happening with me?
In my case, the blocking was occuring in the main thread. TO see it it
was then easy: using the mouse, I moved continuously the form in small
circles. When blocked, the application don't paint the form and the
window was stuck. Then using WireShark I was able to see that the
blocking was when ARP requests were sent to non existant address.
I just did the same test and can confirm this is the case. The call to
closesocket() is blocking until all 3 arp requests have been sent.
Now the interesting part is that on another Windows 7 machine the call to
closesocket() is not blocking. When looking with wireshark I see that the
3 arp requests are sent, but closesocket() simply does not wait for them.
I'm happy you see the same behaviour as I do.
I did a compare of winsock.dll and ws2_32.dll from both machines, and they
are identical.
Does anybody have a good idea how to search for the cause for different
behavior, or have an idea where it could originate from? Could it be
something related to the chipset?
I don't think it is a hardware issue. It is likely a software issue. One of
the layer between winsock and the network card has a bug. That is why you
see it on one computer and not another.
Determining which layer is faulty will be a difficult task ! I don't know
what to say to help you :-(
--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be