ssh-com-keygen.sh revision 124208
1#	$OpenBSD: ssh-com-keygen.sh,v 1.3 2003/05/14 22:08:27 markus Exp $
2#	Placed in the Public Domain.
3
4tid="ssh.com key import"
5
6#TEST_COMBASE=/path/to/ssh/com/binaries
7if [ "X${TEST_COMBASE}" = "X" ]; then
8	fatal '$TEST_COMBASE is not set'
9fi
10
11VERSIONS="
12	2.0.10
13	2.0.12
14	2.0.13
15	2.1.0
16	2.2.0
17	2.3.0
18	2.3.1
19	2.4.0
20	3.0.0
21	3.1.0
22	3.2.0
23	3.2.2
24	3.2.3
25	3.3.0"
26
27COMPRV=${OBJ}/comkey
28COMPUB=${COMPRV}.pub
29OPENSSHPRV=${OBJ}/opensshkey
30OPENSSHPUB=${OPENSSHPRV}.pub
31
32# go for it
33for v in ${VERSIONS}; do
34	keygen=${TEST_COMBASE}/${v}/ssh-keygen2
35	if [ ! -x ${keygen} ]; then
36		continue
37	fi
38	types="dss"
39        case $v in
40        2.3.1|3.*)
41                types="$types rsa"
42                ;;
43        esac
44	for t in $types; do
45		verbose "ssh-keygen $v/$t"
46		rm -f $COMPRV $COMPUB $OPENSSHPRV $OPENSSHPUB
47		${keygen} -q -P -t $t ${COMPRV} > /dev/null 2>&1
48		if [ $? -ne 0 ]; then
49			fail "${keygen} -t $t failed"
50			continue
51		fi
52		${SSHKEYGEN} -if ${COMPUB} > ${OPENSSHPUB}
53		if [ $? -ne 0 ]; then
54			fail "import public key ($v/$t) failed"
55			continue
56		fi
57		${SSHKEYGEN} -if ${COMPRV} > ${OPENSSHPRV}
58		if [ $? -ne 0 ]; then
59			fail "import private key ($v/$t) failed"
60			continue
61		fi
62		chmod 600 ${OPENSSHPRV}
63		${SSHKEYGEN} -yf ${OPENSSHPRV} |\
64			diff - ${OPENSSHPUB}
65		if [ $? -ne 0 ]; then
66			fail "public keys ($v/$t) differ"
67		fi
68	done
69done
70
71rm -f $COMPRV $COMPUB $OPENSSHPRV $OPENSSHPUB
72