1 |
commit: 0d2ad91a2a60915a6988a7a7889f81fdbe57f358 |
2 |
Author: Michael Mair-Keimberger <m.mairkeimberger <AT> gmail <DOT> com> |
3 |
AuthorDate: Sat Apr 28 07:45:22 2018 +0000 |
4 |
Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Apr 28 08:54:06 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0d2ad91a |
7 |
|
8 |
mail-mta/exim: remove unused patches |
9 |
|
10 |
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org> |
11 |
|
12 |
.../exim/files/exim-4.89-CVE-2017-1000369.patch | 58 --------------- |
13 |
mail-mta/exim/files/exim-4.89-CVE-2017-16943.patch | 40 ---------- |
14 |
mail-mta/exim/files/exim-4.89-CVE-2017-16944.patch | 57 --------------- |
15 |
.../files/exim-4.89-address-expando-crash.patch | 85 ---------------------- |
16 |
.../exim/files/exim-4.89-transport-crash.patch | 62 ---------------- |
17 |
5 files changed, 302 deletions(-) |
18 |
|
19 |
diff --git a/mail-mta/exim/files/exim-4.89-CVE-2017-1000369.patch b/mail-mta/exim/files/exim-4.89-CVE-2017-1000369.patch |
20 |
deleted file mode 100644 |
21 |
index c3d976a2b90..00000000000 |
22 |
--- a/mail-mta/exim/files/exim-4.89-CVE-2017-1000369.patch |
23 |
+++ /dev/null |
24 |
@@ -1,58 +0,0 @@ |
25 |
-CVE-2017-1000369 |
26 |
- |
27 |
-https://github.com/Exim/exim/commit/65e061b76867a9ea7aeeb535341b790b90ae6c21 |
28 |
- |
29 |
---- a/doc/exim.8 |
30 |
-+++ b/doc/exim.8 |
31 |
-@@ -1350,7 +1350,7 @@ option sets the received protocol value that is stored in |
32 |
- or \fB\-bs\fP is used. For \fB\-bh\fP, the protocol is forced to one of the standard |
33 |
- SMTP protocol names. For \fB\-bs\fP, the protocol is always "local\-" followed by |
34 |
- one of those same names. For \fB\-bS\fP (batched SMTP) however, the protocol can |
35 |
--be set by \fB\-oMr\fP. |
36 |
-+be set by \fB\-oMr\fP. Repeated use of this option is not supported. |
37 |
- .TP 10 |
38 |
- \fB\-oMs\fP <\fIhost name\fP> |
39 |
- See \fB\-oMa\fP above for general remarks about the \fB\-oM\fP options. The \fB\-oMs\fP |
40 |
-@@ -1418,6 +1418,7 @@ host name and its colon can be omitted when only the protocol is to be set. |
41 |
- Note the Exim already has two private options, \fB\-pd\fP and \fB\-ps\fP, that refer |
42 |
- to embedded Perl. It is therefore impossible to set a protocol value of d |
43 |
- or s using this option (but that does not seem a real limitation). |
44 |
-+Repeated use of this option is not supported. |
45 |
- .TP 10 |
46 |
- \fB\-q\fP |
47 |
- This option is normally restricted to admin users. However, there is a |
48 |
---- a/src/exim.c |
49 |
-+++ b/src/exim.c |
50 |
-@@ -3092,7 +3092,14 @@ for (i = 1; i < argc; i++) |
51 |
- |
52 |
- /* -oMr: Received protocol */ |
53 |
- |
54 |
-- else if (Ustrcmp(argrest, "Mr") == 0) received_protocol = argv[++i]; |
55 |
-+ else if (Ustrcmp(argrest, "Mr") == 0) |
56 |
-+ |
57 |
-+ if (received_protocol) |
58 |
-+ { |
59 |
-+ fprintf(stderr, "received_protocol is set already\n"); |
60 |
-+ exit(EXIT_FAILURE); |
61 |
-+ } |
62 |
-+ else received_protocol = argv[++i]; |
63 |
- |
64 |
- /* -oMs: Set sender host name */ |
65 |
- |
66 |
-@@ -3188,7 +3195,15 @@ for (i = 1; i < argc; i++) |
67 |
- |
68 |
- if (*argrest != 0) |
69 |
- { |
70 |
-- uschar *hn = Ustrchr(argrest, ':'); |
71 |
-+ uschar *hn; |
72 |
-+ |
73 |
-+ if (received_protocol) |
74 |
-+ { |
75 |
-+ fprintf(stderr, "received_protocol is set already\n"); |
76 |
-+ exit(EXIT_FAILURE); |
77 |
-+ } |
78 |
-+ |
79 |
-+ hn = Ustrchr(argrest, ':'); |
80 |
- if (hn == NULL) |
81 |
- { |
82 |
- received_protocol = argrest; |
83 |
|
84 |
diff --git a/mail-mta/exim/files/exim-4.89-CVE-2017-16943.patch b/mail-mta/exim/files/exim-4.89-CVE-2017-16943.patch |
85 |
deleted file mode 100644 |
86 |
index b864ffa5ad1..00000000000 |
87 |
--- a/mail-mta/exim/files/exim-4.89-CVE-2017-16943.patch |
88 |
+++ /dev/null |
89 |
@@ -1,40 +0,0 @@ |
90 |
-From 4e6ae6235c68de243b1c2419027472d7659aa2b4 Mon Sep 17 00:00:00 2001 |
91 |
-From: Jeremy Harris <jgh146exb@×××××××.org> |
92 |
-Date: Fri, 24 Nov 2017 20:22:33 +0000 |
93 |
-Subject: [PATCH] Avoid release of store if there have been later allocations. |
94 |
- Bug 2199 |
95 |
- |
96 |
---- |
97 |
- src/src/receive.c | 7 ++++--- |
98 |
- 1 file changed, 4 insertions(+), 3 deletions(-) |
99 |
- |
100 |
-diff --git a/src/src/receive.c b/src/src/receive.c |
101 |
-index e7e518a..d9b5001 100644 |
102 |
---- a/src/src/receive.c |
103 |
-+++ b/src/src/receive.c |
104 |
-@@ -1810,8 +1810,8 @@ for (;;) |
105 |
- (and sometimes lunatic messages can have ones that are 100s of K long) we |
106 |
- call store_release() for strings that have been copied - if the string is at |
107 |
- the start of a block (and therefore the only thing in it, because we aren't |
108 |
-- doing any other gets), the block gets freed. We can only do this because we |
109 |
-- know there are no other calls to store_get() going on. */ |
110 |
-+ doing any other gets), the block gets freed. We can only do this release if |
111 |
-+ there were no allocations since the once that we want to free. */ |
112 |
- |
113 |
- if (ptr >= header_size - 4) |
114 |
- { |
115 |
-@@ -1820,9 +1820,10 @@ for (;;) |
116 |
- header_size *= 2; |
117 |
- if (!store_extend(next->text, oldsize, header_size)) |
118 |
- { |
119 |
-+ BOOL release_ok = store_last_get[store_pool] == next->text; |
120 |
- uschar *newtext = store_get(header_size); |
121 |
- memcpy(newtext, next->text, ptr); |
122 |
-- store_release(next->text); |
123 |
-+ if (release_ok) store_release(next->text); |
124 |
- next->text = newtext; |
125 |
- } |
126 |
- } |
127 |
--- |
128 |
-1.9.1 |
129 |
- |
130 |
|
131 |
diff --git a/mail-mta/exim/files/exim-4.89-CVE-2017-16944.patch b/mail-mta/exim/files/exim-4.89-CVE-2017-16944.patch |
132 |
deleted file mode 100644 |
133 |
index 285a6170aa8..00000000000 |
134 |
--- a/mail-mta/exim/files/exim-4.89-CVE-2017-16944.patch |
135 |
+++ /dev/null |
136 |
@@ -1,57 +0,0 @@ |
137 |
-From 178ecb70987f024f0e775d87c2f8b2cf587dd542 Mon Sep 17 00:00:00 2001 |
138 |
-From: "Heiko Schlittermann (HS12-RIPE)" <hs@×××××××××××××.de> |
139 |
-Date: Mon, 27 Nov 2017 22:42:33 +0100 |
140 |
-Subject: [PATCH] Chunking: do not treat the first lonely dot special. |
141 |
- CVE-2017-16944, Bug 2201 |
142 |
- |
143 |
-Modified to apply on 4.89-gentoo |
144 |
- |
145 |
---- |
146 |
- src/src/receive.c | 2 +- |
147 |
- src/src/smtp_in.c | 7 +++++++ |
148 |
- 2 files changed, 8 insertions(+), 1 deletion(-) |
149 |
- |
150 |
-diff --git a/src/src/receive.c b/src/src/receive.c |
151 |
-index 541eba1..417e975 100644 |
152 |
---- a/src/src/receive.c |
153 |
-+++ b/src/src/receive.c |
154 |
-@@ -1865,7 +1865,7 @@ for (;;) |
155 |
- prevent further reading), and break out of the loop, having freed the |
156 |
- empty header, and set next = NULL to indicate no data line. */ |
157 |
- |
158 |
-- if (ptr == 0 && ch == '.' && (smtp_input || dot_ends)) |
159 |
-+ if (ptr == 0 && ch == '.' && dot_ends) |
160 |
- { |
161 |
- ch = (receive_getc)(GETC_BUFFER_UNLIMITED); |
162 |
- if (ch == '\r') |
163 |
-diff --git a/src/src/smtp_in.c b/src/src/smtp_in.c |
164 |
-index 1fdb705..0aabc53 100644 |
165 |
---- a/src/src/smtp_in.c |
166 |
-+++ b/src/src/smtp_in.c |
167 |
-@@ -5094,16 +5094,23 @@ while (done <= 0) |
168 |
- DEBUG(D_receive) debug_printf("chunking state %d, %d bytes\n", |
169 |
- (int)chunking_state, chunking_data_left); |
170 |
- |
171 |
-+ /* push the current receive_* function on the "stack", and |
172 |
-+ replace them by bdat_getc(), which in turn will use the lwr_receive_* |
173 |
-+ functions to do the dirty work. */ |
174 |
- lwr_receive_getc = receive_getc; |
175 |
- lwr_receive_ungetc = receive_ungetc; |
176 |
-+ |
177 |
- receive_getc = bdat_getc; |
178 |
- receive_ungetc = bdat_ungetc; |
179 |
- |
180 |
-+ dot_ends = FALSE; |
181 |
-+ |
182 |
- goto DATA_BDAT; |
183 |
- } |
184 |
- |
185 |
- case DATA_CMD: |
186 |
- HAD(SCH_DATA); |
187 |
-+ dot_ends = TRUE; |
188 |
- |
189 |
- DATA_BDAT: /* Common code for DATA and BDAT */ |
190 |
- if (!discarded && recipients_count <= 0) |
191 |
--- |
192 |
-1.9.1 |
193 |
- |
194 |
|
195 |
diff --git a/mail-mta/exim/files/exim-4.89-address-expando-crash.patch b/mail-mta/exim/files/exim-4.89-address-expando-crash.patch |
196 |
deleted file mode 100644 |
197 |
index 2a868490a42..00000000000 |
198 |
--- a/mail-mta/exim/files/exim-4.89-address-expando-crash.patch |
199 |
+++ /dev/null |
200 |
@@ -1,85 +0,0 @@ |
201 |
-ignoring parts which don't match due to repo reorg post release |
202 |
- |
203 |
-From 1b7cf216d933b395dee691f05becca4dd44b26f7 Mon Sep 17 00:00:00 2001 |
204 |
-From: "Heiko Schlittermann (HS12-RIPE)" <hs@×××××××××××××.de> |
205 |
-Date: Wed, 4 Oct 2017 22:25:45 +0200 |
206 |
-Subject: [PATCH] Check for proper output separator in expanding |
207 |
- ${addresses:STRING} (Closes 2171) |
208 |
- |
209 |
-Better yet would be to force setting the output separator literally, |
210 |
-and not after expansion of the STRING. But this would be an incompatible |
211 |
-change. |
212 |
---- |
213 |
- doc/doc-docbook/spec.xfpt | 10 +++++++++- |
214 |
- src/src/expand.c | 8 +++++++- |
215 |
- test/scripts/0000-Basic/0002 | 1 + |
216 |
- test/stdout/0002 | 1 + |
217 |
- 4 files changed, 18 insertions(+), 2 deletions(-) |
218 |
- |
219 |
-ignored - diff --git a/doc/doc-docbook/spec.xfpt b/doc/doc-docbook/spec.xfpt |
220 |
-ignored - index 4a8e1d0..c140945 100644 |
221 |
-ignored - --- a/doc/doc-docbook/spec.xfpt |
222 |
-ignored - +++ b/doc/doc-docbook/spec.xfpt |
223 |
-ignored - @@ -10118,7 +10118,15 @@ character. For example: |
224 |
-ignored - .code |
225 |
-ignored - ${addresses:>& Chief <ceo@××.stairs>, sec@××××.ment (dogsbody)} |
226 |
-ignored - .endd |
227 |
-ignored - -expands to &`ceo@××.stairs&&sec@××××.ment`&. Compare the &*address*& (singular) |
228 |
-ignored - +expands to &`ceo@××.stairs&&sec@××××.ment`&. The string is expanded |
229 |
-ignored - +first, so if the expanded string starts with >, it may change the output |
230 |
-ignored - +separator unintentionally. This can be avoided by setting the output |
231 |
-ignored - +separator explicitly: |
232 |
-ignored - +.code |
233 |
-ignored - +${addresses:>:$h_from:} |
234 |
-ignored - +.endd |
235 |
-ignored - + |
236 |
-ignored - +Compare the &*address*& (singular) |
237 |
-ignored - expansion item, which extracts the working address from a single RFC2822 |
238 |
-ignored - address. See the &*filter*&, &*map*&, and &*reduce*& items for ways of |
239 |
-ignored - processing lists. |
240 |
-diff --git a/src/src/expand.c b/src/src/expand.c |
241 |
-index 353b8ea..67b3d65 100644 |
242 |
---- a/src/src/expand.c |
243 |
-+++ b/src/src/expand.c |
244 |
-@@ -6797,7 +6797,13 @@ while (*s != 0) |
245 |
- int start, end, domain; /* Not really used */ |
246 |
- |
247 |
- while (isspace(*sub)) sub++; |
248 |
-- if (*sub == '>') { *outsep = *++sub; ++sub; } |
249 |
-+ if (*sub == '>') |
250 |
-+ if (*outsep = *++sub) ++sub; |
251 |
-+ else { |
252 |
-+ expand_string_message = string_sprintf("output separator " |
253 |
-+ "missing in expanding ${addresses:%s}", --sub); |
254 |
-+ goto EXPAND_FAILED; |
255 |
-+ } |
256 |
- parse_allow_group = TRUE; |
257 |
- |
258 |
- for (;;) |
259 |
-ignored - diff --git a/test/scripts/0000-Basic/0002 b/test/scripts/0000-Basic/0002 |
260 |
-ignored - index cb0bb18..dd9cea2 100644 |
261 |
-ignored - --- a/test/scripts/0000-Basic/0002 |
262 |
-ignored - +++ b/test/scripts/0000-Basic/0002 |
263 |
-ignored - @@ -133,6 +133,7 @@ addresses: ${addresses:>+ Exim Person <local-part@×××.ain> (that's me),\ |
264 |
-ignored - addresses: ${addresses:Exim Person <local-part@×××.ain> (that's me), \ |
265 |
-ignored - xyz@abc, nullgroupname:;, group: p@q, r@s; } |
266 |
-ignored - addresses: ${addresses:local-part@×××.ain <local-part@×××.ain>} |
267 |
-ignored - +addresses: ${addresses:>} |
268 |
-ignored - |
269 |
-ignored - escape: ${escape:B7·F2ò} |
270 |
-ignored - excape8bit: ${escape8bit:undisturbed text\ttab\nnewline\ttab\\backslash \176tilde\177DEL\200\x81.} |
271 |
-ignored - diff --git a/test/stdout/0002 b/test/stdout/0002 |
272 |
-ignored - index 5593f06..1422289 100644 |
273 |
-ignored - --- a/test/stdout/0002 |
274 |
-ignored - +++ b/test/stdout/0002 |
275 |
-ignored - @@ -123,6 +123,7 @@ |
276 |
-ignored - > addresses: local-part@×××.ain+xyz@abc |
277 |
-ignored - > addresses: local-part@×××.ain:xyz@abc:p@q:r@s |
278 |
-ignored - > addresses: |
279 |
-ignored - +> Failed: output separator missing in expanding ${addresses:>} |
280 |
-ignored - > |
281 |
-ignored - > escape: B7\267F2\362 |
282 |
-ignored - > excape8bit: undisturbed text tab |
283 |
--- |
284 |
-1.9.1 |
285 |
- |
286 |
|
287 |
diff --git a/mail-mta/exim/files/exim-4.89-transport-crash.patch b/mail-mta/exim/files/exim-4.89-transport-crash.patch |
288 |
deleted file mode 100644 |
289 |
index 94a1d6b1552..00000000000 |
290 |
--- a/mail-mta/exim/files/exim-4.89-transport-crash.patch |
291 |
+++ /dev/null |
292 |
@@ -1,62 +0,0 @@ |
293 |
-This is a manual backport of the following commit which fixes the |
294 |
-original bug as well as https://bugs.exim.org/show_bug.cgi?id=2166: |
295 |
- |
296 |
-From e69636bc9ddf3617be688b07941d7d659d50eaa7 Mon Sep 17 00:00:00 2001 |
297 |
-From: Jeremy Harris <jgh146exb@×××××××.org> |
298 |
-Date: Sat, 3 Jun 2017 13:39:18 +0100 |
299 |
-Subject: [PATCH 1/1] Fix crash in transport, on second smtp-connect fail for a |
300 |
- list of target hosts |
301 |
- |
302 |
-Reported as the sequence: |
303 |
- 1MX: 554 on connect (banner) |
304 |
- 2MX: TCP conn timeout |
305 |
- |
306 |
-diff --git a/src/src/transports/smtp.c b/src/src/transports/smtp.c |
307 |
-index 454c0f7..dc9e03b 100644 |
308 |
---- a/src/src/transports/smtp.c |
309 |
-+++ b/src/src/transports/smtp.c |
310 |
-@@ -2177,25 +2177,34 @@ return OK; |
311 |
- |
312 |
- /* The failure happened while setting up the call; see if the failure was |
313 |
- a 5xx response (this will either be on connection, or following HELO - a 5xx |
314 |
-- after EHLO causes it to try HELO). If so, fail all addresses, as this host is |
315 |
-- never going to accept them. For other errors during setting up (timeouts or |
316 |
-- whatever), defer all addresses, and yield DEFER, so that the host is not |
317 |
-- tried again for a while. */ |
318 |
-+ after EHLO causes it to try HELO). If so, and there are no more hosts to try, |
319 |
-+ fail all addresses, as this host is never going to accept them. For other |
320 |
-+ errors during setting up (timeouts or whatever), defer all addresses, and |
321 |
-+ yield DEFER, so that the host is not tried again for a while. |
322 |
-+ |
323 |
-+ XXX This peeking for another host feels like a layering violation. We want |
324 |
-+ to note the host as unusable, but down here we shouldn't know if this was |
325 |
-+ the last host to try for the addr(list). Perhaps the upper layer should be |
326 |
-+ the one to do set_errno() ? The problem is that currently the addr is where |
327 |
-+ errno etc. are stashed, but until we run out of hosts to try the errors are |
328 |
-+ host-specific. Maybe we should enhance the host_item definition? */ |
329 |
- |
330 |
- FAILED: |
331 |
- sx->ok = FALSE; /* For when reached by GOTO */ |
332 |
-- |
333 |
-- yield = code == '5' |
334 |
-+ set_errno(sx->addrlist, errno, message, |
335 |
-+ sx->host->next |
336 |
-+ ? DEFER |
337 |
-+ : code == '5' |
338 |
- #ifdef SUPPORT_I18N |
339 |
-- || errno == ERRNO_UTF8_FWD |
340 |
-+ || errno == ERRNO_UTF8_FWD |
341 |
- #endif |
342 |
-- ? FAIL : DEFER; |
343 |
-- |
344 |
-- set_errno(sx->addrlist, errno, message, yield, pass_message, sx->host |
345 |
-+ ? FAIL : DEFER, |
346 |
-+ pass_message, sx->host |
347 |
- #ifdef EXPERIMENTAL_DSN_INFO |
348 |
- , sx->smtp_greeting, sx->helo_response |
349 |
- #endif |
350 |
- ); |
351 |
-+ yield = DEFER; |
352 |
- } |
353 |
- |
354 |
- |