diff options
-rw-r--r-- | libglouglou/libggnet_dns.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libglouglou/libggnet_dns.c b/libglouglou/libggnet_dns.c index be4e19b..26e0230 100644 --- a/libglouglou/libggnet_dns.c +++ b/libglouglou/libggnet_dns.c @@ -95,14 +95,20 @@ _cb_evdns_reverse(int result, char type, int count, int ttl, void *addresses, void *arg) { struct ggnet_dns_req *req; + char **name; req = arg; if (type != DNS_PTR) { - printf("libggnet_dns WARNING: dns reverse for %d received non DNS_PTR\n", + printf("libggnet_dns WARNING: dns reverse for %x received non DNS_PTR\n", req->ip.s_addr); goto free; } - req->cb_usr(&req->ip, addresses, req->data); + if (count == 0) + goto free; + if (count > 1) + printf("libggnet_dns XXX: has %d PTR records !\n", count); // XXX + name = addresses; + req->cb_usr(&req->ip, *name, req->data); free: LIST_REMOVE(req, entry); |