1# $OpenBSD: Makefile,v 1.65 2013/04/18 02:46:12 djm Exp $ 2 3REGRESS_TARGETS= t1 t2 t3 t4 t5 t6 t7 t8 t9 t-exec 4tests: $(REGRESS_TARGETS) 5 6# Interop tests are not run by default 7interop interop-tests: t-exec-interop 8 9clean: 10 for F in $(CLEANFILES); do rm -f $(OBJ)$$F; done 11 test -z "${SUDO}" || ${SUDO} rm -f ${SUDO_CLEAN} 12 rm -rf $(OBJ).putty 13 14distclean: clean 15 16LTESTS= connect \ 17 proxy-connect \ 18 connect-privsep \ 19 proto-version \ 20 proto-mismatch \ 21 exit-status \ 22 envpass \ 23 transfer \ 24 banner \ 25 rekey \ 26 stderr-data \ 27 stderr-after-eof \ 28 broken-pipe \ 29 try-ciphers \ 30 yes-head \ 31 login-timeout \ 32 agent \ 33 agent-getpeereid \ 34 agent-timeout \ 35 agent-ptrace \ 36 keyscan \ 37 keygen-change \ 38 keygen-convert \ 39 key-options \ 40 scp \ 41 sftp \ 42 sftp-chroot \ 43 sftp-cmds \ 44 sftp-badcmds \ 45 sftp-batch \ 46 sftp-glob \ 47 reconfigure \ 48 dynamic-forward \ 49 forwarding \ 50 multiplex \ 51 reexec \ 52 brokenkeys \ 53 cfgmatch \ 54 addrmatch \ 55 localcommand \ 56 forcecommand \ 57 portnum \ 58 keytype \ 59 kextype \ 60 cert-hostkey \ 61 cert-userkey \ 62 host-expand \ 63 keys-command \ 64 forward-control \ 65 integrity \ 66 krl 67 68INTEROP_TESTS= putty-transfer putty-ciphers putty-kex conch-ciphers 69#INTEROP_TESTS+=ssh-com ssh-com-client ssh-com-keygen ssh-com-sftp 70 71#LTESTS= cipher-speed 72 73USER!= id -un 74CLEANFILES= t2.out t3.out t6.out1 t6.out2 t7.out t7.out.pub copy.1 copy.2 \ 75 t8.out t8.out.pub t9.out t9.out.pub \ 76 authorized_keys_${USER} known_hosts pidfile testdata \ 77 ssh_config sshd_config.orig ssh_proxy sshd_config sshd_proxy \ 78 rsa.pub rsa rsa1.pub rsa1 host.rsa host.rsa1 \ 79 rsa-agent rsa-agent.pub rsa1-agent rsa1-agent.pub \ 80 ls.copy banner.in banner.out empty.in \ 81 scp-ssh-wrapper.scp ssh_proxy_envpass remote_pid \ 82 sshd_proxy_bak rsa_ssh2_cr.prv rsa_ssh2_crnl.prv \ 83 known_hosts-cert host_ca_key* cert_host_key* cert_user_key* \ 84 putty.rsa2 sshd_proxy_orig ssh_proxy_bak \ 85 key.rsa-* key.dsa-* key.ecdsa-* \ 86 authorized_principals_${USER} expect actual ready \ 87 sshd_proxy.* authorized_keys_${USER}.* modpipe revoked-* krl-* \ 88 ssh.log failed-ssh.log sshd.log failed-sshd.log \ 89 regress.log failed-regress.log ssh-log-wrapper.sh 90 91SUDO_CLEAN+= /var/run/testdata_${USER} /var/run/keycommand_${USER} 92 93# Enable all malloc(3) randomisations and checks 94TEST_ENV= "MALLOC_OPTIONS=AFGJPRX" 95 96TEST_SSH_SSHKEYGEN?=ssh-keygen 97 98CPPFLAGS=-I.. 99 100t1: 101 ${TEST_SSH_SSHKEYGEN} -if ${.CURDIR}/rsa_ssh2.prv | diff - ${.CURDIR}/rsa_openssh.prv 102 tr '\n' '\r' <${.CURDIR}/rsa_ssh2.prv > ${.OBJDIR}/rsa_ssh2_cr.prv 103 ${TEST_SSH_SSHKEYGEN} -if ${.OBJDIR}/rsa_ssh2_cr.prv | diff - ${.CURDIR}/rsa_openssh.prv 104 awk '{print $$0 "\r"}' ${.CURDIR}/rsa_ssh2.prv > ${.OBJDIR}/rsa_ssh2_crnl.prv 105 ${TEST_SSH_SSHKEYGEN} -if ${.OBJDIR}/rsa_ssh2_crnl.prv | diff - ${.CURDIR}/rsa_openssh.prv 106 107t2: 108 cat ${.CURDIR}/rsa_openssh.prv > $(OBJ)/t2.out 109 chmod 600 $(OBJ)/t2.out 110 ${TEST_SSH_SSHKEYGEN} -yf $(OBJ)/t2.out | diff - ${.CURDIR}/rsa_openssh.pub 111 112t3: 113 ${TEST_SSH_SSHKEYGEN} -ef ${.CURDIR}/rsa_openssh.pub >$(OBJ)/t3.out 114 ${TEST_SSH_SSHKEYGEN} -if $(OBJ)/t3.out | diff - ${.CURDIR}/rsa_openssh.pub 115 116t4: 117 ${TEST_SSH_SSHKEYGEN} -lf ${.CURDIR}/rsa_openssh.pub |\ 118 awk '{print $$2}' | diff - ${.CURDIR}/t4.ok 119 120t5: 121 ${TEST_SSH_SSHKEYGEN} -Bf ${.CURDIR}/rsa_openssh.pub |\ 122 awk '{print $$2}' | diff - ${.CURDIR}/t5.ok 123 124t6: 125 ${TEST_SSH_SSHKEYGEN} -if ${.CURDIR}/dsa_ssh2.prv > $(OBJ)/t6.out1 126 ${TEST_SSH_SSHKEYGEN} -if ${.CURDIR}/dsa_ssh2.pub > $(OBJ)/t6.out2 127 chmod 600 $(OBJ)/t6.out1 128 ${TEST_SSH_SSHKEYGEN} -yf $(OBJ)/t6.out1 | diff - $(OBJ)/t6.out2 129 130$(OBJ)/t7.out: 131 ${TEST_SSH_SSHKEYGEN} -q -t rsa -N '' -f $@ 132 133t7: $(OBJ)/t7.out 134 ${TEST_SSH_SSHKEYGEN} -lf $(OBJ)/t7.out > /dev/null 135 ${TEST_SSH_SSHKEYGEN} -Bf $(OBJ)/t7.out > /dev/null 136 137$(OBJ)/t8.out: 138 ${TEST_SSH_SSHKEYGEN} -q -t dsa -N '' -f $@ 139 140t8: $(OBJ)/t8.out 141 ${TEST_SSH_SSHKEYGEN} -lf $(OBJ)/t8.out > /dev/null 142 ${TEST_SSH_SSHKEYGEN} -Bf $(OBJ)/t8.out > /dev/null 143 144$(OBJ)/t9.out: 145 test "${TEST_SSH_ECC}" != yes || \ 146 ${TEST_SSH_SSHKEYGEN} -q -t ecdsa -N '' -f $@ 147 148t9: $(OBJ)/t9.out 149 test "${TEST_SSH_ECC}" != yes || \ 150 ${TEST_SSH_SSHKEYGEN} -lf $(OBJ)/t9.out > /dev/null 151 test "${TEST_SSH_ECC}" != yes || \ 152 ${TEST_SSH_SSHKEYGEN} -Bf $(OBJ)/t9.out > /dev/null 153 154t-exec: ${LTESTS:=.sh} 155 @if [ "x$?" = "x" ]; then exit 0; fi; \ 156 for TEST in ""$?; do \ 157 echo "run test $${TEST}" ... 1>&2; \ 158 (env SUDO="${SUDO}" TEST_ENV=${TEST_ENV} ${TEST_SHELL} ${.CURDIR}/test-exec.sh ${.OBJDIR} ${.CURDIR}/$${TEST}) || exit $$?; \ 159 done 160 161t-exec-interop: ${INTEROP_TESTS:=.sh} 162 @if [ "x$?" = "x" ]; then exit 0; fi; \ 163 for TEST in ""$?; do \ 164 echo "run test $${TEST}" ... 1>&2; \ 165 (env SUDO="${SUDO}" TEST_ENV=${TEST_ENV} ${TEST_SHELL} ${.CURDIR}/test-exec.sh ${.OBJDIR} ${.CURDIR}/$${TEST}) || exit $$?; \ 166 done 167 168# Not run by default 169interop: ${INTEROP_TARGETS} 170