[Libevent-users] cha-ching!
Toby Douglass
toby.douglass at summerblue.net
Tue Feb 27 18:44:01 EST 2007
Sravan Vadlakonda (svadlako) wrote:
> Toby Douglass wrote:
>> Sorted out weird bug.
>>
>> Will do a release this weekend.
> Hi Toby,
> Can you please say what the bug is that you observed ?
Not really a bug as such - a documentation bug, if you like.
If you call AcceptEx() and specify a non-zero read buffer size,
GetQueuedCompletionStatus() will NOT return on a connect. It will only
return when some data is sent.
My test app currently only connects, it doesn't send any data.
So I was connecting a dozen sockets and wondering why the accept
notification wasn't occurring - and my code relies on that notification
to know when to resupply the listen socket with ready-accept sockets.
(If you had a lot of no-data connects, you would execute a DOS attack on
the server, since you would empty the pool of ready-accept sockets, as
the server would never know to replenish). I'm wondering now how many
people have accidentally implemented this vulnerability).
The docs don't explicitly mention that the accept notification *won't*
occur until some data has been sent.
More information about the Libevent-users
mailing list