Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
master
-
None
-
None
Description
When configuring the RemoteDelivery mailet for SMTPS via sslEnable, it ignores any timeouts set via timeout and connectionTimeout parameters, and uses the Java Mail defaults of infinite instead. Thus when talking to a slow or faulty server, James will never break the SMTPS connection, slowly exhausting the remote delivery thread pool, stalling and ultimately halting remote delivery completely.
Analysis: James converts its parameters to Java Mail properties "mail.smtp.x" for the remote session. But according to https://javaee.github.io/javamail/docs/api/com/sun/mail/smtp/package-summary.html, Java Mail expects these properties to be "mail.smtps.x" instead when using SMTPS.
Workaround: Provide timeout (and other) Java Mail properties explicitly in the mailet configuration, e.g.
<mailet match="All" class="RemoteDelivery"> <sslEnable>true</sslEnable> ... <mail.smtps.timeout>180000</mail.smtps.timeout> <mail.smtp.connectiontimeout>60000</mail.smtp.connectiontimeout> </mailet>
Attachments
Issue Links
- links to