thunderbird / thunderbird/thunderbird-android
Reply behavior violates RFCs when a List-Post header is present
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 14k
- Forks
- 2.8k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 57
Description
Checklist
- I have used the search function to see if someone else has already submitted the same bug report.
- I will describe the problem with as much detail as possible.
App version
6.603
Where did you get the app from?
Google Play
Android version
10
Device model
SM-G960U1
Steps to reproduce
Reply to a message that contains a "sender" header
Expected behavior
Address the reply to the address in the "From" header or to the address in the "Reply-To" header if present.
Actual behavior
The reply is addressed solely to the address in the "Sender" header.
For several years a simple "reply" to a message sent via a mailing list
went solely to the address in a "List-Post" header, if present, rather
than to the original author in the "From" or "Reply-to" headers.
That seems to have finally been fixed, but now, as of V6.603, a simple
reply is being sent solely to the address in the "Sender" header, if
present.
Neither behavior is or was correct at any time, and the problem is
exacerbated by the "To" field in the reply composition containing only
"+1", so the person replying has no idea that this unexpected and
unwanted behavior is present.
Could we PLEASE conform to the relevant RFCs? A reply is to be addressed
to the "From" address(es) in the original message unless a "Reply-To"
header is present, in which case the reply is to be addressed there. Full
stop. A Reply-all should go to the "From" or "Reply-To" as well as to the
"To", "CC", and, if present "Bcc" addresses placed in the same headers
going back.
From RFC 5322 Section 3.6.2 (updated but unchanged by RFC 6854):
"The "From:" field specifies the author(s) of the message, that is, the
mailbox(es) of the person(s) or system(s) responsible for the writing of
the message. The "Sender:" field specifies the mailbox of the agent
responsible for the actual transmission of the message. For example, if
a secretary were to send a message for another person, the mailbox of
the secretary would appear in the "Sender:" field and the mailbox of the
actual author would appear in the "From:" field."
"The originator fields also provide the information required when
replying to a message. When the "Reply-To:" field is present, it
indicates the address(es) to which the author of the message suggests
that replies be sent. In the absence of the "Reply-To:" field, replies
SHOULD by default be sent to the mailbox(es) specified in the "From:"
field unless otherwise specified by the person composing the reply."
And from Section 3.6.3:
"When a message is a reply to another message, the mailboxes of the
authors of the original message (the mailboxes in the "From:" field) or
mailboxes specified in the "Reply-To:" field (if it exists) MAY appear
in the "To:" field of the reply since these would normally be the
primary recipients of the reply. If a reply is sent to a message that
has destination fields, it is often desirable to send a copy of the
reply to all of the recipients of the message, in addition to the
author. When such a reply is formed, addresses in the "To:" and "Cc:"
fields of the original message MAY appear in the "Cc:" field of the
reply, since these are normally secondary recipients of the reply. If a
"Bcc:" field is present in the original message, addresses in that field
MAY appear in the "Bcc:" field of the reply, but they SHOULD NOT appear
in the "To:" or "Cc:" fields."
Logs
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no source files or tests; start by reproducing reply and reply-all handling for messages with Sender, From, Reply-To, List-Post, To, Cc, and Bcc headers. Compare the resulting recipients with the RFC 5322 behavior described in the report; done means replies use From or Reply-To rather than Sender or List-Post, with reply-all recipients preserved appropriately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100