From: ian Date: Sun, 27 Sep 1998 17:56:52 +0000 (+0000) Subject: Cleanups. X-Git-Tag: abandon.1998-10-04.rrtypenoenum~14 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;ds=sidebyside;h=72934832416660b35dbdc62b6294c1ffdf65d015;p=adns.git Cleanups. --- diff --git a/src/adns.c b/src/adns.c index 43a0dac..cea597e 100644 --- a/src/adns.c +++ b/src/adns.c @@ -327,7 +327,7 @@ int adns_check(adns_state ads, int adns_synchronous(adns_state ads, const char *owner, adns_rrtype type, - int flags, + adns_queryflags flags, adns_answer *answer) { adns_query qu; int r; @@ -335,7 +335,9 @@ int adns_synchronous(adns_state ads, r= adns_submit(ads,owner,type,flags,0,&qu); if (r) return r; - r= adns_wait(ads,&qu,answer,0); + do { + r= adns_wait(ads,&qu,answer,0); + } while (r==EINTR); if (r) adns_cancel(ads,qu); return r; } @@ -343,7 +345,7 @@ int adns_synchronous(adns_state ads, int adns_submit(adns_state ads, const char *owner, adns_rrtype type, - int flags, + adns_queryflags flags, void *context, adns_query *query_r) { adns_query qu; diff --git a/src/adns.h b/src/adns.h index 69425ae..553c320 100644 --- a/src/adns.h +++ b/src/adns.h @@ -123,8 +123,9 @@ int adns_init(adns_state *newstate_r, adns_initflags flags); int adns_synchronous(adns_state ads, const char *owner, adns_rrtype type, - int flags, + adns_queryflags flags, adns_answer *answer); +/* Will not return EINTR. */ /* NB: if you set adns_if_noautosys then _submit and _check do not * make any system calls; you must use adns_callback (possibly after @@ -134,7 +135,7 @@ int adns_synchronous(adns_state ads, int adns_submit(adns_state ads, const char *owner, adns_rrtype type, - int flags, + adns_queryflags flags, void *context, adns_query *query_r); @@ -147,6 +148,7 @@ int adns_wait(adns_state ads, adns_query *query_io, adns_answer *answer, void *context_r); +/* Might return EINTR - if so, try again */ void adns_cancel(adns_state ads, adns_query query);