Hi,
I'm currently working on a small test application to simply send a file to an FTP server which uses explicit SSL. After a long struggle I was able to get connected, logged in, and the ability to do anything control related. Now, I'm faced with opening up a second socket for data to flow through and I'm not sure how to do that.
According to protocol with an explicit SSL ftp server you:
Control Socket:
1. Create standard socket and connect to host and port
2. Create SSL socket based on previous socket and send authentication SSL request
3. Handshake
4. Login
Data Socket:
???
I'm currently basing this off the Apache commons.net.ftp implementation, and I get stuck inside of _openDataConnection() in FTPClient.java.
socket = _socketFactory_.createSocket(__passiveHost, __passivePort);
Print outs reveal that __passiveHost and __passivePort are the correct numbers. Additionally, I can upload files using another program, so I know the server is not at fault. Also, I issued the "PROT P" command to protect the data channel.
When I hit the line above it gets stuck. Basically, what I'm asking is how to create a data socket off of an SSL control socket.
Thanks in advance,
-Bill