Author: kwall
Date: Sun Oct 16 17:45:16 2011
New Revision: 1184882

URL: http://svn.apache.org/viewvc?rev=1184882&view=rev
Log:
QPID-3517: Inconsistent SSL configuration keys in Java Broker in config.xml

Modified:
    qpid/trunk/qpid/doc/book/src/Configure-Java-Qpid-to-use-a-SSL-connection.xml
    
qpid/trunk/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java
    qpid/trunk/qpid/java/broker/etc/config.xml
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/Broker.java
    
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
    
qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
    qpid/trunk/qpid/java/systests/etc/config-systests-firewall-2.xml
    qpid/trunk/qpid/java/systests/etc/config-systests-firewall-3.xml
    qpid/trunk/qpid/java/systests/etc/config-systests-settings.xml

Modified: 
qpid/trunk/qpid/doc/book/src/Configure-Java-Qpid-to-use-a-SSL-connection.xml
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/doc/book/src/Configure-Java-Qpid-to-use-a-SSL-connection.xml?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- 
qpid/trunk/qpid/doc/book/src/Configure-Java-Qpid-to-use-a-SSL-connection.xml 
(original)
+++ 
qpid/trunk/qpid/doc/book/src/Configure-Java-Qpid-to-use-a-SSL-connection.xml 
Sun Oct 16 17:45:16 2011
@@ -51,8 +51,8 @@
 <ssl>
     <enabled>true</enabled>
     <sslOnly>true</sslOnly>
-    <keystorePath>/path/to/keystore.ks</keystorePath>
-    <keystorePassword>keystorepass</keystorePassword>
+    <keyStorePath>/path/to/keystore.ks</keyStorePath>
+    <keyStorePassword>keystorepass</keyStorePassword>
 </ssl>
 </programlisting>
             

Modified: 
qpid/trunk/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java
 (original)
+++ 
qpid/trunk/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java
 Sun Oct 16 17:45:16 2011
@@ -74,9 +74,9 @@ public class AppInfo
                 appInfoMap.put("port", sc.getPorts().toString());
                 appInfoMap.put("version", QpidProperties.getReleaseVersion());
                 appInfoMap.put("vhosts", "standalone");
-                appInfoMap.put("KeystorePath", sc.getKeystorePath());
+                appInfoMap.put("KeystorePath", sc.getConnectorKeyStorePath());
                 appInfoMap.put("PluginDirectory", sc.getPluginDirectory());
-                appInfoMap.put("CertType", sc.getCertType());
+                appInfoMap.put("CertType", sc.getConnectorCertType());
                 appInfoMap.put("QpidWork", sc.getQpidWork());
                 appInfoMap.put("Bind", sc.getBind());
             }

Modified: qpid/trunk/qpid/java/broker/etc/config.xml
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/etc/config.xml?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/etc/config.xml (original)
+++ qpid/trunk/qpid/java/broker/etc/config.xml Sun Oct 16 17:45:16 2011
@@ -35,8 +35,8 @@
             <enabled>false</enabled>
             <port>5671</port>
             <sslOnly>false</sslOnly>
-            <keystorePath>/path/to/keystore.ks</keystorePath>
-            <keystorePassword>keystorepass</keystorePassword>
+            <keyStorePath>/path/to/keystore.ks</keyStorePath>
+            <keyStorePassword>keystorepass</keyStorePassword>
         </ssl>
         <port>5672</port>
         <socketReceiveBuffer>262144</socketReceiveBuffer>

