[New-bugs-announce] [issue39100] email.policy.SMTP throws AttributeError on invalid header
Anton Khirnov
report at bugs.python.org
Thu Dec 19 14:32:14 EST 2019
New submission from Anton Khirnov <anton at khirnov.net>:
When parsing a (broken) mail from linux-media at vger.kernel.org (message-id 20190212181908.Horde.pEiGHvV2KHy9EkUy8TA8D1o at webmail.your-server.de, headers attached) with email.policy.SMTP, I get an AttributeError on trying to read the 'to' header:
/usr/lib/python3.7/email/headerregistry.py in <listcomp>(.0)
345 mb.local_part or '',
346 mb.domain or '')
--> 347 for mb in addr.all_mailboxes]))
348 defects = list(address_list.all_defects)
349 else:
AttributeError: 'Group' object has no attribute 'local_part'
The header in question is:
To: unlisted-recipients:; (no To-header on input)
The problem seems to be that mb is a Group and not an Address, gets token_type of 'invalid-mailbox', but does not have the attributes local_part/domain that are expected in mailboxes. Copying the line
local_part = domain = route = addr_spec = display_name
from InvalidMailbox to Group fixes this, but it is not clear to me this is the right solution, so not sending a patch.
----------
components: email
files: mail.eml
messages: 358689
nosy: barry, elenril, r.david.murray
priority: normal
severity: normal
status: open
title: email.policy.SMTP throws AttributeError on invalid header
type: behavior
Added file: https://bugs.python.org/file48792/mail.eml
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue39100>
_______________________________________
More information about the New-bugs-announce
mailing list