Hi,
On my server, I make my socket, call bind( ) and then listen( ) with a
backlog argument to listen of 5. Then, I place the server in a state
where it will not accept( ) incoming connections for a period of
time. Then, on the client, I make 6 connections to the server. On
the sixth, I'm expecting WSAECONNREFUSED, but I'm not getting that.
I'm still getting WSAEWOULDBLOCK. On each socket created in the
client application, the sockets are being made non-blocking.
I'm wondering, is there a "fudge factor" applied to the backlog
argument such as is done in FreeBSD? From the listen(2) manual of
FreeBSD, "The real maximum queue length will be 1.5 times more than
the value specified in the backlog argument." On this link in MSDN, I
can't find anything like that but wanted to ask here.
http://msdn2.microsoft.com/en-us/library/ms739168(VS.85).aspx
Of course, it's entirely possible the problem is something else I've
completely missed.
Thanks,
Andy