]> git.ipfire.org Git - thirdparty/bind9.git/commit
Handle UDP send errors when sending DNS message larger than MTU
authorEvan Hunt <each@isc.org>
Tue, 22 Jun 2021 15:01:35 +0000 (17:01 +0200)
committerOndřej Surý <ondrej@sury.org>
Wed, 23 Jun 2021 15:41:34 +0000 (17:41 +0200)
commita3ba95116ed04594ea59a8124bf781b30367a7a2
treea2fcecebdeda3fa8dae490df14554891aff86670
parente7e48414e0c9f668250e54df823ad0796280b485
Handle UDP send errors when sending DNS message larger than MTU

When the fragmentation is disabled on UDP sockets, the uv_udp_send()
call can fail with UV_EMSGSIZE for messages larger than path MTU.
Previously, this error would end with just discarding the response.  In
this commit, a proper handling of such case is added and on such error,
a new DNS response with truncated bit set is generated and sent to the
client.

This change allows us to disable the fragmentation on the UDP
sockets again.
lib/isc/netmgr/uverr2result.c
lib/ns/client.c