You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Sebb (JIRA)" <ji...@apache.org> on 2012/08/18 03:21:38 UTC

[jira] [Resolved] (NET-426) FTPS: Hook to customize _openDataConnection_ SSLSocket before startHandshake() is called

     [ https://issues.apache.org/jira/browse/NET-426?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sebb resolved NET-426.
----------------------

       Resolution: Fixed
    Fix Version/s: 3.2

Thanks for the patch, implemented in:

URL: http://svn.apache.org/viewvc?rev=1374495&view=rev
Log:
NET-426 FTPS: Hook to customize _openDataConnection_ SSLSocket before startHandshake() is called
Properly interface with FTPClient.openDataConnection(String, String)

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

I changed the implementation of _openDataConnection_(int command, String arg) to directly call _openDataConnection_(String command, String arg) in the current class, as it seemed clearer than bouncing via the parent.
                
> FTPS: Hook to customize _openDataConnection_ SSLSocket before startHandshake() is called
> ----------------------------------------------------------------------------------------
>
>                 Key: NET-426
>                 URL: https://issues.apache.org/jira/browse/NET-426
>             Project: Commons Net
>          Issue Type: Bug
>          Components: FTP
>    Affects Versions: 3.0.1
>            Reporter: Ketan
>             Fix For: 3.2, 3.1
>
>         Attachments: FTPSClient.patch, FTPSClient.patch
>
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> Currently in FTPSClient class, there is protected _openDataConnection_ method, which create SSLSocket for data connection.  But there is no hook to customize the SSLSocket before startHandshake is called.  
> I need to know the remote host ip and port, which i can get for socket, and do custom setup to try to reuse SSL sessions from control connection socket.  Since the socket factory uses createSocket() method, I can't just use custom socket factory since I don't know the host and port.  I can't just override the _openDataConnection_() method in my class since that will call the startHandshake().  
> So it would be nice if you can provide hook, much like _connectAction_(), but for data connection before handshake is started.  You can pass the new data socket as argument to this hook method so one can get remote host and port information.  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira