diff options
author | Jameson Graef Rollins <jrollins@phys.columbia.edu> | 2008-07-27 22:24:31 -0700 |
---|---|---|
committer | Jameson Graef Rollins <jrollins@phys.columbia.edu> | 2008-07-27 22:24:31 -0700 |
commit | acb3000647031defca23b38d85e48954085a4d2a (patch) | |
tree | 4592d539bae8d0d1cf6dea44e04e3049318acebb /src | |
parent | e2cb90d3bbb4246a4fa27d49f55fd02c32336f47 (diff) |
Don't fail when authorized_user_ids or known_hosts files are not found.
Diffstat (limited to 'src')
-rwxr-xr-x | src/monkeysphere | 24 | ||||
-rwxr-xr-x | src/monkeysphere-server | 9 |
2 files changed, 22 insertions, 11 deletions
diff --git a/src/monkeysphere b/src/monkeysphere index 3f127e6..cd77193 100755 --- a/src/monkeysphere +++ b/src/monkeysphere @@ -203,8 +203,9 @@ case $COMMAND in 'update-known_hosts'|'update-known-hosts'|'k') MODE='known_hosts' + # check permissions on the known_hosts file path if ! check_key_file_permissions "$USER" "$KNOWN_HOSTS" ; then - failure "Improper permissions on known_hosts file." + failure "Improper permissions on known_hosts file path." fi # if hosts are specified on the command line, process just @@ -216,8 +217,10 @@ case $COMMAND in # otherwise, if no hosts are specified, process every host # in the user's known_hosts file else + # exit if the known_hosts file does not exist if [ ! -e "$KNOWN_HOSTS" ] ; then - failure "known_hosts file '$KNOWN_HOSTS' does not exist." + log "known_hosts file '$KNOWN_HOSTS' does not exist." + exit fi process_known_hosts @@ -228,13 +231,20 @@ case $COMMAND in 'update-authorized_keys'|'update-authorized-keys'|'a') MODE='authorized_keys' - # fail if the authorized_user_ids file is empty - if [ ! -e "$AUTHORIZED_USER_IDS" ] ; then - failure "authorized_user_ids file '$AUTHORIZED_USER_IDS' does not exist." + # check permissions on the authorized_user_ids file path + if ! check_key_file_permissions "$USER" "$AUTHORIZED_USER_IDS" ; then + failure "Improper permissions on authorized_user_ids file path." fi - if ! check_key_file_permissions "$USER" "$AUTHORIZED_USER_IDS" ; then - failure "Improper permissions on authorized_user_ids file." + # check permissions on the authorized_keys file path + if ! check_key_file_permissions "$USER" "$AUTHORIZED_KEYS" ; then + failure "Improper permissions on authorized_keys file path." + fi + + # exit if the authorized_user_ids file is empty + if [ ! -e "$AUTHORIZED_USER_IDS" ] ; then + log "authorized_user_ids file '$AUTHORIZED_USER_IDS' does not exist." + exit fi # process authorized_user_ids file diff --git a/src/monkeysphere-server b/src/monkeysphere-server index 19b457f..ce80059 100755 --- a/src/monkeysphere-server +++ b/src/monkeysphere-server @@ -143,13 +143,15 @@ update_users() { log "----- user: $uname -----" + # exit if the authorized_user_ids file is empty if ! check_key_file_permissions "$uname" "$AUTHORIZED_USER_IDS" ; then - log "Improper permissions on authorized_user_ids file." + log "Improper permissions on authorized_user_ids file path." continue fi + # check permissions on the authorized_keys file path if ! check_key_file_permissions "$uname" "$RAW_AUTHORIZED_KEYS" ; then - log "Improper permissions on authorized_keys file." + log "Improper permissions on authorized_keys file path path." continue fi @@ -206,8 +208,7 @@ update_users() { chgrp $(getent passwd "$uname" | cut -f4 -d:) "$AUTHORIZED_KEYS" chmod g+r "$AUTHORIZED_KEYS" - # if the resulting authorized_keys file is not empty, move - # it into place + # move the resulting authorized_keys file into place mv -f "$AUTHORIZED_KEYS" "${VARLIB}/authorized_keys/${uname}" # destroy temporary directory |