diff options
author | vsevolod <vsevolod@FreeBSD.org> | 2016-04-21 23:52:23 +0800 |
---|---|---|
committer | vsevolod <vsevolod@FreeBSD.org> | 2016-04-21 23:52:23 +0800 |
commit | 9273f9477b758fd5caa9ed51efff68189645f87e (patch) | |
tree | c3819f9a7f562b22a10e7f2e5ba086c6ef99c45a /mail/exim/files | |
parent | ab9f96f2293cce9324c83c566491a25c22d39078 (diff) | |
download | freebsd-ports-gnome-9273f9477b758fd5caa9ed51efff68189645f87e.tar.gz freebsd-ports-gnome-9273f9477b758fd5caa9ed51efff68189645f87e.tar.zst freebsd-ports-gnome-9273f9477b758fd5caa9ed51efff68189645f87e.zip |
- Update to 4.87
- Enable recommended default options
- Rename no longer experimental options
- Add rspamd shutdown patch
Exim 4.87 announce link:
https://lists.exim.org/lurker/message/20160406.181048.292a54e9.en.html
Diffstat (limited to 'mail/exim/files')
-rw-r--r-- | mail/exim/files/patch-post-transport-crash | 82 | ||||
-rw-r--r-- | mail/exim/files/patch-rspamd-shutdown | 13 | ||||
-rw-r--r-- | mail/exim/files/patch-src__auths__call_radius.c | 14 |
3 files changed, 13 insertions, 96 deletions
diff --git a/mail/exim/files/patch-post-transport-crash b/mail/exim/files/patch-post-transport-crash deleted file mode 100644 index 6bb69b11925c..000000000000 --- a/mail/exim/files/patch-post-transport-crash +++ /dev/null @@ -1,82 +0,0 @@ -diff --git src/deliver.c.orig src/src/deliver.c -index 0e7cea3..b5aa9b9 100644 ---- src/deliver.c.orig -+++ src/deliver.c -@@ -9,6 +9,7 @@ - - - #include "exim.h" -+#include <assert.h> - - - /* Data block for keeping track of subprocesses for parallel remote -@@ -7914,17 +7915,36 @@ if (!regex_IGNOREQUOTA) regex_IGNOREQUOTA = - uschar * - deliver_get_sender_address (uschar * id) - { -+int rc; -+uschar * new_sender_address, -+ * save_sender_address; -+ - if (!spool_open_datafile(id)) - return NULL; - -+/* Save and restore the global sender_address. I'm not sure if we should -+not save/restore all the other global variables too, because -+spool_read_header() may change all of them. But OTOH, when this -+deliver_get_sender_address() gets called, the current message is done -+already and nobody needs the globals anymore. (HS12, 2015-08-21) */ -+ - sprintf(CS spoolname, "%s-H", id); --if (spool_read_header(spoolname, TRUE, TRUE) != spool_read_OK) -+save_sender_address = sender_address; -+ -+rc = spool_read_header(spoolname, TRUE, TRUE); -+ -+new_sender_address = sender_address; -+sender_address = save_sender_address; -+ -+if (rc != spool_read_OK) - return NULL; - -+assert(new_sender_address); -+ - (void)close(deliver_datafile); - deliver_datafile = -1; - --return sender_address; -+return new_sender_address; - } - - /* vi: aw ai sw=2 -diff --git src/transports/smtp.c.orig src/transports/smtp.c -index 609dba3..c93f2ef 100644 ---- src/transports/smtp.c.orig -+++ src/transports/smtp.c -@@ -1274,14 +1274,19 @@ we will veto this new message. */ - static BOOL - smtp_are_same_identities(uschar * message_id, smtp_compare_t * s_compare) - { --uschar * save_sender_address = sender_address; --uschar * current_local_identity = -+ -+uschar * message_local_identity, -+ * current_local_identity, -+ * new_sender_address; -+ -+current_local_identity = - smtp_local_identity(s_compare->current_sender_address, s_compare->tblock); --uschar * new_sender_address = deliver_get_sender_address(message_id); --uschar * message_local_identity = -- smtp_local_identity(new_sender_address, s_compare->tblock); - --sender_address = save_sender_address; -+if (!(new_sender_address = deliver_get_sender_address(message_id))) -+ return 0; -+ -+message_local_identity = -+ smtp_local_identity(new_sender_address, s_compare->tblock); - - return Ustrcmp(current_local_identity, message_local_identity) == 0; - } - diff --git a/mail/exim/files/patch-rspamd-shutdown b/mail/exim/files/patch-rspamd-shutdown new file mode 100644 index 000000000000..51a0d5827e1f --- /dev/null +++ b/mail/exim/files/patch-rspamd-shutdown @@ -0,0 +1,13 @@ +--- src/spam.c.orig 2016-04-02 20:24:15.000000000 +0100 ++++ src/spam.c 2016-04-21 16:42:49.297221000 +0100 +@@ -494,7 +494,9 @@ + (void)fclose(mbox_file); + + /* we're done sending, close socket for writing */ +-shutdown(spamd_sock,SHUT_WR); ++if (!sd->is_rspamd) { ++ shutdown(spamd_sock,SHUT_WR); ++} + + /* read spamd response using what's left of the timeout. */ + memset(spamd_buffer, 0, sizeof(spamd_buffer)); diff --git a/mail/exim/files/patch-src__auths__call_radius.c b/mail/exim/files/patch-src__auths__call_radius.c deleted file mode 100644 index 4a863efb0bd8..000000000000 --- a/mail/exim/files/patch-src__auths__call_radius.c +++ /dev/null @@ -1,14 +0,0 @@ ---- src/auths/call_radius.c -+++ src/auths/call_radius.c -@@ -38,7 +38,11 @@ - #if !defined(RADIUS_LIB_RADIUSCLIENT) && !defined(RADIUS_LIB_RADIUSCLIENTNEW) - #define RADIUS_LIB_RADIUSCLIENT - #endif -+ #if !defined(RADIUS_LIB_RADIUSCLIENTNEW) - #include <radiusclient.h> -+ #else -+ #include <radiusclient-ng.h> -+ #endif - #endif - - |