switched shortcut for monkeysphere-server update-users to "u", added some FIXMEs...
[monkeysphere.git] / src / monkeysphere-server
index 40a6b5481cd3156372aa29d9d4348ec96cf9da03..11e593b347c567b926e231159c4dacb2e3da7277 100755 (executable)
@@ -21,6 +21,9 @@ DATE=$(date -u '+%FT%T')
 # unset some environment variables that could screw things up
 GREP_OPTIONS=
 
+# assuming other problems don't crop up, we'll return 0 as success
+ERR=0
+
 ########################################################################
 # FUNCTIONS
 ########################################################################
@@ -34,8 +37,8 @@ subcommands:
   update-users (s) [USER]...            update users authorized_keys files
   gen-key (g) [HOSTNAME]                generate gpg key for the server
   show-fingerprint (f)                  show server's host key fingerprint
-  publish-key (p)                       publish server key to keyserver
-  trust-keys (t) KEYID...               mark keyids as trusted
+  publish-key (p)                       publish server's host key to keyserver
+  trust-key (t) KEYID [LEVEL]           set owner trust for keyid
   help (h,?)                            this help
 
 EOF
@@ -168,7 +171,7 @@ mkdir -p -m 0700 "$GNUPGHOME"
 mkdir -p "${CACHE}/authorized_keys"
 
 case $COMMAND in
-    'update-users'|'update-user'|'s')
+    'update-users'|'update-user'|'u')
        if [ "$1" ] ; then
            # get users from command line
            unames="$@"
@@ -193,6 +196,9 @@ case $COMMAND in
 
            # skip user if authorized_user_ids file does not exist
            if [ ! -f "$authorizedUserIDs" ] ; then
+               #FIXME: what about a user with no authorized_user_ids
+               # file, but with an authorized_keys file when
+               # USER_CONTROLLED_AUTHORIZED_KEYS is set?
                continue
            fi
 
@@ -204,6 +210,10 @@ case $COMMAND in
            # skip if the user's authorized_user_ids file is empty
            if [ ! -s "$authorizedUserIDs" ] ; then
                log "authorized_user_ids file '$authorizedUserIDs' is empty."
+               #FIXME: what about a user with an empty
+               # authorized_user_ids file, but with an
+               # authorized_keys file when
+               # USER_CONTROLLED_AUTHORIZED_KEYS is set?
                continue
            fi
 
@@ -240,15 +250,8 @@ case $COMMAND in
        publish_server_key
        ;;
 
-    'trust-keys'|'trust-key'|'t')
-       if [ -z "$1" ] ; then
-           failure "You must specify at least one key to trust."
-       fi
-
-       # process key IDs
-       for keyID ; do
-           trust_key "$keyID"
-       done
+    'trust-key'|'trust-key'|'t')
+       trust_key "$@"
        ;;
 
     'help'|'h'|'?')