Imo sub addressing are properties of 
MailAddress.user+sub1@domain.tlduser+sub2@domain.tldAnd user@domain.tldAre all 
3 distinct mail addresses diverging from their sub addresses. We can normalize 
them to u...@domain.tld.so I think the most straightforward is to add the 
following methods to MailAddress:```record class SubAddress(String 
value)Optional<SubAddress> subAddress();MailAddress normalize();```This should 
enable to implement all expected behaviours... A first version of this parsing 
could be naïve and ignore comments inside email address, escape sequences, 
etc... Also we may have to forbid '+' usage in user names, which should likely 
be documented in upgrade instructions as a breaking change.Regards,Envoyé 
depuis mon appareil Galaxy
-------- Message d'origine --------De : Wojtek <woj...@unir.se> Date : 
10/10/2023  15:54  (GMT+07:00) À : James Users List 
<server-user@james.apache.org> Objet : Re: Subaddressing (RFC 5233) support in 
James Hi Benoit,thank you for confirming my observation. Indeed, it seems quite 
extensive.I was wondering if we shouldn't adjust org.apache.james.core.Username 
API and make a distinction between localpart (so username+subaddress) and 
actuall username (i.e. `username` without subaddress part. Or have another way 
to distinguish username in the system from email address?WojtekOn 06/10/2023 
21:26, Benoit TELLIER wrote:> Correct! I've been identifying it for a couple of 
time and even have ideas of how to manage it ;-)> > That's a bit of a complex 
story to work with!> > As a starter :> >   - ValidRcptHandler needs to accept 
sub-addresses of an existing user>   - IsLocalRecipient needs to accept 
sub-addresses of an existing user>   - LocalDelivery needs by default to accept 
email for sub addresses but delivery them into INBOX>   - And a SubAddressing 
mailet would check if the recipient did whitelist the sender for the target 
mailbox (k right) OR if the mailbox submission right is allowed for everybody 
(any)>     If so, then positions a storage directive for this email to go into 
the target mailbox for that recipient>   - Of course integration tests 
(/server/mailets/integration-testing )> > Contributions more than welcome on 
the topic.> > Sponsoring even more welcome ;-)> > Here is the JIRA: 
https://issues.apache.org/jira/browse/JAMES-3945 (freshly created)> > > > > -- 
> > Best regards,> > Benoit TELLIER> > General manager of Linagora VIETNAM.> 
Product owner for Team-Mail product.> Chairman of the Apache James project.> > 
Mail: btell...@linagora.com> Tel: (0033) 6 77 26 04 58 (WhatsApp, Signal)> > > 
On Oct 6, 2023 11:25 PM, from Wojtek Hi,> does James support subaddressing 
(i.e. RFC 5233)?> > I tested it quickly and from what I see James just treat 
those addresses as distinct addresses?> > I don't see support for it in code.> 
> Ref:> en.wikipedia.org/wiki/Email_address#Sub-addressing> 
rfc-editor.org/rfc/rfc5233> 
---------------------------------------------------------------------To 
unsubscribe, e-mail: server-user-unsubscribe@james.apache.orgFor additional 
commands, e-mail: server-user-h...@james.apache.org

Reply via email to