From 1f07fd8db98bc7dcbb0bf0d47a1c73274d30e634 Mon Sep 17 00:00:00 2001 From: ale <ale@incal.net> Date: Tue, 9 Feb 2021 17:54:34 +0000 Subject: [PATCH] Parse messages in their binary form --- feedbackloop/arf.py | 4 ++-- feedbackloop/parse.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/feedbackloop/arf.py b/feedbackloop/arf.py index eb7cc72..592e589 100644 --- a/feedbackloop/arf.py +++ b/feedbackloop/arf.py @@ -18,7 +18,7 @@ http://www.faqs.org/rfcs/rfc5965.html """ import json -from email.parser import Parser +from email.parser import BytesParser from email.message import Message class ARFMessage(object): @@ -26,7 +26,7 @@ class ARFMessage(object): """ def __init__(self, arf_source): - self._message = Parser().parsestr(arf_source) + self._message = BytesParser().parsebytes(arf_source) def _get_part(self, subtype): for part in self._message.walk(): diff --git a/feedbackloop/parse.py b/feedbackloop/parse.py index aa35ab1..d28d358 100644 --- a/feedbackloop/parse.py +++ b/feedbackloop/parse.py @@ -114,7 +114,7 @@ class MailScanner(): try: # Parse the ARF message body. - msg = ARFMessage(raw_msg.decode('utf-8')) + msg = ARFMessage(raw_msg) report_sender, _ = _normalize_addr( _hdr(msg.get_message_headers(), 'From')) -- GitLab