Author: sebb
Date: Sun Mar 13 00:33:59 2011
New Revision: 1081024

URL: http://svn.apache.org/viewvc?rev=1081024&view=rev
Log:
NET-354 FTPSClient not properly supporting CCC and PROT P.

Modified:
    commons/proper/net/trunk/src/changes/changes.xml
    
commons/proper/net/trunk/src/main/java/org/apache/commons/net/ftp/FTPSClient.java

Modified: commons/proper/net/trunk/src/changes/changes.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/net/trunk/src/changes/changes.xml?rev=1081024&r1=1081023&r2=1081024&view=diff
==============================================================================
--- commons/proper/net/trunk/src/changes/changes.xml (original)
+++ commons/proper/net/trunk/src/changes/changes.xml Sun Mar 13 00:33:59 2011
@@ -57,6 +57,9 @@ The <action> type attribute can be add,u
 
     <body>
         <release version="3.0" date="TBA" description="TBA">
+            <action issue="NET-354" dev="sebb" type="fix" due-to="Leif John 
Korshavn">
+            FTPSClient not properly supporting CCC and PROT P.
+            </action>
             <action issue="NET-368" dev="sebb" type="update">
             Threader.thread should accept an Iterable rather than a List.
             </action>

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=1081024&r1=1081023&r2=1081024&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
 Sun Mar 13 00:33:59 2011
@@ -233,7 +233,7 @@ public class FTPSClient extends FTPClien
         String ip = _socket_.getInetAddress().getHostAddress();
         int port = _socket_.getPort();
         SSLSocket socket =
-            (SSLSocket) ssf.createSocket(_socket_, ip, port, true);
+            (SSLSocket) ssf.createSocket(_socket_, ip, port, false);
         socket.setEnableSessionCreation(isCreation);
         socket.setUseClientMode(isClientMode);
         // server mode
@@ -476,6 +476,7 @@ public class FTPSClient extends FTPClien
         /* If CCC is issued, restore socket i/o streams to unsecured versions 
*/
         if (FTPSCommand._commands[FTPSCommand.CCC].equals(command)) {
             if (FTPReply.COMMAND_OK == repCode) {
+                _socket_.close();
                 _socket_ = plainSocket;
                 _controlInput_ = new BufferedReader(
                     new InputStreamReader(
@@ -483,7 +484,6 @@ public class FTPSClient extends FTPClien
                 _controlOutput_ = new BufferedWriter(
                     new OutputStreamWriter(
                         _socket_.getOutputStream(), getControlEncoding()));
-                setSocketFactory(null);
             } else {
                 throw new SSLException(getReplyString());
             }


Reply via email to