On 07/25/2012 01:29 AM, Ghennadi Procopciuc wrote:
Hi all,
We discovered a bug that occurs in two situations :
1.When many responses come simultaneously, c-ares reads only the first; after
that,
it awaits another notification for each of them. However, until a read
does not return EAGAIN
epoll does not send notifications for that socket anymore.
2.A big DNS message is divided in several IP packets, c-ares is expected to read
the full message or to receive EAGAIN. This works appropriately for UDP but
not TCP.
I attached a patch that fixes these issues.
Maybe using a while loop would be a little more intuitive?
Thanks,
Ben
Thanks,
Ghennadi
--
Ben Greear <gree...@candelatech.com>
Candela Technologies Inc http://www.candelatech.com