X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=secnet.git;a=blobdiff_plain;f=resolver.c;h=f2023fa0589289eb67d2ee192aa086c152f943c1;hp=6477777f64c3d4b73aff5cc6f2fbfe2030ef8c5a;hb=2f541b16b1fab22c46b9d172d0199d62ca0fe76f;hpb=7d583d5108d430b417280b1af3450b855e67098a diff --git a/resolver.c b/resolver.c index 6477777..f2023fa 100644 --- a/resolver.c +++ b/resolver.c @@ -48,9 +48,9 @@ static bool_t resolve_request(void *sst, cstring_t name, ca.ia.sin.sin_family=AF_INET; ca.ia.sin.sin_port=htons(port); if (inet_aton(trimmed,&ca.ia.sin.sin_addr)) - cb(cst,&ca,1); + cb(cst,&ca,1,0); else - cb(cst,0,0); + cb(cst,0,0,"invalid IP address"); return True; } @@ -96,7 +96,7 @@ static void resolver_afterpoll(void *sst, struct pollfd *fds, int nfds) if (rv==0) { q=qp; if (ans->status!=adns_s_ok) { - q->answer(q->cst,NULL,0); /* Failure */ + q->answer(q->cst,NULL,0,adns_strerror(ans->status)); free(q); free(ans); } else { @@ -132,7 +132,7 @@ static void resolver_afterpoll(void *sst, struct pollfd *fds, int nfds) break; } } - q->answer(q->cst,ca_buf,wslot); + q->answer(q->cst,ca_buf,wslot,0); free(q); free(ans); }