Class ClientStartTls

java.lang.Object
com.mimecast.robin.smtp.extension.client.ClientProcessor
com.mimecast.robin.smtp.extension.client.ClientStartTls

public class ClientStartTls extends ClientProcessor
STARTTLS extension processor with DANE and MTA-STS enforcement.

Per RFC 7672 and RFC 8461, TLS is MANDATORY when DANE or MTA-STS policies are active.
If the server doesn't advertise STARTTLS but a security policy requires it, the connection MUST fail.

See Also:
  • Field Details

    • log

      private static final org.apache.logging.log4j.Logger log
  • Constructor Details

    • ClientStartTls

      public ClientStartTls()
  • Method Details

    • process

      public boolean process(Connection connection) throws IOException
      STARTTLS processor with security policy enforcement.

      Enforces mandatory TLS for DANE and MTA-STS policies per RFCs.

      Overrides:
      process in class ClientProcessor
      Parameters:
      connection - Connection instance.
      Returns:
      Boolean.
      Throws:
      IOException - Unable to communicate.