commit 8c729c2: [Fix] Do not assert if we have broken mime boundary in the headers

Vsevolod Stakhov vsevolod at highsecure.ru
Wed Oct 2 12:14:06 UTC 2019


Author: Vsevolod Stakhov
Date: 2019-10-02 13:08:22 +0100
URL: https://github.com/rspamd/rspamd/commit/8c729c2b12ead68bcf11a3adfa6e465b0fae884f (HEAD -> master)

[Fix] Do not assert if we have broken mime boundary in the headers

---
 src/libmime/mime_parser.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/libmime/mime_parser.c b/src/libmime/mime_parser.c
index 1c132335c..517bc4b8d 100644
--- a/src/libmime/mime_parser.c
+++ b/src/libmime/mime_parser.c
@@ -688,10 +688,11 @@ rspamd_mime_parse_multipart_cb (struct rspamd_task *task,
 		st->pos = cb->part_start;
 	}
 	else {
-		/* We have seen the start of the boundary */
-		if (cb->part_start < pos) {
-			/* We should have seen some boundary */
-			g_assert (cb->cur_boundary != NULL);
+		/*
+		 * We have seen the start of the boundary,
+		 * but it might be unsuitable (e.g. in broken headers)
+		 */
+		if (cb->part_start < pos && cb->cur_boundary) {
 
 			if ((ret = rspamd_mime_process_multipart_node (task, cb->st,
 					cb->multipart, cb->part_start, pos, TRUE, cb->err))


More information about the Commits mailing list