[ https://issues.apache.org/jira/browse/JAMES-3791?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17566241#comment-17566241 ]
Benoit Tellier edited comment on JAMES-3791 at 7/13/22 10:34 AM: ----------------------------------------------------------------- +1 thanks for taking care of the fix. If it helps, I can also ask my team to write an integration test reproducing the issue. This could complement your work. was (Author: btellier): +1 thanks for taking care of the fix. I asked also my team to write an integration test reproducing the issue. This will complement your work. > Remote Delivery sometimes uses wrong MAIL FROM address > ------------------------------------------------------ > > Key: JAMES-3791 > URL: https://issues.apache.org/jira/browse/JAMES-3791 > Project: James Server > Issue Type: Bug > Components: Remote Delivery > Affects Versions: master, 3.7.0 > Reporter: Karsten Otto > Priority: Major > > *Observed Issue:* > When delivering a mail to a remote server, James sometimes under load uses > the wrong envelope sender (MAIL FROM). This creates a wrong Return-Path at > the recipients end, which among other things causes problems with DSN replies. > *Analysis:* > I traced this to MailDelivrerToHost.tryDeliveryToHost(), which shows in the > debug log a pattern like: > # Attempting delivery of ... from al...@example.org > # Mail sent successfully to ... from b...@example.org > I also notice that getPropertiesForMail() modifies the shared SMTPSession by > putting the envelope sender into its properties. So this is likely a race > condition. > *Possible Fixes:* > I am not sure what the best fix for this would be: > # Make tryDeliveryToHost() synchronized (ugly) > # Use SMTPMessage.setEnvelopeSender() instead of SMTPSession properties > Fix 2 is nicer as it preserves concurrency, but it requires that > mail.getMessage() is always an SMTPMessage (extends MimeMessage). I do not > know the James code base well enough to be certain of that. > Any thoughts? -- 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