Modified: 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/Broker.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/Broker.java?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/Broker.java 
(original)
+++ 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/Broker.java 
Sun Oct 16 17:45:16 2011
@@ -210,9 +210,9 @@ public class Broker
 
             if (serverConfig.getEnableSSL())
             {
-                final String keystorePath = serverConfig.getKeystorePath();
-                final String keystorePassword = 
serverConfig.getKeystorePassword();
-                final String certType = serverConfig.getCertType();
+                final String keystorePath = 
serverConfig.getConnectorKeyStorePath();
+                final String keystorePassword = 
serverConfig.getConnectorKeyStorePassword();
+                final String certType = serverConfig.getConnectorCertType();
                 final SSLContext sslContext = 
SSLContextFactory.buildServerContext(keystorePath, keystorePassword, certType);
 
                 for(int sslPort : sslPorts)

Modified: 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
 (original)
+++ 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
 Sun Oct 16 17:45:16 2011
@@ -123,7 +123,7 @@ public class ServerConfiguration extends
      * Configuration Manager to be initialised in the Application Registry.
      * <p>
      * If using this ServerConfiguration via an ApplicationRegistry there is no
-     * need to explictly call {@link #initialise()} as this is done via the
+     * need to explicitly call {@link #initialise()} as this is done via the
      * {@link ApplicationRegistry#initialise()} method.
      *
      * @param configurationURL
@@ -169,7 +169,7 @@ public class ServerConfiguration extends
      * Configuration Manager to be initialised in the Application Registry.
      * <p>
      * If using this ServerConfiguration via an ApplicationRegistry there is 
no 
-     * need to explictly call {@link #initialise()} as this is done via the
+     * need to explicitly call {@link #initialise()} as this is done via the
      * {@link ApplicationRegistry#initialise()} method.
      *
      * @param conf
@@ -239,6 +239,22 @@ public class ServerConfiguration extends
                     + (_configFile == null ? "" : " Configuration file : " + 
_configFile);
             throw new ConfigurationException(message);
         }
+
+        // QPID-3517: Inconsistency in capitalisation in the SSL configuration 
keys used within the connector and management configuration
+        // sections. For the moment, continue to understand both but generate 
a deprecated warning if the less preferred keystore is used.
+        for (String key : new String[] {"management.ssl.keystorePath",
+                "management.ssl.keystorePassword," +
+                "connector.ssl.keystorePath",
+                "connector.ssl.keystorePassword"})
+        {
+            if (contains(key))
+            {
+                final String deprecatedXpath = key.replaceAll("\\.", "/");
+                final String preferredXpath = 
deprecatedXpath.replaceAll("keystore", "keyStore");
+                _logger.warn("Validation warning: " + deprecatedXpath + " is 
deprecated and must be replaced by " + preferredXpath
+                        + (_configFile == null ? "" : " Configuration file : " 
+ _configFile));
+            }
+        }
     }
 
     /*
@@ -404,7 +420,7 @@ public class ServerConfiguration extends
     public final static Configuration flatConfig(File file) throws 
ConfigurationException
     {
         // We have to override the interpolate methods so that
-        // interpolation takes place accross the entirety of the
+        // interpolation takes place across the entirety of the
         // composite configuration. Without doing this each
         // configuration object only interpolates variables defined
         // inside itself.
@@ -551,7 +567,8 @@ public class ServerConfiguration extends
 
     public String getManagementKeyStorePath()
     {
-        return getStringValue("management.ssl.keyStorePath");
+        final String fallback = getStringValue("management.ssl.keystorePath");
+        return getStringValue("management.ssl.keyStorePath", fallback);
     }
 
     public boolean getManagementSSLEnabled()
@@ -561,7 +578,8 @@ public class ServerConfiguration extends
 
     public String getManagementKeyStorePassword()
     {
-        return getStringValue("management.ssl.keyStorePassword");
+        final String fallback = 
getStringValue("management.ssl.keystorePassword");
+        return getStringValue("management.ssl.keyStorePassword", fallback);
     }
 
     public boolean getQueueAutoRegister()
@@ -699,17 +717,19 @@ public class ServerConfiguration extends
         return getListValue("connector.ssl.port", 
Collections.<Integer>singletonList(DEFAULT_SSL_PORT));
     }
 
-    public String getKeystorePath()
+    public String getConnectorKeyStorePath()
     {
-        return getStringValue("connector.ssl.keystorePath");
+        final String fallback = getStringValue("connector.ssl.keystorePath"); 
// pre-0.13 broker supported this name.
+        return getStringValue("connector.ssl.keyStorePath", fallback);
     }
 
-    public String getKeystorePassword()
+    public String getConnectorKeyStorePassword()
     {
-        return getStringValue("connector.ssl.keystorePassword");
+        final String fallback = 
getStringValue("connector.ssl.keystorePassword"); // pre-0.13 brokers supported 
this name.
+        return getStringValue("connector.ssl.keyStorePassword", fallback);
     }
 
-    public String getCertType()
+    public String getConnectorCertType()
     {
         return getStringValue("connector.ssl.certType", "SunX509");
     }

Modified: 
qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
 (original)
+++ 
qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
 Sun Oct 16 17:45:16 2011
@@ -256,7 +256,7 @@ public class ServerConfigurationTest ext
         assertEquals(false, _serverConfig.getManagementSSLEnabled());
     }
 
-    public void testGetManagementKeyStorePassword() throws 
ConfigurationException
+    public void testGetManagementKeystorePassword() throws 
ConfigurationException
     {
         // Check default
         _serverConfig.initialise();
@@ -534,43 +534,57 @@ public class ServerConfigurationTest ext
         assertEquals("10", _serverConfig.getSSLPorts().get(0));
     }
 
-    public void testGetKeystorePath() throws ConfigurationException
+    public void testGetConnectorKeystorePath() throws ConfigurationException
     {
         // Check default
         _serverConfig.initialise();
-        assertNull(_serverConfig.getKeystorePath());
+        assertNull(_serverConfig.getConnectorKeyStorePath());
 
         // Check value we set
-        _config.setProperty("connector.ssl.keystorePath", "a");
+        _config.setProperty("connector.ssl.keyStorePath", "a");
         _serverConfig = new ServerConfiguration(_config);
         _serverConfig.initialise();
-        assertEquals("a", _serverConfig.getKeystorePath());
+        assertEquals("a", _serverConfig.getConnectorKeyStorePath());
+
+        // Ensure we continue to support the old name keystorePath
+        _config.clearProperty("connector.ssl.keyStorePath");
+        _config.setProperty("connector.ssl.keystorePath", "b");
+        _serverConfig = new ServerConfiguration(_config);
+        _serverConfig.initialise();
+        assertEquals("b", _serverConfig.getConnectorKeyStorePath());
     }
 
-    public void testGetKeystorePassword() throws ConfigurationException
+    public void testGetConnectorKeystorePassword() throws 
ConfigurationException
     {
         // Check default
         _serverConfig.initialise();
-        assertNull(_serverConfig.getKeystorePassword());
+        assertNull(_serverConfig.getConnectorKeyStorePassword());
 
         // Check value we set
-        _config.setProperty("connector.ssl.keystorePassword", "a");
+        _config.setProperty("connector.ssl.keyStorePassword", "a");
+        _serverConfig = new ServerConfiguration(_config);
+        _serverConfig.initialise();
+        assertEquals("a", _serverConfig.getConnectorKeyStorePassword());
+
+        // Ensure we continue to support the old name keystorePassword
+        _config.clearProperty("connector.ssl.keyStorePassword");
+        _config.setProperty("connector.ssl.keystorePassword", "b");
         _serverConfig = new ServerConfiguration(_config);
         _serverConfig.initialise();
-        assertEquals("a", _serverConfig.getKeystorePassword());
+        assertEquals("b", _serverConfig.getConnectorKeyStorePassword());
     }
 
-    public void testGetCertType() throws ConfigurationException
+    public void testGetConnectorCertType() throws ConfigurationException
     {
         // Check default
         _serverConfig.initialise();
-        assertEquals("SunX509", _serverConfig.getCertType());
+        assertEquals("SunX509", _serverConfig.getConnectorCertType());
 
         // Check value we set
         _config.setProperty("connector.ssl.certType", "a");
         _serverConfig = new ServerConfiguration(_config);
         _serverConfig.initialise();
-        assertEquals("a", _serverConfig.getCertType());
+        assertEquals("a", _serverConfig.getConnectorCertType());
     }
 
     public void testGetUseBiasedWrites() throws ConfigurationException

Modified: qpid/trunk/qpid/java/systests/etc/config-systests-firewall-2.xml
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/etc/config-systests-firewall-2.xml?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- qpid/trunk/qpid/java/systests/etc/config-systests-firewall-2.xml (original)
+++ qpid/trunk/qpid/java/systests/etc/config-systests-firewall-2.xml Sun Oct 16 
17:45:16 2011
@@ -32,8 +32,8 @@
         <ssl>
             <enabled>false</enabled>
             <sslOnly>false</sslOnly>
-            <keystorePath>/path/to/keystore.ks</keystorePath>
-            <keystorePassword>keystorepass</keystorePassword>
+            <keyStorePath>/path/to/keystore.ks</keyStorePath>
+            <keyStorePassword>keystorepass</keyStorePassword>
         </ssl>
         <port>5672</port>
         <sslport>8672</sslport>

Modified: qpid/trunk/qpid/java/systests/etc/config-systests-firewall-3.xml
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/etc/config-systests-firewall-3.xml?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- qpid/trunk/qpid/java/systests/etc/config-systests-firewall-3.xml (original)
+++ qpid/trunk/qpid/java/systests/etc/config-systests-firewall-3.xml Sun Oct 16 
17:45:16 2011
@@ -28,12 +28,12 @@
     <connector>
         <!-- To enable SSL edit the keystorePath and keystorePassword
             and set enabled to true. 
-             To disasble Non-SSL port set sslOnly to true -->
+             To disable Non-SSL port set sslOnly to true -->
         <ssl>
             <enabled>false</enabled>
             <sslOnly>false</sslOnly>
-            <keystorePath>/path/to/keystore.ks</keystorePath>
-            <keystorePassword>keystorepass</keystorePassword>
+            <keyStorePath>/path/to/keystore.ks</keyStorePath>
+            <keyStorePassword>keystorepass</keyStorePassword>
         </ssl>
         <port>5672</port>
         <sslport>8672</sslport>

Modified: qpid/trunk/qpid/java/systests/etc/config-systests-settings.xml
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/etc/config-systests-settings.xml?rev=1184882&r1=1184881&r2=1184882&view=diff
==============================================================================
--- qpid/trunk/qpid/java/systests/etc/config-systests-settings.xml (original)
+++ qpid/trunk/qpid/java/systests/etc/config-systests-settings.xml Sun Oct 16 
17:45:16 2011
@@ -25,8 +25,8 @@
             <port>15671</port>
             <enabled>false</enabled>
             <sslOnly>false</sslOnly>
-            
<keystorePath>${QPID_HOME}/../test-profiles/test_resources/ssl/java_broker_keystore.jks</keystorePath>
-            <keystorePassword>password</keystorePassword>
+            
<keyStorePath>${QPID_HOME}/../test-profiles/test_resources/ssl/java_broker_keystore.jks</keyStorePath>
+            <keyStorePassword>password</keyStorePassword>
         </ssl>
     </connector>
     <management>



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscr...@qpid.apache.org

Reply via email to