summaryrefslogtreecommitdiff
path: root/regress
diff options
context:
space:
mode:
Diffstat (limited to 'regress')
-rw-r--r--regress/Makefile7
-rw-r--r--regress/addrmatch.sh4
-rw-r--r--regress/key-options.sh10
-rw-r--r--regress/keygen-comment.sh52
-rw-r--r--regress/misc/kexfuzz/Makefile4
-rw-r--r--regress/misc/sk-dummy/sk-dummy.c14
-rw-r--r--regress/netcat.c3
-rw-r--r--regress/percent.sh88
-rw-r--r--regress/reexec.sh5
-rw-r--r--regress/sftp-badcmds.sh4
-rw-r--r--regress/sshsig.sh4
-rw-r--r--regress/test-exec.sh22
-rw-r--r--regress/unittests/authopt/Makefile3
-rw-r--r--regress/unittests/hostkeys/Makefile3
-rw-r--r--regress/unittests/kex/Makefile3
-rw-r--r--regress/unittests/sshkey/Makefile3
-rwxr-xr-xregress/unittests/sshkey/mktestdata.sh34
-rw-r--r--regress/unittests/sshkey/testdata/dsa_n33
-rw-r--r--regress/unittests/sshkey/testdata/ecdsa_n13
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_1bin533 -> 0 bytes
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_1.fp1
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_1.fp.bb1
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_1.param.n1
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_1.pub1
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_1_pwbin533 -> 0 bytes
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_2bin981 -> 0 bytes
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_2.fp1
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_2.fp.bb1
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_2.param.n1
-rw-r--r--regress/unittests/sshkey/testdata/rsa1_2.pub1
-rw-r--r--regress/unittests/sshkey/testdata/rsa_n31
31 files changed, 267 insertions, 81 deletions
diff --git a/regress/Makefile b/regress/Makefile
index 01e257a94..53a50ffca 100644
--- a/regress/Makefile
+++ b/regress/Makefile
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile,v 1.106 2020/01/31 23:25:08 djm Exp $ 1# $OpenBSD: Makefile,v 1.108 2020/04/20 04:44:47 djm Exp $
2 2
3tests: prep file-tests t-exec unit 3tests: prep file-tests t-exec unit
4 4
@@ -66,6 +66,7 @@ LTESTS= connect \
66 cfgparse \ 66 cfgparse \
67 cfgmatch \ 67 cfgmatch \
68 cfgmatchlisten \ 68 cfgmatchlisten \
69 percent \
69 addrmatch \ 70 addrmatch \
70 localcommand \ 71 localcommand \
71 forcecommand \ 72 forcecommand \
@@ -90,8 +91,8 @@ LTESTS= connect \
90 servcfginclude \ 91 servcfginclude \
91 allow-deny-users \ 92 allow-deny-users \
92 authinfo \ 93 authinfo \
93 sshsig 94 sshsig \
94 95 keygen-comment
95 96
96 97
97INTEROP_TESTS= putty-transfer putty-ciphers putty-kex conch-ciphers 98INTEROP_TESTS= putty-transfer putty-ciphers putty-kex conch-ciphers
diff --git a/regress/addrmatch.sh b/regress/addrmatch.sh
index 1584bd405..e7d29c3f3 100644
--- a/regress/addrmatch.sh
+++ b/regress/addrmatch.sh
@@ -1,4 +1,4 @@
1# $OpenBSD: addrmatch.sh,v 1.4 2012/05/13 01:42:32 dtucker Exp $ 1# $OpenBSD: addrmatch.sh,v 1.5 2020/03/13 03:18:45 djm Exp $
2# Placed in the Public Domain. 2# Placed in the Public Domain.
3 3
4tid="address match" 4tid="address match"
@@ -43,7 +43,7 @@ run_trial user 19.0.0.1 somehost 1.2.3.4 5678 match4 "localport"
43 43
44if test "$TEST_SSH_IPV6" != "no"; then 44if test "$TEST_SSH_IPV6" != "no"; then
45run_trial user ::1 somehost.example.com ::2 1234 match2 "bare IP6 address" 45run_trial user ::1 somehost.example.com ::2 1234 match2 "bare IP6 address"
46run_trial user ::2 somehost.exaple.com ::2 1234 nomatch "deny IPv6" 46run_trial user ::2 somehost.example.com ::2 1234 nomatch "deny IPv6"
47run_trial user ::3 somehost ::2 1234 nomatch "IP6 negated" 47run_trial user ::3 somehost ::2 1234 nomatch "IP6 negated"
48run_trial user ::4 somehost ::2 1234 nomatch "IP6 no match" 48run_trial user ::4 somehost ::2 1234 nomatch "IP6 no match"
49run_trial user 2000::1 somehost ::2 1234 match2 "IP6 network" 49run_trial user 2000::1 somehost ::2 1234 match2 "IP6 network"
diff --git a/regress/key-options.sh b/regress/key-options.sh
index 112c9bd8e..097f46eba 100644
--- a/regress/key-options.sh
+++ b/regress/key-options.sh
@@ -7,6 +7,12 @@ origkeys="$OBJ/authkeys_orig"
7authkeys="$OBJ/authorized_keys_${USER}" 7authkeys="$OBJ/authorized_keys_${USER}"
8cp $authkeys $origkeys 8cp $authkeys $origkeys
9 9
10# Allocating ptys can require privileges on some platforms.
11skip_pty=""
12if ! config_defined HAVE_OPENPTY && [ "x$SUDO" == "x" ]; then
13 skip_pty="no openpty(3) and SUDO not set"
14fi
15
10# Test command= forced command 16# Test command= forced command
11for c in 'command="echo bar"' 'no-pty,command="echo bar"'; do 17for c in 'command="echo bar"' 'no-pty,command="echo bar"'; do
12 sed "s/.*/$c &/" $origkeys >$authkeys 18 sed "s/.*/$c &/" $origkeys >$authkeys
@@ -27,7 +33,7 @@ expect_pty_succeed() {
27 rm -f $OBJ/data 33 rm -f $OBJ/data
28 sed "s/.*/$opts &/" $origkeys >$authkeys 34 sed "s/.*/$opts &/" $origkeys >$authkeys
29 verbose "key option pty $which" 35 verbose "key option pty $which"
30 config_defined HAVE_OPENPTY || verbose "skipped for no openpty(3)" 36 [ "x$skip_pty" != "x" ] && verbose "skipped because $skip_pty" && return
31 ${SSH} -ttq -F $OBJ/ssh_proxy somehost "tty > $OBJ/data; exit 0" 37 ${SSH} -ttq -F $OBJ/ssh_proxy somehost "tty > $OBJ/data; exit 0"
32 if [ $? -ne 0 ] ; then 38 if [ $? -ne 0 ] ; then
33 fail "key option failed $which" 39 fail "key option failed $which"
@@ -45,7 +51,7 @@ expect_pty_fail() {
45 rm -f $OBJ/data 51 rm -f $OBJ/data
46 sed "s/.*/$opts &/" $origkeys >$authkeys 52 sed "s/.*/$opts &/" $origkeys >$authkeys
47 verbose "key option pty $which" 53 verbose "key option pty $which"
48 config_defined HAVE_OPENPTY || verbose "skipped for no openpty(3)" 54 [ "x$skip_pty" != "x" ] && verbose "skipped because $skip_pty" && return
49 ${SSH} -ttq -F $OBJ/ssh_proxy somehost "tty > $OBJ/data; exit 0" 55 ${SSH} -ttq -F $OBJ/ssh_proxy somehost "tty > $OBJ/data; exit 0"
50 if [ $? -eq 0 ]; then 56 if [ $? -eq 0 ]; then
51 r=`cat $OBJ/data` 57 r=`cat $OBJ/data`
diff --git a/regress/keygen-comment.sh b/regress/keygen-comment.sh
new file mode 100644
index 000000000..af571d390
--- /dev/null
+++ b/regress/keygen-comment.sh
@@ -0,0 +1,52 @@
1#    Placed in the Public Domain.
2
3tid="Comment extraction from private key"
4
5S1="secret1"
6
7check_fingerprint () {
8 file="$1"
9 comment="$2"
10 trace "fingerprinting $file"
11 if ! ${SSHKEYGEN} -l -E sha256 -f $file > $OBJ/$t-fgp ; then
12 fail "ssh-keygen -l failed for $t-key"
13 fi
14 if ! egrep "^([0-9]+) SHA256:(.){43} ${comment} \(.*\)\$" \
15 $OBJ/$t-fgp >/dev/null 2>&1 ; then
16 fail "comment is not correctly recovered for $t-key"
17 fi
18 rm -f $OBJ/$t-fgp
19}
20
21for fmt in '' RFC4716 PKCS8 PEM; do
22 for t in $SSH_KEYTYPES; do
23 trace "generating $t key in '$fmt' format"
24 rm -f $OBJ/$t-key*
25 oldfmt=""
26 case "$fmt" in
27 PKCS8|PEM) oldfmt=1 ;;
28 esac
29 # Some key types like ssh-ed25519 and *@openssh.com are never
30 # stored in old formats.
31 case "$t" in
32 ssh-ed25519|*openssh.com) test -z "$oldfmt" || continue ;;
33 esac
34 comment="foo bar"
35 fmtarg=""
36 test -z "$fmt" || fmtarg="-m $fmt"
37 ${SSHKEYGEN} $fmtarg -N '' -C "${comment}" \
38 -t $t -f $OBJ/$t-key >/dev/null 2>&1 || \
39 fatal "keygen of $t in format $fmt failed"
40 check_fingerprint $OBJ/$t-key "${comment}"
41 check_fingerprint $OBJ/$t-key.pub "${comment}"
42 # Output fingerprint using only private file
43 trace "fingerprinting $t key using private key file"
44 rm -f $OBJ/$t-key.pub
45 if [ ! -z "$oldfmt" ] ; then
46 # Comment cannot be recovered from old format keys.
47 comment="no comment"
48 fi
49 check_fingerprint $OBJ/$t-key "${comment}"
50 rm -f $OBJ/$t-key*
51 done
52done
diff --git a/regress/misc/kexfuzz/Makefile b/regress/misc/kexfuzz/Makefile
index 9eb86931c..ede5e2fb4 100644
--- a/regress/misc/kexfuzz/Makefile
+++ b/regress/misc/kexfuzz/Makefile
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile,v 1.7 2020/01/26 00:09:50 djm Exp $ 1# $OpenBSD: Makefile,v 1.8 2020/04/03 04:07:48 djm Exp $
2 2
3.include <bsd.own.mk> 3.include <bsd.own.mk>
4.include <bsd.obj.mk> 4.include <bsd.obj.mk>
@@ -19,7 +19,7 @@ SRCS+=ssh-ecdsa.c ssh-ed25519.c mac.c umac.c umac128.c hmac.c misc.c
19SRCS+=ssherr.c uidswap.c cleanup.c xmalloc.c match.c krl.c fatal.c 19SRCS+=ssherr.c uidswap.c cleanup.c xmalloc.c match.c krl.c fatal.c
20SRCS+=addrmatch.c bitmap.c packet.c dispatch.c canohost.c ssh_api.c 20SRCS+=addrmatch.c bitmap.c packet.c dispatch.c canohost.c ssh_api.c
21SRCS+=compat.c ed25519.c hash.c ge25519.c fe25519.c sc25519.c verify.c 21SRCS+=compat.c ed25519.c hash.c ge25519.c fe25519.c sc25519.c verify.c
22SRCS+=cipher-chachapoly.c chacha.c poly1305.c 22SRCS+=cipher-chachapoly.c chacha.c poly1305.c utf8.c
23SRCS+=sshbuf-io.c ssh-ecdsa-sk.c ssh-ed25519-sk.c msg.c ssh-sk-client.c 23SRCS+=sshbuf-io.c ssh-ecdsa-sk.c ssh-ed25519-sk.c msg.c ssh-sk-client.c
24 24
25SRCS+= kex.c 25SRCS+= kex.c
diff --git a/regress/misc/sk-dummy/sk-dummy.c b/regress/misc/sk-dummy/sk-dummy.c
index dca158ded..f3acb2fb7 100644
--- a/regress/misc/sk-dummy/sk-dummy.c
+++ b/regress/misc/sk-dummy/sk-dummy.c
@@ -47,7 +47,7 @@
47 } while (0) 47 } while (0)
48#endif 48#endif
49 49
50#if SSH_SK_VERSION_MAJOR != 0x00040000 50#if SSH_SK_VERSION_MAJOR != 0x00050000
51# error SK API has changed, sk-dummy.c needs an update 51# error SK API has changed, sk-dummy.c needs an update
52#endif 52#endif
53 53
@@ -468,13 +468,15 @@ sig_ed25519(const uint8_t *message, size_t message_len,
468} 468}
469 469
470int 470int
471sk_sign(uint32_t alg, const uint8_t *message, size_t message_len, 471sk_sign(uint32_t alg, const uint8_t *data, size_t datalen,
472 const char *application, const uint8_t *key_handle, size_t key_handle_len, 472 const char *application, const uint8_t *key_handle, size_t key_handle_len,
473 uint8_t flags, const char *pin, struct sk_option **options, 473 uint8_t flags, const char *pin, struct sk_option **options,
474 struct sk_sign_response **sign_response) 474 struct sk_sign_response **sign_response)
475{ 475{
476 struct sk_sign_response *response = NULL; 476 struct sk_sign_response *response = NULL;
477 int ret = SSH_SK_ERR_GENERAL; 477 int ret = SSH_SK_ERR_GENERAL;
478 SHA256_CTX ctx;
479 uint8_t message[32];
478 480
479 if (sign_response == NULL) { 481 if (sign_response == NULL) {
480 skdebug(__func__, "sign_response == NULL"); 482 skdebug(__func__, "sign_response == NULL");
@@ -487,17 +489,20 @@ sk_sign(uint32_t alg, const uint8_t *message, size_t message_len,
487 skdebug(__func__, "calloc response failed"); 489 skdebug(__func__, "calloc response failed");
488 goto out; 490 goto out;
489 } 491 }
492 SHA256_Init(&ctx);
493 SHA256_Update(&ctx, data, datalen);
494 SHA256_Final(message, &ctx);
490 response->flags = flags; 495 response->flags = flags;
491 response->counter = 0x12345678; 496 response->counter = 0x12345678;
492 switch(alg) { 497 switch(alg) {
493 case SSH_SK_ECDSA: 498 case SSH_SK_ECDSA:
494 if (sig_ecdsa(message, message_len, application, 499 if (sig_ecdsa(message, sizeof(message), application,
495 response->counter, flags, key_handle, key_handle_len, 500 response->counter, flags, key_handle, key_handle_len,
496 response) != 0) 501 response) != 0)
497 goto out; 502 goto out;
498 break; 503 break;
499 case SSH_SK_ED25519: 504 case SSH_SK_ED25519:
500 if (sig_ed25519(message, message_len, application, 505 if (sig_ed25519(message, sizeof(message), application,
501 response->counter, flags, key_handle, key_handle_len, 506 response->counter, flags, key_handle, key_handle_len,
502 response) != 0) 507 response) != 0)
503 goto out; 508 goto out;
@@ -510,6 +515,7 @@ sk_sign(uint32_t alg, const uint8_t *message, size_t message_len,
510 response = NULL; 515 response = NULL;
511 ret = 0; 516 ret = 0;
512 out: 517 out:
518 explicit_bzero(message, sizeof(message));
513 if (response != NULL) { 519 if (response != NULL) {
514 free(response->sig_r); 520 free(response->sig_r);
515 free(response->sig_s); 521 free(response->sig_s);
diff --git a/regress/netcat.c b/regress/netcat.c
index 2d86818e2..fe94dd908 100644
--- a/regress/netcat.c
+++ b/regress/netcat.c
@@ -64,6 +64,9 @@
64#ifdef HAVE_ERR_H 64#ifdef HAVE_ERR_H
65# include <err.h> 65# include <err.h>
66#endif 66#endif
67#ifdef HAVE_SYS_BYTEORDER_H
68# include <sys/byteorder.h>
69#endif
67 70
68/* Telnet options from arpa/telnet.h */ 71/* Telnet options from arpa/telnet.h */
69#define IAC 255 72#define IAC 255
diff --git a/regress/percent.sh b/regress/percent.sh
new file mode 100644
index 000000000..2e891f693
--- /dev/null
+++ b/regress/percent.sh
@@ -0,0 +1,88 @@
1# $OpenBSD: percent.sh,v 1.6 2020/04/10 00:54:03 dtucker Exp $
2# Placed in the Public Domain.
3
4tid="percent expansions"
5
6if [ -x "/usr/xpg4/bin/id" ]; then
7 PATH=/usr/xpg4/bin:$PATH
8 export PATH
9fi
10
11USER=`id -u -n`
12USERID=`id -u`
13HOST=`hostname | cut -f1 -d.`
14HOSTNAME=`hostname`
15
16# Localcommand is evaluated after connection because %T is not available
17# until then. Because of this we use a different method of exercising it,
18# and we can't override the remote user otherwise authentication will fail.
19# We also have to explicitly enable it.
20echo "permitlocalcommand yes" >> $OBJ/ssh_proxy
21
22trial()
23{
24 opt="$1"; arg="$2"; expect="$3"
25
26 trace "test $opt=$arg $expect"
27 rm -f $OBJ/actual
28 case "$opt" in
29 localcommand)
30 ${SSH} -F $OBJ/ssh_proxy -o $opt="echo '$arg' >$OBJ/actual" \
31 somehost true
32 got=`cat $OBJ/actual`
33 ;;
34 matchexec)
35 (cat $OBJ/ssh_proxy && \
36 echo "Match Exec \"echo '$arg' >$OBJ/actual\"") \
37 >$OBJ/ssh_proxy_match
38 ${SSH} -F $OBJ/ssh_proxy_match remuser@somehost true || true
39 got=`cat $OBJ/actual`
40 ;;
41 *forward)
42 # LocalForward and RemoteForward take two args and only
43 # operate on Unix domain socket paths
44 got=`${SSH} -F $OBJ/ssh_proxy -o $opt="/$arg /$arg" -G \
45 remuser@somehost | awk '$1=="'$opt'"{print $2" "$3}'`
46 expect="/$expect /$expect"
47 ;;
48 *)
49 got=`${SSH} -F $OBJ/ssh_proxy -o $opt="$arg" -G \
50 remuser@somehost | awk '$1=="'$opt'"{print $2}'`
51 esac
52 if [ "$got" != "$expect" ]; then
53 fail "$opt=$arg expect $expect got $got"
54 fi
55}
56
57for i in matchexec localcommand remotecommand controlpath identityagent \
58 forwardagent localforward remoteforward; do
59 verbose $tid $i
60 if [ "$i" = "localcommand" ]; then
61 REMUSER=$USER
62 trial $i '%T' NONE
63 else
64 REMUSER=remuser
65 fi
66 # Matches implementation in readconf.c:ssh_connection_hash()
67 HASH=`printf "${HOSTNAME}127.0.0.1${PORT}$REMUSER" |
68 openssl sha1 | cut -f2 -d' '`
69 trial $i '%%' '%'
70 trial $i '%C' $HASH
71 trial $i '%i' $USERID
72 trial $i '%h' 127.0.0.1
73 trial $i '%d' $HOME
74 trial $i '%L' $HOST
75 trial $i '%l' $HOSTNAME
76 trial $i '%n' somehost
77 trial $i '%p' $PORT
78 trial $i '%r' $REMUSER
79 trial $i '%u' $USER
80 trial $i '%%/%C/%i/%h/%d/%L/%l/%n/%p/%r/%u' \
81 "%/$HASH/$USERID/127.0.0.1/$HOME/$HOST/$HOSTNAME/somehost/$PORT/$REMUSER/$USER"
82done
83
84# A subset of options support tilde expansion
85for i in controlpath identityagent forwardagent; do
86 trial $i '~' $HOME/
87 trial $i '~/.ssh' $HOME/.ssh
88done
diff --git a/regress/reexec.sh b/regress/reexec.sh
index 2192456cd..8966ba524 100644
--- a/regress/reexec.sh
+++ b/regress/reexec.sh
@@ -9,7 +9,10 @@ SSHD_COPY=$OBJ/sshd
9# Start a sshd and then delete it 9# Start a sshd and then delete it
10start_sshd_copy () 10start_sshd_copy ()
11{ 11{
12 cp $SSHD_ORIG $SSHD_COPY 12 # NB. prefer ln to cp here. On some OSX 19.4 configurations,
13 # djm has seen failure after fork() when the executable image
14 # has been removed from the filesystem.
15 ln $SSHD_ORIG $SSHD_COPY || cp $SSHD_ORIG $SSHD_COPY
13 SSHD=$SSHD_COPY 16 SSHD=$SSHD_COPY
14 start_sshd 17 start_sshd
15 SSHD=$SSHD_ORIG 18 SSHD=$SSHD_ORIG
diff --git a/regress/sftp-badcmds.sh b/regress/sftp-badcmds.sh
index 7f85c4f22..5b016d558 100644
--- a/regress/sftp-badcmds.sh
+++ b/regress/sftp-badcmds.sh
@@ -1,4 +1,4 @@
1# $OpenBSD: sftp-badcmds.sh,v 1.6 2013/05/17 10:26:26 dtucker Exp $ 1# $OpenBSD: sftp-badcmds.sh,v 1.7 2020/03/13 03:18:45 djm Exp $
2# Placed in the Public Domain. 2# Placed in the Public Domain.
3 3
4tid="sftp invalid commands" 4tid="sftp invalid commands"
@@ -58,7 +58,7 @@ rm -rf ${COPY}
58cp ${DATA2} ${COPY} 58cp ${DATA2} ${COPY}
59verbose "$tid: glob put files to local file" 59verbose "$tid: glob put files to local file"
60echo "put /bin/l* $COPY" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1 60echo "put /bin/l* $COPY" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1
61cmp ${DATA2} ${COPY} || fail "put successed when it should have failed" 61cmp ${DATA2} ${COPY} || fail "put succeeded when it should have failed"
62 62
63rm -rf ${COPY} ${COPY}.1 ${COPY}.2 ${COPY}.dd 63rm -rf ${COPY} ${COPY}.1 ${COPY}.2 ${COPY}.dd
64 64
diff --git a/regress/sshsig.sh b/regress/sshsig.sh
index da362c179..1e2f9dda4 100644
--- a/regress/sshsig.sh
+++ b/regress/sshsig.sh
@@ -1,4 +1,4 @@
1# $OpenBSD: sshsig.sh,v 1.3 2019/11/26 23:43:10 djm Exp $ 1# $OpenBSD: sshsig.sh,v 1.4 2020/03/13 03:18:45 djm Exp $
2# Placed in the Public Domain. 2# Placed in the Public Domain.
3 3
4tid="sshsig" 4tid="sshsig"
@@ -133,7 +133,7 @@ for t in $SIGNKEYS; do
133 # check-novalidate with invalid data 133 # check-novalidate with invalid data
134 ${SSHKEYGEN} -vvv -Y check-novalidate -s $sigfile -n $sig_namespace \ 134 ${SSHKEYGEN} -vvv -Y check-novalidate -s $sigfile -n $sig_namespace \
135 < $DATA2 >/dev/null 2>&1 && \ 135 < $DATA2 >/dev/null 2>&1 && \
136 fail "sucessfully checked signature for $t key with invalid data" 136 fail "succeeded checking signature for $t key with invalid data"
137 137
138 # Check signing keys using ssh-agent. 138 # Check signing keys using ssh-agent.
139 ${SSHADD} -D >/dev/null 2>&1 # Remove all previously-loaded keys. 139 ${SSHADD} -D >/dev/null 2>&1 # Remove all previously-loaded keys.
diff --git a/regress/test-exec.sh b/regress/test-exec.sh
index a3a40719f..d8491b2be 100644
--- a/regress/test-exec.sh
+++ b/regress/test-exec.sh
@@ -1,4 +1,4 @@
1# $OpenBSD: test-exec.sh,v 1.75 2020/01/31 23:25:08 djm Exp $ 1# $OpenBSD: test-exec.sh,v 1.76 2020/04/04 23:04:41 dtucker Exp $
2# Placed in the Public Domain. 2# Placed in the Public Domain.
3 3
4#SUDO=sudo 4#SUDO=sudo
@@ -23,6 +23,16 @@ else
23 PORT=4242 23 PORT=4242
24fi 24fi
25 25
26# If configure tells us to use a different egrep, create a wrapper function
27# to call it. This means we don't need to change all the tests that depend
28# on a good implementation.
29if test "x${EGREP}" != "x"; then
30 egrep ()
31{
32 ${EGREP} "$@"
33}
34fi
35
26if [ -x /usr/ucb/whoami ]; then 36if [ -x /usr/ucb/whoami ]; then
27 USER=`/usr/ucb/whoami` 37 USER=`/usr/ucb/whoami`
28elif whoami >/dev/null 2>&1; then 38elif whoami >/dev/null 2>&1; then
@@ -512,7 +522,9 @@ fi
512rm -f $OBJ/known_hosts $OBJ/authorized_keys_$USER 522rm -f $OBJ/known_hosts $OBJ/authorized_keys_$USER
513 523
514SSH_SK_PROVIDER= 524SSH_SK_PROVIDER=
515if [ -f "${SRC}/misc/sk-dummy/obj/sk-dummy.so" ] ; then 525if ! config_defined ENABLE_SK; then
526 trace skipping sk-dummy
527elif [ -f "${SRC}/misc/sk-dummy/obj/sk-dummy.so" ] ; then
516 SSH_SK_PROVIDER="${SRC}/misc/sk-dummy/obj/sk-dummy.so" 528 SSH_SK_PROVIDER="${SRC}/misc/sk-dummy/obj/sk-dummy.so"
517elif [ -f "${SRC}/misc/sk-dummy/sk-dummy.so" ] ; then 529elif [ -f "${SRC}/misc/sk-dummy/sk-dummy.so" ] ; then
518 SSH_SK_PROVIDER="${SRC}/misc/sk-dummy/sk-dummy.so" 530 SSH_SK_PROVIDER="${SRC}/misc/sk-dummy/sk-dummy.so"
@@ -537,14 +549,16 @@ maybe_filter_sk() {
537 549
538SSH_KEYTYPES=`$SSH -Q key-plain | maybe_filter_sk` 550SSH_KEYTYPES=`$SSH -Q key-plain | maybe_filter_sk`
539SSH_HOSTKEY_TYPES=`$SSH -Q key-plain | maybe_filter_sk` 551SSH_HOSTKEY_TYPES=`$SSH -Q key-plain | maybe_filter_sk`
540 552
541for t in ${SSH_KEYTYPES}; do 553for t in ${SSH_KEYTYPES}; do
542 # generate user key 554 # generate user key
543 trace "generating key type $t"
544 if [ ! -f $OBJ/$t ] || [ ${SSHKEYGEN_BIN} -nt $OBJ/$t ]; then 555 if [ ! -f $OBJ/$t ] || [ ${SSHKEYGEN_BIN} -nt $OBJ/$t ]; then
556 trace "generating key type $t"
545 rm -f $OBJ/$t 557 rm -f $OBJ/$t
546 ${SSHKEYGEN} -q -N '' -t $t -f $OBJ/$t ||\ 558 ${SSHKEYGEN} -q -N '' -t $t -f $OBJ/$t ||\
547 fail "ssh-keygen for $t failed" 559 fail "ssh-keygen for $t failed"
560 else
561 trace "using cached key type $t"
548 fi 562 fi
549 563
550 # setup authorized keys 564 # setup authorized keys
diff --git a/regress/unittests/authopt/Makefile b/regress/unittests/authopt/Makefile
index 492092fc6..e8edc7b5f 100644
--- a/regress/unittests/authopt/Makefile
+++ b/regress/unittests/authopt/Makefile
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile,v 1.4 2020/01/26 00:09:50 djm Exp $ 1# $OpenBSD: Makefile,v 1.5 2020/04/06 09:43:55 dtucker Exp $
2 2
3PROG=test_authopt 3PROG=test_authopt
4SRCS=tests.c 4SRCS=tests.c
@@ -17,6 +17,7 @@ SRCS+=ssh-ed25519-sk.c sk-usbhid.c
17 17
18SRCS+=digest-openssl.c 18SRCS+=digest-openssl.c
19#SRCS+=digest-libc.c 19#SRCS+=digest-libc.c
20SRCS+=utf8.c
20 21
21REGRESS_TARGETS=run-regress-${PROG} 22REGRESS_TARGETS=run-regress-${PROG}
22 23
diff --git a/regress/unittests/hostkeys/Makefile b/regress/unittests/hostkeys/Makefile
index c0a893135..d841d96be 100644
--- a/regress/unittests/hostkeys/Makefile
+++ b/regress/unittests/hostkeys/Makefile
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile,v 1.7 2020/01/26 00:09:50 djm Exp $ 1# $OpenBSD: Makefile,v 1.8 2020/04/06 09:43:56 dtucker Exp $
2 2
3PROG=test_hostkeys 3PROG=test_hostkeys
4SRCS=tests.c test_iterate.c 4SRCS=tests.c test_iterate.c
@@ -15,6 +15,7 @@ SRCS+=ssh-ed25519-sk.c sk-usbhid.c
15 15
16SRCS+=digest-openssl.c 16SRCS+=digest-openssl.c
17#SRCS+=digest-libc.c 17#SRCS+=digest-libc.c
18SRCS+=utf8.c
18 19
19REGRESS_TARGETS=run-regress-${PROG} 20REGRESS_TARGETS=run-regress-${PROG}
20 21
diff --git a/regress/unittests/kex/Makefile b/regress/unittests/kex/Makefile
index 648006c78..1c5d68ce8 100644
--- a/regress/unittests/kex/Makefile
+++ b/regress/unittests/kex/Makefile
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile,v 1.9 2020/01/26 00:09:50 djm Exp $ 1# $OpenBSD: Makefile,v 1.10 2020/04/06 09:43:56 dtucker Exp $
2 2
3PROG=test_kex 3PROG=test_kex
4SRCS=tests.c test_kex.c 4SRCS=tests.c test_kex.c
@@ -25,6 +25,7 @@ SRCS+= smult_curve25519_ref.c
25SRCS+= kexgen.c 25SRCS+= kexgen.c
26SRCS+= kexsntrup4591761x25519.c 26SRCS+= kexsntrup4591761x25519.c
27SRCS+= sntrup4591761.c 27SRCS+= sntrup4591761.c
28SRCS+= utf8.c
28 29
29SRCS+=digest-openssl.c 30SRCS+=digest-openssl.c
30#SRCS+=digest-libc.c 31#SRCS+=digest-libc.c
diff --git a/regress/unittests/sshkey/Makefile b/regress/unittests/sshkey/Makefile
index 78b2cf0ce..29c9b3ba7 100644
--- a/regress/unittests/sshkey/Makefile
+++ b/regress/unittests/sshkey/Makefile
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile,v 1.9 2020/01/26 00:09:50 djm Exp $ 1# $OpenBSD: Makefile,v 1.10 2020/04/06 09:43:56 dtucker Exp $
2 2
3PROG=test_sshkey 3PROG=test_sshkey
4SRCS=tests.c test_sshkey.c test_file.c test_fuzz.c common.c 4SRCS=tests.c test_sshkey.c test_file.c test_fuzz.c common.c
@@ -15,6 +15,7 @@ SRCS+=ssh-ed25519-sk.c sk-usbhid.c
15 15
16SRCS+=digest-openssl.c 16SRCS+=digest-openssl.c
17#SRCS+=digest-libc.c 17#SRCS+=digest-libc.c
18SRCS+=utf8.c
18 19
19REGRESS_TARGETS=run-regress-${PROG} 20REGRESS_TARGETS=run-regress-${PROG}
20 21
diff --git a/regress/unittests/sshkey/mktestdata.sh b/regress/unittests/sshkey/mktestdata.sh
index 93da34c64..8efe6dd03 100755
--- a/regress/unittests/sshkey/mktestdata.sh
+++ b/regress/unittests/sshkey/mktestdata.sh
@@ -1,5 +1,5 @@
1#!/bin/sh 1#!/bin/sh
2# $OpenBSD: mktestdata.sh,v 1.7 2018/09/12 01:36:45 djm Exp $ 2# $OpenBSD: mktestdata.sh,v 1.10 2020/05/01 04:03:14 djm Exp $
3 3
4PW=mekmitasdigoat 4PW=mekmitasdigoat
5 5
@@ -56,8 +56,8 @@ ecdsa_params() {
56 awk '/^pub:/,/^ASN1 OID:/' | #\ 56 awk '/^pub:/,/^ASN1 OID:/' | #\
57 grep -v '^[a-zA-Z]' | tr -d ' \n:' > ${_outbase}.pub 57 grep -v '^[a-zA-Z]' | tr -d ' \n:' > ${_outbase}.pub
58 openssl ec -noout -text -in $_in | \ 58 openssl ec -noout -text -in $_in | \
59 grep "ASN1 OID:" | tr -d '\n' | \ 59 grep "ASN1 OID:" | \
60 sed 's/.*: //;s/ *$//' > ${_outbase}.curve 60 sed 's/.*: //;s/ *$//' | tr -d '\n' > ${_outbase}.curve
61 for x in priv pub curve ; do 61 for x in priv pub curve ; do
62 echo "" >> ${_outbase}.$x 62 echo "" >> ${_outbase}.$x
63 echo ============ ${_outbase}.$x 63 echo ============ ${_outbase}.$x
@@ -77,20 +77,24 @@ rm -f rsa_1_pw dsa_1_pw ecdsa_1_pw ed25519_1_pw
77rm -f rsa_n_pw dsa_n_pw ecdsa_n_pw 77rm -f rsa_n_pw dsa_n_pw ecdsa_n_pw
78rm -f pw *.pub *.bn.* *.param.* *.fp *.fp.bb 78rm -f pw *.pub *.bn.* *.param.* *.fp *.fp.bb
79 79
80ssh-keygen -t rsa -b 1024 -C "RSA test key #1" -N "" -f rsa_1 80ssh-keygen -t rsa -b 1024 -C "RSA test key #1" -N "" -f rsa_1 -m PEM
81ssh-keygen -t dsa -b 1024 -C "DSA test key #1" -N "" -f dsa_1 81ssh-keygen -t dsa -b 1024 -C "DSA test key #1" -N "" -f dsa_1 -m PEM
82ssh-keygen -t ecdsa -b 256 -C "ECDSA test key #1" -N "" -f ecdsa_1 82ssh-keygen -t ecdsa -b 256 -C "ECDSA test key #1" -N "" -f ecdsa_1 -m PEM
83ssh-keygen -t ed25519 -C "ED25519 test key #1" -N "" -f ed25519_1 83ssh-keygen -t ed25519 -C "ED25519 test key #1" -N "" -f ed25519_1
84 84
85ssh-keygen -t rsa -b 2048 -C "RSA test key #2" -N "" -f rsa_2 85ssh-keygen -t rsa -b 2048 -C "RSA test key #2" -N "" -f rsa_2 -m PEM
86ssh-keygen -t dsa -b 1024 -C "DSA test key #2" -N "" -f dsa_2 86ssh-keygen -t dsa -b 1024 -C "DSA test key #2" -N "" -f dsa_2 -m PEM
87ssh-keygen -t ecdsa -b 521 -C "ECDSA test key #2" -N "" -f ecdsa_2 87ssh-keygen -t ecdsa -b 521 -C "ECDSA test key #2" -N "" -f ecdsa_2 -m PEM
88ssh-keygen -t ed25519 -C "ED25519 test key #1" -N "" -f ed25519_2 88ssh-keygen -t ed25519 -C "ED25519 test key #1" -N "" -f ed25519_2
89 89
90cp rsa_1 rsa_n 90cp rsa_1 rsa_n
91cp dsa_1 dsa_n 91cp dsa_1 dsa_n
92cp ecdsa_1 ecdsa_n 92cp ecdsa_1 ecdsa_n
93 93
94ssh-keygen -pf rsa_n -N ""
95ssh-keygen -pf dsa_n -N ""
96ssh-keygen -pf ecdsa_n -N ""
97
94cp rsa_1 rsa_1_pw 98cp rsa_1 rsa_1_pw
95cp dsa_1 dsa_1_pw 99cp dsa_1 dsa_1_pw
96cp ecdsa_1 ecdsa_1_pw 100cp ecdsa_1 ecdsa_1_pw
@@ -99,13 +103,13 @@ cp rsa_1 rsa_n_pw
99cp dsa_1 dsa_n_pw 103cp dsa_1 dsa_n_pw
100cp ecdsa_1 ecdsa_n_pw 104cp ecdsa_1 ecdsa_n_pw
101 105
102ssh-keygen -pf rsa_1_pw -N "$PW" 106ssh-keygen -pf rsa_1_pw -m PEM -N "$PW"
103ssh-keygen -pf dsa_1_pw -N "$PW" 107ssh-keygen -pf dsa_1_pw -m PEM -N "$PW"
104ssh-keygen -pf ecdsa_1_pw -N "$PW" 108ssh-keygen -pf ecdsa_1_pw -m PEM -N "$PW"
105ssh-keygen -pf ed25519_1_pw -N "$PW" 109ssh-keygen -pf ed25519_1_pw -N "$PW"
106ssh-keygen -opf rsa_n_pw -N "$PW" 110ssh-keygen -pf rsa_n_pw -N "$PW"
107ssh-keygen -opf dsa_n_pw -N "$PW" 111ssh-keygen -pf dsa_n_pw -N "$PW"
108ssh-keygen -opf ecdsa_n_pw -N "$PW" 112ssh-keygen -pf ecdsa_n_pw -N "$PW"
109 113
110rsa_params rsa_1 rsa_1.param 114rsa_params rsa_1 rsa_1.param
111rsa_params rsa_2 rsa_2.param 115rsa_params rsa_2 rsa_2.param
diff --git a/regress/unittests/sshkey/testdata/dsa_n b/regress/unittests/sshkey/testdata/dsa_n
index d3f24824f..657624e0e 100644
--- a/regress/unittests/sshkey/testdata/dsa_n
+++ b/regress/unittests/sshkey/testdata/dsa_n
@@ -1,12 +1,21 @@
1-----BEGIN DSA PRIVATE KEY----- 1-----BEGIN OPENSSH PRIVATE KEY-----
2MIIBvAIBAAKBgQD6kutNFRsHTwEAv6d39Lhsqy1apdHBZ9c2HfyRr7WmypyGIy2m 2b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABswAAAAdzc2gtZH
3Ka43vzXI8CNwmRSYs+A6d0vJC7Pl+f9QzJ/04NWOA+MiwfurwrR3CRe61QRYb8Py 3NzAAAAgQD6kutNFRsHTwEAv6d39Lhsqy1apdHBZ9c2HfyRr7WmypyGIy2mKa43vzXI8CNw
4mcHOxueHs95IcjrbIPNn86cjnPP5qvv/guUzCjuww4zBdJOXpligrGt2XwIVAKMD 4mRSYs+A6d0vJC7Pl+f9QzJ/04NWOA+MiwfurwrR3CRe61QRYb8PymcHOxueHs95IcjrbIP
5/50qQy7j8JaMk+1+Xtg1pK01AoGBAO7l9QVVbSSoy5lq6cOtvpf8UlwOa6+zBwbl 5Nn86cjnPP5qvv/guUzCjuww4zBdJOXpligrGt2XwAAABUAowP/nSpDLuPwloyT7X5e2DWk
6o4gmFd1RwX1yWkA8kQ7RrhCSg8Hc6mIGnKRgKRli/3LgbSfZ0obFJehkRtEWtN4P 6rTUAAACBAO7l9QVVbSSoy5lq6cOtvpf8UlwOa6+zBwblo4gmFd1RwX1yWkA8kQ7RrhCSg8
7h8fVUeS74iQbIwFQeKlYHIlNTRoGtAbdi3nHdV+BBkEQc1V3rjqYqhjOoz/yNsgz 7Hc6mIGnKRgKRli/3LgbSfZ0obFJehkRtEWtN4Ph8fVUeS74iQbIwFQeKlYHIlNTRoGtAbd
8LND26HrdAoGBAOdXpyfmobEBaOqZAuvgj1P0uhjG2P31Ufurv22FWPBU3A9qrkxb 8i3nHdV+BBkEQc1V3rjqYqhjOoz/yNsgzLND26HrdAAAAgQDnV6cn5qGxAWjqmQLr4I9T9L
9OXwE0LwvjCvrsQV/lrYhJz/tiys40VeahulWZE5SAHMXGIf95LiLSgaXMjko7joo 9oYxtj99VH7q79thVjwVNwPaq5MWzl8BNC8L4wr67EFf5a2ISc/7YsrONFXmobpVmROUgBz
10t+LK84ltLymwZ4QMnYjnZSSclf1UuyQMcUtb34+I0u9Ycnyhp2mSFsQtAhRYIbQ5 10FxiH/eS4i0oGlzI5KO46KLfiyvOJbS8psGeEDJ2I52UknJX9VLskDHFLW9+PiNLvWHJ8oa
11KfXsZuBPuWe5FJz3ldaEgw== 11dpkhbELQAAAdhWTOFbVkzhWwAAAAdzc2gtZHNzAAAAgQD6kutNFRsHTwEAv6d39Lhsqy1a
12-----END DSA PRIVATE KEY----- 12pdHBZ9c2HfyRr7WmypyGIy2mKa43vzXI8CNwmRSYs+A6d0vJC7Pl+f9QzJ/04NWOA+Miwf
13urwrR3CRe61QRYb8PymcHOxueHs95IcjrbIPNn86cjnPP5qvv/guUzCjuww4zBdJOXplig
14rGt2XwAAABUAowP/nSpDLuPwloyT7X5e2DWkrTUAAACBAO7l9QVVbSSoy5lq6cOtvpf8Ul
15wOa6+zBwblo4gmFd1RwX1yWkA8kQ7RrhCSg8Hc6mIGnKRgKRli/3LgbSfZ0obFJehkRtEW
16tN4Ph8fVUeS74iQbIwFQeKlYHIlNTRoGtAbdi3nHdV+BBkEQc1V3rjqYqhjOoz/yNsgzLN
17D26HrdAAAAgQDnV6cn5qGxAWjqmQLr4I9T9LoYxtj99VH7q79thVjwVNwPaq5MWzl8BNC8
18L4wr67EFf5a2ISc/7YsrONFXmobpVmROUgBzFxiH/eS4i0oGlzI5KO46KLfiyvOJbS8psG
19eEDJ2I52UknJX9VLskDHFLW9+PiNLvWHJ8oadpkhbELQAAABRYIbQ5KfXsZuBPuWe5FJz3
20ldaEgwAAAAAB
21-----END OPENSSH PRIVATE KEY-----
diff --git a/regress/unittests/sshkey/testdata/ecdsa_n b/regress/unittests/sshkey/testdata/ecdsa_n
index 80382b62d..9694f32e4 100644
--- a/regress/unittests/sshkey/testdata/ecdsa_n
+++ b/regress/unittests/sshkey/testdata/ecdsa_n
@@ -1,5 +1,8 @@
1-----BEGIN EC PRIVATE KEY----- 1-----BEGIN OPENSSH PRIVATE KEY-----
2MHcCAQEEIPPNyUAnjvFr+eT/7t/IyjuQQd/aLFiTY92LB9gIjyrMoAoGCCqGSM49 2b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAaAAAABNlY2RzYS
3AwEHoUQDQgAEDFlblkOrW9ydKVhtM+9AY3c9saBE7SG3lFx38nBavkADDaI9jh3/ 31zaGEyLW5pc3RwMjU2AAAACG5pc3RwMjU2AAAAQQQMWVuWQ6tb3J0pWG0z70Bjdz2xoETt
4kvG/Jt9vpm22qwoklTCGDfzCkXkIKaWlBw== 4IbeUXHfycFq+QAMNoj2OHf+S8b8m32+mbbarCiSVMIYN/MKReQgppaUHAAAAoFrmmZBa5p
5-----END EC PRIVATE KEY----- 5mQAAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBAxZW5ZDq1vcnSlY
6bTPvQGN3PbGgRO0ht5Rcd/JwWr5AAw2iPY4d/5Lxvybfb6ZttqsKJJUwhg38wpF5CCmlpQ
7cAAAAhAPPNyUAnjvFr+eT/7t/IyjuQQd/aLFiTY92LB9gIjyrMAAAAAAECAwQFBgc=
8-----END OPENSSH PRIVATE KEY-----
diff --git a/regress/unittests/sshkey/testdata/rsa1_1 b/regress/unittests/sshkey/testdata/rsa1_1
deleted file mode 100644
index 161cc04dc..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_1
+++ /dev/null
Binary files differ
diff --git a/regress/unittests/sshkey/testdata/rsa1_1.fp b/regress/unittests/sshkey/testdata/rsa1_1.fp
deleted file mode 100644
index 21b3d1a9a..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_1.fp
+++ /dev/null
@@ -1 +0,0 @@
1SHA256:/kk7K9S9kwYFiFilnZYFwCsQJweI/SGQVR2nIa8VBhE
diff --git a/regress/unittests/sshkey/testdata/rsa1_1.fp.bb b/regress/unittests/sshkey/testdata/rsa1_1.fp.bb
deleted file mode 100644
index 62991b3e0..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_1.fp.bb
+++ /dev/null
@@ -1 +0,0 @@
1xilil-nabyf-gynih-duheb-gokyp-bofet-nekac-bosod-lozin-kuvyh-poxix
diff --git a/regress/unittests/sshkey/testdata/rsa1_1.param.n b/regress/unittests/sshkey/testdata/rsa1_1.param.n
deleted file mode 100644
index 9a2549bbb..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_1.param.n
+++ /dev/null
@@ -1 +0,0 @@
100ce8ca77a556eba887f9a866c084a6402785354a81c10854d343181fa09351223a65f99915f8433d11a9c41677d307c03c3a39865b83e7172d2c1d878333c980438d6e4462106a0065cd75cfea7ca7f21538bf2f43f2af49cacee51b22e3bdcc5e87b59cc691f7c6942a77ef13bfdfb24300777b727348d0ba7900ba06b886729
diff --git a/regress/unittests/sshkey/testdata/rsa1_1.pub b/regress/unittests/sshkey/testdata/rsa1_1.pub
deleted file mode 100644
index f665b0d64..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_1.pub
+++ /dev/null
@@ -1 +0,0 @@
11024 65537 145043942670517902781741650890610683756045780348507433188994725700923246927874581962206512480287863636935077725837494808988986557337885675565086448774391442851909709751605441036910145362277967349042489937363543710406342212883803780768870873303921572812138116796733586484633244057911618360651775855949808953129 RSA1 test key #1
diff --git a/regress/unittests/sshkey/testdata/rsa1_1_pw b/regress/unittests/sshkey/testdata/rsa1_1_pw
deleted file mode 100644
index e73c6794a..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_1_pw
+++ /dev/null
Binary files differ
diff --git a/regress/unittests/sshkey/testdata/rsa1_2 b/regress/unittests/sshkey/testdata/rsa1_2
deleted file mode 100644
index 1d672ddea..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_2
+++ /dev/null
Binary files differ
diff --git a/regress/unittests/sshkey/testdata/rsa1_2.fp b/regress/unittests/sshkey/testdata/rsa1_2.fp
deleted file mode 100644
index 00516d521..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_2.fp
+++ /dev/null
@@ -1 +0,0 @@
1SHA256:JaOeRCnLl/TLe7vn1+aQ4ONyKZCUhK5x3k4VHilmbpE
diff --git a/regress/unittests/sshkey/testdata/rsa1_2.fp.bb b/regress/unittests/sshkey/testdata/rsa1_2.fp.bb
deleted file mode 100644
index b4989a588..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_2.fp.bb
+++ /dev/null
@@ -1 +0,0 @@
1xipag-zohut-zepuk-pisyv-kamog-pupus-netud-tudis-melup-cynov-gaxox
diff --git a/regress/unittests/sshkey/testdata/rsa1_2.param.n b/regress/unittests/sshkey/testdata/rsa1_2.param.n
deleted file mode 100644
index 25d438d06..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_2.param.n
+++ /dev/null
@@ -1 +0,0 @@
100cab091b57a154740c1bb7020f46a21a19dc40f647db2aab1babd30cabe241f0437391e68376ba35e48c624b8eaf6b59424d4c1a848c9fd1ef5cdc7c1b7f5e5df23b7ad513b79021286d38c52fdfae35656659e8649b2bf8bedf7c99664e45534007bd1c5dc3de1dafdf2d34ad087155951aa0f3d500b36d0d804bbccdef15ab31ca3dd40bdf5196065a97f397ef576caffb606be8232f6e0614aea0e979b9584296673fabb1dbd9f3212495c428842a2ab1f1768dd424fb6fdceeeab9126cacdfc834f0a0d09ba73ad8360d183ba85bb1565555cc6a536eb8d06df1a1e841107c021ae28a2d8b3465f9d8b58ef4045aea1c4ad7f8bf639574d6b142af67b4eb3
diff --git a/regress/unittests/sshkey/testdata/rsa1_2.pub b/regress/unittests/sshkey/testdata/rsa1_2.pub
deleted file mode 100644
index acab6dda6..000000000
--- a/regress/unittests/sshkey/testdata/rsa1_2.pub
+++ /dev/null
@@ -1 +0,0 @@
12048 65537 25587207108642486834576012232250034427766229965612147538722032399009467293691448851087324679403117563681753304072089087252850866332601294130674473984011813227791089686736237645788471744456489819306046398653719249100878753563464696688916667605969658659855996383142110932332560049231682024775766802333675397528993897914717996946881193454997890776063024953924432026083898531677702536941151535135950834711001926404724453460085864892836473957600610133803037286539329764689125111700732309717375455919436557475211197800228646235077584780367991159670572954337165006813357814232200750568307753718414790655085790471723847208627 RSA1 test key #2
diff --git a/regress/unittests/sshkey/testdata/rsa_n b/regress/unittests/sshkey/testdata/rsa_n
index 5de3f8422..b8e585e51 100644
--- a/regress/unittests/sshkey/testdata/rsa_n
+++ b/regress/unittests/sshkey/testdata/rsa_n
@@ -1,15 +1,16 @@
1-----BEGIN RSA PRIVATE KEY----- 1-----BEGIN OPENSSH PRIVATE KEY-----
2MIICXAIBAAKBgQDLV5lUTt7FrADseB/CGhEZzpoojjEW5y8+ePvLppmK3MmMI18u 2b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAlwAAAAdzc2gtcn
3d6vxzpK3bwZLYkVSyfJYI0HmIuGhdu7yMrW6wb84gbq8C31Xoe9EORcIUuGSvDKd 3NhAAAAAwEAAQAAAIEAy1eZVE7exawA7HgfwhoRGc6aKI4xFucvPnj7y6aZitzJjCNfLner
4NSM1SjlhDquRblDFB8kToqXyx1lqrXecXylxIUOL0jE+u0rU1967pDJx+wIDAQAB 48c6St28GS2JFUsnyWCNB5iLhoXbu8jK1usG/OIG6vAt9V6HvRDkXCFLhkrwynTUjNUo5YQ
5AoGAXyj5mpjmbD+YlxGIWz/zrM4hGsWgd4VteKEJxT6MMI4uzCRpkMd0ck8oHiwZ 56rkW5QxQfJE6Kl8sdZaq13nF8pcSFDi9IxPrtK1Nfeu6QycfsAAAH4to4I7raOCO4AAAAH
6GAI/SwUzIsgtONQuH3AXVsUgghW4Ynn+8ksEv0IZ918WDMDwqvqkyrVzsOsZzqYj 6c3NoLXJzYQAAAIEAy1eZVE7exawA7HgfwhoRGc6aKI4xFucvPnj7y6aZitzJjCNfLner8c
7Pf8DUDKCpwFjnlknJ04yvWBZvVhWtY4OiZ8GV0Ttsu3k+GECQQD1YHfvBb5FdJBv 76St28GS2JFUsnyWCNB5iLhoXbu8jK1usG/OIG6vAt9V6HvRDkXCFLhkrwynTUjNUo5YQ6r
8Uhde2Il+jaFia8mwVVNNaiD2ECxXx6CzGz54ZLEB9NPVfDUZK8lJ4UJDqelWNh3i 8kW5QxQfJE6Kl8sdZaq13nF8pcSFDi9IxPrtK1Nfeu6QycfsAAAADAQABAAAAgF8o+ZqY5m
9PF3RefWDAkEA1CVBzAFL4mNwpleVPzrfy69xP3gWOa26MxM/GE6zx9jC7HgQ3KPa 9w/mJcRiFs/86zOIRrFoHeFbXihCcU+jDCOLswkaZDHdHJPKB4sGRgCP0sFMyLILTjULh9w
10WKdG/FuHs085aTRDaDLmGcZ8IvMuu7NgKQJAcIOKmxR0Gd8IN7NZugjqixggb0Pj 10F1bFIIIVuGJ5/vJLBL9CGfdfFgzA8Kr6pMq1c7DrGc6mIz3/A1AygqcBY55ZJydOMr1gWb
11mLKXXwESGiJyYtHL0zTj4Uqyi6Ya2GJ66o7UXscmnmYz828fJtTtZBdbRwJBALfi 111YVrWODomfBldE7bLt5PhhAAAAQAndVkxvO8hwyEFGGwF3faHIAe/OxVb+MjaU25//Pe1/
12C2QvA32Zv/0PEXibKXy996WSC4G3ShwXZKtHHKHvCxY5BDSbehk59VesZrVPyG2e 12h/e6tlCk4w9CODpyV685gV394eYwMcGDcIkipTNUDZsAAABBAPVgd+8FvkV0kG9SF17YiX
13NYdOBxD0cIlCzJE56/ECQAndVkxvO8hwyEFGGwF3faHIAe/OxVb+MjaU25//Pe1/ 136NoWJrybBVU01qIPYQLFfHoLMbPnhksQH009V8NRkryUnhQkOp6VY2HeI8XdF59YMAAABB
14h/e6tlCk4w9CODpyV685gV394eYwMcGDcIkipTNUDZs= 14ANQlQcwBS+JjcKZXlT8638uvcT94FjmtujMTPxhOs8fYwux4ENyj2linRvxbh7NPOWk0Q2
15-----END RSA PRIVATE KEY----- 15gy5hnGfCLzLruzYCkAAAAAAQID
16-----END OPENSSH PRIVATE KEY-----