aboutsummaryrefslogtreecommitdiffstats
path: root/mail/exim/files
diff options
context:
space:
mode:
authorvsevolod <vsevolod@FreeBSD.org>2016-04-21 23:52:23 +0800
committervsevolod <vsevolod@FreeBSD.org>2016-04-21 23:52:23 +0800
commit9273f9477b758fd5caa9ed51efff68189645f87e (patch)
treec3819f9a7f562b22a10e7f2e5ba086c6ef99c45a /mail/exim/files
parentab9f96f2293cce9324c83c566491a25c22d39078 (diff)
downloadfreebsd-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-crash82
-rw-r--r--mail/exim/files/patch-rspamd-shutdown13
-rw-r--r--mail/exim/files/patch-src__auths__call_radius.c14
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
-
-