[
https://issues.apache.org/jira/browse/JAMES-3431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17253899#comment-17253899
]
Benoit Tellier commented on JAMES-3431:
---------------------------------------
Following our work on this topic, we need the tools totest how RemoteDelivery
behaves in the face of DSN parameters. Do we correctly relay DSN parameters to
remote server?
In order to achieve that we need MockSMTP server to capture ESMTP parameters.
To do so, we both need to modify it's underlying data model as well as its SMTP
layers.
Working with the Mock SMTP docker image I found out the following issues:
- The use of untagged docker image (latest) causes current code to be brittle
in face of MockSMTP server changes. We should use fix, immutable versions here.
https://github.com/linagora/james-project/pull/4161 contributes this.
- The code is compiled to a JDK target version 11 but we tried to run it
against a JDK 8. We need to upgrade the base image used to run MockSmtpServer
to rely on JDK 11.
- Adding a "version" endpoints enables tests to clearly assert that they are
working against the right API, regardless of the image.
The two later points are contributed as part of
https://github.com/linagora/james-project/pull/4162
https://github.com/linagora/james-project/pull/4162 contributed parameter
storage as part of the mail envelopes of email received by the mock SMTP
server. The intent here is to be generic, and be able to have a generic tool to
test how RemoteDelivery behaves in the face of ESMTP extensions. The format on
the REST API of the MockSMTPServer (to access the emails that were received)
did lead to breaking change, though they are abstracted away by the client used
to work with this API (that did change too)
Upcoming work includes a rewrite of the SMTP layers of the mock SMTP server in
order to:
- Advertise the DSN ESMTP extension upon EHLO
- Capture Mail FROM and Rcpt TO ESMTP parameters and store them.
> Relay DSN options on RemoteDelivery
> -----------------------------------
>
> Key: JAMES-3431
> URL: https://issues.apache.org/jira/browse/JAMES-3431
> Project: James Server
> Issue Type: Bug
> Components: Remote Delivery, SMTPServer
> Affects Versions: 3.5.0
> Reporter: Karsten Otto
> Priority: Major
>
> Since James claims to support the DSN SMTP extension, it may receive a mail
> submission according to [RFC 3461|https://tools.ietf.org/html/rfc3461]:
> {code:java}
> MAIL FROM:<[email protected]> RET=HDRS ENVID=QQ314159
> RCPT TO:<[email protected]> NOTIFY=SUCCESS,FAILURE,DELAY
> ORCPT=rfc822;[email protected]
> RCPT TO:<[email protected]> NOTIFY=NEVER{code}
> In this case James should
> * remember the given DSN options (NOTIFY, ORCPT, RET, ENVID) for each
> recipient, and
> * provide the same options when relaying the mail to remote servers via the
> RemoteDelivery mailet.
> (The DSN options should be accessible to other interested mailets as well,
> e.g. for bounce processing.)
> Possibly related issues:
> https://issues.apache.org/jira/browse/JAMES-322
> https://issues.apache.org/jira/browse/JAMES-362
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]