182 lines
6.0 KiB
Bash
182 lines
6.0 KiB
Bash
#!/bin/sh
|
|
#
|
|
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
|
#
|
|
# 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 http://mozilla.org/MPL/2.0/.
|
|
#
|
|
# See the COPYRIGHT file distributed with this work for additional
|
|
# information regarding copyright ownership.
|
|
|
|
#
|
|
# Common configuration data for system tests, to be sourced into
|
|
# other shell scripts.
|
|
#
|
|
|
|
# Find the top of the BIND9 tree.
|
|
TOP=@abs_top_builddir@
|
|
|
|
# Default algorithm for testing
|
|
DEFAULT_ALGORITHM=ECDSAP256SHA256
|
|
DEFAULT_ALGORITHM_NUMBER=13
|
|
DEFAULT_BITS=256
|
|
|
|
# must be different from DEFAULT_ALGORITHM
|
|
ALTERNATIVE_ALGORITHM=RSASHA256
|
|
ALTERNATIVE_ALGORITHM_NUMBER=8
|
|
ALTERNATIVE_BITS=1280
|
|
|
|
ARPANAME=$TOP/bin/tools/arpaname
|
|
CDS=$TOP/bin/dnssec/dnssec-cds
|
|
CHECKCONF=$TOP/bin/check/named-checkconf
|
|
CHECKDS=$TOP/bin/python/dnssec-checkds
|
|
CHECKZONE=$TOP/bin/check/named-checkzone
|
|
COVERAGE=$TOP/bin/python/dnssec-coverage
|
|
DDNSCONFGEN=$TOP/bin/confgen/ddns-confgen
|
|
DELV=$TOP/bin/delv/delv
|
|
DIG=$TOP/bin/dig/dig
|
|
DNSTAPREAD=$TOP/bin/tools/dnstap-read
|
|
DSFROMKEY=$TOP/bin/dnssec/dnssec-dsfromkey
|
|
FEATURETEST=$TOP/bin/tests/system/feature-test
|
|
FSTRM_CAPTURE=@FSTRM_CAPTURE@
|
|
IMPORTKEY=$TOP/bin/dnssec/dnssec-importkey
|
|
JOURNALPRINT=$TOP/bin/tools/named-journalprint
|
|
KEYFRLAB=$TOP/bin/dnssec/dnssec-keyfromlabel
|
|
KEYGEN=$TOP/bin/dnssec/dnssec-keygen
|
|
KEYMGR=$TOP/bin/python/dnssec-keymgr
|
|
MDIG=$TOP/bin/tools/mdig
|
|
NAMED=$TOP/bin/named/named
|
|
NSEC3HASH=$TOP/bin/tools/nsec3hash
|
|
NSLOOKUP=$TOP/bin/dig/nslookup
|
|
NSUPDATE=$TOP/bin/nsupdate/nsupdate
|
|
NZD2NZF=$TOP/bin/tools/named-nzd2nzf
|
|
PK11DEL="$TOP/bin/pkcs11/pkcs11-destroy -s ${SLOT:-0} -p ${HSMPIN:-1234} -w 0"
|
|
PK11GEN="$TOP/bin/pkcs11/pkcs11-keygen -q -s ${SLOT:-0} -p ${HSMPIN:-1234}"
|
|
PK11LIST="$TOP/bin/pkcs11/pkcs11-list -s ${SLOT:-0} -p ${HSMPIN:-1234}"
|
|
RESOLVE=$TOP/lib/samples/resolve
|
|
REVOKE=$TOP/bin/dnssec/dnssec-revoke
|
|
RNDC=$TOP/bin/rndc/rndc
|
|
RNDCCONFGEN=$TOP/bin/confgen/rndc-confgen
|
|
RRCHECKER=$TOP/bin/tools/named-rrchecker
|
|
SETTIME=$TOP/bin/dnssec/dnssec-settime
|
|
SIGNER=$TOP/bin/dnssec/dnssec-signzone
|
|
TSIGKEYGEN=$TOP/bin/confgen/tsig-keygen
|
|
VERIFY=$TOP/bin/dnssec/dnssec-verify
|
|
WIRETEST=$TOP/bin/tests/wire_test
|
|
|
|
BIGKEY=$TOP/bin/tests/system/rsabigexponent/bigkey
|
|
GENCHECK=$TOP/bin/tests/system/rndc/gencheck
|
|
KEYCREATE=$TOP/bin/tests/system/tkey/keycreate
|
|
KEYDELETE=$TOP/bin/tests/system/tkey/keydelete
|
|
MAKEJOURNAL=$TOP/bin/tests/makejournal
|
|
PIPEQUERIES=$TOP/bin/tests/system/pipelined/pipequeries
|
|
SAMPLEUPDATE=$TOP/lib/samples/sample-update
|
|
|
|
# we don't want a KRB5_CONFIG setting breaking the tests
|
|
KRB5_CONFIG=/dev/null
|
|
|
|
# The "stress" test is not run by default since it creates enough
|
|
# load on the machine to make it unusable to other users.
|
|
# The "dialup", "delzone", and "dupsigs" tests are also not run by
|
|
# default because they take a very long time to complete.
|
|
#
|
|
# List of tests hard-coded to use ports 5300 and 9953. For this
|
|
# reason, these must be run sequentially.
|
|
SEQUENTIALDIRS="ecdsa eddsa @PKCS11_TEST@ tkey"
|
|
|
|
# List of tests that use ports assigned by caller (other than 5300
|
|
# and 9953). Because separate blocks of ports can be used for teach
|
|
# test, these tests can be run in parallel.
|
|
#
|
|
# This symbol must be kept in step with the PARALLEL macro in Makefile.in
|
|
PARALLELDIRS="acl additional addzone allow-query auth autosign \
|
|
builtin cacheclean case catz cds chain \
|
|
checkconf checknames checkzone \
|
|
@CHECKDS@ @COVERAGE@ @KEYMGR@ \
|
|
cookie database digdelv dlv dlz dlzexternal \
|
|
dns64 dnssec @DNSTAP@ dscp dsdigest dyndb \
|
|
ednscompliance emptyzones \
|
|
fetchlimit filter-aaaa formerr forward \
|
|
geoip glue idna inline integrity ixfr keepalive \
|
|
legacy limits logfileconfig \
|
|
masterfile masterformat metadata mirror mkeys \
|
|
names notify nslookup nsupdate nzd2nzf \
|
|
padding pending pipelined qmin \
|
|
reclimit redirect resolver rndc rootkeysentinel rpz rpzrecurse \
|
|
rrchecker rrl rrsetorder rsabigexponent runtime \
|
|
serve-stale sfcache smartsign sortlist \
|
|
spf staticstub statistics statschannel stub synthfromdnssec \
|
|
tcp tools tsig tsiggss ttl \
|
|
unknown upforwd verify views wildcard \
|
|
xfer xferquota zero zonechecks"
|
|
|
|
SUBDIRS="$SEQUENTIALDIRS $PARALLELDIRS"
|
|
|
|
|
|
# Things that are different on Windows
|
|
KILL=kill
|
|
DIFF=diff
|
|
DOS2UNIX=true
|
|
# There's no trailing period on Windows
|
|
TP=.
|
|
|
|
# Use the CONFIG_SHELL detected by configure for tests
|
|
SHELL=@SHELL@
|
|
|
|
# CURL will be empty if no program was found by configure
|
|
CURL=@CURL@
|
|
|
|
# XMLLINT will be empty if no program was found by configure
|
|
XMLLINT=@XMLLINT@
|
|
|
|
# PERL will be an empty string if no perl interpreter was found.
|
|
PERL=@PERL@
|
|
|
|
# Windows process management leave empty
|
|
PSSUSPEND=
|
|
|
|
PYTHON=@PYTHON@
|
|
|
|
#
|
|
# Determine if we support various optional features.
|
|
#
|
|
HAVEXMLSTATS=@XMLSTATS@
|
|
HAVEJSONSTATS=@JSONSTATS@
|
|
ZLIB=@ZLIB@
|
|
NZD=@NZD_TOOLS@
|
|
|
|
# copy_setports - Copy Configuration File and Replace Ports
|
|
# Unfortunately it has to be different on Windows.
|
|
#
|
|
# Convenience function to copy a configuration file, replacing the tokens
|
|
# QUERYPORT, CONTROLPORT and EXTRAPORT[1-8] with the values of the equivalent
|
|
# environment variables. (These values are set by "run.sh", which calls the
|
|
# scripts invoking this function.)
|
|
#
|
|
# Usage:
|
|
# copy_setports infile outfile
|
|
|
|
copy_setports() {
|
|
sed -e "s/@PORT@/${PORT}/g" \
|
|
-e "s/@EXTRAPORT1@/${EXTRAPORT1}/g" \
|
|
-e "s/@EXTRAPORT2@/${EXTRAPORT2}/g" \
|
|
-e "s/@EXTRAPORT3@/${EXTRAPORT3}/g" \
|
|
-e "s/@EXTRAPORT4@/${EXTRAPORT4}/g" \
|
|
-e "s/@EXTRAPORT5@/${EXTRAPORT5}/g" \
|
|
-e "s/@EXTRAPORT6@/${EXTRAPORT6}/g" \
|
|
-e "s/@EXTRAPORT7@/${EXTRAPORT7}/g" \
|
|
-e "s/@EXTRAPORT8@/${EXTRAPORT8}/g" \
|
|
-e "s/@CONTROLPORT@/${CONTROLPORT}/g" \
|
|
-e "s/@DEFAULT_ALGORITHM@/${DEFAULT_ALGORITHM}/g" \
|
|
-e "s/@DEFAULT_ALGORITHM_NUMBER@/${DEFAULT_ALGORITHM_NUMBER}/g" \
|
|
-e "s/@DEFAULT_BITS@/${DEFAULT_BITS}/g" \
|
|
-e "s/@ALTERNATIVE_ALGORITHM@/${ALTERNATIVE_ALGORITHM}/g" \
|
|
-e "s/@ALTERNATIVE_ALGORITHM_NUMBER@/${ALTERNATIVE_ALGORITHM_NUMBER}/g" \
|
|
-e "s/@ALTERNATIVE_BITS@/${ALTERNATIVE_BITS}/g" \
|
|
$1 > $2
|
|
}
|
|
|
|
# The rest is shared between Windows and Unices
|
|
. $TOP/bin/tests/system/conf.sh.common
|