Sieve: don't answer auto-submitted mail #235

Merged
jcoffey-dev merged 1 commits from fix/sieve-auto-submitted into main 2026-10-29 17:33:38 +00:00
1 Commits
Author SHA1 Message Date
jcoffey-dev 9bb74298a2 Sieve: don't answer auto-submitted mail
ci / fork-checks (pull_request) Skipped
ci / build (pull_request) Skipped
github/ci (branch) GitHub Actions
ci / github (pull_request) Successful in 9m26s
Vacation and notify are meant to stay silent for mail with an
Auto-Submitted header other than "no" (RFC 3834, RFC 5230 section 4.6).
The vendored sieve-rs looked for that header as HeaderName::Other, but
mail-parser 0.11 parses it as HeaderName::AutoSubmitted, so the check
never matched: an out-of-office reply (a JMAP VacationResponse compiles
to the same vacation action) or a Sieve notify answered other programs'
mail, other autoresponders included. The per-sender duplicate check kept
a loop with another responder to one reply per period.

Both now match HeaderName::AutoSubmitted. Upstream 0.7.3 fails its own
svtests "No reply to auto-submitted mail" and "Notifying on automated
messages" for this reason; with the fix both pass, with the rest of the
crate's tests. sieve_auto_submitted_mail_gets_no_reply in crates/common
covers vacation and notify, and fails without the fix.
2026-10-29 10:23:16 -07:00