commit bd5cdd5f2ddf4e9c26ff9353d15324dd0bbda37c Author: Jeremy Harris Date: Mon Feb 12 17:29:22 2018 +0000 ACL: Enforce non-usability of control=utf8_downconvert in MAIL ACL. Bug 2239 diff --git a/src/src/acl.c b/src/src/acl.c index 750fd2da..95ee2667 100644 --- a/src/src/acl.c +++ b/src/src/acl.c @@ -533,7 +533,9 @@ static control_def controls_list[] = { }, #ifdef SUPPORT_I18N [CONTROL_UTF8_DOWNCONVERT] = - { US"utf8_downconvert", TRUE, 0 } + { US"utf8_downconvert", TRUE, + (unsigned) ~((1< Date: Sat Feb 17 16:53:27 2018 +0000 Fix memory leak during multi-message reception using STARTTLS Reported-by: Wolfgang Breyha diff --git a/src/src/tls-gnu.c b/src/src/tls-gnu.c index fc3aba59..58f50510 100644 --- a/src/src/tls-gnu.c +++ b/src/src/tls-gnu.c @@ -2202,9 +2202,10 @@ gnutls_certificate_free_credentials(state->x509_cred); state->tlsp->active = -1; +if (state->xfer_buffer) store_free(state->xfer_buffer); memcpy(state, &exim_gnutls_state_init, sizeof(exim_gnutls_state_init)); -if ((state_server.session == NULL) && (state_client.session == NULL)) +if (!state_server.session && !state_client.session) { gnutls_global_deinit(); exim_gnutls_base_init_done = FALSE; diff --git a/src/src/tls-openssl.c b/src/src/tls-openssl.c index b225eb76..03b9023d 100644 --- a/src/src/tls-openssl.c +++ b/src/src/tls-openssl.c @@ -2073,7 +2073,7 @@ DEBUG(D_tls) smtp_read_response()/ip_recv(). Hence no need to duplicate for _in and _out. */ -ssl_xfer_buffer = store_malloc(ssl_xfer_buffer_size); +if (!ssl_xfer_buffer) ssl_xfer_buffer = store_malloc(ssl_xfer_buffer_size); ssl_xfer_buffer_lwm = ssl_xfer_buffer_hwm = 0; ssl_xfer_eof = ssl_xfer_error = 0;