[ 
https://issues.apache.org/jira/browse/JAMES-3945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17879797#comment-17879797
 ] 

Florent AZAVANT commented on JAMES-3945:
----------------------------------------

As Benoit Tellier’s intern, I will start to work on this feature. After some 
brainstorm with him, here is the the functional breakdown we suggest:
 # make it so that a mail to {{john+fol...@example.com}} is accepted and falls 
into {{{}j...@example.com{}}}’s inbox ;
 # perform subaddressing *without any rights management* in IMAP and SMTP;
 # apply rights management: everyone can send to a folder / no one can send / 
white list / black list ; on one / several / all folders ; etc ;
 # make the whole thing work for JMAP.

As for the technical analysis, we would first work with
 * {{{}MailAddress.java{}}}, to be able to parse {{john+fol...@example.com}} to 
{{j...@example.com}}
 * doing so, {{UsersRepository.getUsername(MailAddress mailAddress)}} would 
output the same result and {{ValidRcptHandler}} as well as {{IsLocalRecipient}} 
would be unchanged

then, we would build the subaddressing mailet, which would
 * check the rights (maybe a new method in {{{}RightManager{}}}, or try with 
{{{}listRights{}}})
 * set the storage directive to the target folder

finally, we’ll implement integration tests for this feature.

> Sub addressing
> --------------
>
>                 Key: JAMES-3945
>                 URL: https://issues.apache.org/jira/browse/JAMES-3945
>             Project: James Server
>          Issue Type: New Feature
>          Components: Mailet Contributions
>            Reporter: Benoit Tellier
>            Priority: Major
>
> Ref:
> en.wikipedia.org/wiki/Email_address#Sub-addressing
> rfc-editor.org/rfc/rfc5233
> 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.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to