Test adding terminating newline to known_hosts.
authordtucker <dtucker@openbsd.org>
Thu, 9 Feb 2023 09:55:33 +0000 (09:55 +0000)
committerdtucker <dtucker@openbsd.org>
Thu, 9 Feb 2023 09:55:33 +0000 (09:55 +0000)
regress/usr.bin/ssh/knownhosts.sh

index dfc768a..7a9da5b 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: knownhosts.sh,v 1.1 2021/10/01 05:20:20 dtucker Exp $
+#      $OpenBSD: knownhosts.sh,v 1.2 2023/02/09 09:55:33 dtucker Exp $
 #      Placed in the Public Domain.
 
 tid="known hosts"
@@ -15,3 +15,21 @@ ${SSH} -ohashknownhosts=yes -o stricthostkeychecking=no $opts somehost true \
 
 trace "test hashed known hosts"
 ${SSH} $opts somehost true || fail "reconnect with hashed known hosts"
+
+trace "no newline at end of known_hosts"
+printf "something" >$OBJ/known_hosts
+${SSH} $opts -ostricthostkeychecking=no somehost true \
+    || fail "hostkey update, missing newline, no strict"
+${SSH} $opts -ostricthostkeychecking=yes somehost true \
+    || fail "reconnect after adding with missing newline"
+
+trace "newline at end of known_hosts"
+printf "something\n" >$OBJ/known_hosts
+${SSH} $opts -ostricthostkeychecking=no somehost true \
+    || fail "hostkey update, newline, no strict"
+${SSH} $opts -ostricthostkeychecking=yes somehost true \
+    || fail "reconnect after adding without missing newline"
+lines=`wc -l <$OBJ/known_hosts`
+if [ $lines -ne 2 ]; then
+       fail "expected 2 lines in known_hosts, found $lines"
+fi