diff --git a/bin/tests/system/ifconfig.sh.in b/bin/tests/system/ifconfig.sh.in index 76233d6184..298bd3f041 100755 --- a/bin/tests/system/ifconfig.sh.in +++ b/bin/tests/system/ifconfig.sh.in @@ -24,6 +24,10 @@ # 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. +# +# See also org.isc.bind.system (a version of this script for use on macOS) +# and testsock.pl (which checks the interfaces are configured) +# top_srcdir=@abs_top_srcdir@ @@ -237,6 +241,10 @@ sequence() ( # 'ns' in the namserver being configured. # 'int' interface identifier. # +# See also `org.isc.bind.system`. +# +# This `max` setting is grepped out for use by testsock.pl +# max=11 case $1 in start|up|stop|down) diff --git a/bin/tests/system/org.isc.bind.system b/bin/tests/system/org.isc.bind.system index 276437ad6e..6c5a8cd4fe 100644 --- a/bin/tests/system/org.isc.bind.system +++ b/bin/tests/system/org.isc.bind.system @@ -11,12 +11,14 @@ # See the COPYRIGHT file distributed with this work for additional # information regarding copyright ownership. +# see also ifconfig.sh.in and testsock.pl + ifup() { /sbin/ifconfig lo0 10.53.$1.$3 alias /sbin/ifconfig lo0 inet6 fd92:7065:b8e:${2}ff::${3} alias } -for ns in 1 2 3 4 5 6 7 8 9 10 +for ns in 1 2 3 4 5 6 7 8 9 10 11 do ifup 0 ff $ns done diff --git a/bin/tests/system/testsock.pl b/bin/tests/system/testsock.pl index e9448ed380..3677e200b2 100755 --- a/bin/tests/system/testsock.pl +++ b/bin/tests/system/testsock.pl @@ -27,7 +27,15 @@ my @ids; if ($id != 0) { @ids = ($id); } else { - @ids = (1..8); + my $fn = "ifconfig.sh"; + open FH, "< $fn" or die "open < $fn: $!\n"; + while () { + @ids = (1..$1) + if /^max=(\d+)\s*$/; + } + close FH; + die "could not find max IP address in $fn\n" + unless @ids > 1; } foreach $id (@ids) { diff --git a/bin/tests/system/xfer/prereq.sh b/bin/tests/system/xfer/prereq.sh new file mode 100644 index 0000000000..c7b78281e2 --- /dev/null +++ b/bin/tests/system/xfer/prereq.sh @@ -0,0 +1,26 @@ +#!/bin/sh + +# Copyright (C) Internet Systems Consortium, Inc. ("ISC") +# +# SPDX-License-Identifier: MPL-2.0 +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, you can obtain one at https://mozilla.org/MPL/2.0/. +# +# See the COPYRIGHT file distributed with this work for additional +# information regarding copyright ownership. + +. ../conf.sh + +# macOS ships with Net::DNS 0.74 which does not work with +# HMAC-SHA256, despite the workarounds in ans.pl + +if perl -MNet::DNS -e 'exit $Net::DNS::VERSION >= 1.0' +then + version=$(perl -MNet::DNS -e 'print $Net::DNS::VERSION') + echo_i "perl Net::DNS $version is too old - skipping xfer test" + exit 1 +fi + +exit 0