summaryrefslogtreecommitdiff
path: root/src/monkeysphere-authentication
diff options
context:
space:
mode:
Diffstat (limited to 'src/monkeysphere-authentication')
-rwxr-xr-xsrc/monkeysphere-authentication36
1 files changed, 19 insertions, 17 deletions
diff --git a/src/monkeysphere-authentication b/src/monkeysphere-authentication
index c349e6f..8a4146f 100755
--- a/src/monkeysphere-authentication
+++ b/src/monkeysphere-authentication
@@ -14,6 +14,9 @@
########################################################################
set -e
+# set the pipefail option so pipelines fail on first command failure
+set -o pipefail
+
PGRM=$(basename $0)
SYSSHAREDIR=${MONKEYSPHERE_SYSSHAREDIR:-"/usr/share/monkeysphere"}
@@ -52,7 +55,6 @@ usage: $PGRM <subcommand> [options] [args]
Monkeysphere authentication admin tool.
subcommands:
- setup (s) setup monkeysphere user authentication
update-users (u) [USER]... update user authorized_keys files
add-id-certifier (c+) KEYID import and tsign a certification key
--domain (-n) DOMAIN limit ID certifications to DOMAIN
@@ -95,19 +97,12 @@ core_fingerprint() {
| grep ^fpr: | cut -d: -f10
}
-# fail if authentication has not been setup
-check_no_setup() {
- # FIXME: what is the right test to do here?
- [ -d "$MADATADIR" ] \
- || failure "This host appears to have not yet been set up for Monkeysphere authentication.
-Please run 'monkeysphere-authentication setup' first."
-}
-
# export signatures from core to sphere
gpg_core_sphere_sig_transfer() {
log debug "exporting core local sigs to sphere..."
gpg_core --export-options export-local-sigs --export | \
- gpg_sphere "--import-options import-local-sigs --import"
+ gpg_sphere "--import-options import-local-sigs --import" \
+ 2>&1 | log debug
}
########################################################################
@@ -164,40 +159,47 @@ shift
case $COMMAND in
'setup'|'setup'|'s')
source "${MASHAREDIR}/setup"
- setup "$@"
+ setup
;;
'update-users'|'update-user'|'u')
- check_no_setup
+ source "${MASHAREDIR}/setup"
+ setup
source "${MASHAREDIR}/update_users"
update_users "$@"
;;
'add-identity-certifier'|'add-id-certifier'|'add-certifier'|'c+')
- check_no_setup
+ source "${MASHAREDIR}/setup"
+ setup
source "${MASHAREDIR}/add_certifier"
add_certifier "$@"
;;
'remove-identity-certifier'|'remove-id-certifier'|'remove-certifier'|'c-')
- check_no_setup
+ source "${MASHAREDIR}/setup"
+ setup
source "${MASHAREDIR}/remove_certifier"
remove_certifier "$@"
;;
'list-identity-certifiers'|'list-id-certifiers'|'list-certifiers'|'list-certifier'|'c')
- check_no_setup
+ source "${MASHAREDIR}/setup"
+ setup
source "${MASHAREDIR}/list_certifiers"
- list_certifiers "$@"
+ list_certifiers
;;
'diagnostics'|'d')
+ source "${MASHAREDIR}/setup"
+ setup
source "${MASHAREDIR}/diagnostics"
diagnostics
;;
'gpg-cmd')
- check_no_setup
+ source "${MASHAREDIR}/setup"
+ setup
gpg_sphere "$@"
;;