testing: adding temporary monkeysphere config and ssh config.
[monkeysphere.git] / tests / basic
index e97f998fc6f14fac2d5ea48776426d92e51032ad..23146840bf0e7288f8c0192e3cb3dafc7f60e337 100755 (executable)
@@ -64,9 +64,16 @@ export SOCKET="$TEMPDIR"/ssh-socket
 
 # copy in admin and testuser home to tmp
 echo "### copying admin and testuser homes..."
-cp -r "$TESTDIR"/home/admin "$TEMPDIR"/
-cp -r "$TESTDIR"/home/testuser "$TEMPDIR"/
+cp -a "$TESTDIR"/home/admin "$TEMPDIR"/
+cp -a "$TESTDIR"/home/testuser "$TEMPDIR"/
 
+cat <<EOF > "$TEMPDIR"/testuser/.ssh/config
+UserKnownHosts $TEMPDIR/testuser/.ssh/known_hosts
+EOF
+
+cat <<EOF > "$TEMPDIR"/testuser/.monkeysphere/monkeysphere.conf
+KNOWN_HOSTS=$TEMPDIR/testuser/.ssh/known_hosts
+EOF
 
 
 ### SERVER TESTS
@@ -121,6 +128,7 @@ export SSHD_PID=$!
 # generate an auth subkey for the test user
 echo "### generating key for testuser..."
 MONKEYSPHERE_GNUPGHOME="$TEMPDIR"/testuser/.gnupg \
+SSH_ASKPASS=echo \
     monkeysphere gen-subkey --expire 0
 
 # add server key to testuser keychain
@@ -128,12 +136,10 @@ echo "### export server key to testuser..."
 gpgadmin --armor --export "$HOSTKEYID" | \
     GNUPGHOME="$TEMPDIR"/testuser/.gnupg gpg --import
 
-# connect to test sshd, using monkeysphere to verify the identity
-# before connection.
+# connect to test sshd, using monkeysphere-ssh-proxycommand to verify
+# the identity before connection.  This should work in both directions!
 echo "### testuser connecting to sshd socket..."
 PROXY_COMMAND="monkeysphere-ssh-proxycommand --no-connect %h && socat STDIO UNIX:${SOCKET}"
-GNUPGHOME="$TEMPDIR"/testuser/.gnupg ssh -oProxyCommand="$PROXY_COMMAND" testhost
-
-# create a new client side key, certify it with the "CA", use it to
-# log in.
-## FIXME: implement!
+GNUPGHOME="$TEMPDIR"/testuser/.gnupg \
+MONKEYSPHERE_HOME="$TEMPDIR"/testuser/.monkeysphere \
+ ssh -F "$TEMPDIR"/testuser/.ssh/config -v -v -v -oProxyCommand="$PROXY_COMMAND" testhost