summaryrefslogtreecommitdiff
path: root/src/tests/do-verify.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/tests/do-verify.sh')
-rwxr-xr-xsrc/tests/do-verify.sh24
1 files changed, 17 insertions, 7 deletions
diff --git a/src/tests/do-verify.sh b/src/tests/do-verify.sh
index a67a982..a18a762 100755
--- a/src/tests/do-verify.sh
+++ b/src/tests/do-verify.sh
@@ -2,12 +2,22 @@
set -eu
-OPENSSL_CONF="$1"; shift
-P11_PROVIDER="$1"; shift
SIGFILE="$1"; shift
-TEXT="$1"; shift
+P11_PROVIDER="$1"; shift
+OPENSSL_CONF="$1"; shift
+SERVER_PROVIDER=
+[ $# -ge 1 ] && { SERVER_PROVIDER="$1"; shift; }
+
+
+if [ -n "$SERVER_PROVIDER" ]; then
+ P11_KIT_ENV=$(p11-kit server $SERVER_PROVIDER)
+ eval "$P11_KIT_ENV"
+fi
+
+openssl dgst -sha256 -engine pkcs11 -keyform ENGINE \
+ -prverify "$(p11tool --login --provider=$P11_PROVIDER --list-token-urls)" \
+ -signature $SIGFILE | egrep "^Verified OK$"
-tokenurl="$(p11tool --login --provider=$P11_PROVIDER --list-token-urls)"
-echo $TEXT | \
- openssl dgst -sha256 -engine pkcs11 -keyform ENGINE \
- -prverify "$tokenurl" -signature $SIGFILE | egrep "^Verified OK$"
+if [ -n "$SERVER_PROVIDER" ]; then
+ p11-kit server --kill > /dev/null
+fi