You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2015/05/07 15:53:48 UTC

svn commit: r1678207 - in /tomcat/trunk/java/org/apache: coyote/http11/AbstractHttp11Protocol.java tomcat/util/net/AbstractEndpoint.java tomcat/util/net/AprEndpoint.java tomcat/util/net/SSLHostConfig.java

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-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org