Lines 242-248
Link Here
|
242 |
*/ |
242 |
*/ |
243 |
if (sm_strcasecmp(type, "multipart") == 0 && |
243 |
if (sm_strcasecmp(type, "multipart") == 0 && |
244 |
(!bitset(M87F_NO8BIT, flags) || bitset(M87F_NO8TO7, flags))) |
244 |
(!bitset(M87F_NO8BIT, flags) || bitset(M87F_NO8TO7, flags)) && |
|
|
245 |
!bitset(EF_TOODEEP, e->e_flags) |
246 |
) |
245 |
{ |
247 |
{ |
246 |
if (sm_strcasecmp(subtype, "digest") == 0) |
248 |
if (sm_strcasecmp(subtype, "digest") == 0) |
Lines 286-295
Link Here
|
286 |
} |
288 |
} |
287 |
if (i >= MAXMIMENESTING) |
289 |
if (i >= MAXMIMENESTING) |
288 |
{ |
290 |
{ |
289 |
usrerr("mime8to7: multipart nesting boundary too deep"); |
291 |
if (tTd(43, 4)) |
|
|
292 |
sm_dprintf("mime8to7: too deep, i=%d\n", i); |
293 |
if (!bitset(EF_TOODEEP, e->e_flags)) |
294 |
usrerr("mime8to7: multipart nesting boundary too deep"); |
290 |
/* avoid bounce loops */ |
295 |
/* avoid bounce loops */ |
291 |
e->e_flags |= EF_DONT_MIME; |
296 |
e->e_flags |= EF_DONT_MIME|EF_TOODEEP; |
292 |
} |
297 |
} |
293 |
else |
298 |
else |
294 |
{ |
299 |
{ |
Lines 374-380
Link Here
|
374 |
if (sm_strcasecmp(type, "message") == 0) |
379 |
if (sm_strcasecmp(type, "message") == 0) |
375 |
{ |
380 |
{ |
376 |
if (!wordinclass(subtype, 's')) |
381 |
if (!wordinclass(subtype, 's') || |
|
|
382 |
bitset(EF_TOODEEP, e->e_flags)) |
377 |
{ |
383 |
{ |
378 |
flags |= M87F_NO8BIT; |
384 |
flags |= M87F_NO8BIT; |
379 |
} |
385 |
} |