Loading ares/CHANGES +5 −1 Original line number Diff line number Diff line Changelog for the c-ares project * January 11 2008 (Daniel Stenberg) * January 13 2009 (Phil Blundell) - ares__send_query() now varies the retry timeout pseudo-randomly to avoid packet storms when several queries were started at the same time. * January 11 2009 (Daniel Stenberg) - Phil Blundell added the internal function ares__expand_name_for_response() that is now used by the ares_parse_*_reply() functions instead of the ares_expand_name() simply to easier return ARES_EBADRESP for the cases where Loading ares/ares_process.c +4 −1 Original line number Diff line number Diff line Loading @@ -715,6 +715,7 @@ void ares__send_query(ares_channel channel, struct query *query, { struct send_request *sendreq; struct server_state *server; int timeplus; server = &channel->servers[query->server]; if (query->using_tcp) Loading Loading @@ -778,9 +779,11 @@ void ares__send_query(ares_channel channel, struct query *query, return; } } timeplus = channel->timeout << (query->try / channel->nservers); timeplus = (timeplus * (9 + (rand () & 7))) / 16; query->timeout = *now; ares__timeadd(&query->timeout, channel->timeout << (query->try / channel->nservers)); timeplus); /* Keep track of queries bucketed by timeout, so we can process * timeout events quickly. */ Loading Loading
ares/CHANGES +5 −1 Original line number Diff line number Diff line Changelog for the c-ares project * January 11 2008 (Daniel Stenberg) * January 13 2009 (Phil Blundell) - ares__send_query() now varies the retry timeout pseudo-randomly to avoid packet storms when several queries were started at the same time. * January 11 2009 (Daniel Stenberg) - Phil Blundell added the internal function ares__expand_name_for_response() that is now used by the ares_parse_*_reply() functions instead of the ares_expand_name() simply to easier return ARES_EBADRESP for the cases where Loading
ares/ares_process.c +4 −1 Original line number Diff line number Diff line Loading @@ -715,6 +715,7 @@ void ares__send_query(ares_channel channel, struct query *query, { struct send_request *sendreq; struct server_state *server; int timeplus; server = &channel->servers[query->server]; if (query->using_tcp) Loading Loading @@ -778,9 +779,11 @@ void ares__send_query(ares_channel channel, struct query *query, return; } } timeplus = channel->timeout << (query->try / channel->nservers); timeplus = (timeplus * (9 + (rand () & 7))) / 16; query->timeout = *now; ares__timeadd(&query->timeout, channel->timeout << (query->try / channel->nservers)); timeplus); /* Keep track of queries bucketed by timeout, so we can process * timeout events quickly. */ Loading