]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
[Fix] Fix boundaries that contain only dashes
authorVsevolod Stakhov <vsevolod@rspamd.com>
Thu, 23 Feb 2023 11:41:40 +0000 (11:41 +0000)
committerVsevolod Stakhov <vsevolod@rspamd.com>
Thu, 23 Feb 2023 12:10:57 +0000 (12:10 +0000)
Issue: #4394

src/libmime/mime_parser.c

index 50e9f2fa70f8e5e7699ca95223a5a5993eaeb20a..538c0573578f781f894eeb5cec70bd41c37e9ab0 100644 (file)
@@ -1162,7 +1162,6 @@ rspamd_mime_preprocess_cb (struct rspamd_multipattern *mp,
        task = st->task;
 
        if (G_LIKELY (p < end)) {
-               gboolean seen_non_dash = FALSE;
 
                blen = 0;
 
@@ -1170,15 +1169,12 @@ rspamd_mime_preprocess_cb (struct rspamd_multipattern *mp,
                        if (*p == '\r' || *p == '\n') {
                                break;
                        }
-                       else if (*p != '-') {
-                               seen_non_dash = TRUE;
-                       }
 
                        blen ++;
                        p ++;
                }
 
-               if (blen > 0 && seen_non_dash) {
+               if (blen > 0) {
                        /* We have found something like boundary */
                        p = text + match_pos;
                        bend = p + blen - 1;
@@ -1191,7 +1187,7 @@ rspamd_mime_preprocess_cb (struct rspamd_multipattern *mp,
                                        blen -= 2;
                                }
                                else {
-                                       /* Not a closing boundary somehow */
+                                       /* Not a closing boundary somehow, e.g. if a boundary=='-' */
                                        bend ++;
                                }
                        }