aboutsummaryrefslogtreecommitdiff
path: root/mail
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@FreeBSD.org>2017-06-21 22:17:34 +0000
committerVsevolod Stakhov <vsevolod@FreeBSD.org>2017-06-21 22:17:34 +0000
commit6f53fc6ef16488975b2b361aaac558217dc15f2c (patch)
treecba87fd6622916d45fdbc2be9e225e3467833527 /mail
parent9ab1213970e75a8b3107d0a116c1deaacf90c618 (diff)
downloadports-6f53fc6ef16488975b2b361aaac558217dc15f2c.tar.gz
ports-6f53fc6ef16488975b2b361aaac558217dc15f2c.zip
- Add workaround for CVE-2017-1000369
MFH: 2017Q2
Notes
Notes: svn path=/head/; revision=444082
Diffstat (limited to 'mail')
-rw-r--r--mail/exim/Makefile1
-rw-r--r--mail/exim/files/patch-CVE-2017-100036937
2 files changed, 38 insertions, 0 deletions
diff --git a/mail/exim/Makefile b/mail/exim/Makefile
index 42ab08e61947..d9e6f0c7611e 100644
--- a/mail/exim/Makefile
+++ b/mail/exim/Makefile
@@ -3,6 +3,7 @@
PORTNAME= exim
PORTVERSION?= ${EXIM_VERSION}
+PORTREVISION= 1
CATEGORIES= mail ipv6
MASTER_SITES= EXIM:exim
MASTER_SITE_SUBDIR= /exim4/:exim \
diff --git a/mail/exim/files/patch-CVE-2017-1000369 b/mail/exim/files/patch-CVE-2017-1000369
new file mode 100644
index 000000000000..77bbb25ed818
--- /dev/null
+++ b/mail/exim/files/patch-CVE-2017-1000369
@@ -0,0 +1,37 @@
+diff --git a/src/src/exim.c b/src/src/exim.c
+index 67583e58..88e11977 100644
+--- src/exim.c
++++ src/exim.c
+@@ -3106,7 +3106,14 @@ for (i = 1; i < argc; i++)
+
+ /* -oMr: Received protocol */
+
+- else if (Ustrcmp(argrest, "Mr") == 0) received_protocol = argv[++i];
++ else if (Ustrcmp(argrest, "Mr") == 0)
++
++ if (received_protocol)
++ {
++ fprintf(stderr, "received_protocol is set already\n");
++ exit(EXIT_FAILURE);
++ }
++ else received_protocol = argv[++i];
+
+ /* -oMs: Set sender host name */
+
+@@ -3202,7 +3209,15 @@ for (i = 1; i < argc; i++)
+
+ if (*argrest != 0)
+ {
+- uschar *hn = Ustrchr(argrest, ':');
++ uschar *hn;
++
++ if (received_protocol)
++ {
++ fprintf(stderr, "received_protocol is set already\n");
++ exit(EXIT_FAILURE);
++ }
++
++ hn = Ustrchr(argrest, ':');
+ if (hn == NULL)
+ {
+ received_protocol = argrest;