You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by dv...@apache.org on 2011/12/01 01:13:33 UTC
svn commit: r1208903 - in /camel/trunk/components/camel-ftp/src:
main/java/org/apache/camel/component/file/remote/
test/java/org/apache/camel/component/file/remote/
Author: dvaleri
Date: Thu Dec 1 00:13:30 2011
New Revision: 1208903
URL: http://svn.apache.org/viewvc?rev=1208903&view=rev
Log:
[CAMEL-4720] Add support for Camel JSSE Configuration Util to FTPS component.
Added:
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthAndSSLContextParametersTest.java (with props)
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthAndSSLContextParametersTest.java (with props)
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthAndSSLContextParametersTest.java (with props)
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthAndSSLContextParametersTest.java (with props)
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthAndSSLContextParametersTest.java (with props)
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthAndSSLContextParametersTest.java (with props)
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthAndSSLContextParametersTest.java (with props)
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthAndSSLContextParametersTest.java (with props)
Modified:
camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpsEndpoint.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthTest.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthTest.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthTest.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthTest.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthTest.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthTest.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthTest.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthTest.java
Modified: camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpsEndpoint.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpsEndpoint.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpsEndpoint.java (original)
+++ camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpsEndpoint.java Thu Dec 1 00:13:30 2011
@@ -22,10 +22,13 @@ import java.security.KeyStore;
import java.util.Map;
import javax.net.ssl.KeyManagerFactory;
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLSocket;
import javax.net.ssl.TrustManagerFactory;
import org.apache.camel.util.IOHelper;
import org.apache.camel.util.IntrospectionSupport;
+import org.apache.camel.util.jsse.SSLContextParameters;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPClientConfig;
import org.apache.commons.net.ftp.FTPFile;
@@ -40,6 +43,7 @@ public class FtpsEndpoint extends FtpEnd
protected Map<String, Object> ftpClientKeyStoreParameters;
protected Map<String, Object> ftpClientTrustStoreParameters;
+ protected SSLContextParameters sslContextParameters;
public FtpsEndpoint() {
super();
@@ -58,54 +62,75 @@ public class FtpsEndpoint extends FtpEnd
* Create the FTPS client.
*/
protected FTPClient createFtpClient() throws Exception {
- FTPSClient client = new FTPSClient(getFtpsConfiguration().getSecurityProtocol(),
- getFtpsConfiguration().isImplicit());
+ FTPSClient client = null;
- if (ftpClientKeyStoreParameters != null) {
- String type = (ftpClientKeyStoreParameters.containsKey("type"))
- ? (String) ftpClientKeyStoreParameters.get("type") : KeyStore.getDefaultType();
- String file = (String) ftpClientKeyStoreParameters.get("file");
- String password = (String) ftpClientKeyStoreParameters.get("password");
- String algorithm = (ftpClientKeyStoreParameters.containsKey("algorithm"))
- ? (String) ftpClientKeyStoreParameters.get("algorithm")
- : KeyManagerFactory.getDefaultAlgorithm();
- String keyPassword = (String) ftpClientKeyStoreParameters.get("keyPassword");
+ if (sslContextParameters != null) {
+ SSLContext context = sslContextParameters.createSSLContext();
+
+ client = new FTPSClient(getFtpsConfiguration().isImplicit(), context);
+
+ // The FTPSClient tries to manage the following SSLSocket related configuration options
+ // on its own based on internal configuration options. FTPSClient does not lend itself
+ // to subclassing for the purpose of overriding this behavior (private methods, fields, etc.).
+ // As such, we create a socket (preconfigured by SSLContextParameters) from the context
+ // we gave to FTPSClient and then setup FTPSClient to reuse the already configured configuration
+ // from the socket for all future sockets it creates. Not sexy and a little brittle, but it works.
+ SSLSocket socket = (SSLSocket)context.getSocketFactory().createSocket();
+ client.setEnabledCipherSuites(socket.getEnabledCipherSuites());
+ client.setEnabledProtocols(socket.getEnabledProtocols());
+ client.setNeedClientAuth(socket.getNeedClientAuth());
+ client.setWantClientAuth(socket.getWantClientAuth());
+ client.setEnabledSessionCreation(socket.getEnableSessionCreation());
+ } else {
+ client = new FTPSClient(getFtpsConfiguration().getSecurityProtocol(),
+ getFtpsConfiguration().isImplicit());
- KeyStore keyStore = KeyStore.getInstance(type);
- FileInputStream keyStoreFileInputStream = new FileInputStream(new File(file));
- try {
- keyStore.load(keyStoreFileInputStream, password.toCharArray());
- } finally {
- IOHelper.close(keyStoreFileInputStream, "keyStore", log);
+ if (ftpClientKeyStoreParameters != null) {
+ String type = (ftpClientKeyStoreParameters.containsKey("type"))
+ ? (String) ftpClientKeyStoreParameters.get("type") : KeyStore.getDefaultType();
+ String file = (String) ftpClientKeyStoreParameters.get("file");
+ String password = (String) ftpClientKeyStoreParameters.get("password");
+ String algorithm = (ftpClientKeyStoreParameters.containsKey("algorithm"))
+ ? (String) ftpClientKeyStoreParameters.get("algorithm")
+ : KeyManagerFactory.getDefaultAlgorithm();
+ String keyPassword = (String) ftpClientKeyStoreParameters.get("keyPassword");
+
+ KeyStore keyStore = KeyStore.getInstance(type);
+ FileInputStream keyStoreFileInputStream = new FileInputStream(new File(file));
+ try {
+ keyStore.load(keyStoreFileInputStream, password.toCharArray());
+ } finally {
+ IOHelper.close(keyStoreFileInputStream, "keyStore", log);
+ }
+
+ KeyManagerFactory keyMgrFactory = KeyManagerFactory.getInstance(algorithm);
+ keyMgrFactory.init(keyStore, keyPassword.toCharArray());
+ client.setNeedClientAuth(true);
+ client.setKeyManager(keyMgrFactory.getKeyManagers()[0]);
}
-
- KeyManagerFactory keyMgrFactory = KeyManagerFactory.getInstance(algorithm);
- keyMgrFactory.init(keyStore, keyPassword.toCharArray());
- client.setNeedClientAuth(true);
- client.setKeyManager(keyMgrFactory.getKeyManagers()[0]);
- }
-
- if (ftpClientTrustStoreParameters != null) {
- String type = (ftpClientTrustStoreParameters.containsKey("type"))
- ? (String) ftpClientTrustStoreParameters.get("type") : KeyStore.getDefaultType();
- String file = (String) ftpClientTrustStoreParameters.get("file");
- String password = (String) ftpClientTrustStoreParameters.get("password");
- String algorithm = (ftpClientTrustStoreParameters.containsKey("algorithm"))
- ? (String) ftpClientTrustStoreParameters.get("algorithm")
- : TrustManagerFactory.getDefaultAlgorithm();
-
- KeyStore trustStore = KeyStore.getInstance(type);
- FileInputStream trustStoreFileInputStream = new FileInputStream(new File(file));
- try {
- trustStore.load(trustStoreFileInputStream, password.toCharArray());
- } finally {
- IOHelper.close(trustStoreFileInputStream, "trustStore", log);
+
+ if (ftpClientTrustStoreParameters != null) {
+ String type = (ftpClientTrustStoreParameters.containsKey("type"))
+ ? (String) ftpClientTrustStoreParameters.get("type") : KeyStore.getDefaultType();
+ String file = (String) ftpClientTrustStoreParameters.get("file");
+ String password = (String) ftpClientTrustStoreParameters.get("password");
+ String algorithm = (ftpClientTrustStoreParameters.containsKey("algorithm"))
+ ? (String) ftpClientTrustStoreParameters.get("algorithm")
+ : TrustManagerFactory.getDefaultAlgorithm();
+
+ KeyStore trustStore = KeyStore.getInstance(type);
+ FileInputStream trustStoreFileInputStream = new FileInputStream(new File(file));
+ try {
+ trustStore.load(trustStoreFileInputStream, password.toCharArray());
+ } finally {
+ IOHelper.close(trustStoreFileInputStream, "trustStore", log);
+ }
+
+ TrustManagerFactory trustMgrFactory = TrustManagerFactory.getInstance(algorithm);
+ trustMgrFactory.init(trustStore);
+
+ client.setTrustManager(trustMgrFactory.getTrustManagers()[0]);
}
-
- TrustManagerFactory trustMgrFactory = TrustManagerFactory.getInstance(algorithm);
- trustMgrFactory.init(trustStore);
-
- client.setTrustManager(trustMgrFactory.getTrustManagers()[0]);
}
return client;
@@ -198,4 +223,20 @@ public class FtpsEndpoint extends FtpEnd
this.ftpClientTrustStoreParameters = param;
}
+ /**
+ * Gets the JSSE configuration that overrides any settings in {@link FtpsEndpoint#ftpClientKeyStoreParameters},
+ * {@link #ftpClientTrustStoreParameters}, and {@link FtpsConfiguration#getSecurityProtocol()}.
+ */
+ public SSLContextParameters getSslContextParameters() {
+ return sslContextParameters;
+ }
+
+ /**
+ * Gets the JSSE configuration that overrides any settings in {@link FtpsEndpoint#ftpClientKeyStoreParameters},
+ * {@link #ftpClientTrustStoreParameters}, and {@link FtpsConfiguration#getSecurityProtocol()}.
+ */
+ public void setSslContextParameters(SSLContextParameters sslContextParameters) {
+ this.sslContextParameters = sslContextParameters;
+ }
+
}
\ No newline at end of file
Added: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthAndSSLContextParametersTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthAndSSLContextParametersTest.java?rev=1208903&view=auto
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthAndSSLContextParametersTest.java (added)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthAndSSLContextParametersTest.java Thu Dec 1 00:13:30 2011
@@ -0,0 +1,38 @@
+package org.apache.camel.component.file.remote;
+
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.util.jsse.KeyManagersParameters;
+import org.apache.camel.util.jsse.KeyStoreParameters;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.apache.camel.util.jsse.TrustManagersParameters;
+
+public class FileToFtpsExplicitSSLWithClientAuthAndSSLContextParametersTest extends FileToFtpsExplicitSSLWithClientAuthTest {
+
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setResource("server.jks");
+ ksp.setPassword("password");
+
+ KeyManagersParameters kmp = new KeyManagersParameters();
+ kmp.setKeyPassword("password");
+ kmp.setKeyStore(ksp);
+
+ TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setKeyStore(ksp);
+
+ SSLContextParameters sslContextParameters = new SSLContextParameters();
+ sslContextParameters.setSecureSocketProtocol("SSL");
+ sslContextParameters.setKeyManagers(kmp);
+ sslContextParameters.setTrustManagers(tmp);
+
+ JndiRegistry registry = super.createRegistry();
+ registry.bind("sslContextParameters", sslContextParameters);
+ return registry;
+ }
+
+ protected String getFtpUrl() {
+ return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ + "&isImplicit=false&sslContextParameters=#sslContextParameters&delete=true";
+ }
+}
Propchange: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthAndSSLContextParametersTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthTest.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithClientAuthTest.java Thu Dec 1 00:13:30 2011
@@ -27,7 +27,7 @@ import org.junit.Test;
*/
public class FileToFtpsExplicitSSLWithClientAuthTest extends FtpsServerExplicitSSLWithClientAuthTestSupport {
- private String getFtpUrl() {
+ protected String getFtpUrl() {
return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ "&securityProtocol=SSL&isImplicit=false&ftpClient.keyStore.file=./src/test/resources/server.jks&ftpClient.keyStore.type=JKS"
+ "&ftpClient.keyStore.algorithm=SunX509&ftpClient.keyStore.password=password&ftpClient.keyStore.keyPassword=password&delete=true";
Added: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthAndSSLContextParametersTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthAndSSLContextParametersTest.java?rev=1208903&view=auto
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthAndSSLContextParametersTest.java (added)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthAndSSLContextParametersTest.java Thu Dec 1 00:13:30 2011
@@ -0,0 +1,32 @@
+package org.apache.camel.component.file.remote;
+
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.util.jsse.KeyStoreParameters;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.apache.camel.util.jsse.TrustManagersParameters;
+
+public class FileToFtpsExplicitSSLWithoutClientAuthAndSSLContextParametersTest extends FileToFtpsExplicitSSLWithoutClientAuthTest {
+
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setResource("server.jks");
+ ksp.setPassword("password");
+
+ TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setKeyStore(ksp);
+
+ SSLContextParameters sslContextParameters = new SSLContextParameters();
+ sslContextParameters.setSecureSocketProtocol("SSL");
+ sslContextParameters.setTrustManagers(tmp);
+
+ JndiRegistry registry = super.createRegistry();
+ registry.bind("sslContextParameters", sslContextParameters);
+ return registry;
+ }
+
+ protected String getFtpUrl() {
+ return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ + "&isImplicit=false&sslContextParameters=#sslContextParameters&delete=true";
+ }
+}
Propchange: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthAndSSLContextParametersTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthTest.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitSSLWithoutClientAuthTest.java Thu Dec 1 00:13:30 2011
@@ -27,7 +27,7 @@ import org.junit.Test;
*/
public class FileToFtpsExplicitSSLWithoutClientAuthTest extends FtpsServerExplicitSSLWithoutClientAuthTestSupport {
- private String getFtpUrl() {
+ protected String getFtpUrl() {
return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true&delete=true"
+ "&securityProtocol=SSL&isImplicit=false";
}
Added: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthAndSSLContextParametersTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthAndSSLContextParametersTest.java?rev=1208903&view=auto
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthAndSSLContextParametersTest.java (added)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthAndSSLContextParametersTest.java Thu Dec 1 00:13:30 2011
@@ -0,0 +1,37 @@
+package org.apache.camel.component.file.remote;
+
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.util.jsse.KeyManagersParameters;
+import org.apache.camel.util.jsse.KeyStoreParameters;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.apache.camel.util.jsse.TrustManagersParameters;
+
+public class FileToFtpsExplicitTLSWithClientAuthAndSSLContextParametersTest extends FileToFtpsExplicitTLSWithClientAuthTest {
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setResource("server.jks");
+ ksp.setPassword("password");
+
+ KeyManagersParameters kmp = new KeyManagersParameters();
+ kmp.setKeyPassword("password");
+ kmp.setKeyStore(ksp);
+
+ TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setKeyStore(ksp);
+
+ SSLContextParameters sslContextParameters = new SSLContextParameters();
+ sslContextParameters.setSecureSocketProtocol("TLS");
+ sslContextParameters.setKeyManagers(kmp);
+ sslContextParameters.setTrustManagers(tmp);
+
+ JndiRegistry registry = super.createRegistry();
+ registry.bind("sslContextParameters", sslContextParameters);
+ return registry;
+ }
+
+ protected String getFtpUrl() {
+ return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ + "&isImplicit=false&sslContextParameters=#sslContextParameters&delete=true";
+ }
+}
Propchange: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthAndSSLContextParametersTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthTest.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithClientAuthTest.java Thu Dec 1 00:13:30 2011
@@ -27,7 +27,7 @@ import org.junit.Test;
*/
public class FileToFtpsExplicitTLSWithClientAuthTest extends FtpsServerExplicitTLSWithClientAuthTestSupport {
- private String getFtpUrl() {
+ protected String getFtpUrl() {
return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ "&securityProtocol=TLS&isImplicit=false&ftpClient.keyStore.file=./src/test/resources/server.jks&ftpClient.keyStore.type=JKS"
+ "&ftpClient.keyStore.algorithm=SunX509&ftpClient.keyStore.password=password&ftpClient.keyStore.keyPassword=password&delete=true";
Added: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthAndSSLContextParametersTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthAndSSLContextParametersTest.java?rev=1208903&view=auto
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthAndSSLContextParametersTest.java (added)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthAndSSLContextParametersTest.java Thu Dec 1 00:13:30 2011
@@ -0,0 +1,31 @@
+package org.apache.camel.component.file.remote;
+
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.util.jsse.KeyStoreParameters;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.apache.camel.util.jsse.TrustManagersParameters;
+
+public class FileToFtpsExplicitTLSWithoutClientAuthAndSSLContextParametersTest extends FileToFtpsExplicitTLSWithoutClientAuthTest {
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setResource("server.jks");
+ ksp.setPassword("password");
+
+ TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setKeyStore(ksp);
+
+ SSLContextParameters sslContextParameters = new SSLContextParameters();
+ sslContextParameters.setSecureSocketProtocol("TLS");
+ sslContextParameters.setTrustManagers(tmp);
+
+ JndiRegistry registry = super.createRegistry();
+ registry.bind("sslContextParameters", sslContextParameters);
+ return registry;
+ }
+
+ protected String getFtpUrl() {
+ return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ + "&isImplicit=false&sslContextParameters=#sslContextParameters&delete=true";
+ }
+}
Propchange: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthAndSSLContextParametersTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthTest.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsExplicitTLSWithoutClientAuthTest.java Thu Dec 1 00:13:30 2011
@@ -27,7 +27,7 @@ import org.junit.Test;
*/
public class FileToFtpsExplicitTLSWithoutClientAuthTest extends FtpsServerExplicitTLSWithoutClientAuthTestSupport {
- private String getFtpUrl() {
+ protected String getFtpUrl() {
return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ "&securityProtocol=TLS&isImplicit=false&delete=true";
}
Added: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthAndSSLContextParametersTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthAndSSLContextParametersTest.java?rev=1208903&view=auto
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthAndSSLContextParametersTest.java (added)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthAndSSLContextParametersTest.java Thu Dec 1 00:13:30 2011
@@ -0,0 +1,37 @@
+package org.apache.camel.component.file.remote;
+
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.util.jsse.KeyManagersParameters;
+import org.apache.camel.util.jsse.KeyStoreParameters;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.apache.camel.util.jsse.TrustManagersParameters;
+
+public class FileToFtpsImplicitSSLWithClientAuthAndSSLContextParametersTest extends FileToFtpsImplicitSSLWithClientAuthTest {
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setResource("server.jks");
+ ksp.setPassword("password");
+
+ KeyManagersParameters kmp = new KeyManagersParameters();
+ kmp.setKeyPassword("password");
+ kmp.setKeyStore(ksp);
+
+ TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setKeyStore(ksp);
+
+ SSLContextParameters sslContextParameters = new SSLContextParameters();
+ sslContextParameters.setSecureSocketProtocol("SSL");
+ sslContextParameters.setKeyManagers(kmp);
+ sslContextParameters.setTrustManagers(tmp);
+
+ JndiRegistry registry = super.createRegistry();
+ registry.bind("sslContextParameters", sslContextParameters);
+ return registry;
+ }
+
+ protected String getFtpUrl() {
+ return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ + "&isImplicit=true&sslContextParameters=#sslContextParameters&delete=true";
+ }
+}
Propchange: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthAndSSLContextParametersTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthTest.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithClientAuthTest.java Thu Dec 1 00:13:30 2011
@@ -27,7 +27,7 @@ import org.junit.Test;
*/
public class FileToFtpsImplicitSSLWithClientAuthTest extends FtpsServerImplicitSSLWithClientAuthTestSupport {
- private String getFtpUrl() {
+ protected String getFtpUrl() {
return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ "&securityProtocol=SSL&isImplicit=true&ftpClient.keyStore.file=./src/test/resources/server.jks&ftpClient.keyStore.type=JKS"
+ "&ftpClient.keyStore.algorithm=SunX509&ftpClient.keyStore.password=password&ftpClient.keyStore.keyPassword=password&delete=true";
Added: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthAndSSLContextParametersTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthAndSSLContextParametersTest.java?rev=1208903&view=auto
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthAndSSLContextParametersTest.java (added)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthAndSSLContextParametersTest.java Thu Dec 1 00:13:30 2011
@@ -0,0 +1,31 @@
+package org.apache.camel.component.file.remote;
+
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.util.jsse.KeyStoreParameters;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.apache.camel.util.jsse.TrustManagersParameters;
+
+public class FileToFtpsImplicitSSLWithoutClientAuthAndSSLContextParametersTest extends FileToFtpsImplicitSSLWithoutClientAuthTest {
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setResource("server.jks");
+ ksp.setPassword("password");
+
+ TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setKeyStore(ksp);
+
+ SSLContextParameters sslContextParameters = new SSLContextParameters();
+ sslContextParameters.setSecureSocketProtocol("SSL");
+ sslContextParameters.setTrustManagers(tmp);
+
+ JndiRegistry registry = super.createRegistry();
+ registry.bind("sslContextParameters", sslContextParameters);
+ return registry;
+ }
+
+ protected String getFtpUrl() {
+ return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ + "&isImplicit=true&sslContextParameters=#sslContextParameters&delete=true";
+ }
+}
Propchange: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthAndSSLContextParametersTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthTest.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitSSLWithoutClientAuthTest.java Thu Dec 1 00:13:30 2011
@@ -27,7 +27,7 @@ import org.junit.Test;
*/
public class FileToFtpsImplicitSSLWithoutClientAuthTest extends FtpsServerImplicitSSLWithoutClientAuthTestSupport {
- private String getFtpUrl() {
+ protected String getFtpUrl() {
return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ "&securityProtocol=SSL&isImplicit=true&delete=true";
}
Added: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthAndSSLContextParametersTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthAndSSLContextParametersTest.java?rev=1208903&view=auto
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthAndSSLContextParametersTest.java (added)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthAndSSLContextParametersTest.java Thu Dec 1 00:13:30 2011
@@ -0,0 +1,37 @@
+package org.apache.camel.component.file.remote;
+
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.util.jsse.KeyManagersParameters;
+import org.apache.camel.util.jsse.KeyStoreParameters;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.apache.camel.util.jsse.TrustManagersParameters;
+
+public class FileToFtpsImplicitTLSWithClientAuthAndSSLContextParametersTest extends FileToFtpsImplicitTLSWithClientAuthTest {
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setResource("server.jks");
+ ksp.setPassword("password");
+
+ KeyManagersParameters kmp = new KeyManagersParameters();
+ kmp.setKeyPassword("password");
+ kmp.setKeyStore(ksp);
+
+ TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setKeyStore(ksp);
+
+ SSLContextParameters sslContextParameters = new SSLContextParameters();
+ sslContextParameters.setSecureSocketProtocol("TLS");
+ sslContextParameters.setKeyManagers(kmp);
+ sslContextParameters.setTrustManagers(tmp);
+
+ JndiRegistry registry = super.createRegistry();
+ registry.bind("sslContextParameters", sslContextParameters);
+ return registry;
+ }
+
+ protected String getFtpUrl() {
+ return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ + "&isImplicit=true&sslContextParameters=#sslContextParameters&delete=true";
+ }
+}
Propchange: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthAndSSLContextParametersTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthTest.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithClientAuthTest.java Thu Dec 1 00:13:30 2011
@@ -27,7 +27,7 @@ import org.junit.Test;
*/
public class FileToFtpsImplicitTLSWithClientAuthTest extends FtpsServerImplicitTLSWithClientAuthTestSupport {
- private String getFtpUrl() {
+ protected String getFtpUrl() {
return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ "&securityProtocol=TLS&isImplicit=true&ftpClient.keyStore.file=./src/test/resources/server.jks&ftpClient.keyStore.type=JKS"
+ "&ftpClient.keyStore.algorithm=SunX509&ftpClient.keyStore.password=password&ftpClient.keyStore.keyPassword=password&delete=true";
Added: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthAndSSLContextParametersTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthAndSSLContextParametersTest.java?rev=1208903&view=auto
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthAndSSLContextParametersTest.java (added)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthAndSSLContextParametersTest.java Thu Dec 1 00:13:30 2011
@@ -0,0 +1,31 @@
+package org.apache.camel.component.file.remote;
+
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.util.jsse.KeyStoreParameters;
+import org.apache.camel.util.jsse.SSLContextParameters;
+import org.apache.camel.util.jsse.TrustManagersParameters;
+
+public class FileToFtpsImplicitTLSWithoutClientAuthAndSSLContextParametersTest extends FileToFtpsImplicitTLSWithoutClientAuthTest {
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setResource("server.jks");
+ ksp.setPassword("password");
+
+ TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setKeyStore(ksp);
+
+ SSLContextParameters sslContextParameters = new SSLContextParameters();
+ sslContextParameters.setSecureSocketProtocol("TLS");
+ sslContextParameters.setTrustManagers(tmp);
+
+ JndiRegistry registry = super.createRegistry();
+ registry.bind("sslContextParameters", sslContextParameters);
+ return registry;
+ }
+
+ protected String getFtpUrl() {
+ return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ + "&isImplicit=true&sslContextParameters=#sslContextParameters&delete=true";
+ }
+}
Propchange: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthAndSSLContextParametersTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthTest.java?rev=1208903&r1=1208902&r2=1208903&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FileToFtpsImplicitTLSWithoutClientAuthTest.java Thu Dec 1 00:13:30 2011
@@ -27,7 +27,7 @@ import org.junit.Test;
*/
public class FileToFtpsImplicitTLSWithoutClientAuthTest extends FtpsServerImplicitTLSWithoutClientAuthTestSupport {
- private String getFtpUrl() {
+ protected String getFtpUrl() {
return "ftps://admin@localhost:" + getPort() + "/tmp2/camel?password=admin&consumer.initialDelay=2000&disableSecureDataChannelDefaults=true"
+ "&securityProtocol=TLS&isImplicit=true&delete=true";
}