mirror of
https://github.com/karatektus/pl_mail.git
synced 2026-10-25 10:04:18 +00:00
Count a catch-all address as the user's only for a mail it arrived by
76bf97c8 made every address at a catch-all domain the account's own.
A catch-all catches what has no mailbox, and on a shared domain other
people have one: with shop.test declared, anna@shop.test was dropped
from a reply-all, a reply to her mail could open with her address in
From, and her mail was read as the user's own sent mail.
OwnAddressHelper answers per message instead:
caughtRecipients() the catch-all addresses in Delivered-To,
X-Original-To or Envelope-To; only where the server
left none, those in To and Cc
sentByAccount() an alias in From, or a catch-all address in From
on a message filed under Sent or Drafts
forMessage() the aliases plus caughtRecipients()
ReplyFromResolver and ReplyDraftBuilder use it, and Account::ownsAddress()
is gone with its one caller.
Invitations use it too, which they did not before at all: an invite to
yo@shop.test named no address the account knew, so the card had no "me",
no answer buttons, and the event was treated as naming nobody here
(InviteReader, EventReconciler, EventProposer). The reply already goes
out from the attendee address.
With no delivery header and two catch-all addresses in To, both are
still taken for the user's; the docs say so.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
f954c4d69d
commit
cadab57a9b
14 files changed
+556
-91
No files matched your search
@@ -226,9 +226,18 @@ Smith". The From selector shows the same name the mail goes out with.
|
||||
If your provider delivers **every** address at a domain to this mailbox, add the domain under
|
||||
**Catch-all domains**. plMail then treats any address at that domain as yours for answering: a
|
||||
reply to mail sent to `anything@example.com` goes out from `anything@example.com`, with the
|
||||
account's name and signature, and you are left out of your own reply-all. No alias has to be added
|
||||
account's name and signature, and you are left out of your own reply-all. A meeting invitation sent
|
||||
to such an address is yours to answer, and the answer goes back from it. No alias has to be added
|
||||
first, and nothing changes for mail that arrives.
|
||||
|
||||
**Not every address at the domain is treated as you.** A catch-all catches what has no mailbox of
|
||||
its own, and on a family or company domain other people have one: `anna@example.com` is at your
|
||||
catch-all domain and is somebody else. So an address counts as yours only for a mail it reached you
|
||||
by — the address your server recorded delivering it to, or, where the server recorded none, the
|
||||
addresses at that domain in To and Cc. Anna stays in your reply-all, her mail is answered to her
|
||||
rather than as her, and an invitation naming her is not offered to you. Where a mail names both of
|
||||
you and carries no delivery record, plMail cannot tell which was yours and treats both as you.
|
||||
|
||||
Three things it does not do. It is one domain exactly — `example.com` does not cover
|
||||
`mail.example.com`. It applies to replies and forwards; a new message is still sent from an address
|
||||
on the list above. And it is not offered for Gmail or Outlook accounts, which send only as addresses
|
||||
|
||||
Reference in new issue
Block a user