From: Ondřej Surý Date: Wed, 30 Sep 2020 16:18:05 +0000 (+0200) Subject: Change the default EDNS buffer size for dig, mdig and host to 1232 X-Git-Tag: v9.17.6~13^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=63c29dcdfa6b7a3414e534155b81d6ea836bba04;p=thirdparty%2Fbind9.git Change the default EDNS buffer size for dig, mdig and host to 1232 The dig should behave closely to how the resolver code in `named` work, so we need to change the buffer size in dig, mdig and host too. --- diff --git a/bin/dig/dighost.h b/bin/dig/dighost.h index 385b9abcf10..bc280e540e9 100644 --- a/bin/dig/dighost.h +++ b/bin/dig/dighost.h @@ -73,7 +73,7 @@ #define LOOKUP_LIMIT 64 #define DEFAULT_EDNS_VERSION 0 -#define DEFAULT_EDNS_BUFSIZE 4096 +#define DEFAULT_EDNS_BUFSIZE 1232 /*% * Lookup_limit is just a limiter, keeping too many lookups from being diff --git a/bin/tests/system/digdelv/tests.sh b/bin/tests/system/digdelv/tests.sh index 99b80992f2a..aed4c23ede9 100644 --- a/bin/tests/system/digdelv/tests.sh +++ b/bin/tests/system/digdelv/tests.sh @@ -958,10 +958,10 @@ if [ -x "$DIG" ] ; then echo_i "check that dig +bufsize restores default bufsize ($n)" ret=0 dig_with_opts @10.53.0.3 a.example +bufsize=0 +bufsize +qr > dig.out.test$n 2>&1 || ret=1 + lines=`grep "EDNS:.* udp:" dig.out.test$n | wc -l` lines1232=`grep "EDNS:.* udp: 1232" dig.out.test$n | wc -l` - lines4096=`grep "EDNS:.* udp: 4096" dig.out.test$n | wc -l` - test $lines1232 -eq 1 || ret=1 - test $lines4096 -eq 1 || ret=1 + test $lines -eq 2 || ret=1 + test $lines1232 -eq 2 || ret=1 if [ $ret -ne 0 ]; then echo_i "failed"; fi status=$((status+ret)) diff --git a/bin/tools/mdig.c b/bin/tools/mdig.c index c6e4ea43160..a69b1e4e8ce 100644 --- a/bin/tools/mdig.c +++ b/bin/tools/mdig.c @@ -638,7 +638,7 @@ sendquery(struct query *query, isc_task_t *task) { unsigned char cookie[40]; if (query->udpsize == 0) { - query->udpsize = 4096; + query->udpsize = 1232; } if (query->edns < 0) { query->edns = 0;