Author: markt Date: Thu May 7 13:53:48 2015 New Revision: 1678207 URL: http://svn.apache.org/r1678207 Log: Ensure everything still works if a non-default name is used for the default SSL virtual host
Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java tomcat/trunk/java/org/apache/tomcat/util/net/SSLHostConfig.java Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java?rev=1678207&r1=1678206&r2=1678207&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java Thu May 7 13:53:48 2015 @@ -329,14 +329,16 @@ public abstract class AbstractHttp11Prot // ----------------------------------------------- HTTPS specific properties - // -------------------------------------------- Handled via an SSLHostConfig + // ------------------------------------------ passed through to the EndPoint - private String defaultSSLHostConfigName = SSLHostConfig.DEFAULT_SSL_HOST_NAME; public String getDefaultSSLHostConfigName() { - return defaultSSLHostConfigName; + return getEndpoint().getDefaultSSLHostConfigName(); } public void setDefaultSSLHostConfigName(String defaultSSLHostConfigName) { - this.defaultSSLHostConfigName = defaultSSLHostConfigName; + getEndpoint().setDefaultSSLHostConfigName(defaultSSLHostConfigName); + if (defaultSSLHostConfig != null) { + defaultSSLHostConfig.setHostName(defaultSSLHostConfigName); + } } @@ -346,6 +348,9 @@ public abstract class AbstractHttp11Prot } + // ----------------------------------------------- HTTPS specific properties + // -------------------------------------------- Handled via an SSLHostConfig + private SSLHostConfig defaultSSLHostConfig = null; private void registerDefaultSSLHostConfig() { if (defaultSSLHostConfig == null) { Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java?rev=1678207&r1=1678206&r2=1678207&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java Thu May 7 13:53:48 2015 @@ -213,6 +213,15 @@ public abstract class AbstractEndpoint<S // ----------------------------------------------------------------- Properties + private String defaultSSLHostConfigName = SSLHostConfig.DEFAULT_SSL_HOST_NAME; + public String getDefaultSSLHostConfigName() { + return defaultSSLHostConfigName; + } + public void setDefaultSSLHostConfigName(String defaultSSLHostConfigName) { + this.defaultSSLHostConfigName = defaultSSLHostConfigName; + } + + protected Map<String,SSLHostConfig> sslHostConfigs = new ConcurrentHashMap<>(); public void addSslHostConfig(SSLHostConfig sslHostConfig) { String key = sslHostConfig.getHostName(); @@ -245,7 +254,7 @@ public abstract class AbstractEndpoint<S // Fall-back. Use the default if (result == null) { - result = sslHostConfigs.get(SSLHostConfig.DEFAULT_SSL_HOST_NAME); + result = sslHostConfigs.get(getDefaultSSLHostConfigName()); } if (result == null) { // Should never happen. Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java?rev=1678207&r1=1678206&r2=1678207&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java Thu May 7 13:53:48 2015 @@ -535,7 +535,7 @@ public class AprEndpoint extends Abstrac } sslHostConfig.setSslContext(Long.valueOf(ctx)); } - SSLHostConfig defaultSSLHostConfig = sslHostConfigs.get(SSLHostConfig.DEFAULT_SSL_HOST_NAME); + SSLHostConfig defaultSSLHostConfig = sslHostConfigs.get(getDefaultSSLHostConfigName()); Long defaultSSLContext = (Long) defaultSSLHostConfig.getSslContext(); sslContext = defaultSSLContext.longValue(); SSLContext.registerDefault(defaultSSLContext, this); Modified: tomcat/trunk/java/org/apache/tomcat/util/net/SSLHostConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/SSLHostConfig.java?rev=1678207&r1=1678206&r2=1678207&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/net/SSLHostConfig.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/SSLHostConfig.java Thu May 7 13:53:48 2015 @@ -38,7 +38,7 @@ public class SSLHostConfig { private static final Log log = LogFactory.getLog(SSLHostConfig.class); private static final StringManager sm = StringManager.getManager(SSLHostConfig.class); - public static final String DEFAULT_SSL_HOST_NAME = "_default_"; + protected static final String DEFAULT_SSL_HOST_NAME = "_default_"; private Type configType = null; private Map<Type,Set<String>> configuredProperties = new HashMap<>(); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org