1# $OpenBSD: Makefile,v 1.62 2017/04/14 18:14:33 bluhm Exp $
2
3# you can update the *.ok files with: make -i | patch
4# TARGETS
5# ipsec: feed ipsecNN.in through ipsecctl and check whether the output matches
6# 	 ipsecNN.ok
7# tcpmd5: same as above, but for tcpmd5 rules
8# sa:	 same as above, but for SA rules.
9# ike:	 same as above, but for ike rules.
10
11IPSECTESTS=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
12IPSECTESTS+=25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
13IPSECTESTS+=51 52 53 54 55 56 57 58
14TCPMD5TESTS=1 2 3
15SATESTS=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
16SAFAIL=1 2 3
17IPSECFAIL=1 2 3
18IKEFAIL=1 3 4 5 6 8 9 11 12 13 14
19IKETESTS=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
20IKETESTS+=16 17 18 19 20 21 22 23
21IKETESTS+=29 30 31 32 33 34 35 36 37 38 39 40
22IKETESTS+=41 42 43 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
23IKETESTS+=63 64 65 66 67 68
24
25IKEDELTESTS=1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
26IKEDELTESTS+=16 17 18 19 20 21 22 23
27IKEDELTESTS+=29 30 31 32 33 34 35 36 37 38 39 40
28IKEDELTESTS+=41 42 43 46 47
29
30SHELL=		/bin/sh
31IPSECCTL?=	/sbin/ipsecctl
32
33.MAIN: all
34
35.for n in ${IPSECTESTS}
36IPSEC_TARGETS+=ipsec${n}
37
38ipsec${n}:
39	cat ${.CURDIR}/ipsec${n}.in | sed -e 's,DIR,${.CURDIR},g' | \
40	    ${IPSECCTL} -nv -f - | diff -u ${.CURDIR}/ipsec${n}.ok /dev/stdin
41.endfor
42
43.for n in ${TCPMD5TESTS}
44TCPMD5_TARGETS+=tcpmd5${n}
45
46tcpmd5${n}:
47	cat ${.CURDIR}/tcpmd5${n}.in | sed -e 's,DIR,${.CURDIR},g' | \
48	    ${IPSECCTL} -nkv -f - | diff -u ${.CURDIR}/tcpmd5${n}.ok /dev/stdin
49.endfor
50
51.for n in ${SATESTS}
52SA_TARGETS+=sa${n}
53
54sa${n}:
55	cat ${.CURDIR}/sa${n}.in | sed -e 's,DIR,${.CURDIR},g' | \
56	    ${IPSECCTL} -knv -f - | diff -u ${.CURDIR}/sa${n}.ok /dev/stdin
57.endfor
58
59.for n in ${SAFAIL}
60SAFAIL_TARGETS+=safail${n}
61
62safail${n}:
63	cat ${.CURDIR}/safail${n}.in | sed -e 's,DIR,${.CURDIR},g' | \
64	    ${IPSECCTL} -nv -f - 2>&1 | diff -u ${.CURDIR}/safail${n}.ok /dev/stdin
65.endfor
66
67.for n in ${IPSECFAIL}
68IPSECFAIL_TARGETS+=ipsecfail${n}
69
70ipsecfail${n}:
71	cat ${.CURDIR}/ipsecfail${n}.in | sed -e 's,DIR,${.CURDIR},g' | \
72	    ${IPSECCTL} -nv -f - 2>&1 | diff -u ${.CURDIR}/ipsecfail${n}.ok /dev/stdin
73.endfor
74
75.for n in ${IKETESTS}
76IKE_TARGETS+=ike${n}
77
78ike${n}:
79	cat ${.CURDIR}/ike${n}.in | sed -e 's,DIR,${.CURDIR},g' | \
80	    ${IPSECCTL} -nv -f - | diff -u ${.CURDIR}/ike${n}.ok /dev/stdin
81.endfor
82
83.for n in ${IKEFAIL}
84IKEFAIL_TARGETS+=ikefail${n}
85
86ikefail${n}:
87	cat ${.CURDIR}/ikefail${n}.in | sed -e 's,DIR,${.CURDIR},g' | \
88	    ${IPSECCTL} -nv -f - 2>&1 | diff -u ${.CURDIR}/ikefail${n}.ok /dev/stdin
89.endfor
90
91.for n in ${IKEDELTESTS}
92IKEDEL_TARGETS+=ikedel${n}
93
94ikedel${n}:
95	cat ${.CURDIR}/ikedel${n}.in | sed -e 's,DIR,${.CURDIR},g' | \
96	    ${IPSECCTL} -dnv -f - | diff -u ${.CURDIR}/ikedel${n}.ok /dev/stdin
97.endfor
98
99ipsec:		${IPSEC_TARGETS}
100REGRESS_TARGETS+=ipsec
101
102tcpmd5:		${TCPMD5_TARGETS}
103REGRESS_TARGETS+=tcpmd5
104
105sa:		${SA_TARGETS}
106REGRESS_TARGETS+=sa
107
108safail:		${SAFAIL_TARGETS}
109REGRESS_TARGETS+=safail
110
111ipsecfail:	${IPSECFAIL_TARGETS}
112REGRESS_TARGETS+=ipsecfail
113
114ike:		${IKE_TARGETS}
115REGRESS_TARGETS+=ike
116
117ikefail:	${IKEFAIL_TARGETS}
118REGRESS_TARGETS+=ikefail
119
120ikedel:		${IKEDEL_TARGETS}
121REGRESS_TARGETS+=ikedel
122
123alltests: ${REGRESS_TARGETS}
124
125.PHONY: ${REGRESS_TARGETS}
126
127.include <bsd.regress.mk>
128