]> git.ipfire.org Git - thirdparty/bind9.git/commit
Fix nsupdate hang when processing a large update
authorMatthijs Mekking <matthijs@isc.org>
Fri, 6 Dec 2024 08:45:46 +0000 (09:45 +0100)
committerMatthijs Mekking <matthijs@isc.org>
Fri, 6 Dec 2024 09:26:40 +0000 (09:26 +0000)
commit90fbe91997ac5ffe9f61979339d0669bd7320aa0
tree3340e43dd5139f0f0c1b987ab7c82bc20fc23fdf
parent7068d0698f758ca7c45e9a19b23a6ed34521a171
Fix nsupdate hang when processing a large update

The root cause is the fix for CVE-2024-0760 (part 3), which resets
the TCP connection on a failed send. Specifically commit
4b7c6138 stops reading on the socket
because the TCP connection is throttling.

When the tcpdns_send_cb callback thinks about restarting reading
on the socket, this fails because the socket is a client socket.
And nsupdate is a client and is using the same netmgr code.

This commit removes the requirement that the socket must be a server
socket, allowing reading on the socket again after being throttled.

(manually picked from commit aa24b77d8ba9ba2c55b71f18f54e19f71a200491)
lib/isc/netmgr/tcpdns.c
lib/isc/netmgr/tlsdns.c