mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-09-01 06:55:30 +00:00
Turn on QNAME minimisation when fetching nameserver addresses
This commit is contained in:
@@ -127,8 +127,12 @@ ADDR a.bit.longer.ns.name.good.
|
|||||||
ADDR ns2.good.
|
ADDR ns2.good.
|
||||||
ADDR ns3.good.
|
ADDR ns3.good.
|
||||||
ADDR ns3.good.
|
ADDR ns3.good.
|
||||||
|
NS bit.longer.ns.name.good.
|
||||||
NS boing.good.
|
NS boing.good.
|
||||||
NS good.
|
NS good.
|
||||||
|
NS longer.ns.name.good.
|
||||||
|
NS name.good.
|
||||||
|
NS ns.name.good.
|
||||||
NS zoop.boing.good.
|
NS zoop.boing.good.
|
||||||
__EOF
|
__EOF
|
||||||
cat <<__EOF | diff ans3/query.log - >/dev/null || ret=1
|
cat <<__EOF | diff ans3/query.log - >/dev/null || ret=1
|
||||||
@@ -161,7 +165,11 @@ ADDR a.bit.longer.ns.name.good.
|
|||||||
ADDR ns2.good.
|
ADDR ns2.good.
|
||||||
ADDR ns3.good.
|
ADDR ns3.good.
|
||||||
ADDR ns3.good.
|
ADDR ns3.good.
|
||||||
|
NS bit.longer.ns.name.good.
|
||||||
NS boing.good.
|
NS boing.good.
|
||||||
|
NS longer.ns.name.good.
|
||||||
|
NS name.good.
|
||||||
|
NS ns.name.good.
|
||||||
NS zoop.boing.good.
|
NS zoop.boing.good.
|
||||||
__EOF
|
__EOF
|
||||||
cat <<__EOF | diff ans3/query.log - >/dev/null || ret=1
|
cat <<__EOF | diff ans3/query.log - >/dev/null || ret=1
|
||||||
@@ -212,6 +220,7 @@ ADDR ns2.bad.
|
|||||||
ADDR ns3.bad.
|
ADDR ns3.bad.
|
||||||
ADDR ns3.bad.
|
ADDR ns3.bad.
|
||||||
NS boing.bad.
|
NS boing.bad.
|
||||||
|
NS name.bad.
|
||||||
__EOF
|
__EOF
|
||||||
cat <<__EOF | diff ans3/query.log - >/dev/null || ret=1
|
cat <<__EOF | diff ans3/query.log - >/dev/null || ret=1
|
||||||
ADDR icky.icky.icky.ptang.zoop.boing.bad.
|
ADDR icky.icky.icky.ptang.zoop.boing.bad.
|
||||||
@@ -260,6 +269,8 @@ ADDR ns2.ugly.
|
|||||||
ADDR ns3.ugly.
|
ADDR ns3.ugly.
|
||||||
ADDR ns3.ugly.
|
ADDR ns3.ugly.
|
||||||
NS boing.ugly.
|
NS boing.ugly.
|
||||||
|
NS name.ugly.
|
||||||
|
NS name.ugly.
|
||||||
__EOF
|
__EOF
|
||||||
echo "ADDR icky.icky.icky.ptang.zoop.boing.ugly." | diff ans3/query.log - >/dev/null || ret=1
|
echo "ADDR icky.icky.icky.ptang.zoop.boing.ugly." | diff ans3/query.log - >/dev/null || ret=1
|
||||||
echo "ADDR icky.icky.icky.ptang.zoop.boing.ugly." | diff ans4/query.log - >/dev/null || ret=1
|
echo "ADDR icky.icky.icky.ptang.zoop.boing.ugly." | diff ans4/query.log - >/dev/null || ret=1
|
||||||
@@ -291,7 +302,11 @@ ADDR a.bit.longer.ns.name.slow.
|
|||||||
ADDR ns2.slow.
|
ADDR ns2.slow.
|
||||||
ADDR ns3.slow.
|
ADDR ns3.slow.
|
||||||
ADDR ns3.slow.
|
ADDR ns3.slow.
|
||||||
|
NS bit.longer.ns.name.slow.
|
||||||
NS boing.slow.
|
NS boing.slow.
|
||||||
|
NS longer.ns.name.slow.
|
||||||
|
NS name.slow.
|
||||||
|
NS ns.name.slow.
|
||||||
NS slow.
|
NS slow.
|
||||||
NS zoop.boing.slow.
|
NS zoop.boing.slow.
|
||||||
__EOF
|
__EOF
|
||||||
@@ -347,8 +362,12 @@ ADDR a.bit.longer.ns.name.good.
|
|||||||
ADDR ns2.good.
|
ADDR ns2.good.
|
||||||
ADDR ns3.good.
|
ADDR ns3.good.
|
||||||
ADDR ns3.good.
|
ADDR ns3.good.
|
||||||
|
NS bit.longer.ns.name.good.
|
||||||
NS boing.good.
|
NS boing.good.
|
||||||
NS good.
|
NS good.
|
||||||
|
NS longer.ns.name.good.
|
||||||
|
NS name.good.
|
||||||
|
NS ns.name.good.
|
||||||
NS zoop.boing.good.
|
NS zoop.boing.good.
|
||||||
__EOF
|
__EOF
|
||||||
cat <<__EOF | diff ans3/query.log - >/dev/null || ret=1
|
cat <<__EOF | diff ans3/query.log - >/dev/null || ret=1
|
||||||
|
@@ -2964,6 +2964,7 @@ fetch_name(dns_adbname_t *adbname, bool start_at_zone, unsigned int depth,
|
|||||||
dns_rdataset_init(&rdataset);
|
dns_rdataset_init(&rdataset);
|
||||||
|
|
||||||
options = DNS_FETCHOPT_NOVALIDATE;
|
options = DNS_FETCHOPT_NOVALIDATE;
|
||||||
|
|
||||||
if (start_at_zone) {
|
if (start_at_zone) {
|
||||||
DP(ENTER_LEVEL, "fetch_name: starting at zone for name %p",
|
DP(ENTER_LEVEL, "fetch_name: starting at zone for name %p",
|
||||||
adbname);
|
adbname);
|
||||||
@@ -2976,6 +2977,11 @@ fetch_name(dns_adbname_t *adbname, bool start_at_zone, unsigned int depth,
|
|||||||
}
|
}
|
||||||
nameservers = &rdataset;
|
nameservers = &rdataset;
|
||||||
options |= DNS_FETCHOPT_UNSHARED;
|
options |= DNS_FETCHOPT_UNSHARED;
|
||||||
|
} else if (adb->view->qminimization) {
|
||||||
|
options |= DNS_FETCHOPT_QMINIMIZE | DNS_FETCHOPT_QMIN_SKIP_IP6A;
|
||||||
|
if (adb->view->qmin_strict) {
|
||||||
|
options |= DNS_FETCHOPT_QMIN_STRICT;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fetch = new_adbfetch(adb);
|
fetch = new_adbfetch(adb);
|
||||||
|
Reference in New Issue
Block a user