Add a regression test in the RRL system test
This commit modifies the MTU of the loopback interface on
Linux systems to 1500, so that oversized UDP packets can
trigger EMSGSIZE errors, and tests that named handles
such errors correctly.
Note that the loopback MTU size has not yet been modified
for other platforms.
(cherry picked from commit cfd058d622)
This commit is contained in:
@@ -19,6 +19,9 @@
|
||||
# fd92:7065:b8e:99ff::{1..2}
|
||||
# fd92:7065:b8e:ff::{1..2}
|
||||
#
|
||||
# On Linux, we also set the MTU on the 1500 bytes to match the default MTU on
|
||||
# physical interfaces, so we can properly test the cases with packets bigger
|
||||
# than interface MTU.
|
||||
|
||||
SYSTEMTESTTOP="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
. "$SYSTEMTESTTOP/conf.sh"
|
||||
@@ -76,12 +79,14 @@ case "$1" in
|
||||
if [ $use_ip ]; then
|
||||
ip address add 10.53.$i.$ns/24 \
|
||||
dev lo:$int
|
||||
ip link set dev lo:$int mtu 1500
|
||||
[ "$ipv6" ] && ip address add \
|
||||
fd92:7065:b8e:${ipv6}ff::$ns/64 \
|
||||
dev lo
|
||||
else
|
||||
ifconfig lo:$int 10.53.$i.$ns up \
|
||||
netmask 255.255.255.0
|
||||
netmask 255.255.255.0 \
|
||||
mtu 1500
|
||||
[ "$ipv6" ] && ifconfig lo inet6 add \
|
||||
fd92:7065:b8e:${ipv6}ff::$ns/64
|
||||
fi
|
||||
|
||||
@@ -22,6 +22,7 @@ options {
|
||||
notify no;
|
||||
recursion yes;
|
||||
dnssec-validation yes;
|
||||
max-udp-size 4096;
|
||||
|
||||
rate-limit {
|
||||
responses-per-second 2;
|
||||
|
||||
@@ -40,3 +40,6 @@ a8 A 192.0.2.8
|
||||
|
||||
; a9 for all-per-second limit
|
||||
$GENERATE 101-180 all$.a9 A 192.0.2.8
|
||||
|
||||
; oversized TXT record
|
||||
$GENERATE 1-100 big 1 TXT "txt$"
|
||||
|
||||
@@ -272,6 +272,10 @@ $DIG $DIGOPTS @$ns4 A a7.tld4 > /dev/null 2>&1
|
||||
$DIG $DIGOPTS @$ns4 A a7.tld4 > /dev/null 2>&1
|
||||
$DIG $DIGOPTS @$ns4 A a7.tld4 > /dev/null 2>&1
|
||||
|
||||
# regression test for GL #2839
|
||||
DIGOPTS="+bufsize=4096 +ignore -p ${PORT}"
|
||||
$DIG $DIGOPTS @$ns4 TXT big.tld4 > /dev/null 2>&1
|
||||
|
||||
grep "would limit" ns4/named.run >/dev/null 2>&1 ||
|
||||
setret "\"would limit\" not found in log file."
|
||||
|
||||
|
||||
Reference in New Issue
Block a user