Index: src/main/java/org/mariadb/jdbc/internal/util/Utils.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- src/main/java/org/mariadb/jdbc/internal/util/Utils.java (revision 1063fc443368bf4d81c339a408ca9949fa0998ee) +++ src/main/java/org/mariadb/jdbc/internal/util/Utils.java (date 1583338999189) @@ -66,6 +66,7 @@ import org.mariadb.jdbc.internal.protocol.MastersSlavesProtocol; import org.mariadb.jdbc.internal.protocol.Protocol; import org.mariadb.jdbc.internal.util.pool.GlobalStateInfo; +import org.mariadb.jdbc.util.ConfigurableSocketFactory; import org.mariadb.jdbc.util.Options; import javax.net.SocketFactory; @@ -132,6 +133,9 @@ if (socketFactoryClass != null) { Constructor constructor = socketFactoryClass.getConstructor(); socketFactory = constructor.newInstance(); + if (socketFactoryClass.isInstance(ConfigurableSocketFactory.class)) { + ((ConfigurableSocketFactory)socketFactory).setConfiguration(options, host); + } return socketFactory.createSocket(); } } catch (Exception exp) { Index: src/main/java/org/mariadb/jdbc/util/ConfigurableSocketFactory.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- src/main/java/org/mariadb/jdbc/util/ConfigurableSocketFactory.java (date 1583338293165) +++ src/main/java/org/mariadb/jdbc/util/ConfigurableSocketFactory.java (date 1583338293165) @@ -0,0 +1,7 @@ +package org.mariadb.jdbc.util; + +import javax.net.SocketFactory; + +public abstract class ConfigurableSocketFactory extends SocketFactory { + public abstract void setConfiguration(Options options, String host); +}