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