mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-08-30 22:15:20 +00:00
[master] add delv system test
3969. [test] Added 'delv' system test. [RT #36901]
This commit is contained in:
2
CHANGES
2
CHANGES
@@ -1,3 +1,5 @@
|
|||||||
|
3969. [test] Added 'delv' system test. [RT #36901]
|
||||||
|
|
||||||
3968. [bug] Silence spurious log messages when using 'named -[46]'.
|
3968. [bug] Silence spurious log messages when using 'named -[46]'.
|
||||||
[RT #37308]
|
[RT #37308]
|
||||||
|
|
||||||
|
@@ -711,10 +711,17 @@ setup_dnsseckeys(dns_client_t *client) {
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
if (trust_anchor == NULL)
|
if (trust_anchor == NULL) {
|
||||||
trust_anchor = isc_mem_strdup(mctx, ".");
|
trust_anchor = isc_mem_strdup(mctx, ".");
|
||||||
if (dlv_anchor == NULL)
|
if (trust_anchor == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (dlv_anchor == NULL) {
|
||||||
dlv_anchor = isc_mem_strdup(mctx, "dlv.isc.org");
|
dlv_anchor = isc_mem_strdup(mctx, "dlv.isc.org");
|
||||||
|
if (dlv_anchor == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
|
}
|
||||||
|
|
||||||
CHECK(convert_name(&afn, &anchor_name, trust_anchor));
|
CHECK(convert_name(&afn, &anchor_name, trust_anchor));
|
||||||
CHECK(convert_name(&dfn, &dlv_name, dlv_anchor));
|
CHECK(convert_name(&dfn, &dlv_name, dlv_anchor));
|
||||||
@@ -1026,8 +1033,11 @@ plus_option(char *option) {
|
|||||||
if (state && no_sigs)
|
if (state && no_sigs)
|
||||||
break;
|
break;
|
||||||
dlv_validation = state;
|
dlv_validation = state;
|
||||||
if (value != NULL)
|
if (value != NULL) {
|
||||||
dlv_anchor = isc_mem_strdup(mctx, value);
|
dlv_anchor = isc_mem_strdup(mctx, value);
|
||||||
|
if (dlv_anchor == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 'n': /* dnssec */
|
case 'n': /* dnssec */
|
||||||
FULLCHECK("dnssec");
|
FULLCHECK("dnssec");
|
||||||
@@ -1059,8 +1069,11 @@ plus_option(char *option) {
|
|||||||
if (state && no_sigs)
|
if (state && no_sigs)
|
||||||
break;
|
break;
|
||||||
root_validation = state;
|
root_validation = state;
|
||||||
if (value != NULL)
|
if (value != NULL) {
|
||||||
trust_anchor = isc_mem_strdup(mctx, value);
|
trust_anchor = isc_mem_strdup(mctx, value);
|
||||||
|
if (trust_anchor == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 'r': /* rrcomments */
|
case 'r': /* rrcomments */
|
||||||
FULLCHECK("rrcomments");
|
FULLCHECK("rrcomments");
|
||||||
@@ -1231,6 +1244,8 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
|||||||
switch (opt) {
|
switch (opt) {
|
||||||
case 'a':
|
case 'a':
|
||||||
anchorfile = isc_mem_strdup(mctx, value);
|
anchorfile = isc_mem_strdup(mctx, value);
|
||||||
|
if (anchorfile == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
return (value_from_next);
|
return (value_from_next);
|
||||||
case 'b':
|
case 'b':
|
||||||
hash = strchr(value, '#');
|
hash = strchr(value, '#');
|
||||||
@@ -1289,11 +1304,13 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
|||||||
port = value;
|
port = value;
|
||||||
return (value_from_next);
|
return (value_from_next);
|
||||||
case 'q':
|
case 'q':
|
||||||
if (qname != NULL) {
|
if (curqname != NULL) {
|
||||||
warn("extra query name");
|
warn("extra query name");
|
||||||
isc_mem_free(mctx, qname);
|
isc_mem_free(mctx, curqname);
|
||||||
}
|
}
|
||||||
curqname = value;
|
curqname = isc_mem_strdup(mctx, value);
|
||||||
|
if (curqname == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
return (value_from_next);
|
return (value_from_next);
|
||||||
case 't':
|
case 't':
|
||||||
*open_type_class = ISC_FALSE;
|
*open_type_class = ISC_FALSE;
|
||||||
@@ -1316,9 +1333,13 @@ dash_option(char *option, char *next, isc_boolean_t *open_type_class) {
|
|||||||
result = get_reverse(textname, sizeof(textname), value,
|
result = get_reverse(textname, sizeof(textname), value,
|
||||||
ISC_FALSE);
|
ISC_FALSE);
|
||||||
if (result == ISC_R_SUCCESS) {
|
if (result == ISC_R_SUCCESS) {
|
||||||
if (curqname != NULL)
|
if (curqname != NULL) {
|
||||||
|
isc_mem_free(mctx, curqname);
|
||||||
warn("extra query name");
|
warn("extra query name");
|
||||||
|
}
|
||||||
curqname = isc_mem_strdup(mctx, textname);
|
curqname = isc_mem_strdup(mctx, textname);
|
||||||
|
if (curqname == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
if (typeset)
|
if (typeset)
|
||||||
warn("extra query type");
|
warn("extra query type");
|
||||||
qtype = dns_rdatatype_ptr;
|
qtype = dns_rdatatype_ptr;
|
||||||
@@ -1426,8 +1447,11 @@ parse_args(int argc, char **argv) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (curqname == NULL)
|
if (curqname == NULL) {
|
||||||
curqname = argv[0];
|
curqname = isc_mem_strdup(mctx, argv[0]);
|
||||||
|
if (curqname == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1440,10 +1464,13 @@ parse_args(int argc, char **argv) {
|
|||||||
|
|
||||||
if (curqname == NULL) {
|
if (curqname == NULL) {
|
||||||
qname = isc_mem_strdup(mctx, ".");
|
qname = isc_mem_strdup(mctx, ".");
|
||||||
|
if (qname == NULL)
|
||||||
|
fatal("out of memory");
|
||||||
|
|
||||||
if (!typeset)
|
if (!typeset)
|
||||||
qtype = dns_rdatatype_ns;
|
qtype = dns_rdatatype_ns;
|
||||||
} else
|
} else
|
||||||
qname = isc_mem_strdup(mctx, curqname);
|
qname = curqname;
|
||||||
}
|
}
|
||||||
|
|
||||||
static isc_result_t
|
static isc_result_t
|
||||||
|
@@ -66,8 +66,8 @@ RANDFILE=$TOP/bin/tests/system/random.data
|
|||||||
# v6synth
|
# v6synth
|
||||||
SUBDIRS="acl additional allow_query addzone autosign builtin
|
SUBDIRS="acl additional allow_query addzone autosign builtin
|
||||||
cacheclean case checkconf @CHECKDS@ checknames checkzone
|
cacheclean case checkconf @CHECKDS@ checknames checkzone
|
||||||
@COVERAGE@ database dlv dlvauto dlz dlzexternal dname dns64
|
@COVERAGE@ database delv dlv dlvauto dlz dlzexternal
|
||||||
dnssec dsdigest dscp ecdsa ednscompliance emptyzones
|
dname dns64 dnssec dsdigest dscp ecdsa ednscompliance emptyzones
|
||||||
filter-aaaa formerr forward geoip glue gost ixfr inline
|
filter-aaaa formerr forward geoip glue gost ixfr inline
|
||||||
limits logfileconfig lwresd masterfile masterformat metadata
|
limits logfileconfig lwresd masterfile masterformat metadata
|
||||||
notify nslookup nsupdate pending @PKCS11_TEST@ redirect
|
notify nslookup nsupdate pending @PKCS11_TEST@ redirect
|
||||||
|
19
bin/tests/system/delv/clean.sh
Normal file
19
bin/tests/system/delv/clean.sh
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC")
|
||||||
|
#
|
||||||
|
# Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
# purpose with or without fee is hereby granted, provided that the above
|
||||||
|
# copyright notice and this permission notice appear in all copies.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||||
|
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||||
|
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||||
|
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
# PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
|
||||||
|
rm -f delv.out.test*
|
||||||
|
rm -f */named.memstats
|
||||||
|
rm -f */named.run
|
37
bin/tests/system/delv/ns1/named.conf
Normal file
37
bin/tests/system/delv/ns1/named.conf
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC")
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
|
* copyright notice and this permission notice appear in all copies.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||||
|
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||||
|
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||||
|
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// NS1
|
||||||
|
|
||||||
|
controls { /* empty */ };
|
||||||
|
|
||||||
|
options {
|
||||||
|
query-source address 10.53.0.1;
|
||||||
|
port 5300;
|
||||||
|
pid-file "named.pid";
|
||||||
|
listen-on { 10.53.0.1; };
|
||||||
|
listen-on-v6 { fd92:7065:b8e:ffff::1; };
|
||||||
|
recursion no;
|
||||||
|
notify yes;
|
||||||
|
dnssec-enable no;
|
||||||
|
dnssec-validation no;
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "." {
|
||||||
|
type master;
|
||||||
|
file "root.db";
|
||||||
|
};
|
||||||
|
|
29
bin/tests/system/delv/ns1/root.db
Normal file
29
bin/tests/system/delv/ns1/root.db
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
; Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC")
|
||||||
|
;
|
||||||
|
; Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
; purpose with or without fee is hereby granted, provided that the above
|
||||||
|
; copyright notice and this permission notice appear in all copies.
|
||||||
|
;
|
||||||
|
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||||
|
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||||
|
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||||
|
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
; PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
|
||||||
|
$TTL 300
|
||||||
|
. IN SOA gson.nominum.com. a.root.servers.nil. (
|
||||||
|
2000042100 ; serial
|
||||||
|
600 ; refresh
|
||||||
|
600 ; retry
|
||||||
|
1200 ; expire
|
||||||
|
600 ; minimum
|
||||||
|
)
|
||||||
|
. NS a.root-servers.nil.
|
||||||
|
a.root-servers.nil. A 10.53.0.1
|
||||||
|
a.root-servers.nil. AAAA fd92:7065:b8e:ffff::1
|
||||||
|
|
||||||
|
example. NS ns2.example.
|
||||||
|
ns2.example. A 10.53.0.2
|
||||||
|
ns2.example. AAAA fd92:7065:b8e:ffff::2
|
39
bin/tests/system/delv/ns2/example.db
Normal file
39
bin/tests/system/delv/ns2/example.db
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
; Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC")
|
||||||
|
;
|
||||||
|
; Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
; purpose with or without fee is hereby granted, provided that the above
|
||||||
|
; copyright notice and this permission notice appear in all copies.
|
||||||
|
;
|
||||||
|
; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||||
|
; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||||
|
; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||||
|
; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
; PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
|
||||||
|
$TTL 300 ; 5 minutes
|
||||||
|
@ IN SOA mname1. . (
|
||||||
|
2000042407 ; serial
|
||||||
|
20 ; refresh (20 seconds)
|
||||||
|
20 ; retry (20 seconds)
|
||||||
|
1814400 ; expire (3 weeks)
|
||||||
|
3600 ; minimum (1 hour)
|
||||||
|
)
|
||||||
|
NS ns2
|
||||||
|
NS ns3
|
||||||
|
ns2 A 10.53.0.2
|
||||||
|
ns2 AAAA fd92:7065:b8e:ffff::2
|
||||||
|
ns3 A 10.53.0.3
|
||||||
|
ns3 AAAA fd92:7065:b8e:ffff::3
|
||||||
|
|
||||||
|
a A 10.0.0.1
|
||||||
|
a AAAA fd92:7065:b8e:ffff::1
|
||||||
|
b A 10.0.0.2
|
||||||
|
b AAAA fd92:7065:b8e:ffff::2
|
||||||
|
c A 10.0.0.3
|
||||||
|
c AAAA fd92:7065:b8e:ffff::3
|
||||||
|
|
||||||
|
foo TXT "testing"
|
||||||
|
foo A 10.0.1.0
|
||||||
|
foo SSHFP 2 1 123456789abcdef67890123456789abcdef67890
|
40
bin/tests/system/delv/ns2/named.conf
Normal file
40
bin/tests/system/delv/ns2/named.conf
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC")
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
|
* copyright notice and this permission notice appear in all copies.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||||
|
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||||
|
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||||
|
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// NS2
|
||||||
|
|
||||||
|
controls { /* empty */ };
|
||||||
|
|
||||||
|
options {
|
||||||
|
query-source address 10.53.0.2;
|
||||||
|
port 5300;
|
||||||
|
pid-file "named.pid";
|
||||||
|
listen-on { 10.53.0.2; };
|
||||||
|
listen-on-v6 { fd92:7065:b8e:ffff::2; };
|
||||||
|
recursion no;
|
||||||
|
dnssec-enable no;
|
||||||
|
dnssec-validation no;
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "." {
|
||||||
|
type hint;
|
||||||
|
file "../../common/root.hint";
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "example" {
|
||||||
|
type master;
|
||||||
|
file "example.db";
|
||||||
|
};
|
36
bin/tests/system/delv/ns3/named.conf
Normal file
36
bin/tests/system/delv/ns3/named.conf
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC")
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
|
* copyright notice and this permission notice appear in all copies.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||||
|
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||||
|
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||||
|
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// NS4
|
||||||
|
|
||||||
|
controls { /* empty */ };
|
||||||
|
|
||||||
|
options {
|
||||||
|
query-source address 10.53.0.3 dscp 1;
|
||||||
|
port 5300;
|
||||||
|
pid-file "named.pid";
|
||||||
|
listen-on { 10.53.0.3; };
|
||||||
|
listen-on-v6 { fd92:7065:b8e:ffff::3; };
|
||||||
|
recursion yes;
|
||||||
|
acache-enable yes;
|
||||||
|
dnssec-enable no;
|
||||||
|
dnssec-validation no;
|
||||||
|
};
|
||||||
|
|
||||||
|
zone "." {
|
||||||
|
type hint;
|
||||||
|
file "../../common/root.hint";
|
||||||
|
};
|
72
bin/tests/system/delv/tests.sh
Normal file
72
bin/tests/system/delv/tests.sh
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
# Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC")
|
||||||
|
#
|
||||||
|
# Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
# purpose with or without fee is hereby granted, provided that the above
|
||||||
|
# copyright notice and this permission notice appear in all copies.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||||
|
# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||||
|
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||||
|
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
# PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
|
||||||
|
SYSTEMTESTTOP=..
|
||||||
|
. $SYSTEMTESTTOP/conf.sh
|
||||||
|
|
||||||
|
status=0
|
||||||
|
n=0
|
||||||
|
# using delv insecure mode as not testing dnssec here
|
||||||
|
DELVOPTS="-i -p 5300"
|
||||||
|
|
||||||
|
if [ -x ${DELV} ] ; then
|
||||||
|
n=`expr $n + 1`
|
||||||
|
echo "I:checking delv short form works ($n)"
|
||||||
|
ret=0
|
||||||
|
$DELV $DELVOPTS @10.53.0.3 +short a a.example > delv.out.test$n || ret=1
|
||||||
|
if test `wc -l < delv.out.test$n` != 1 ; then ret=1 ; fi
|
||||||
|
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||||
|
status=`expr $status + $ret`
|
||||||
|
|
||||||
|
n=`expr $n + 1`
|
||||||
|
echo "I:checking delv split width works ($n)"
|
||||||
|
ret=0
|
||||||
|
$DELV $DELVOPTS @10.53.0.3 +split=4 -t sshfp foo.example > delv.out.test$n || ret=1
|
||||||
|
grep " 9ABC DEF6 7890 " < delv.out.test$n > /dev/null || ret=1
|
||||||
|
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||||
|
status=`expr $status + $ret`
|
||||||
|
|
||||||
|
echo "I:checking delv with IPv6 on IPv4 does not work ($n)"
|
||||||
|
n=`expr $n + 1`
|
||||||
|
if $TESTSOCK6 fd92:7065:b8e:ffff::3
|
||||||
|
then
|
||||||
|
ret=0
|
||||||
|
# following should fail because @IPv4 overrides earlier @IPv6 above
|
||||||
|
# and -6 forces IPv6 so this should fail, such as:
|
||||||
|
# ;; getaddrinfo failed: hostname nor servname provided, or not known
|
||||||
|
# ;; resolution failed: not found
|
||||||
|
# note that delv returns success even on lookup failure
|
||||||
|
$DELV $DELVOPTS @fd92:7065:b8e:ffff::3 @10.53.0.3 -6 -t txt foo.example > delv.out.test$n 2>&1 || ret=1
|
||||||
|
# it should have no results but error output
|
||||||
|
grep "testing" < delv.out.test$n > /dev/null && ret=1
|
||||||
|
grep "getaddrinfo failed:" < delv.out.test$n > /dev/null || ret=1
|
||||||
|
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||||
|
status=`expr $status + $ret`
|
||||||
|
else
|
||||||
|
echo "I:IPv6 unavailable; skipping"
|
||||||
|
fi
|
||||||
|
|
||||||
|
n=`expr $n + 1`
|
||||||
|
echo "I:checking delv with reverse lookup works ($n)"
|
||||||
|
ret=0
|
||||||
|
$DELV $DELVOPTS @10.53.0.3 -x 127.0.0.1 > delv.out.test$n 2>&1 || ret=1
|
||||||
|
# doesn't matter if has answer
|
||||||
|
grep -i "127\.in-addr\.arpa\." < delv.out.test$n > /dev/null || ret=1
|
||||||
|
if [ $ret != 0 ]; then echo "I:failed"; fi
|
||||||
|
status=`expr $status + $ret`
|
||||||
|
|
||||||
|
exit $status
|
||||||
|
else
|
||||||
|
echo "$DELV is needed, so skipping these delv tests"
|
||||||
|
fi
|
Reference in New Issue
Block a user