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