Merge commit 'dkg/master'
authorJameson Graef Rollins <jrollins@finestructure.net>
Thu, 19 Feb 2009 07:09:23 +0000 (02:09 -0500)
committerJameson Graef Rollins <jrollins@finestructure.net>
Thu, 19 Feb 2009 07:09:23 +0000 (02:09 -0500)
1  2 
src/share/common

diff --combined src/share/common
index 31f8ddd08a0cbba9f633be7576a24c836a9e58c5,b45363a326af171e2c0908c7e931148ed5781a64..9630bf9adbb2827100c0a7a33f3c9e01e660fcdf
@@@ -21,23 -21,8 +21,23 @@@ SYSCONFIGDIR=${MONKEYSPHERE_SYSCONFIGDI
  export SYSCONFIGDIR
  
  # monkeysphere version
- VERSION=__VERSION__
+ VERSION=0.23~pre
  
 +# default log level
 +LOG_LEVEL="INFO"
 +
 +# default keyserver
 +KEYSERVER="pool.sks-keyservers.net"
 +
 +# whether or not to check keyservers by defaul
 +CHECK_KEYSERVER="true"
 +
 +# default monkeysphere user
 +MONKEYSPHERE_USER="monkeysphere"
 +
 +# default about whether or not to prompt
 +PROMPT="true"
 +
  ########################################################################
  ### UTILITY FUNCTIONS
  
@@@ -291,7 -276,7 +291,7 @@@ get_gpg_expiration() 
  
      keyExpire="$1"
  
 -    if [ -z "$keyExpire" ]; then
 +    if [ -z "$keyExpire" -a "$PROMPT" = 'true' ]; then
        cat >&2 <<EOF
  Please specify how long the key should be valid.
           0 = key does not expire
@@@ -815,9 -800,6 +815,9 @@@ process_host_known_hosts() 
      local sshKey
      local tmpfile
  
 +    # set the key processing mode
 +    export MODE='known_hosts'
 +
      host="$1"
      userID="ssh://${host}"
  
@@@ -897,13 -879,6 +897,13 @@@ update_known_hosts() 
      nHostsOK=0
      nHostsBAD=0
  
 +    # touch the known_hosts file so that the file permission check
 +    # below won't fail upon not finding the file
 +    (umask 0022 && touch "$KNOWN_HOSTS")
 +
 +    # check permissions on the known_hosts file path
 +    check_key_file_permissions "$USER" "$KNOWN_HOSTS" || failure
 +
      # create a lockfile on known_hosts:
      lock create "$KNOWN_HOSTS"
      # FIXME: we're discarding any pre-existing EXIT trap; is this bad?
  process_known_hosts() {
      local hosts
  
 +    # exit if the known_hosts file does not exist
 +    if [ ! -e "$KNOWN_HOSTS" ] ; then
 +      failure "known_hosts file '$KNOWN_HOSTS' does not exist."
 +    fi
 +
      log debug "processing known_hosts file..."
  
      hosts=$(meat "$KNOWN_HOSTS" | cut -d ' ' -f 1 | grep -v '^|.*$' | tr , ' ' | tr '\n' ' ')
@@@ -986,9 -956,6 +986,9 @@@ process_uid_authorized_keys() 
      local ok
      local sshKey
  
 +    # set the key processing mode
 +    export MODE='authorized_keys'
 +
      userID="$1"
  
      log verbose "processing: $userID"
@@@ -1050,9 -1017,6 +1050,9 @@@ update_authorized_keys() 
      nIDsOK=0
      nIDsBAD=0
  
 +    # check permissions on the authorized_keys file path
 +    check_key_file_permissions "$USER" "$AUTHORIZED_KEYS" || failure
 +
      # create a lockfile on authorized_keys
      lock create "$AUTHORIZED_KEYS"
      # FIXME: we're discarding any pre-existing EXIT trap; is this bad?
@@@ -1118,14 -1082,6 +1118,14 @@@ process_authorized_user_ids() 
  
      authorizedUserIDs="$1"
  
 +    # exit if the authorized_user_ids file is empty
 +    if [ ! -e "$authorizedUserIDs" ] ; then
 +      failure "authorized_user_ids file '$authorizedUserIDs' does not exist."
 +    fi
 +
 +    # check permissions on the authorized_user_ids file path
 +    check_key_file_permissions "$USER" "$authorizedUserIDs" || failure
 +
      log debug "processing authorized_user_ids file..."
  
      if ! meat "$authorizedUserIDs" > /dev/null ; then