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