]> git.ipfire.org Git - thirdparty/bind9.git/commit
Fix MX checks for dynamic updates
authorMichał Kępień <michal@isc.org>
Mon, 26 Feb 2018 11:30:48 +0000 (12:30 +0100)
committerEvan Hunt <each@isc.org>
Mon, 26 Feb 2018 23:17:09 +0000 (15:17 -0800)
commit457738b3bbcf6bfacd9b97e4015e6b3605ef2cdb
tree2f6a34a15fb9eeff0e43156020d658bb5ef98fbf
parent4257b061225af44a631f1a140f9f5dac7c8d914a
Fix MX checks for dynamic updates

The check_mx() function in lib/ns/update.c incorrectly tests whether the
DNS_RDATA_CHECKMX/DNS_RDATA_CHECKMXFAIL flags are set for each applied
MX record update as these flags are never set in code paths related to
dynamic updates; they can only be set when loading a zone from a master
file (DNS_ZONEOPT_CHECKMX -> DNS_MASTER_CHECKMX -> DNS_RDATA_CHECKMX).
This flaw allows MX records containing IP addresses to be added to a
zone even when "check-mx fail;" is used.

Ensure correct behavior by modifying the relevant tests in check_mx() so
that they use DNS_ZONEOPT_CHECKMX/DNS_ZONEOPT_CHECKMXFAIL instead.

(cherry picked from commit 857a40c87bb80669ecc5cf1c51301d967e7aba53)
(cherry picked from commit 590f092e00384fd897cdef5ac75940bf727f97a3)
bin/named/update.c
bin/tests/system/nsupdate/ns1/named.conf.in
bin/tests/system/nsupdate/tests.sh