X-Git-Url: https://git.distorted.org.uk/~mdw/adns/blobdiff_plain/d942707de2dd9809338882f09a9f23316dc8be36..96b22fa55f7e24d3de4735b89e86cf009e48348e:/src/poll.c diff --git a/src/poll.c b/src/poll.c index fba6de5..60ff6ec 100644 --- a/src/poll.c +++ b/src/poll.c @@ -3,12 +3,11 @@ * - wrappers for poll(2) */ /* - * This file is - * Copyright (C) 1997-1999 Ian Jackson - * - * It is part of adns, which is - * Copyright (C) 1997-1999 Ian Jackson - * Copyright (C) 1999 Tony Finch + * This file is part of adns, which is + * Copyright (C) 1997-2000,2003,2006 Ian Jackson + * Copyright (C) 1999-2000,2003,2006 Tony Finch + * Copyright (C) 1991 Massachusetts Institute of Technology + * (See the file INSTALL for full details.) * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -32,8 +31,8 @@ #ifdef HAVE_POLL -int adns_beforepoll(adns_state ads, struct pollfd *fds, int *nfds_io, int *timeout_io, - const struct timeval *now) { +int adns_beforepoll(adns_state ads, struct pollfd *fds, int *nfds_io, + int *timeout_io, const struct timeval *now) { struct timeval tv_nowbuf, tv_tobuf, *tv_to; int space, found, timeout_ms, r; struct pollfd fds_tmp[MAX_POLLFDS]; @@ -78,7 +77,7 @@ int adns_beforepoll(adns_state ads, struct pollfd *fds, int *nfds_io, int *timeo } r= 0; xit: - adns__consistency(ads,0,cc_entex); + adns__returning(ads,0); return r; } @@ -92,7 +91,7 @@ void adns_afterpoll(adns_state ads, const struct pollfd *fds, int nfds, adns__timeouts(ads, 1, 0,0, *now); adns__fdevents(ads, fds,nfds, 0,0,0,0, *now,0); } - adns__consistency(ads,0,cc_entex); + adns__returning(ads,0); } int adns_wait_poll(adns_state ads, @@ -106,7 +105,7 @@ int adns_wait_poll(adns_state ads, for (;;) { r= adns__internal_check(ads,query_io,answer_r,context_r); - if (r != EWOULDBLOCK) goto xit; + if (r != EAGAIN) goto xit; nfds= MAX_POLLFDS; to= -1; adns_beforepoll(ads,fds,&nfds,&to,0); r= poll(fds,nfds,to); @@ -124,7 +123,7 @@ int adns_wait_poll(adns_state ads, } xit: - adns__consistency(ads,0,cc_entex); + adns__returning(ads,0); return r; }