You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Leif John Korshavn (JIRA)" <ji...@apache.org> on 2011/05/05 08:23:03 UTC
[jira] [Commented] (NET-354) FTPSClient not properly supporting CCC
and PROT P
[ https://issues.apache.org/jira/browse/NET-354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13029161#comment-13029161 ]
Leif John Korshavn commented on NET-354:
----------------------------------------
Finally I got a download from GlobalScape. I have installed their EFT Server 6.3.0 for trial on Windows. I have been able to reproduce Ericks result, and I have some interesting observations:
Apache FTPS client (rel 2.2) implicit mode -> CCC OK
Apache FTPS client (rel 2.2) explicit mode -> CCC OK
Apache FTPS client (3.0-SNAPSHOT) implicit mode -> CCC FAILS!
Apache FTPS client (3.0-SNAPSHOT) explicit mode -> CCC FAILS!
So this means that Erick indeed has discovered some new behaviour introduced in the current snapshot (i.e. my patch). It also applies to explicit mode. I will investigate further.
> FTPSClient not properly supporting CCC and PROT P
> -------------------------------------------------
>
> Key: NET-354
> URL: https://issues.apache.org/jira/browse/NET-354
> Project: Commons Net
> Issue Type: Bug
> Components: FTP
> Affects Versions: 2.2
> Environment: Applies to all environments
> Reporter: Leif John Korshavn
> Fix For: 3.0
>
> Attachments: CCCTester.java, CCC_bugs_in_FTPSClient.patch
>
>
> FTPSClient does not behave properly after issuing CCC (Clear Command Channel). Proper behaviour is to close SSLSocket, but keep underlying connection without SSL open.
> To achieve this, the SSLSocket should be created with "false", like this on line 255 (of FTPSClient v2.2)
> SSLSocket socket =
> (SSLSocket) ssf.createSocket(_socket_, ip, port, false);
> Furthermore, on sendCommand CCC, sslSocket must be closed before setting _socket = _plainsocket on line 493:
> _socket.close();
> _socket = _plainsocket;
> ...
> And finally, it is wrong to set socket factory to null on line 500 of the same method; this is set properly in exexPROT and should not be reset on CCC.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira