You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ud...@apache.org on 2016/09/13 19:11:53 UTC
[06/50] [abbrv] incubator-geode git commit: GEODE-1792: Changed
protocols and ciphers to be comma separated Make ssl-ciphers and
ssl-protocols comma separated properties. The legacy *-ssl-ciphers and
*-ssl-protocols still use space separated.
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfig.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfig.java b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfig.java
index 3f60778..e92d0b6 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfig.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfig.java
@@ -850,7 +850,7 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = CLUSTER_SSL_PROTOCOLS)
- String getClusterSSLProtocols();
+ String[] getClusterSSLProtocols();
/**
* Sets the value of the {@link ConfigurationProperties#CLUSTER_SSL_PROTOCOLS}
@@ -858,7 +858,7 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeSetter(name = CLUSTER_SSL_PROTOCOLS)
- void setClusterSSLProtocols(String protocols);
+ void setClusterSSLProtocols(String[] protocols);
/**
* The default {@link ConfigurationProperties#CLUSTER_SSL_PROTOCOLS} value.
@@ -870,7 +870,7 @@ public interface DistributionConfig extends Config, LogConfig {
* The name of the {@link ConfigurationProperties#CLUSTER_SSL_PROTOCOLS} property
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String CLUSTER_SSL_PROTOCOLS_NAME = CLUSTER_SSL_PROTOCOLS;
/**
@@ -879,7 +879,7 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = CLUSTER_SSL_CIPHERS)
- String getClusterSSLCiphers();
+ String[] getClusterSSLCiphers();
/**
* Sets the value of the {@link ConfigurationProperties#CLUSTER_SSL_CIPHERS}
@@ -887,7 +887,7 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeSetter(name = CLUSTER_SSL_CIPHERS)
- void setClusterSSLCiphers(String ciphers);
+ void setClusterSSLCiphers(String[] ciphers);
/**
* The default {@link ConfigurationProperties#CLUSTER_SSL_CIPHERS} value.
@@ -899,7 +899,7 @@ public interface DistributionConfig extends Config, LogConfig {
* The name of the {@link ConfigurationProperties#CLUSTER_SSL_CIPHERS} property
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String CLUSTER_SSL_CIPHERS_NAME = CLUSTER_SSL_CIPHERS;
/**
@@ -2592,16 +2592,16 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = JMX_MANAGER_SSL_PROTOCOLS)
- String getJmxManagerSSLProtocols();
+ String[] getJmxManagerSSLProtocols();
/**
* Sets the value of the {@link ConfigurationProperties#JMX_MANAGER_SSL_PROTOCOLS}
* property.
- * @deprecated Geode 1.0 use {@link #setClusterSSLProtocols(String)}
+ * @deprecated Geode 1.0 use {@link #setClusterSSLProtocols(String[])}
*/
@Deprecated
@ConfigAttributeSetter(name = JMX_MANAGER_SSL_PROTOCOLS)
- void setJmxManagerSSLProtocols(String protocols);
+ void setJmxManagerSSLProtocols(String[] protocols);
/**
* The default {@link ConfigurationProperties#JMX_MANAGER_SSL_PROTOCOLS} value.
@@ -2616,7 +2616,7 @@ public interface DistributionConfig extends Config, LogConfig {
* @deprecated Geode 1.0 use {@link com.gemstone.gemfire.distributed.ConfigurationProperties#CLUSTER_SSL_PROTOCOLS}
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String JMX_MANAGER_SSL_PROTOCOLS_NAME = JMX_MANAGER_SSL_PROTOCOLS;
/**
@@ -2626,16 +2626,16 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = JMX_MANAGER_SSL_CIPHERS)
- String getJmxManagerSSLCiphers();
+ String[] getJmxManagerSSLCiphers();
/**
* Sets the value of the {@link ConfigurationProperties#JMX_MANAGER_SSL_CIPHERS}
* property.
- * @deprecated Geode 1.0 use {@link #setClusterSSLCiphers(String)}
+ * @deprecated Geode 1.0 use {@link #setClusterSSLCiphers(String[])}
*/
@Deprecated
@ConfigAttributeSetter(name = JMX_MANAGER_SSL_CIPHERS)
- void setJmxManagerSSLCiphers(String ciphers);
+ void setJmxManagerSSLCiphers(String[] ciphers);
/**
* The default {@link ConfigurationProperties#JMX_MANAGER_SSL_CIPHERS} value.
@@ -2650,7 +2650,7 @@ public interface DistributionConfig extends Config, LogConfig {
* @deprecated Geode 1.0 use {@link com.gemstone.gemfire.distributed.ConfigurationProperties#CLUSTER_SSL_CIPHERS}
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String JMX_MANAGER_SSL_CIPHERS_NAME = JMX_MANAGER_SSL_CIPHERS;
/**
@@ -3209,16 +3209,16 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = HTTP_SERVICE_SSL_PROTOCOLS)
- String getHttpServiceSSLProtocols();
+ String[] getHttpServiceSSLProtocols();
/**
* Sets the value of the {@link ConfigurationProperties#HTTP_SERVICE_SSL_PROTOCOLS}
* property.
- * @deprecated Geode 1.0 use {@link #setClusterSSLProtocols(String)}
+ * @deprecated Geode 1.0 use {@link #setClusterSSLProtocols(String[])}
*/
@Deprecated
@ConfigAttributeSetter(name = HTTP_SERVICE_SSL_PROTOCOLS)
- void setHttpServiceSSLProtocols(String protocols);
+ void setHttpServiceSSLProtocols(String[] protocols);
/**
* The default {@link ConfigurationProperties#HTTP_SERVICE_SSL_PROTOCOLS} value.
@@ -3234,7 +3234,7 @@ public interface DistributionConfig extends Config, LogConfig {
* @deprecated Geode 1.0 use {@link com.gemstone.gemfire.distributed.ConfigurationProperties#CLUSTER_SSL_PROTOCOLS}
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String HTTP_SERVICE_SSL_PROTOCOLS_NAME = HTTP_SERVICE_SSL_PROTOCOLS;
/**
@@ -3244,16 +3244,16 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = HTTP_SERVICE_SSL_CIPHERS)
- String getHttpServiceSSLCiphers();
+ String[] getHttpServiceSSLCiphers();
/**
* Sets the value of the {@link ConfigurationProperties#HTTP_SERVICE_SSL_CIPHERS}
* property.
- * @deprecated Geode 1.0 use {@link #setClusterSSLCiphers(String)}
+ * @deprecated Geode 1.0 use {@link #setClusterSSLCiphers(String[])}
*/
@Deprecated
@ConfigAttributeSetter(name = HTTP_SERVICE_SSL_CIPHERS)
- void setHttpServiceSSLCiphers(String ciphers);
+ void setHttpServiceSSLCiphers(String[] ciphers);
/**
* The default {@link ConfigurationProperties#HTTP_SERVICE_SSL_CIPHERS} value.
@@ -3269,7 +3269,7 @@ public interface DistributionConfig extends Config, LogConfig {
* @deprecated Geode 1.0 use {@link com.gemstone.gemfire.distributed.ConfigurationProperties#CLUSTER_SSL_CIPHERS}
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String HTTP_SERVICE_SSL_CIPHERS_NAME = HTTP_SERVICE_SSL_CIPHERS;
/**
@@ -3565,14 +3565,14 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = SERVER_SSL_PROTOCOLS)
- String getServerSSLProtocols();
+ String[] getServerSSLProtocols();
/**
* Sets the value of the {@link ConfigurationProperties#SERVER_SSL_PROTOCOLS}
* property.
*/
@ConfigAttributeSetter(name = SERVER_SSL_PROTOCOLS)
- void setServerSSLProtocols(String protocols);
+ void setServerSSLProtocols(String[] protocols);
/**
* The default {@link ConfigurationProperties#SERVER_SSL_PROTOCOLS} value.
@@ -3587,7 +3587,7 @@ public interface DistributionConfig extends Config, LogConfig {
* @deprecated Geode 1.0 use {@link com.gemstone.gemfire.distributed.ConfigurationProperties#CLUSTER_SSL_PROTOCOLS}
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String SERVER_SSL_PROTOCOLS_NAME = SERVER_SSL_PROTOCOLS;
/**
@@ -3597,16 +3597,16 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = SERVER_SSL_CIPHERS)
- String getServerSSLCiphers();
+ String[] getServerSSLCiphers();
/**
* Sets the value of the {@link ConfigurationProperties#SERVER_SSL_CIPHERS}
* property.
- * @deprecated Geode 1.0 use {@link #setClusterSSLCiphers(String)}�
+ * @deprecated Geode 1.0 use {@link #setClusterSSLCiphers(String[])}�
*/
@Deprecated
@ConfigAttributeSetter(name = SERVER_SSL_CIPHERS)
- void setServerSSLCiphers(String ciphers);
+ void setServerSSLCiphers(String[] ciphers);
/**
* The default {@link ConfigurationProperties#SERVER_SSL_CIPHERS} value.
@@ -3621,7 +3621,7 @@ public interface DistributionConfig extends Config, LogConfig {
* @deprecated Geode 1.0 use {@link com.gemstone.gemfire.distributed.ConfigurationProperties#CLUSTER_SSL_CIPHERS}�
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String SERVER_SSL_CIPHERS_NAME = SERVER_SSL_CIPHERS;
/**
@@ -3873,7 +3873,7 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = GATEWAY_SSL_PROTOCOLS)
- String getGatewaySSLProtocols();
+ String[] getGatewaySSLProtocols();
/**
* Sets the value of the {@link ConfigurationProperties#GATEWAY_SSL_PROTOCOLS}
@@ -3882,7 +3882,7 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeSetter(name = GATEWAY_SSL_PROTOCOLS)
- void setGatewaySSLProtocols(String protocols);
+ void setGatewaySSLProtocols(String[] protocols);
/**
* The default {@link ConfigurationProperties#GATEWAY_SSL_PROTOCOLS} value.
@@ -3896,7 +3896,7 @@ public interface DistributionConfig extends Config, LogConfig {
* @deprecated Geode 1.0 use {@link com.gemstone.gemfire.distributed.ConfigurationProperties#CLUSTER_SSL_PROTOCOLS}
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String GATEWAY_SSL_PROTOCOLS_NAME = GATEWAY_SSL_PROTOCOLS;
/**
@@ -3906,16 +3906,16 @@ public interface DistributionConfig extends Config, LogConfig {
*/
@Deprecated
@ConfigAttributeGetter(name = GATEWAY_SSL_CIPHERS)
- String getGatewaySSLCiphers();
+ String[] getGatewaySSLCiphers();
/**
* Sets the value of the {@link ConfigurationProperties#GATEWAY_SSL_CIPHERS}
* property.
- * @deprecated Geode 1.0 use {@link #setClusterSSLCiphers(String)}�
+ * @deprecated Geode 1.0 use {@link #setClusterSSLCiphers(String[])}�
*/
@Deprecated
@ConfigAttributeSetter(name = GATEWAY_SSL_CIPHERS)
- void setGatewaySSLCiphers(String ciphers);
+ void setGatewaySSLCiphers(String[] ciphers);
/**
* The default {@link ConfigurationProperties#GATEWAY_SSL_CIPHERS} value.
@@ -3929,7 +3929,7 @@ public interface DistributionConfig extends Config, LogConfig {
* @deprecated Geode 1.0 use {@link com.gemstone.gemfire.distributed.ConfigurationProperties#CLUSTER_SSL_CIPHERS}�
*/
@Deprecated
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String GATEWAY_SSL_CIPHERS_NAME = GATEWAY_SSL_CIPHERS;
/**
@@ -4365,19 +4365,19 @@ public interface DistributionConfig extends Config, LogConfig {
* property.
*/
@ConfigAttributeGetter(name = SSL_PROTOCOLS)
- String getSSLProtocols();
+ String[] getSSLProtocols();
/**
* Sets the value of the {@link ConfigurationProperties#SSL_PROTOCOLS}
* property.
*/
@ConfigAttributeSetter(name = SSL_PROTOCOLS)
- void setSSLProtocols(String protocols);
+ void setSSLProtocols(String[] protocols);
/**
* The name of the {@link ConfigurationProperties#SSL_PROTOCOLS} property
*/
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String SSL_PROTOCOLS_NAME = SSL_PROTOCOLS;
/**
@@ -4385,19 +4385,19 @@ public interface DistributionConfig extends Config, LogConfig {
* property.
*/
@ConfigAttributeGetter(name = SSL_CIPHERS)
- String getSSLCiphers();
+ String[] getSSLCiphers();
/**
* Sets the value of the {@link ConfigurationProperties#SSL_CIPHERS}
* property.
*/
@ConfigAttributeSetter(name = SSL_CIPHERS)
- void setSSLCiphers(String ciphers);
+ void setSSLCiphers(String[] ciphers);
/**
* The name of the {@link ConfigurationProperties#SSL_CIPHERS} property
*/
- @ConfigAttribute(type = String.class)
+ @ConfigAttribute(type = String[].class)
String SSL_CIPHERS_NAME = SSL_CIPHERS;
/**
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfigImpl.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfigImpl.java b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfigImpl.java
index a5a9aa6..942322b 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfigImpl.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionConfigImpl.java
@@ -48,6 +48,7 @@ import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
import com.gemstone.gemfire.internal.net.SSLEnabledComponent;
import com.gemstone.gemfire.internal.net.SocketCreator;
import com.gemstone.gemfire.internal.process.ProcessLauncherContext;
+import com.gemstone.gemfire.management.internal.SSLUtil;
import com.gemstone.gemfire.memcached.GemFireMemcachedServer;
/**
@@ -183,9 +184,9 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
@Deprecated
private boolean clusterSSLEnabled = DEFAULT_SSL_ENABLED;
@Deprecated
- private String clusterSSLProtocols = DEFAULT_SSL_PROTOCOLS;
+ private String[] clusterSSLProtocols = new String[] { DEFAULT_SSL_PROTOCOLS };
@Deprecated
- private String clusterSSLCiphers = DEFAULT_SSL_CIPHERS;
+ private String[] clusterSSLCiphers = new String[] { DEFAULT_SSL_CIPHERS };
@Deprecated
private boolean clusterSSLRequireAuthentication = DEFAULT_SSL_REQUIRE_AUTHENTICATION;
@Deprecated
@@ -458,9 +459,9 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
@Deprecated
private boolean jmxManagerSslRequireAuthentication = DEFAULT_JMX_MANAGER_SSL_REQUIRE_AUTHENTICATION;
@Deprecated
- private String jmxManagerSslProtocols = DEFAULT_JMX_MANAGER_SSL_PROTOCOLS;
+ private String[] jmxManagerSslProtocols = new String[] { DEFAULT_JMX_MANAGER_SSL_PROTOCOLS };
@Deprecated
- private String jmxManagerSslCiphers = DEFAULT_JMX_MANAGER_SSL_CIPHERS;
+ private String[] jmxManagerSslCiphers = new String[] { DEFAULT_JMX_MANAGER_SSL_CIPHERS };
@Deprecated
private Properties jmxManagerSslProperties = new Properties();
@Deprecated
@@ -481,9 +482,9 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
@Deprecated
private boolean serverSslRequireAuthentication = DEFAULT_SERVER_SSL_REQUIRE_AUTHENTICATION;
@Deprecated
- private String serverSslProtocols = DEFAULT_SERVER_SSL_PROTOCOLS;
+ private String[] serverSslProtocols = new String[] { DEFAULT_SERVER_SSL_PROTOCOLS };
@Deprecated
- private String serverSslCiphers = DEFAULT_SERVER_SSL_CIPHERS;
+ private String[] serverSslCiphers = new String[] { DEFAULT_SERVER_SSL_CIPHERS };
@Deprecated
private Properties serverSslProperties = new Properties();
@Deprecated
@@ -504,9 +505,9 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
@Deprecated
private boolean gatewaySslRequireAuthentication = DEFAULT_GATEWAY_SSL_REQUIRE_AUTHENTICATION;
@Deprecated
- private String gatewaySslProtocols = DEFAULT_GATEWAY_SSL_PROTOCOLS;
+ private String[] gatewaySslProtocols = new String[] { DEFAULT_GATEWAY_SSL_PROTOCOLS };
@Deprecated
- private String gatewaySslCiphers = DEFAULT_GATEWAY_SSL_CIPHERS;
+ private String[] gatewaySslCiphers = new String[] { DEFAULT_GATEWAY_SSL_CIPHERS };
@Deprecated
private Properties gatewaySslProperties = new Properties();
@Deprecated
@@ -528,9 +529,9 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
@Deprecated
private boolean httpServiceSSLRequireAuthentication = DEFAULT_HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION;
@Deprecated
- private String httpServiceSSLProtocols = DEFAULT_HTTP_SERVICE_SSL_PROTOCOLS;
+ private String[] httpServiceSSLProtocols = new String[] { DEFAULT_HTTP_SERVICE_SSL_PROTOCOLS };
@Deprecated
- private String httpServiceSSLCiphers = DEFAULT_HTTP_SERVICE_SSL_CIPHERS;
+ private String[] httpServiceSSLCiphers = new String[] { DEFAULT_HTTP_SERVICE_SSL_CIPHERS };
@Deprecated
private Properties httpServiceSSLProperties = new Properties();
@Deprecated
@@ -548,8 +549,8 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
private SSLEnabledComponent[] sslEnabledComponents = DEFAULT_SSL_ENABLED_COMPONENTS;
- private String sslProtocols = DEFAULT_SSL_PROTOCOLS;
- private String sslCiphers = DEFAULT_SSL_CIPHERS;
+ private String[] sslProtocols = new String[] { DEFAULT_SSL_PROTOCOLS };
+ private String[] sslCiphers = new String[] { DEFAULT_SSL_CIPHERS };
private boolean sslRequireAuthentication = DEFAULT_SSL_REQUIRE_AUTHENTICATION;
private String sslKeyStore = DEFAULT_SSL_KEYSTORE;
private String sslKeyStoreType = DEFAULT_CLUSTER_SSL_KEYSTORE_TYPE;
@@ -1457,8 +1458,13 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
continue;
}
Object propVal = me.getValue();
- if (propVal != null && (propVal instanceof String)) { // weed out extraneous non-string properties
- this.setAttribute(propName, ((String) propVal).trim(), this.sourceMap.get(propName));
+ if (isLegacySSLCipherOrProtocol(propName)) {
+ propVal = SSLUtil.stringToArray((String) propVal);
+ setAttributeObject(propName, propVal, this.sourceMap.get(propName));
+ } else {
+ if (propVal != null && (propVal instanceof String)) { // weed out extraneous non-string properties
+ this.setAttribute(propName, ((String) propVal).trim(), this.sourceMap.get(propName));
+ }
}
}
if (props.containsKey(CLUSTER_SSL_ENABLED)) {
@@ -1477,6 +1483,15 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
this.modifiable = false;
}
+ private boolean isLegacySSLCipherOrProtocol(final String propName) {
+ if (propName.contains("-ciphers") || propName.contains("-protocols")) {
+ if (!ConfigurationProperties.SSL_CIPHERS.equals(propName) && !ConfigurationProperties.SSL_PROTOCOLS.equals(propName)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
public void close() {
// Clear the extra stuff from System properties
Properties props = System.getProperties();
@@ -1623,11 +1638,11 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
return this.clusterSSLEnabled;
}
- public String getClusterSSLProtocols() {
+ public String[] getClusterSSLProtocols() {
return this.clusterSSLProtocols;
}
- public String getClusterSSLCiphers() {
+ public String[] getClusterSSLCiphers() {
return this.clusterSSLCiphers;
}
@@ -1903,12 +1918,12 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
this.clusterSSLEnabled = (Boolean) value;
}
- public void setClusterSSLProtocols(String value) {
- this.clusterSSLProtocols = (String) value;
+ public void setClusterSSLProtocols(String[] value) {
+ this.clusterSSLProtocols = value;
}
- public void setClusterSSLCiphers(String value) {
- this.clusterSSLCiphers = (String) value;
+ public void setClusterSSLCiphers(String[] value) {
+ this.clusterSSLCiphers = value;
}
public void setClusterSSLRequireAuthentication(boolean value) {
@@ -2313,22 +2328,22 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
}
@Override
- public String getJmxManagerSSLProtocols() {
+ public String[] getJmxManagerSSLProtocols() {
return this.jmxManagerSslProtocols;
}
@Override
- public void setJmxManagerSSLProtocols(String protocols) {
+ public void setJmxManagerSSLProtocols(String[] protocols) {
this.jmxManagerSslProtocols = protocols;
}
@Override
- public String getJmxManagerSSLCiphers() {
+ public String[] getJmxManagerSSLCiphers() {
return this.jmxManagerSslCiphers;
}
@Override
- public void setJmxManagerSSLCiphers(String ciphers) {
+ public void setJmxManagerSSLCiphers(String[] ciphers) {
this.jmxManagerSslCiphers = ciphers;
}
@@ -2555,22 +2570,22 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
}
@Override
- public String getSSLProtocols() {
+ public String[] getSSLProtocols() {
return sslProtocols;
}
@Override
- public void setSSLProtocols(final String sslProtocols) {
+ public void setSSLProtocols(final String[] sslProtocols) {
this.sslProtocols = sslProtocols;
}
@Override
- public String getSSLCiphers() {
+ public String[] getSSLCiphers() {
return sslCiphers;
}
@Override
- public void setSSLCiphers(final String sslCiphers) {
+ public void setSSLCiphers(final String[] sslCiphers) {
this.sslCiphers = sslCiphers;
}
@@ -3723,23 +3738,23 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
}
@Override
- public String getServerSSLProtocols() {
+ public String[] getServerSSLProtocols() {
return this.serverSslProtocols;
}
@Override
- public void setServerSSLProtocols(String protocols) {
- this.serverSslProtocols = (String) protocols;
+ public void setServerSSLProtocols(String[] protocols) {
+ this.serverSslProtocols = protocols;
}
@Override
- public String getServerSSLCiphers() {
+ public String[] getServerSSLCiphers() {
return this.serverSslCiphers;
}
@Override
- public void setServerSSLCiphers(String ciphers) {
- this.serverSslCiphers = (String) ciphers;
+ public void setServerSSLCiphers(String[] ciphers) {
+ this.serverSslCiphers = ciphers;
}
public void setServerSSLKeyStore(String value) {
@@ -3814,23 +3829,23 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
}
@Override
- public String getGatewaySSLProtocols() {
+ public String[] getGatewaySSLProtocols() {
return this.gatewaySslProtocols;
}
@Override
- public void setGatewaySSLProtocols(String protocols) {
- this.gatewaySslProtocols = (String) protocols;
+ public void setGatewaySSLProtocols(String[] protocols) {
+ this.gatewaySslProtocols = protocols;
}
@Override
- public String getGatewaySSLCiphers() {
+ public String[] getGatewaySSLCiphers() {
return this.gatewaySslCiphers;
}
@Override
- public void setGatewaySSLCiphers(String ciphers) {
- this.gatewaySslCiphers = (String) ciphers;
+ public void setGatewaySSLCiphers(String[] ciphers) {
+ this.gatewaySslCiphers = ciphers;
}
public void setGatewaySSLKeyStore(String value) {
@@ -3905,22 +3920,22 @@ public class DistributionConfigImpl extends AbstractDistributionConfig implement
}
@Override
- public String getHttpServiceSSLProtocols() {
+ public String[] getHttpServiceSSLProtocols() {
return httpServiceSSLProtocols;
}
@Override
- public void setHttpServiceSSLProtocols(String httpServiceSSLProtocols) {
+ public void setHttpServiceSSLProtocols(String[] httpServiceSSLProtocols) {
this.httpServiceSSLProtocols = httpServiceSSLProtocols;
}
@Override
- public String getHttpServiceSSLCiphers() {
+ public String[] getHttpServiceSSLCiphers() {
return httpServiceSSLCiphers;
}
@Override
- public void setHttpServiceSSLCiphers(String httpServiceSSLCiphers) {
+ public void setHttpServiceSSLCiphers(String[] httpServiceSSLCiphers) {
this.httpServiceSSLCiphers = httpServiceSSLCiphers;
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/SSLConfig.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/SSLConfig.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/SSLConfig.java
index ebf3a7e..e3032c4 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/SSLConfig.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/SSLConfig.java
@@ -31,8 +31,8 @@ import com.gemstone.gemfire.management.internal.SSLUtil;
public class SSLConfig {
private boolean enabled = DistributionConfig.DEFAULT_SSL_ENABLED;
- private String protocols = DistributionConfig.DEFAULT_SSL_PROTOCOLS;
- private String ciphers = DistributionConfig.DEFAULT_SSL_CIPHERS;
+ private String[] protocols = new String[] { DistributionConfig.DEFAULT_SSL_PROTOCOLS };
+ private String[] ciphers = new String[] { DistributionConfig.DEFAULT_SSL_CIPHERS };
private boolean requireAuth = DistributionConfig.DEFAULT_SSL_REQUIRE_AUTHENTICATION;
private String keystore = DistributionConfig.DEFAULT_SSL_KEYSTORE;
private String keystoreType = DistributionConfig.DEFAULT_CLUSTER_SSL_KEYSTORE_TYPE;
@@ -108,27 +108,19 @@ public class SSLConfig {
this.enabled = enabled;
}
- public String getProtocols() {
+ public String[] getProtocols() {
return this.protocols;
}
- public String[] getProtocolsAsStringArray() {
- return SSLUtil.readArray(this.protocols);
- }
-
- public void setProtocols(String protocols) {
+ public void setProtocols(String[] protocols) {
this.protocols = protocols;
}
- public String getCiphers() {
+ public String[] getCiphers() {
return this.ciphers;
}
- public String[] getCiphersAsStringArray() {
- return SSLUtil.readArray(this.ciphers);
- }
-
- public void setCiphers(String ciphers) {
+ public void setCiphers(String[] ciphers) {
this.ciphers = ciphers;
}
@@ -149,7 +141,6 @@ public class SSLConfig {
}
-
public Properties getProperties() {
return this.properties;
}
@@ -186,8 +177,8 @@ public class SSLConfig {
props.setProperty(CLUSTER_SSL_ENABLED, String.valueOf(this.enabled));
if (this.enabled) {
- props.setProperty(CLUSTER_SSL_PROTOCOLS, this.protocols);
- props.setProperty(CLUSTER_SSL_CIPHERS, this.ciphers);
+ props.setProperty(CLUSTER_SSL_PROTOCOLS, SSLUtil.arrayToSpaceDelimitedString(this.protocols));
+ props.setProperty(CLUSTER_SSL_CIPHERS, SSLUtil.arrayToSpaceDelimitedString(this.ciphers));
props.setProperty(CLUSTER_SSL_REQUIRE_AUTHENTICATION, String.valueOf(this.requireAuth));
}
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactory.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactory.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactory.java
index 33378b8..66fba7e 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactory.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactory.java
@@ -27,6 +27,7 @@ import org.springframework.util.StringUtils;
import com.gemstone.gemfire.distributed.internal.DistributionConfig;
import com.gemstone.gemfire.distributed.internal.DistributionConfigImpl;
import com.gemstone.gemfire.internal.admin.SSLConfig;
+import com.gemstone.gemfire.management.internal.SSLUtil;
public class SSLConfigurationFactory {
@@ -316,8 +317,8 @@ public class SSLConfigurationFactory {
final String alias) {
SSLConfig sslConfig = new SSLConfig();
sslConfig.setAlias(alias);
- sslConfig.setCiphers(ciphers);
- sslConfig.setProtocols(protocols);
+ sslConfig.setCiphers(SSLUtil.stringToArray(ciphers));
+ sslConfig.setProtocols(SSLUtil.stringToArray(protocols));
sslConfig.setRequireAuth(needClientAuth);
sslConfig.setEnabled(useSSL);
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SocketCreator.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SocketCreator.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SocketCreator.java
index a11733a..d361829 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SocketCreator.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/net/SocketCreator.java
@@ -440,7 +440,7 @@ public class SocketCreator {
}
private SSLContext getSSLContextInstance() {
- String[] protocols = sslConfig.getProtocolsAsStringArray();
+ String[] protocols = sslConfig.getProtocols();
SSLContext sslContext = null;
if (protocols != null && protocols.length > 0) {
for (String protocol : protocols) {
@@ -1019,11 +1019,11 @@ public class SocketCreator {
serverSocket.setEnableSessionCreation(true);
// restrict cyphers
- String[] protocols = this.sslConfig.getProtocolsAsStringArray();
+ String[] protocols = this.sslConfig.getProtocols();
if (!"any".equalsIgnoreCase(protocols[0])) {
serverSocket.setEnabledProtocols(protocols);
}
- String[] ciphers = this.sslConfig.getCiphersAsStringArray();
+ String[] ciphers = this.sslConfig.getCiphers();
if (!"any".equalsIgnoreCase(ciphers[0])) {
serverSocket.setEnabledCipherSuites(ciphers);
}
@@ -1040,13 +1040,13 @@ public class SocketCreator {
sslSocket.setUseClientMode(true);
sslSocket.setEnableSessionCreation(true);
- String[] protocols = this.sslConfig.getProtocolsAsStringArray();
+ String[] protocols = this.sslConfig.getProtocols();
// restrict cyphers
if (protocols != null && !"any".equalsIgnoreCase(protocols[0])) {
sslSocket.setEnabledProtocols(protocols);
}
- String[] ciphers = this.sslConfig.getCiphersAsStringArray();
+ String[] ciphers = this.sslConfig.getCiphers();
if (ciphers != null && !"any".equalsIgnoreCase(ciphers[0])) {
sslSocket.setEnabledCipherSuites(ciphers);
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/management/GemFireProperties.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/GemFireProperties.java b/geode-core/src/main/java/com/gemstone/gemfire/management/GemFireProperties.java
index 410d658..ed7e5b9 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/GemFireProperties.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/GemFireProperties.java
@@ -442,12 +442,12 @@ public class GemFireProperties {
* @deprecated Geode 1.0 use {@link #clusterSSLProtocols}
*/
@Deprecated
- private String jmxManagerSSLProtocols;
+ private String[] jmxManagerSSLProtocols;
/**
* @deprecated Geode 1.0 use {@link #clusterSSLCiphers}
*/
@Deprecated
- private String jmxManagerSSLCiphers;
+ private String[] jmxManagerSSLCiphers;
/**
* @deprecated Geode 1.0 use {@link #clusterSSLRequireAuthentication}
*/
@@ -481,8 +481,8 @@ public class GemFireProperties {
private String jmxManagerSSLAlias;
private boolean clusterSSLEnabled;
- private String clusterSSLProtocols;
- private String clusterSSLCiphers;
+ private String[] clusterSSLProtocols;
+ private String[] clusterSSLCiphers;
private boolean clusterSSLRequireAuthentication;
private String clusterSSLKeyStore;
private String clusterSSLKeyStoreType;
@@ -500,12 +500,12 @@ public class GemFireProperties {
* @deprecated Geode 1.0 use {@link #clusterSSLProtocols}
*/
@Deprecated
- private String serverSSLProtocols;
+ private String[] serverSSLProtocols;
/**
* @deprecated Geode 1.0 use {@link #clusterSSLCiphers}
*/
@Deprecated
- private String serverSSLCiphers;
+ private String[] serverSSLCiphers;
/**
* @deprecated Geode 1.0 use {@link #clusterSSLRequireAuthentication}
*/
@@ -547,12 +547,12 @@ public class GemFireProperties {
* @deprecated Geode 1.0 use {@link #clusterSSLProtocols}
*/
@Deprecated
- private String gatewaySSLProtocols;
+ private String[] gatewaySSLProtocols;
/**
* @deprecated Geode 1.0 use {@link #clusterSSLCiphers}
*/
@Deprecated
- private String gatewaySSLCiphers;
+ private String[] gatewaySSLCiphers;
/**
* @deprecated Geode 1.0 use {@link #clusterSSLRequireAuthentication}
*/
@@ -599,12 +599,12 @@ public class GemFireProperties {
* @deprecated Geode 1.0 use {@link #clusterSSLProtocols}
*/
@Deprecated
- private String httpServiceSSLProtocols;
+ private String[] httpServiceSSLProtocols;
/**
* @deprecated Geode 1.0 use {@link #clusterSSLCiphers}
*/
@Deprecated
- private String httpServiceSSLCiphers;
+ private String[] httpServiceSSLCiphers;
/**
* @deprecated Geode 1.0 use {@link #clusterSSLKeyStore}
*/
@@ -1018,26 +1018,6 @@ public class GemFireProperties {
}
-// public void setSslEnabled(boolean sslEnabled) {
-// this.sslEnabled = sslEnabled;
-//
-// }
-//
-// public void setSslCiphers(String sslCiphers) {
-// this.sslCiphers = sslCiphers;
-//
-// }
-//
-// public void setSslProtocols(String sslProtocols) {
-// this.sslProtocols = sslProtocols;
-//
-// }
-//
-// public void setSslRequireAuthentication(boolean sslRequireAuthentication) {
-// this.sslRequireAuthentication = sslRequireAuthentication;
-//
-// }
-
public void setSocketLeaseTime(int socketLeaseTime) {
this.socketLeaseTime = socketLeaseTime;
@@ -1358,19 +1338,19 @@ public class GemFireProperties {
this.jmxManagerSSLEnabled = jmxManagerSSLEnabled;
}
- public String getJmxManagerSSLProtocols() {
+ public String[] getJmxManagerSSLProtocols() {
return jmxManagerSSLProtocols;
}
- public void setJmxManagerSSLProtocols(String jmxManagerSSLProtocols) {
+ public void setJmxManagerSSLProtocols(String[] jmxManagerSSLProtocols) {
this.jmxManagerSSLProtocols = jmxManagerSSLProtocols;
}
- public String getJmxManagerSSLCiphers() {
+ public String[] getJmxManagerSSLCiphers() {
return jmxManagerSSLCiphers;
}
- public void setJmxManagerSSLCiphers(String jmxManagerSSLCiphers) {
+ public void setJmxManagerSSLCiphers(String[] jmxManagerSSLCiphers) {
this.jmxManagerSSLCiphers = jmxManagerSSLCiphers;
}
@@ -1431,19 +1411,19 @@ public class GemFireProperties {
this.clusterSSLEnabled = clusterSSLEnabled;
}
- public String getClusterSSLProtocols() {
+ public String[] getClusterSSLProtocols() {
return clusterSSLProtocols;
}
- public void setClusterSSLProtocols(String clusterSSLProtocols) {
+ public void setClusterSSLProtocols(String[] clusterSSLProtocols) {
this.clusterSSLProtocols = clusterSSLProtocols;
}
- public String getClusterSSLCiphers() {
+ public String[] getClusterSSLCiphers() {
return clusterSSLCiphers;
}
- public void setClusterSSLCiphers(String clusterSSLCiphers) {
+ public void setClusterSSLCiphers(String[] clusterSSLCiphers) {
this.clusterSSLCiphers = clusterSSLCiphers;
}
@@ -1504,19 +1484,19 @@ public class GemFireProperties {
this.serverSSLEnabled = serverSSLEnabled;
}
- public String getServerSSLProtocols() {
+ public String[] getServerSSLProtocols() {
return serverSSLProtocols;
}
- public void setServerSSLProtocols(String serverSSLProtocols) {
+ public void setServerSSLProtocols(String[] serverSSLProtocols) {
this.serverSSLProtocols = serverSSLProtocols;
}
- public String getServerSSLCiphers() {
+ public String[] getServerSSLCiphers() {
return serverSSLCiphers;
}
- public void setServerSSLCiphers(String serverSSLCiphers) {
+ public void setServerSSLCiphers(String[] serverSSLCiphers) {
this.serverSSLCiphers = serverSSLCiphers;
}
@@ -1577,19 +1557,19 @@ public class GemFireProperties {
this.gatewaySSLEnabled = gatewaySSLEnabled;
}
- public String getGatewaySSLProtocols() {
+ public String[] getGatewaySSLProtocols() {
return gatewaySSLProtocols;
}
- public void setGatewaySSLProtocols(String gatewaySSLProtocols) {
+ public void setGatewaySSLProtocols(String[] gatewaySSLProtocols) {
this.gatewaySSLProtocols = gatewaySSLProtocols;
}
- public String getGatewaySSLCiphers() {
+ public String[] getGatewaySSLCiphers() {
return gatewaySSLCiphers;
}
- public void setGatewaySSLCiphers(String gatewaySSLCiphers) {
+ public void setGatewaySSLCiphers(String[] gatewaySSLCiphers) {
this.gatewaySSLCiphers = gatewaySSLCiphers;
}
@@ -1658,19 +1638,19 @@ public class GemFireProperties {
this.httpServiceSSLRequireAuthentication = httpServiceSSLRequireAuthentication;
}
- public String getHttpServiceSSLProtocols() {
+ public String[] getHttpServiceSSLProtocols() {
return httpServiceSSLProtocols;
}
- public void setHttpServiceSSLProtocols(String httpServiceSSLProtocols) {
+ public void setHttpServiceSSLProtocols(String[] httpServiceSSLProtocols) {
this.httpServiceSSLProtocols = httpServiceSSLProtocols;
}
- public String getHttpServiceSSLCiphers() {
+ public String[] getHttpServiceSSLCiphers() {
return httpServiceSSLCiphers;
}
- public void setHttpServiceSSLCiphers(String httpServiceSSLCiphers) {
+ public void setHttpServiceSSLCiphers(String[] httpServiceSSLCiphers) {
this.httpServiceSSLCiphers = httpServiceSSLCiphers;
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/management/internal/JettyHelper.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/JettyHelper.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/JettyHelper.java
index 8724d73..8ebf4ef 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/JettyHelper.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/JettyHelper.java
@@ -19,6 +19,7 @@ package com.gemstone.gemfire.management.internal;
import java.io.File;
import java.util.concurrent.CountDownLatch;
+import org.apache.commons.lang.ArrayUtils;
import org.apache.logging.log4j.Logger;
import org.eclipse.jetty.http.HttpVersion;
import org.eclipse.jetty.server.Connector;
@@ -80,12 +81,12 @@ public class JettyHelper {
sslContextFactory.setNeedClientAuth(sslConfig.isRequireAuth());
- if (!StringUtils.isBlank(sslConfig.getCiphers()) && !"any".equalsIgnoreCase(sslConfig.getCiphers())) {
+ if (sslConfig.getCiphers().length > 0 && !ArrayUtils.contains(sslConfig.getCiphers(),"any")) {
//If use has mentioned "any" let the SSL layer decide on the ciphers
- sslContextFactory.setIncludeCipherSuites(SSLUtil.readArray(sslConfig.getCiphers()));
+ sslContextFactory.setIncludeCipherSuites(sslConfig.getCiphers());
}
- String protocol = SSLUtil.getSSLAlgo(SSLUtil.readArray(sslConfig.getProtocols()));
+ String protocol = SSLUtil.getSSLAlgo(sslConfig.getProtocols());
if (protocol != null) {
sslContextFactory.setProtocol(protocol);
} else {
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/management/internal/SSLUtil.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/SSLUtil.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/SSLUtil.java
index 98248d5..7482d5d 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/SSLUtil.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/SSLUtil.java
@@ -20,17 +20,15 @@ import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
-
import javax.net.ssl.SSLContext;
import com.gemstone.gemfire.internal.lang.StringUtils;
/**
- *
* @since GemFire 8.1
*/
public class SSLUtil {
-
+
public static String getSSLAlgo(String[] protocols) {
String c = null;
@@ -63,19 +61,34 @@ public class SSLUtil {
}
return c;
}
-
- /** Read an array of values from a string, whitespace separated. */
- public static String[] readArray( String text ) {
+
+ /**
+ * Read an array of values from a string, whitespace separated.
+ */
+ public static String[] stringToArray(String text) {
if (StringUtils.isBlank(text)) {
return null;
}
-
- StringTokenizer st = new StringTokenizer( text );
- List<String> v = new ArrayList<String>( );
- while( st.hasMoreTokens() ) {
- v.add( st.nextToken() );
+
+ StringTokenizer st = new StringTokenizer(text);
+ List<String> v = new ArrayList<String>();
+ while (st.hasMoreTokens()) {
+ v.add(st.nextToken());
}
- return v.toArray( new String[ v.size() ] );
+ return v.toArray(new String[v.size()]);
}
+
+ public static String arrayToSpaceDelimitedString(String[] stringArray) {
+ if (stringArray.length == 0) {
+ return "";
+ }
+ StringBuilder stringBuilder = new StringBuilder();
+ for (String text : stringArray) {
+ stringBuilder.append(text);
+ stringBuilder.append(" ");
+ }
+
+ return stringBuilder.toString().trim();
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ShellCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ShellCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ShellCommands.java
index 523541c..e849d3a 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ShellCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ShellCommands.java
@@ -435,7 +435,7 @@ public class ShellCommands implements CommandMarker {
trustManagerFactory.init(serverPub);
}
- SSLContext ssl = SSLContext.getInstance(SSLUtil.getSSLAlgo(SSLUtil.readArray(sslProtocolsToUse)));
+ SSLContext ssl = SSLContext.getInstance(SSLUtil.getSSLAlgo(SSLUtil.stringToArray(sslProtocolsToUse)));
ssl.init(keyManagerFactory != null ? keyManagerFactory.getKeyManagers() : null,
trustManagerFactory != null ? trustManagerFactory.getTrustManagers() : null, new java.security.SecureRandom());
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionConfigJUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionConfigJUnitTest.java b/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionConfigJUnitTest.java
index 56b35ea..d25615d 100644
--- a/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionConfigJUnitTest.java
+++ b/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionConfigJUnitTest.java
@@ -111,11 +111,11 @@ public class DistributionConfigJUnitTest {
System.out.println("otherList: " + otherList);
//TODO - This makes no sense. One has no idea what the correct expected number of attributes are.
- assertEquals(28, boolList.size());
+ assertEquals(29, boolList.size());
assertEquals(33, intList.size());
- assertEquals(84, stringList.size());
+ assertEquals(72, stringList.size());
assertEquals(5, fileList.size());
- assertEquals(4, otherList.size());
+ assertEquals(16, otherList.size());
}
@Test
@@ -306,7 +306,7 @@ public class DistributionConfigJUnitTest {
public void testValidLocatorAddress() {
String address = "81.240.0.1[7056]";
config.modifiable = true;
- config.setAttributeObject(START_LOCATOR,address,ConfigSource.api());
+ config.setAttributeObject(START_LOCATOR, address, ConfigSource.api());
assertEquals(config.getStartLocator(), address);
}
@@ -314,8 +314,8 @@ public class DistributionConfigJUnitTest {
public void testInvalidLocatorAddress() {
String address = "bad.bad[7056]";
config.modifiable = true;
-// config.setStartLocator(address);
- config.setAttributeObject(START_LOCATOR,address,ConfigSource.api());
+ // config.setStartLocator(address);
+ config.setAttributeObject(START_LOCATOR, address, ConfigSource.api());
}
@Test
@@ -375,6 +375,7 @@ public class DistributionConfigJUnitTest {
DistributionConfig config = new DistributionConfigImpl(props);
}
+
@Test
public void testSSLEnabledComponentsLegacyPass() {
Properties props = new Properties();
@@ -385,4 +386,56 @@ public class DistributionConfigJUnitTest {
DistributionConfig config = new DistributionConfigImpl(props);
}
+
+ @Test
+ public void testSSLCiphers() {
+ Properties props = new Properties();
+ props.put(SSL_CIPHERS, "any,test,anythingelse");
+
+ DistributionConfig config = new DistributionConfigImpl(props);
+ assertArrayEquals(new String[] { "any", "test", "anythingelse" }, config.getSSLCiphers());
+ }
+
+ @Test
+ public void testSSLProtocols() {
+ Properties props = new Properties();
+ props.put(SSL_PROTOCOLS, "any,protocol1,protocol2");
+
+ DistributionConfig config = new DistributionConfigImpl(props);
+ assertArrayEquals(new String[] { "any", "protocol1", "protocol2" }, config.getSSLProtocols());
+ }
+
+ @Test
+ public void testSSLLegacyCiphers() {
+ Properties props = new Properties();
+ props.put(CLUSTER_SSL_CIPHERS, "cluster1 cluster2 cluster3");
+ props.put(JMX_MANAGER_SSL_CIPHERS, "jmx1 jmx2 jmx3");
+ props.put(HTTP_SERVICE_SSL_CIPHERS, "http1 http2 http3");
+ props.put(GATEWAY_SSL_CIPHERS, "gateway1 gateway2 gateway3");
+ props.put(SERVER_SSL_CIPHERS, "server1 server2 server3");
+
+ DistributionConfig config = new DistributionConfigImpl(props);
+ assertArrayEquals(new String[] { "cluster1", "cluster2", "cluster3" }, config.getClusterSSLCiphers());
+ assertArrayEquals(new String[] { "jmx1", "jmx2", "jmx3" }, config.getJmxManagerSSLCiphers());
+ assertArrayEquals(new String[] { "server1", "server2", "server3" }, config.getServerSSLCiphers());
+ assertArrayEquals(new String[] { "gateway1", "gateway2", "gateway3" }, config.getGatewaySSLCiphers());
+ assertArrayEquals(new String[] { "http1", "http2", "http3" }, config.getHttpServiceSSLCiphers());
+ }
+
+ @Test
+ public void testSSLLegacyProtocols() {
+ Properties props = new Properties();
+ props.put(CLUSTER_SSL_PROTOCOLS, "cluster1 cluster2 cluster3");
+ props.put(JMX_MANAGER_SSL_PROTOCOLS, "jmx1 jmx2 jmx3");
+ props.put(HTTP_SERVICE_SSL_PROTOCOLS, "http1 http2 http3");
+ props.put(GATEWAY_SSL_PROTOCOLS, "gateway1 gateway2 gateway3");
+ props.put(SERVER_SSL_PROTOCOLS, "server1 server2 server3");
+
+ DistributionConfig config = new DistributionConfigImpl(props);
+ assertArrayEquals(new String[] { "cluster1", "cluster2", "cluster3" }, config.getClusterSSLProtocols());
+ assertArrayEquals(new String[] { "jmx1", "jmx2", "jmx3" }, config.getJmxManagerSSLProtocols());
+ assertArrayEquals(new String[] { "server1", "server2", "server3" }, config.getServerSSLProtocols());
+ assertArrayEquals(new String[] { "gateway1", "gateway2", "gateway3" }, config.getGatewaySSLProtocols());
+ assertArrayEquals(new String[] { "http1", "http2", "http3" }, config.getHttpServiceSSLProtocols());
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/geode-core/src/test/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactoryTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactoryTest.java b/geode-core/src/test/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactoryTest.java
index 0b70c8f..f97d485 100644
--- a/geode-core/src/test/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactoryTest.java
+++ b/geode-core/src/test/java/com/gemstone/gemfire/internal/net/SSLConfigurationFactoryTest.java
@@ -29,6 +29,7 @@ import org.junit.experimental.categories.Category;
import com.gemstone.gemfire.distributed.internal.DistributionConfig;
import com.gemstone.gemfire.distributed.internal.DistributionConfigImpl;
import com.gemstone.gemfire.internal.admin.SSLConfig;
+import com.gemstone.gemfire.management.internal.SSLUtil;
import com.gemstone.gemfire.test.dunit.internal.JUnit4DistributedTestCase;
import com.gemstone.gemfire.test.junit.categories.UnitTest;
@@ -129,8 +130,8 @@ public class SSLConfigurationFactoryTest extends JUnit4DistributedTestCase {
assertEquals(properties.getProperty(SSL_KEYSTORE_TYPE), sslConfig.getKeystoreType());
assertEquals(properties.getProperty(SSL_TRUSTSTORE), sslConfig.getTruststore());
assertEquals(properties.getProperty(SSL_TRUSTSTORE_PASSWORD), sslConfig.getTruststorePassword());
- assertEquals(properties.getProperty(SSL_CIPHERS), sslConfig.getCiphers());
- assertEquals(properties.getProperty(SSL_PROTOCOLS), sslConfig.getProtocols());
+ assertEquals(SSLUtil.stringToArray(properties.getProperty(SSL_CIPHERS)), sslConfig.getCiphers());
+ assertEquals(SSLUtil.stringToArray(properties.getProperty(SSL_PROTOCOLS)), sslConfig.getProtocols());
assertEquals(getCorrectAlias(expectedSSLEnabledComponent, properties), sslConfig.getAlias());
assertEquals(requiresAuthentication(properties, expectedSSLEnabledComponent), sslConfig.isRequireAuth());
assertEquals(expectedSSLEnabledComponent, sslConfig.getSslEnabledComponent());
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/80731e54/gradle/java.gradle
----------------------------------------------------------------------
diff --git a/gradle/java.gradle b/gradle/java.gradle
index 5b28e85..de501c6 100644
--- a/gradle/java.gradle
+++ b/gradle/java.gradle
@@ -23,29 +23,29 @@ allprojects {
}
subprojects {
apply plugin: 'java'
-
+
// apply compiler options
-// gradle.taskGraph.whenReady( { graph ->
-// tasks.withType(JavaCompile).each { javac ->
-// javac.configure {
-// sourceCompatibility '1.8'
-// targetCompatibility '1.8'
-// options.encoding = 'UTF-8'
-// }
-// }
-// })
-
+ gradle.taskGraph.whenReady({ graph ->
+ tasks.withType(JavaCompile).each { javac ->
+ javac.configure {
+ sourceCompatibility '1.8'
+ targetCompatibility '1.8'
+ options.encoding = 'UTF-8'
+ }
+ }
+ })
+
// apply default manifest
- gradle.taskGraph.whenReady( { graph ->
+ gradle.taskGraph.whenReady({ graph ->
tasks.withType(Jar).each { jar ->
jar.doFirst {
manifest {
attributes(
- "Manifest-Version" : "1.0",
- "Created-By" : System.getProperty("user.name"),
- "Title" : rootProject.name,
- "Version" : version,
- "Organization" : productOrg
+ "Manifest-Version": "1.0",
+ "Created-By": System.getProperty("user.name"),
+ "Title": rootProject.name,
+ "Version": version,
+ "Organization": productOrg
)
}
@@ -64,10 +64,10 @@ subprojects {
description 'a dependency that is provided externally at runtime'
visible true
}
-
+
testOutput {
extendsFrom testCompile
- description 'a dependency that exposes test artifacts'
+ description 'a dependency that exposes test artifacts'
}
}
@@ -79,7 +79,7 @@ subprojects {
}
}
- task jarTest (type: Jar, dependsOn: testClasses) {
+ task jarTest(type: Jar, dependsOn: testClasses) {
description 'Assembles a jar archive of test classes.'
from sourceSets.test.output
classifier 'test'
@@ -100,7 +100,7 @@ subprojects {
javadoc {
options.addStringOption('Xdoclint:none', '-quiet')
- options.encoding='UTF-8'
+ options.encoding = 'UTF-8'
}
}