summaryrefslogtreecommitdiff
path: root/src/share/ma/update_users
diff options
context:
space:
mode:
authorJameson Rollins <jrollins@finestructure.net>2010-10-17 19:14:31 -0400
committerJameson Rollins <jrollins@finestructure.net>2010-10-17 19:18:46 -0400
commit267c6fcda592494466beed500ef78ad955edea8c (patch)
treec5aa4225d04a6e36257e301999fdfd347c196b08 /src/share/ma/update_users
parentcda9b459e520f608bd4fffb778dfc6235a95f4b6 (diff)
fix keys-for-user
This function now properly outputs to stdout exactly what would have been written to the monkeysphere-controlled authorized_keys file, but without actually touching it.
Diffstat (limited to 'src/share/ma/update_users')
-rw-r--r--src/share/ma/update_users28
1 files changed, 17 insertions, 11 deletions
diff --git a/src/share/ma/update_users b/src/share/ma/update_users
index 0086cd3..91acd66 100644
--- a/src/share/ma/update_users
+++ b/src/share/ma/update_users
@@ -129,17 +129,23 @@ for uname in $unames ; do
# the same uid that sshd is launched as); change the group of
# the file so that members of the user's group can read it.
- # FIXME: is there a better way to do this?
- chown $(whoami) "$AUTHORIZED_KEYS" && \
- chgrp $(id -g "$uname") "$AUTHORIZED_KEYS" && \
- chmod g+r "$AUTHORIZED_KEYS" && \
- mv -f "$AUTHORIZED_KEYS" "${authorizedKeysDir}/${uname}" || \
- {
- log error "Failed to install authorized_keys for '$uname'!"
- rm -f "${authorizedKeysDir}/${uname}"
- # indicate that there has been a failure:
- returnCode=1
- }
+ if [ "$OUTPUT_STDOUT" ] ; then
+ log debug "outputting keys to stdout..."
+ cat "$AUTHORIZED_KEYS"
+ else
+ log debug "moving new file to ${authorizedKeysDir}/${uname}..."
+ # FIXME: is there a better way to do this?
+ chown $(whoami) "$AUTHORIZED_KEYS" && \
+ chgrp $(id -g "$uname") "$AUTHORIZED_KEYS" && \
+ chmod g+r "$AUTHORIZED_KEYS" && \
+ mv -f "$AUTHORIZED_KEYS" "${authorizedKeysDir}/${uname}" || \
+ {
+ log error "Failed to install authorized_keys for '$uname'!"
+ rm -f "${authorizedKeysDir}/${uname}"
+ # indicate that there has been a failure:
+ returnCode=1
+ }
+ fi
else
rm -f "${authorizedKeysDir}/${uname}"
fi