]> git.ipfire.org Git - thirdparty/patchwork.git/commit
parser: Don't crash when From: is list email but has weird mangle format
authorAndrew Donnellan <ajd@linux.ibm.com>
Wed, 15 Apr 2020 09:06:56 +0000 (19:06 +1000)
committerStephen Finucane <stephen@that.guru>
Sat, 18 Apr 2020 11:29:56 +0000 (12:29 +0100)
commita9717565031e5a81f2fa7d690e7f6d13e681e3f8
tree146d1f8a30d6dd809a4924406fe316aa6b716a8c
parent162b4adfb2ad7c837db24fad7c7618124500d920
parser: Don't crash when From: is list email but has weird mangle format

get_original_sender() tries to demangle DMARC-mangled From headers, in
the case where the email's From address is the list address. It knows how
to handle Google Groups and Mailman style mangling, where the original
submitter's name will be turned into e.g. "Andrew Donnellan via
linuxppc-dev".

If an email has the From header set to the list address but has a name that
doesn't include " via ", we'll throw an exception because stripped_name
hasn't been set. Sometimes this is because the list name is seemingly
empty, resulting in a mangled name like "Andrew Donnellan via"
without the space after "via" that we detect. Handle this as well as we can
instead, and add a test.

Fixes: 8279a84238c10 ("parser: Unmangle From: headers that have been mangled for DMARC purposes")
Reported-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Andrew Donnellan <ajd@linux.ibm.com>
Reviewed-by: Stephen Finucane <stephen@that.guru>
patchwork/parser.py
patchwork/tests/test_parser.py