X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/distorted-keys/blobdiff_plain/e9cf707985f070cf5992f1bb112df58e532e01ca..7b1fe7a30da02085479a6d5c3b3f8f0fc7fddf65:/cryptop.recover diff --git a/cryptop.recover b/cryptop.recover index 26142e9..f1fc9db 100755 --- a/cryptop.recover +++ b/cryptop.recover @@ -28,15 +28,24 @@ case "${KEYSLIB+t}" in t) ;; *) echo >&2 "$0: KEYSLIB unset"; exit 1 ;; esac . "$KEYSLIB"/keyfunc.sh defhelp <&2 "$quis: unknown key \`$key'"; exit 1; fi +checkword "recovery instance" "$inst" checkword "recovery key label" "$recov" case $kowner in $USERV_USER) ;; @@ -58,11 +67,12 @@ if [ -f $knub ]; then fi umask 077 -recover $recov $kowner/$klabel >$knub.new +recover $recov $inst $kowner/$klabel >$knub.new nubbin=$(nubid <$knub.new) case "$nubbin" in "$nubid") ;; *) + rm -f $knub.new echo >&2 "$quis: recovery produced incorrect nub" exit 1 ;;