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()); }