1*46c9f5bfSmarkus# $OpenBSD: ssh-com-keygen.sh,v 1.4 2004/02/24 17:06:52 markus Exp $ 298f48076Smarkus# Placed in the Public Domain. 398f48076Smarkus 498f48076Smarkustid="ssh.com key import" 598f48076Smarkus 698f48076Smarkus#TEST_COMBASE=/path/to/ssh/com/binaries 798f48076Smarkusif [ "X${TEST_COMBASE}" = "X" ]; then 898f48076Smarkus fatal '$TEST_COMBASE is not set' 998f48076Smarkusfi 1098f48076Smarkus 1198f48076SmarkusVERSIONS=" 1298f48076Smarkus 2.0.10 1398f48076Smarkus 2.0.12 1498f48076Smarkus 2.0.13 1598f48076Smarkus 2.1.0 1698f48076Smarkus 2.2.0 1798f48076Smarkus 2.3.0 1898f48076Smarkus 2.3.1 1998f48076Smarkus 2.4.0 2098f48076Smarkus 3.0.0 21de247f79Smarkus 3.1.0 22de247f79Smarkus 3.2.0 23357f04a7Smarkus 3.2.2 24357f04a7Smarkus 3.2.3 25*46c9f5bfSmarkus 3.2.5 26*46c9f5bfSmarkus 3.2.9 27*46c9f5bfSmarkus 3.2.9.1 28de247f79Smarkus 3.3.0" 2998f48076Smarkus 3098f48076SmarkusCOMPRV=${OBJ}/comkey 3198f48076SmarkusCOMPUB=${COMPRV}.pub 3298f48076SmarkusOPENSSHPRV=${OBJ}/opensshkey 3398f48076SmarkusOPENSSHPUB=${OPENSSHPRV}.pub 3498f48076Smarkus 3598f48076Smarkus# go for it 3698f48076Smarkusfor v in ${VERSIONS}; do 3798f48076Smarkus keygen=${TEST_COMBASE}/${v}/ssh-keygen2 3898f48076Smarkus if [ ! -x ${keygen} ]; then 3998f48076Smarkus continue 4098f48076Smarkus fi 4198f48076Smarkus types="dss" 4298f48076Smarkus case $v in 4398f48076Smarkus 2.3.1|3.*) 4498f48076Smarkus types="$types rsa" 4598f48076Smarkus ;; 4698f48076Smarkus esac 4798f48076Smarkus for t in $types; do 4898f48076Smarkus verbose "ssh-keygen $v/$t" 4998f48076Smarkus rm -f $COMPRV $COMPUB $OPENSSHPRV $OPENSSHPUB 5098f48076Smarkus ${keygen} -q -P -t $t ${COMPRV} > /dev/null 2>&1 5198f48076Smarkus if [ $? -ne 0 ]; then 5298f48076Smarkus fail "${keygen} -t $t failed" 5398f48076Smarkus continue 5498f48076Smarkus fi 5598f48076Smarkus ${SSHKEYGEN} -if ${COMPUB} > ${OPENSSHPUB} 5698f48076Smarkus if [ $? -ne 0 ]; then 5798f48076Smarkus fail "import public key ($v/$t) failed" 5898f48076Smarkus continue 5998f48076Smarkus fi 6098f48076Smarkus ${SSHKEYGEN} -if ${COMPRV} > ${OPENSSHPRV} 6198f48076Smarkus if [ $? -ne 0 ]; then 6298f48076Smarkus fail "import private key ($v/$t) failed" 6398f48076Smarkus continue 6498f48076Smarkus fi 6598f48076Smarkus chmod 600 ${OPENSSHPRV} 6698f48076Smarkus ${SSHKEYGEN} -yf ${OPENSSHPRV} |\ 6798f48076Smarkus diff - ${OPENSSHPUB} 6898f48076Smarkus if [ $? -ne 0 ]; then 6998f48076Smarkus fail "public keys ($v/$t) differ" 7098f48076Smarkus fi 7198f48076Smarkus done 7298f48076Smarkusdone 7398f48076Smarkus 7498f48076Smarkusrm -f $COMPRV $COMPUB $OPENSSHPRV $OPENSSHPUB 75