Various fixes for the Exim port

- Fix build with no OSCP support (ported from upstream) [1]
- Fix Dane support [2]
- Silence compile warnings caused by Exim code style

Reported by:	ler [1], Max Kostikov [2] via private email
This commit is contained in:
Vsevolod Stakhov 2018-04-17 09:32:06 +00:00
parent fb682ee411
commit 8d16b09148
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=467585
2 changed files with 45 additions and 2 deletions

View file

@ -3,7 +3,7 @@
PORTNAME= exim PORTNAME= exim
PORTVERSION?= ${EXIM_VERSION} PORTVERSION?= ${EXIM_VERSION}
PORTREVISION= 1 PORTREVISION= 2
CATEGORIES= mail ipv6 CATEGORIES= mail ipv6
MASTER_SITES= EXIM:exim MASTER_SITES= EXIM:exim
MASTER_SITE_SUBDIR= /exim4/:exim \ MASTER_SITE_SUBDIR= /exim4/:exim \
@ -151,6 +151,9 @@ CONFIG_FILE_PATH?= ${PREFIX}/etc/exim/configure
ALT_CONFIG_PREFIX?= ${PREFIX}/etc/exim/ ALT_CONFIG_PREFIX?= ${PREFIX}/etc/exim/
EXIM_DYNAMIC_LDFLAGS= -fPIC -rdynamic -export-dynamic EXIM_DYNAMIC_LDFLAGS= -fPIC -rdynamic -export-dynamic
# Avoid too many warnings due to Exim code style
EXIM_WARN_FLAGS?= -Wno-logical-op-parentheses -Wno-macro-redefined -Wno-parentheses -Wno-dangling-else
CFLAGS+= ${EXIM_WARN_FLAGS}
SED_SCRIPT= -e 's,%%PREFIX%%,${PREFIX},g' \ SED_SCRIPT= -e 's,%%PREFIX%%,${PREFIX},g' \
-e 's,%%DOCSDIR%%,${DOCSDIR},g' \ -e 's,%%DOCSDIR%%,${DOCSDIR},g' \
@ -214,7 +217,7 @@ SEDLIST+= -e 's,^\# (EXPERIMENTAL_DSN=),\1,'
.endif .endif
.if ${PORT_OPTIONS:MDANE} .if ${PORT_OPTIONS:MDANE}
SEDLIST+= -e 's,^\# (EXPERIMENTAL_DANE=),\1,' SEDLIST+= -e 's,^\# (SUPPORT_DANE=),\1,'
.endif .endif
.if ${PORT_OPTIONS:MARC} .if ${PORT_OPTIONS:MARC}

View file

@ -0,0 +1,40 @@
From: Jeremy Harris <jgh146exb@wizmail.org>
Date: Mon, 16 Apr 2018 17:45:04 +0000 (+0100)
Subject: Fix OpenSSL non-OCSP build
X-Git-Url: https://git.exim.org/exim.git/commitdiff_plain/37f0ce65959019e417ff79b9d0959e13470c5290
Fix OpenSSL non-OCSP build
---
diff --git a/src/src/tls-openssl.c b/src/src/tls-openssl.c
index fb59217..cefa94f 100644
--- src/tls-openssl.c.orig
+++ src/tls-openssl.c
@@ -2505,10 +2505,12 @@ if (error == SSL_ERROR_ZERO_RETURN)
if (SSL_get_shutdown(server_ssl) == SSL_RECEIVED_SHUTDOWN)
SSL_shutdown(server_ssl);
+#ifndef DISABLE_OCSP
sk_X509_pop_free(server_static_cbinfo->verify_stack, X509_free);
+ server_static_cbinfo->verify_stack = NULL;
+#endif
SSL_free(server_ssl);
SSL_CTX_free(server_ctx);
- server_static_cbinfo->verify_stack = NULL;
server_ctx = NULL;
server_ssl = NULL;
tls_in.active = -1;
@@ -2782,11 +2784,13 @@ if (shutdown)
}
}
+#ifndef DISABLE_OCSP
if (is_server)
{
sk_X509_pop_free(server_static_cbinfo->verify_stack, X509_free);
server_static_cbinfo->verify_stack = NULL;
}
+#endif
SSL_CTX_free(*ctxp);
SSL_free(*sslp);