Author: sebb
Date: Thu Mar 17 02:54:39 2011
New Revision: 1082385
URL: http://svn.apache.org/viewvc?rev=1082385&view=rev
Log:
Add default port. General tidyup.
Modified:
commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPSClient.java
Modified:
commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPSClient.java
URL:
http://svn.apache.org/viewvc/commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPSClient.java?rev=1082385&r1=1082384&r2=1082385&view=diff
==============================================================================
---
commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPSClient.java
(original)
+++
commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPSClient.java
Thu Mar 17 02:54:39 2011
@@ -23,8 +23,6 @@ import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.Socket;
-import java.security.NoSuchAlgorithmException;
-
import javax.net.ssl.KeyManager;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLException;
@@ -43,6 +41,16 @@ import org.apache.commons.net.util.SSLCo
*/
public class FTPSClient extends FTPClient {
+// From http://www.iana.org/assignments/port-numbers
+
+// ftps-data 989/tcp ftp protocol, data, over TLS/SSL
+// ftps-data 989/udp ftp protocol, data, over TLS/SSL
+// ftps 990/tcp ftp protocol, control, over TLS/SSL
+// ftps 990/udp ftp protocol, control, over TLS/SSL
+
+ public static final int DEFAULT_FTPS_DATA_PORT = 989;
+ public static final int DEFAULT_FTPS_PORT = 990;
+
/** The value that I can set in PROT command (C = Clear, P = Protected) */
private static final String[] PROT_COMMAND_VALUE = {"C","E","S","P"};
/** Default PROT Command */
@@ -73,54 +81,48 @@ public class FTPSClient extends FTPClien
/** The protocol versions */
private String[] protocols = null;
- /** The FTPS {@link TrustManager} implementation. */
- private TrustManager trustManager = new FTPSTrustManager();
+ /** The FTPS {@link TrustManager} implementation, default null (i.e. use
system default). */
+ private TrustManager trustManager = null;
- /** The {@link KeyManager} */
- private KeyManager keyManager;
+ /** The {@link KeyManager}, default null (i.e. use system default). */
+ private KeyManager keyManager = null;
/**
* Constructor for FTPSClient.
* Sets security mode to explicit (isImplicit = false)
- * @throws NoSuchAlgorithmException A requested cryptographic algorithm
* is not available in the environment.
*/
- public FTPSClient() throws NoSuchAlgorithmException {
- this.protocol = DEFAULT_PROTOCOL;
- this.isImplicit = false;
+ public FTPSClient() {
+ this(DEFAULT_PROTOCOL, false);
}
/**
* Constructor for FTPSClient.
* @param isImplicit The security mode (Implicit/Explicit).
- * @throws NoSuchAlgorithmException A requested cryptographic algorithm
* is not available in the environment.
*/
- public FTPSClient(boolean isImplicit) throws NoSuchAlgorithmException {
- this.protocol = DEFAULT_PROTOCOL;
- this.isImplicit = isImplicit;
+ public FTPSClient(boolean isImplicit) {
+ this(DEFAULT_PROTOCOL, isImplicit);
}
/**
* Constructor for FTPSClient.
* @param protocol the protocol
- * @throws NoSuchAlgorithmException A requested cryptographic algorithm
* is not available in the environment.
*/
- public FTPSClient(String protocol) throws NoSuchAlgorithmException {
- this.protocol = protocol;
- this.isImplicit = false;
+ public FTPSClient(String protocol) {
+ this(protocol, false);
}
/**
* Constructor for FTPSClient.
* @param protocol the protocol
* @param isImplicit The security mode(Implicit/Explicit).
- * @throws NoSuchAlgorithmException A requested cryptographic algorithm
* is not available in the environment.
*/
- public FTPSClient(String protocol, boolean isImplicit)
- throws NoSuchAlgorithmException {
+ public FTPSClient(String protocol, boolean isImplicit) {
+ super();
+ setDefaultPort(DEFAULT_FTPS_PORT);
this.protocol = protocol;
this.isImplicit = isImplicit;
}
@@ -131,9 +133,8 @@ public class FTPSClient extends FTPClien
* @param context A pre-configured SSL Context
*/
public FTPSClient(boolean isImplicit, SSLContext context) {
- this.isImplicit = isImplicit;
+ this(DEFAULT_PROTOCOL, isImplicit);
this.context = context;
- this.protocol = DEFAULT_PROTOCOL;
}
/**
@@ -255,6 +256,7 @@ public class FTPSClient extends FTPClien
* Set a {@link KeyManager} to use
*
* @param keyManager The KeyManager implementation to set.
+ * @see org.apache.commons.net.util.KeyManagerUtils
*/
public void setKeyManager(KeyManager keyManager) {
this.keyManager = keyManager;
@@ -532,6 +534,7 @@ public class FTPSClient extends FTPClien
* Override the default {@link TrustManager} to use.
*
* @param trustManager The TrustManager implementation to set.
+ * @see org.apache.commons.net.util.TrustManagerUtils
*/
public void setTrustManager(TrustManager trustManager) {
this.trustManager = trustManager;