Merge commit 'mlcastle/master'
[monkeysphere.git] / src / share / mh / set_expire
1 # -*-shell-script-*-
2 # This should be sourced by bash (though we welcome changes to make it POSIX sh compliant)
3
4 # Monkeysphere host set-expire subcommand
5 #
6 # This is a function to set the expiration date of the monkeysphere
7 # host key.
8 #
9 # The monkeysphere scripts are written by:
10 # Jameson Rollins <jrollins@finestructure.net>
11 # Jamie McClelland <jm@mayfirst.org>
12 # Daniel Kahn Gillmor <dkg@fifthhorseman.net>
13 #
14 # They are Copyright 2008-2009, and are all released under the GPL,
15 # version 3 or later.
16
17 set_expire() {
18
19 local extendTo
20
21 # get the new expiration date
22 extendTo=$(get_gpg_expiration "$1")
23
24 if [ "$PROMPT" = "true" ] ; then
25     printf "Are you sure you want to change the expiration on the host key to '%s'? (Y/n) " "$extendTo" >&2
26     read OK; OK=${OK:-Y}
27     if [ "${OK/y/Y}" != 'Y' ] ; then
28         failure "expiration not set."
29     fi
30 else
31     log debug "extending without prompting."
32 fi
33
34 log info "setting host key expiration to ${extendTo}."
35
36 log debug "executing host expire script..."
37 gpg_host_edit expire <<EOF
38 $extendTo
39 save
40 EOF
41
42 update_gpg_pub_file
43
44 log info <<EOF
45 NOTE: Host key expiration date adjusted, but not yet published.
46 Run '$PGRM publish-key' to publish the new expiration date.
47 EOF
48
49 }