thunderbird / thunderbird-android

Thunderbird for Android – Open Source Email App for Android (fka K-9 Mail)
https://thunderbird.net/mobile
Apache License 2.0
10.85k stars 2.51k forks source link

Reply behavior violates RFCs #7305

Open a-name-not-taken opened 1 year ago

a-name-not-taken commented 1 year ago

Checklist

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

a-name-not-taken commented 1 year ago

Here are the RFCs:

https://www.rfc-editor.org/rfc/rfc5322

https://www.rfc-editor.org/rfc/rfc6854

cketti commented 12 months ago

What makes you think K-9 Mail is using the Sender header when replying to a message? Can you post the message you are testing this with?

a-name-not-taken commented 12 months ago

What makes you think K-9 Mail is using the Sender header when replying to a message? Can you post the message you are testing this with?

Thanks for following up. You're right.

It's possible I misread an X-Sender header for a Sender header, but I'm getting inconsistent results with the same K-9 version on mailing list messages from June, August, and October with nearly identical headers. I need to do a closer comparison among them to see what's actually going on.

For example, on the June message, a simple reply is going to a List-Post address, not the From address. There was no Reply-To address, and it did not go to the Sender address. In August and October, the reply went to the address in the identical From and Reply-To headers, even though the same List-Post header was present. Again, it did not go to the Sender address.

I thought the List-Post error was fixed, but it seems that it may actually be the addition of a Reply-To header that suppressed that. In any case, I need to scour those messages some more.

a-name-not-taken commented 12 months ago

Sorry for the confusion. The Sender header, although present, is not used as a reply address. There IS a problem with "List-Post" headers being used and with too many addresses being used in a reply-all.

What I see in messages I have received to which I have initiated a reply or reply-all is this:

For messages that include a "List-Post" header, a simple reply is addressed solely "To" the address in the "List-Post" header UNLESS there is also a "Reply-To" header. In that case, it is addressed solely "To" the address in the "Reply-To" header. This should instead be addressed to the original "From" address unless there is a "Reply-To", in which case it should be addressed there. "List-Post" has no role in replies.

A reply-all to a message containing a "List-Post" header is addressed "To" all of the addresses in the "From", "To", and "List-Post" headers UNLESS there is also a "Reply-To" header. In that case, it is addressed "To" all of the addresses in the "From", "To", and "Reply-To" headers. These replies should instead be going "To" the "From" and "To" addresses OR to the "Reply-To" and "To" addresses. "From" and "Reply-To" addresses should not both be used, nor should a "List-Post" address. Addresses in the original "To" header may instead be placed in a "CC" header going back.

In any reply-all, addresses in a CC header seem to be placed in a CC header in the reply, but not the address of the person replying if they were in the original CC. They are in the "From" header going back, so that should be OK, although I don't know what the RFCs say about that, if anything.

Unfortunately, I can't tell you anything about what happens with Bcc headers. I have no messages containing those.

a-name-not-taken commented 1 week ago

Bump