Compare commits

...

2 Commits

Author SHA1 Message Date
holger krekel
3f64f8caef try stripping subject from stored messages 2026-05-13 22:47:40 +02:00
Mark Felder
aeb33fa3c8 Aggressive LMTP header cleanup
This will remove all headers possible during LMTP delivery.

From: required or clients do not process the message correctly

Message-Id: required for clients to know which messages have been
downloaded

Chat-Is-Post-Message: is required for our attachment previews

Content-Type: required (??)

Subject: required due to test assertions
2026-05-13 12:05:38 -07:00
2 changed files with 5 additions and 23 deletions

View File

@@ -1,3 +1,5 @@
/^DKIM-Signature:/ IGNORE
/^Authentication-Results:/ IGNORE
/^Received:/ IGNORE
/^From:/ DUNNO
/^Message-Id:/ DUNNO
/^Chat-Is-Post-Message:/ DUNNO
/^Content-Type:/ DUNNO
/.*/ IGNORE

View File

@@ -232,26 +232,6 @@ def try_n_times(n, f):
return f()
def test_rewrite_subject(cmsetup, maildata):
"""Test that subject gets replaced with [...]."""
user1, user2 = cmsetup.gen_users(2)
sent_msg = maildata(
"encrypted.eml",
from_addr=user1.addr,
to_addr=user2.addr,
subject="Unencrypted subject",
).as_string()
user1.smtp.sendmail(from_addr=user1.addr, to_addrs=[user2.addr], msg=sent_msg)
# The message may need some time to get delivered by postfix.
messages = try_n_times(5, user2.imap.fetch_all_messages)
assert len(messages) == 1
rcvd_msg = messages[0]
assert "Subject: [...]" not in sent_msg
assert "Subject: [...]" in rcvd_msg
assert "Subject: Unencrypted subject" in sent_msg
assert "Subject: Unencrypted subject" not in rcvd_msg
def test_exceed_rate_limit(cmsetup, gencreds, maildata, chatmail_config):