*/
/*
* This file is part of adns, which is
- * Copyright (C) 1997-2000,2003,2006,2014-2016 Ian Jackson
+ * Copyright (C) 1997-2000,2003,2006,2014-2016,2020 Ian Jackson
* Copyright (C) 2014 Mark Wooding
* Copyright (C) 1999-2000,2003,2006 Tony Finch
* Copyright (C) 1991 Massachusetts Institute of Technology
/* Timeout handling functions. */
+void adns__timeout_set(adns_query qu, struct timeval now, int ms) {
+ qu->timeout_expires= now;
+ timevaladd(&qu->timeout_expires,ms);
+}
+
void adns__must_gettimeofday(adns_state ads, const struct timeval **now_io,
struct timeval *tv_buf) {
const struct timeval *now;
for (qu= queue->head; qu; qu= nqu) {
nqu= qu->next;
- if (!timercmp(&now,&qu->timeout,>)) {
- inter_maxtoabs(tv_io,tvbuf,now,qu->timeout);
+ if (!timercmp(&now,&qu->timeout_expires,>)) {
+ inter_maxtoabs(tv_io,tvbuf,now,qu->timeout_expires);
} else {
if (!act) { inter_immed(tv_io,tvbuf); return; }
LIST_UNLINK(*queue,qu);