From: Antony Antony Date: Thu, 9 May 2013 04:50:52 +0000 (+0200) Subject: fix for ServFail from RIPE Atlas release X-Git-Tag: release-2.1.4-alpha~56 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=62f596b7f4691b059857e3eb6618d62e8b59fea5;p=libevent fix for ServFail from RIPE Atlas release --- diff --git a/evdns.c b/evdns.c index ca274a94..dd407078 100644 --- a/evdns.c +++ b/evdns.c @@ -416,6 +416,7 @@ static int evdns_base_resolv_conf_parse_impl(struct evdns_base *base, int flags, static int evdns_base_set_option_impl(struct evdns_base *base, const char *option, const char *val, int flags); static void evdns_base_free_and_unlock(struct evdns_base *base, int fail_requests); +static void evdns_request_timeout_callback(evutil_socket_t fd, short events, void *arg); static int strtoint(const char *const str); @@ -907,7 +908,9 @@ reply_handle(struct request *const req, u16 flags, u32 ttl, struct reply *reply) evutil_format_sockaddr_port_( (struct sockaddr *)&req->ns->address, addrbuf, sizeof(addrbuf))); - break; + /* Call the timeout function */ + evdns_request_timeout_callback(0, 0, req); + return; default: /* we got a good reply from the nameserver: it is up. */ if (req->handle == req->ns->probe_request) {