Hello,
We are integrating Rebex FTP/SSL component into our application, StockSubmitter.
This component is awesome, best of all managed FTP/SSL components I've seen so far.
FTP uploads to all the microstock agencies work just fine, except one.
Veer's FTP server is using explicit SSL, and is working in any FTP/SSL compatible client, but I couldn't get it to work with Rebex FTP/SSL component.
I am using following code (actually, I am using async version, but it shouldn't make any difference):
ftp.Connect('upload.veer.com', 21, null, FtpSecurity.Explicit);
ftp.Login('login', 'password');
...
Following code does not matter, since it fails on Connect().
I found out what problem is Veer's FTP closing connection silently for some reason after following dialog:
[2012-03-05 18:04:12] [upload.veer.com] State changed from Disconnected to Connecting
[2012-03-05 18:04:12] [upload.veer.com] State changed from Connecting to Reading
[2012-03-05 18:04:13] [upload.veer.com] Response read: 220 Veer
[2012-03-05 18:04:13] [upload.veer.com] State changed from Reading to Ready
[2012-03-05 18:04:13] [upload.veer.com] State changed from Ready to Sending
[2012-03-05 18:04:13] [upload.veer.com] Command sent: AUTH TLS
[2012-03-05 18:04:13] [upload.veer.com] State changed from Sending to Reading
[2012-03-05 18:04:13] [upload.veer.com] Response read: 234 AUTH command ok. Expecting TLS Negotiation.
[2012-03-05 18:04:13] [upload.veer.com] State changed from Reading to Ready
[2012-03-05 18:04:13] [upload.veer.com] State changed from Ready to Disconnected
Exception with message "Secure connection was closed by the remote connection end." is being thrown during Connect().
TlsDebug() is called twice, both for Connection: Control, first is state change to Negotiating, next is state change to Closed.
It seems the problem is on server side, but FileZilla and other clients work correctly. So there should be some workaround to make this FTP working properly.
At the moment, this issue is only one stopping us from buying full version of the component and removing integration with libcurl we used previously.
If anyone seen same issues and knows how to work around it, please tell me how :)