Mark Sapiro pushed to branch master at GNU Mailman / Mailman Core
Commits:
cb683771 by Mark Sapiro at 2021-05-20T15:12:15-07:00
Set unixfrom in LMTP runner.
- - - - -
a1c11362 by Mark Sapiro at 2021-05-20T22:35:40+00:00
Merge branch 'lmtp' into 'master'
Set unixfrom in LMTP runner.
See merge request mailman/mailman!866
- - - - -
3 changed files:
- src/mailman/docs/NEWS.rst
- src/mailman/runners/lmtp.py
- src/mailman/runners/tests/test_lmtp.py
Changes:
=====================================
src/mailman/docs/NEWS.rst
=====================================
@@ -64,6 +64,7 @@ Bugs
* When using MySQL, most database columns that expect user input will now
accept emojis and other 4-byte unicode characters by using the utf8mb4
character set instead of 3-byte. (Closes #891)
+* LMTP runner now sets unixfrom in incoming messages. (Closes #904)
Command line
------------
=====================================
src/mailman/runners/lmtp.py
=====================================
@@ -136,6 +136,7 @@ class LMTPHandler:
# Parse the message data. If there are any defects in the
# message, reject it right away; it's probably spam.
msg = email.message_from_bytes(envelope.content, Message)
+ msg.set_unixfrom(envelope.mail_from)
except Exception:
elog.exception('LMTP message parsing')
config.db.abort()
=====================================
src/mailman/runners/tests/test_lmtp.py
=====================================
@@ -43,6 +43,18 @@ class TestLMTP(unittest.TestCase):
self._lmtp.lhlo('remote.example.org')
self.addCleanup(self._lmtp.close)
+ def test_unixfrom_in_message(self):
+ # Ensure a unixfrom is added to the message object.
+ self._lmtp.sendmail('[email protected]', ['[email protected]'], """\
+From: [email protected]
+To: [email protected]
+Subject: Test unixfrom
+Message-ID: <[email protected]>
+
+""")
+ items = get_queue_messages('in', expected_count=1)
+ self.assertEqual('[email protected]', items[0].msg.get_unixfrom())
+
def test_message_id_supplied_if_missing(self):
# A Message-ID header is generated if the message doesn't have one.
self._lmtp.sendmail('[email protected]', ['[email protected]'], """\
View it on GitLab:
https://gitlab.com/mailman/mailman/-/compare/4ea9094d274f8dd2d1fb6d59f043ef1981615bd3...a1c11362510a23f7986c0134ec01d7d7bf99807b
--
View it on GitLab:
https://gitlab.com/mailman/mailman/-/compare/4ea9094d274f8dd2d1fb6d59f043ef1981615bd3...a1c11362510a23f7986c0134ec01d7d7bf99807b
You're receiving this email because of your account on gitlab.com.
_______________________________________________
Mailman-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/mailman-checkins.python.org/
Member address: [email protected]