blob: d5668f08f35afb1182fbb2afe7dd149396348a0d [file] [log] [blame]
Damien Miller3a0e9f62010-11-05 10:16:34 +11001# $OpenBSD: Makefile,v 1.55 2010/08/31 12:24:25 djm Exp $
Damien Miller38cd4352002-05-01 13:17:33 +10002
Damien Miller3a0e9f62010-11-05 10:16:34 +11003REGRESS_TARGETS= t1 t2 t3 t4 t5 t6 t7 t8 t9 t-exec
Darren Tuckerebc3c132003-09-04 15:37:58 +10004tests: $(REGRESS_TARGETS)
Damien Miller38cd4352002-05-01 13:17:33 +10005
Damien Milleraf784932008-03-13 00:17:00 +11006# Interop tests are not run by default
Damien Miller66429962008-03-13 12:05:40 +11007interop interop-tests: t-exec-interop
Damien Milleraf784932008-03-13 00:17:00 +11008
Darren Tuckerebc3c132003-09-04 15:37:58 +10009clean:
Darren Tuckerb12d16f2003-09-14 11:40:35 +100010 for F in $(CLEANFILES); do rm -f $(OBJ)$$F; done
Damien Miller9c8a4272008-03-27 17:42:06 +110011 rm -rf $(OBJ).putty
12
Darren Tuckerebc3c132003-09-04 15:37:58 +100013distclean: clean
Damien Miller38cd4352002-05-01 13:17:33 +100014
15LTESTS= connect \
16 proxy-connect \
17 connect-privsep \
18 proto-version \
19 proto-mismatch \
20 exit-status \
Darren Tucker4c37ef02004-06-16 20:08:56 +100021 envpass \
Damien Miller38cd4352002-05-01 13:17:33 +100022 transfer \
Darren Tuckerdc001a52003-10-08 17:47:19 +100023 banner \
Darren Tuckerd57a76e2003-06-18 22:32:51 +100024 rekey \
Damien Miller38cd4352002-05-01 13:17:33 +100025 stderr-data \
26 stderr-after-eof \
27 broken-pipe \
28 try-ciphers \
29 yes-head \
Darren Tucker017fd612004-02-29 20:30:17 +110030 login-timeout \
Damien Miller38cd4352002-05-01 13:17:33 +100031 agent \
Damien Miller8b9cde72003-01-22 17:53:16 +110032 agent-getpeereid \
33 agent-timeout \
34 agent-ptrace \
Damien Miller38cd4352002-05-01 13:17:33 +100035 keyscan \
Damien Miller8b9cde72003-01-22 17:53:16 +110036 keygen-change \
Damien Millerb6bd3c22010-02-24 17:24:56 +110037 keygen-convert \
Damien Miller2e80cf22008-06-30 08:06:25 +100038 key-options \
Darren Tucker50433a92004-06-16 20:15:59 +100039 scp \
Damien Miller38cd4352002-05-01 13:17:33 +100040 sftp \
Damien Miller8b9cde72003-01-22 17:53:16 +110041 sftp-cmds \
Darren Tuckera4040f52003-06-18 22:35:11 +100042 sftp-badcmds \
Damien Miller8b9cde72003-01-22 17:53:16 +110043 sftp-batch \
Darren Tucker1c56ef62005-03-07 17:36:18 +110044 sftp-glob \
Darren Tucker50cea672003-06-18 22:45:34 +100045 reconfigure \
Darren Tuckere2f2be72003-07-03 20:27:55 +100046 dynamic-forward \
Darren Tuckere7d05832004-06-16 20:22:22 +100047 forwarding \
Darren Tucker977a9d22004-06-25 13:45:18 +100048 multiplex \
Darren Tucker124f58e2004-12-06 23:07:37 +110049 reexec \
Damien Miller7b1877c2006-07-24 15:31:41 +100050 brokenkeys \
51 cfgmatch \
Darren Tucker10f92422008-06-10 23:16:46 +100052 addrmatch \
Damien Millera5e58422008-03-12 23:58:05 +110053 localcommand \
Darren Tucker287b9322009-10-07 10:31:56 +110054 forcecommand \
Damien Miller58ac6de2010-02-27 07:57:12 +110055 portnum \
Darren Tuckereab5f0d2010-11-05 18:23:38 +110056 keytype \
57 kextype \
Damien Miller58ac6de2010-02-27 07:57:12 +110058 cert-hostkey \
59 cert-userkey
Damien Miller38cd4352002-05-01 13:17:33 +100060
Damien Miller4268a132008-06-30 08:07:56 +100061INTEROP_TESTS= putty-transfer putty-ciphers putty-kex conch-ciphers
Damien Milleraf784932008-03-13 00:17:00 +110062#INTEROP_TESTS+=ssh-com ssh-com-client ssh-com-keygen ssh-com-sftp
63
Darren Tuckereab5f0d2010-11-05 18:23:38 +110064#LTESTS= cipher-speed
65
Damien Miller38cd4352002-05-01 13:17:33 +100066USER!= id -un
Darren Tucker7b6cb5c2003-09-14 13:16:55 +100067CLEANFILES= t2.out t6.out1 t6.out2 t7.out t7.out.pub copy.1 copy.2 \
Damien Miller3a0e9f62010-11-05 10:16:34 +110068 t8.out t8.out.pub t9.out t9.out.pub \
Darren Tucker7b6cb5c2003-09-14 13:16:55 +100069 authorized_keys_${USER} known_hosts pidfile \
Darren Tucker3206e572004-12-06 23:04:57 +110070 ssh_config sshd_config.orig ssh_proxy sshd_config sshd_proxy \
Damien Miller38cd4352002-05-01 13:17:33 +100071 rsa.pub rsa rsa1.pub rsa1 host.rsa host.rsa1 \
72 rsa-agent rsa-agent.pub rsa1-agent rsa1-agent.pub \
Darren Tucker50433a92004-06-16 20:15:59 +100073 ls.copy banner.in banner.out empty.in \
Damien Miller7b1877c2006-07-24 15:31:41 +100074 scp-ssh-wrapper.scp ssh_proxy_envpass remote_pid \
Damien Miller9c8a4272008-03-27 17:42:06 +110075 sshd_proxy_bak rsa_ssh2_cr.prv rsa_ssh2_crnl.prv \
Damien Miller58ac6de2010-02-27 07:57:12 +110076 known_hosts-cert host_ca_key* cert_host_key* \
Damien Miller3bcce802010-05-21 14:48:16 +100077 putty.rsa2 sshd_proxy_orig \
78 authorized_principals_${USER}
Damien Miller38cd4352002-05-01 13:17:33 +100079
Damien Miller8f9492c2010-02-24 17:28:45 +110080# Enable all malloc(3) randomisations and checks
81TEST_ENV= "MALLOC_OPTIONS=AFGJPRX"
82
Damien Miller38cd4352002-05-01 13:17:33 +100083t1:
84 ssh-keygen -if ${.CURDIR}/rsa_ssh2.prv | diff - ${.CURDIR}/rsa_openssh.prv
Darren Tuckereab5f0d2010-11-05 18:23:38 +110085 tr '\n' '\r' <${.CURDIR}/rsa_ssh2.prv > ${.OBJDIR}/rsa_ssh2_cr.prv
86 ssh-keygen -if ${.OBJDIR}/rsa_ssh2_cr.prv | diff - ${.CURDIR}/rsa_openssh.prv
87 awk '{print $$0 "\r"}' ${.CURDIR}/rsa_ssh2.prv > ${.OBJDIR}/rsa_ssh2_crnl.prv
88 ssh-keygen -if ${.OBJDIR}/rsa_ssh2_crnl.prv | diff - ${.CURDIR}/rsa_openssh.prv
Damien Miller38cd4352002-05-01 13:17:33 +100089
90t2:
Tim Rice8b2157d2003-09-09 06:07:10 -070091 cat ${.CURDIR}/rsa_openssh.prv > $(OBJ)/t2.out
92 chmod 600 $(OBJ)/t2.out
93 ssh-keygen -yf $(OBJ)/t2.out | diff - ${.CURDIR}/rsa_openssh.pub
Damien Miller38cd4352002-05-01 13:17:33 +100094
95t3:
Darren Tuckerebc3c132003-09-04 15:37:58 +100096 ssh-keygen -ef ${.CURDIR}/rsa_openssh.pub >$(OBJ)/rsa_secsh.pub
97 ssh-keygen -if $(OBJ)/rsa_secsh.pub | diff - ${.CURDIR}/rsa_openssh.pub
98 rm -f ${.CURDIR}/rsa_secsh.pub
Damien Miller38cd4352002-05-01 13:17:33 +100099
100t4:
101 ssh-keygen -lf ${.CURDIR}/rsa_openssh.pub |\
102 awk '{print $$2}' | diff - ${.CURDIR}/t4.ok
103
104t5:
105 ssh-keygen -Bf ${.CURDIR}/rsa_openssh.pub |\
106 awk '{print $$2}' | diff - ${.CURDIR}/t5.ok
107
108t6:
Tim Rice8b2157d2003-09-09 06:07:10 -0700109 ssh-keygen -if ${.CURDIR}/dsa_ssh2.prv > $(OBJ)/t6.out1
110 ssh-keygen -if ${.CURDIR}/dsa_ssh2.pub > $(OBJ)/t6.out2
111 chmod 600 $(OBJ)/t6.out1
112 ssh-keygen -yf $(OBJ)/t6.out1 | diff - $(OBJ)/t6.out2
Damien Miller38cd4352002-05-01 13:17:33 +1000113
Tim Rice8b2157d2003-09-09 06:07:10 -0700114$(OBJ)/t7.out:
Damien Miller38cd4352002-05-01 13:17:33 +1000115 ssh-keygen -q -t rsa -N '' -f $@
116
Tim Rice8b2157d2003-09-09 06:07:10 -0700117t7: $(OBJ)/t7.out
118 ssh-keygen -lf $(OBJ)/t7.out > /dev/null
119 ssh-keygen -Bf $(OBJ)/t7.out > /dev/null
Damien Miller38cd4352002-05-01 13:17:33 +1000120
Darren Tuckereab5f0d2010-11-05 18:23:38 +1100121t8.out:
122 ssh-keygen -q -t dsa -N '' -f $@
123
124t8: t8.out
125 ssh-keygen -lf t8.out > /dev/null
126 ssh-keygen -Bf t8.out > /dev/null
127
128t9.out:
129 test "${TEST_SSH_ECC}" != yes || \
130 ssh-keygen -q -t ecdsa -N '' -f
131
132t9: t9.out
133 test "${TEST_SSH_ECC}" != yes || \
134 ssh-keygen -lf t9.out > /dev/null
135 test "${TEST_SSH_ECC}" != yes || \
136 ssh-keygen -Bf t9.out > /dev/null
137
Darren Tuckerebc3c132003-09-04 15:37:58 +1000138t-exec: ${LTESTS:=.sh}
139 @if [ "x$?" = "x" ]; then exit 0; fi; \
140 for TEST in ""$?; do \
141 echo "run test $${TEST}" ... 1>&2; \
Damien Miller527ded72010-07-02 13:40:16 +1000142 (env SUDO="${SUDO}" TEST_ENV=${TEST_ENV} sh ${.CURDIR}/test-exec.sh ${.OBJDIR} ${.CURDIR}/$${TEST}) || exit $$?; \
Darren Tuckerebc3c132003-09-04 15:37:58 +1000143 done
Damien Milleraf784932008-03-13 00:17:00 +1100144
145t-exec-interop: ${INTEROP_TESTS:=.sh}
146 @if [ "x$?" = "x" ]; then exit 0; fi; \
147 for TEST in ""$?; do \
148 echo "run test $${TEST}" ... 1>&2; \
Damien Miller527ded72010-07-02 13:40:16 +1000149 (env SUDO="${SUDO}" TEST_ENV=${TEST_ENV} sh ${.CURDIR}/test-exec.sh ${.OBJDIR} ${.CURDIR}/$${TEST}) || exit $$?; \
Damien Milleraf784932008-03-13 00:17:00 +1100150 done
151
Darren Tuckereab5f0d2010-11-05 18:23:38 +1100152# Not run by default
153interop: ${INTEROP_TARGETS}