proposed fix for #1147 by checking for known_hosts file
authorJameson Graef Rollins <jrollins@finestructure.net>
Fri, 24 Jul 2009 12:23:45 +0000 (08:23 -0400)
committerJameson Graef Rollins <jrollins@finestructure.net>
Fri, 24 Jul 2009 12:23:45 +0000 (08:23 -0400)
src/monkeysphere

index 341b9fdbd4fefa8366a5d38205e99559d19e84d0..94279f4092abe234536b19abad44be68a7b0158a 100755 (executable)
@@ -194,7 +194,18 @@ if [ -z "$KEYSERVER" ] ; then
     fi
 fi
 PROMPT=${MONKEYSPHERE_PROMPT:=$PROMPT}
-KNOWN_HOSTS=${MONKEYSPHERE_KNOWN_HOSTS:=$KNOWN_HOSTS}
+# check the known_hosts file
+if [ "$MONKEYSPHERE_KNOWN_HOSTS" ] ; then
+    if [ -f "$MONKEYSPHERE_KNOWN_HOSTS" ] ; then
+       KNOWN_HOSTS="$MONKEYSPHERE_KNOWN_HOSTS"
+    else
+       failure "specified monkeysphere known_hosts file '$MONKEYSPHERE_KNOWN_HOSTS' does not exist."
+    fi
+fi
+[ -d $(dirname "$KNOWN_HOSTS") ] \
+    || mkdir -m 0700 $(dirname "$KNOWN_HOSTS")
+[ -f "$KNOWN_HOSTS" ] \
+    || touch "$KNOWN_HOSTS"
 HASH_KNOWN_HOSTS=${MONKEYSPHERE_HASH_KNOWN_HOSTS:=$HASH_KNOWN_HOSTS}
 AUTHORIZED_KEYS=${MONKEYSPHERE_AUTHORIZED_KEYS:=$AUTHORIZED_KEYS}