bind9/lib
Evan Hunt 0e800467ee fix handling of TCP timeouts
when a TCP dispatch times out, we call tcp_recv() with a result
value of ISC_R_TIMEDOUT; this cancels the oldest dispatch
entry in the dispatch's active queue, plus any additional entries
that have waited longer than their configured timeouts. if, at
that point, there were more dispatch entries still on the active
queue, it resumes reading, but until now it failed to restart
the timer.

this has been corrected: we now calculate a new timeout
based on the oldest dispatch entry still remaining.  this
requires us to initialize the start time of each dispatch entry
when it's first added to the queue.

in order to ensure that the handling of timed-out requests is
consistent, we now calculate the runtime of each dispatch
entry based on the same value for 'now'.

incidentally also fixed a compile error that turned up when
DNS_DISPATCH_TRACE was turned on.
2023-05-26 00:41:01 -07:00
..
dns fix handling of TCP timeouts 2023-05-26 00:41:01 -07:00
isc Ensure "wrap" variable is non-NULL 2023-05-19 11:02:59 +02:00
isccc Fix the streaming read callback shutdown logic 2023-04-20 12:58:32 +02:00
isccfg Add configuration option 'cdnskey' 2023-05-11 17:07:51 +02:00
ns Add new dns_rdatatype_iskeymaterial() function 2023-05-23 08:53:23 +02:00
.gitignore The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
Makefile.am Move irs_resconf into libdns and remove libirs 2023-02-24 09:38:59 +00:00