diff --git a/CHANGES b/CHANGES index b15c0c302e..40c9bc9749 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,5 @@ +5270. [bug] 'dig +expandaaaa +short' did not work. [GL #1152] + 5269. [port] cygwin: can return ETIMEDOUT on connect() with a non-blocking socket. [GL #1133] diff --git a/bin/dig/dig.c b/bin/dig/dig.c index 8b11e035b6..8e535ca69a 100644 --- a/bin/dig/dig.c +++ b/bin/dig/dig.c @@ -354,6 +354,8 @@ say_message(dns_rdata_t *rdata, dig_query_t *query, isc_buffer_t *buf) { styleflags |= DNS_STYLEFLAG_NOCRYPTO; if (query->lookup->print_unknown_format) styleflags |= DNS_STYLEFLAG_UNKNOWNFORMAT; + if (query->lookup->expandaaaa) + styleflags |= DNS_STYLEFLAG_EXPANDAAAA; result = dns_rdata_tofmttext(rdata, NULL, styleflags, 0, splitwidth, " ", buf); if (result == ISC_R_NOSPACE) diff --git a/bin/tests/system/digdelv/tests.sh b/bin/tests/system/digdelv/tests.sh index 0228c77bc8..9dfd9de475 100644 --- a/bin/tests/system/digdelv/tests.sh +++ b/bin/tests/system/digdelv/tests.sh @@ -708,6 +708,14 @@ if [ -x "$DIG" ] ; then grep "ns2.example.*fd92:7065:b8e:ffff::2" dig.out.test$n > /dev/null || ret=1 if [ $ret -ne 0 ]; then echo_i "failed"; fi status=$((status+ret)) + + n=$((n+1)) + echo_i "check that dig +short +expandaaaa works ($n)" + ret=0 + dig_with_opts @10.53.0.3 +short +expandaaaa AAAA ns2.example > dig.out.test$n 2>&1 || ret=1 + grep '^fd92:7065:0b8e:ffff:0000:0000:0000:0002$' dig.out.test$n > /dev/null || ret=1 + if [ $ret -ne 0 ]; then echo_i "failed"; fi + status=$((status+ret)) else echo_i "$DIG is needed, so skipping these dig tests" fi