chiark / gitweb /
ads->configerrno now initialised (in setup.c). timercmp(,,<=) doesn't
[adns.git] / src / event.c
index 1b527a2fff26a414aa5cc4a5cdc2bc04a23572b8..adb808b6709e0b73a9d1cd66d3e95c69f94477be 100644 (file)
@@ -173,7 +173,7 @@ void adns__timeouts(adns_state ads, int act,
 
   for (qu= ads->timew.head; qu; qu= nqu) {
     nqu= qu->next;
-    if (timercmp(&now,&qu->timeout,<=)) {
+    if (!timercmp(&now,&qu->timeout,>)) {
       if (!tv_io) continue;
       inter_maxtoabs(tv_io,tvbuf,now,qu->timeout);
     } else {
@@ -228,7 +228,6 @@ int adns__pollfds(adns_state ads, struct pollfd pollfds_buf[MAX_POLLFDS]) {
     abort();
   }
   pollfds_buf[1].fd= ads->tcpsocket;
-  pollfds_buf[1].revents= 0;
   return 2;
 }
 
@@ -527,6 +526,7 @@ static int internal_check(adns_state ads,
   LIST_UNLINK(ads->output,qu);
   *answer= qu->answer;
   if (context_r) *context_r= qu->ctx.ext;
+  *query_io= qu;
   free(qu);
   return 0;
 }