From: Michael Tremer Date: Thu, 16 Jan 2020 12:57:52 +0000 (+0000) Subject: messages: Ensure that addresses are properly encoded X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2eec2c6ab88fdd99460c895ade544a059376ffdf;p=ipfire.org.git messages: Ensure that addresses are properly encoded Email addresses with non-ASCII characters must be properly encoded. Signed-off-by: Michael Tremer --- diff --git a/src/backend/messages.py b/src/backend/messages.py index 7f06e47b..0f0c56d2 100644 --- a/src/backend/messages.py +++ b/src/backend/messages.py @@ -126,10 +126,17 @@ class Messages(misc.Object): message_part = email.message_from_string(message_part.decode()) for header in message_part: + value = message_part[header] + + # Make sure addresses are properly encoded + realname, address = email.utils.parseaddr(value) + if realname and address: + value = email.utils.formataddr((realname, address)) + try: - message.replace_header(header, message_part[header]) + message.replace_header(header, value) except KeyError: - message.add_header(header, message_part[header]) + message.add_header(header, value) # Create a MIMEText object out of it message_part = email.mime.text.MIMEText(