blob: b953b53759a05501be6608836004186e3fb3f381 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#! /bin/sh
set -eu
SIGFILE="$1"; shift
P11_PROVIDER="$1"; shift
OPENSSL_CONF="$1"; shift
SERVER_PROVIDER=
[ $# -ge 1 ] && { SERVER_PROVIDER="$1"; shift; }
cleanup() {
if [ -n "$SERVER_PROVIDER" ]; then
p11-kit server --kill > /dev/null
fi
}
trap cleanup EXIT
if [ -n "$SERVER_PROVIDER" ]; then
P11_KIT_ENV=$(p11-kit server $SERVER_PROVIDER)
eval "$P11_KIT_ENV"
fi
token_urls="$(p11tool --batch --login --provider=$P11_PROVIDER --list-token-urls)"
export OPENSSL_CONF
for url in $token_urls; do
openssl dgst -sha256 -engine pkcs11 -keyform ENGINE \
-sign "${url};pin-value=ffff" \
-out $SIGFILE
done
|