chiark / gitweb /
distorted-keys.userv: Add userv configuration snippet.
[distorted-keys] / keys.recover
1 #! /bin/sh
2 ###
3 ### Recover a secret stashed earlier
4 ###
5 ### (c) 2011 Mark Wooding
6 ###
7
8 ###----- Licensing notice ---------------------------------------------------
9 ###
10 ### This file is part of the distorted.org.uk key management suite.
11 ###
12 ### distorted-keys is free software; you can redistribute it and/or modify
13 ### it under the terms of the GNU General Public License as published by
14 ### the Free Software Foundation; either version 2 of the License, or
15 ### (at your option) any later version.
16 ###
17 ### distorted-keys is distributed in the hope that it will be useful,
18 ### but WITHOUT ANY WARRANTY; without even the implied warranty of
19 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 ### GNU General Public License for more details.
21 ###
22 ### You should have received a copy of the GNU General Public License
23 ### along with distorted-keys; if not, write to the Free Software Foundation,
24 ### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25
26 set -e
27 case "${KEYSLIB+t}" in t) ;; *) echo >&2 "$0: KEYSLIB unset"; exit 1 ;; esac
28 . "$KEYSLIB"/keyfunc.sh
29
30 defhelp <<HELP
31 RECOV LABEL
32 Recover the secret LABEL using recovery key RECOV.
33
34 The recovery key must be revealed.  The secret is written to stdout.
35 HELP
36
37 ## Parse the command line.
38 case $# in 2) ;; *) usage_err ;; esac
39 recov=$1 label=$2
40 checklabel "recovery key label" "$recov"
41 checklabel "secret" "$label"
42
43 ## Do the recovery.
44 recover $recov $label
45
46 ###----- That's all, folks --------------------------------------------------