Files
bind9/bin/tests/system/testcrypto.sh
Tom Krizek bb1c6bbdc7 Support testcrypto.sh usage without including conf.sh
The only variable really needed for the script to work is the path to
the $KEYGEN binary. Allow setting this via an environment variable to
avoid loading conf.sh (and causing a chicken-egg problem). Also make
testcrypto.sh executable to allow its use from conf.sh.
2022-10-27 12:14:29 +02:00

81 lines
1.7 KiB
Bash
Executable File

#!/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.
if test -z "$KEYGEN"; then
. ../conf.sh
alg="-a $DEFAULT_ALGORITHM -b $DEFAULT_BITS"
else
alg=""
fi
prog=$0
args=""
quiet=0
msg="cryptography"
while test "$#" -gt 0; do
case $1 in
-q)
args="$args -q"
quiet=1
;;
rsa|RSA|rsasha1|RSASHA1)
alg="-a RSASHA1"
msg="RSA cryptography"
;;
rsasha256|RSASHA256)
alg="-a RSASHA256"
msg="RSA cryptography"
;;
rsasha512|RSASHA512)
alg="-a RSASHA512"
msg="RSA cryptography"
;;
ecdsa|ECDSA|ecdsap256sha256|ECDSAP256SHA256)
alg="-a ECDSAP256SHA256"
msg="ECDSA cryptography"
;;
ecdsap384sha384|ECDSAP384SHA384)
alg="-a ECDSAP384SHA384"
msg="ECDSA cryptography"
;;
eddsa|EDDSA|ed25519|ED25519)
alg="-a ED25519"
msg="EDDSA cryptography"
;;
ed448|ED448)
alg="-a ED448"
msg="EDDSA cryptography"
;;
*)
echo "${prog}: unknown argument"
exit 1
;;
esac
shift
done
if test -z "$alg"; then
echo "${prog}: no algorithm selected"
exit 1
fi
if $KEYGEN $args $alg foo > /dev/null 2>&1
then
rm -f Kfoo*
else
if test $quiet -eq 0; then
echo_i "This test requires support for $msg" >&2
fi
exit 255
fi