1*53555c84Stb# $OpenBSD: Makefile,v 1.1 2025/01/15 10:54:17 tb Exp $
2*53555c84Stb
3*53555c84Stb.if ! exists(/usr/local/bin/eopenssl34)
4*53555c84Stbregress:
5*53555c84Stb	# install openssl-3.4 from ports for interop tests
6*53555c84Stb	@echo 'Run "pkg_add openssl--%3.4" to run tests against OpenSSL 3.4'
7*53555c84Stb	@echo SKIPPED
8*53555c84Stb.else
9*53555c84Stb
10*53555c84StbPROGS =			client server
11*53555c84StbCFLAGS +=		-DOPENSSL_SUPPRESS_DEPRECATED
12*53555c84StbCPPFLAGS =		-I /usr/local/include/eopenssl34
13*53555c84StbLDFLAGS =		-L /usr/local/lib/eopenssl34
14*53555c84StbLDADD =			-lssl -lcrypto
15*53555c84StbDPADD =			/usr/local/lib/eopenssl34/libssl.a \
16*53555c84Stb			/usr/local/lib/eopenssl34/libcrypto.a
17*53555c84StbLD_LIBRARY_PATH =	/usr/local/lib/eopenssl34
18*53555c84StbREGRESS_TARGETS =	run-self-client-server
19*53555c84Stb.for p in ${PROGS}
20*53555c84StbREGRESS_TARGETS +=	run-ldd-$p run-version-$p run-protocol-$p
21*53555c84Stb.endfor
22*53555c84Stb
23*53555c84Stb.for p in ${PROGS}
24*53555c84Stb
25*53555c84Stbrun-ldd-$p: ldd-$p.out
26*53555c84Stb	# check that $p is linked with OpenSSL 3.4
27*53555c84Stb	grep -q /usr/local/lib/eopenssl34/libcrypto.so ldd-$p.out
28*53555c84Stb	grep -q /usr/local/lib/eopenssl34/libssl.so ldd-$p.out
29*53555c84Stb	# check that $p is not linked with LibreSSL
30*53555c84Stb	! grep -v libc.so ldd-$p.out | grep /usr/lib/
31*53555c84Stb
32*53555c84Stbrun-version-$p: $p-self.out
33*53555c84Stb	# check that runtime version is OpenSSL 3.4
34*53555c84Stb	grep 'SSLEAY_VERSION: OpenSSL 3.4' $p-self.out
35*53555c84Stb
36*53555c84Stbrun-protocol-$p: $p-self.out
37*53555c84Stb	# check that OpenSSL 3.4 protocol version is TLS 1.3
38*53555c84Stb	grep 'Protocol *: TLSv1.3' $p-self.out
39*53555c84Stb
40*53555c84Stb.endfor
41*53555c84Stb
42*53555c84Stb.endif # exists(/usr/local/bin/eopenssl34)
43*53555c84Stb
44*53555c84Stb.include <bsd.regress.mk>
45