Nathan Wild 3 Posted April 8, 2020 I am trying to upload files to an FTP server that uses explicit TLS. I have the connection working just fine in WinSCP with the encryption set to "TLS/SSL Explicit encryption". I am not sure how to accomplish this using ICS or Indy components (both appear to support this). Either I'm missing something or there does not appear to be very much in the comprehensive documentation department for ICS. If anyone here has experience with the ICS TsslFTPClient component can give me a nudge in the right direction it would be much appreciated. Share this post Link to post
Angus Robertson 574 Posted April 8, 2020 Build the OverbyteIcsXferTst.dpr sample which uses the OverbyteIcsFtpMulti, the sample has a simple menu with the various secure FTP options. Angus Share this post Link to post
Nathan Wild 3 Posted April 8, 2020 8 hours ago, Angus Robertson said: Build the OverbyteIcsXferTst.dpr sample which uses the OverbyteIcsFtpMulti, the sample has a simple menu with the various secure FTP options. Angus Thanks very much for the suggestion. This demo application does not appear to be in the samples provided with ICS? There is an FtpDemos\OverbyteIcsFtpMulti and SslInternet\OverbyteIcsSslFtpTst... The latter seems to be what I'm after, I just don't know what to tell it do. I am able to connect, but I'm getting and error like '500 Illegal PORT command.' or '522 Data connections must be encrypted.' (active and passive mode respectively). Share this post Link to post
Angus Robertson 574 Posted April 8, 2020 You are probably using an old version of ICS, Samples\Delphi\SslInternet\OverbyteIcsXferTst.dpr was added about a year ago. OverbyteIcsFtpMultipartDownload is something totally different, no use to you. Angus Share this post Link to post
Nathan Wild 3 Posted April 8, 2020 5 hours ago, Angus Robertson said: You are probably using an old version of ICS, Samples\Delphi\SslInternet\OverbyteIcsXferTst.dpr was added about a year ago. OverbyteIcsFtpMultipartDownload is something totally different, no use to you. Angus Interesting... I grabbed it right from the site yesterday and it was version 858. I see there is a version 864 there that I somehow managed to miss. I will look into this sample application and let you know how I fare. Thank you so much! Share this post Link to post
Nathan Wild 3 Posted April 8, 2020 Progress... With a little fiddling, the sample application will log on succesfully! Still can not transmit files though. I am getting a PORT command error. 17:06:42:299 > PORT 192,168,0,108,218,81 17:06:42:351 < 500 Illegal PORT command. 17:06:42:352 Upload Failed: 500 Illegal PORT command. Share this post Link to post
Angus Robertson 574 Posted April 9, 2020 The only web page kept up to date with downloads is: http://wiki.overbyte.eu/wiki/index.php/ICS_Download Can not diagnose anything from a one line error, but this mostly happens when you are NAT routers with public and local IP addresses. You should be using Passive mode to avoid this if you using TLS then passive mode should be forced, so not sure what you doing without more of the log. Angus Share this post Link to post
Fr0sT.Brutal 900 Posted April 10, 2020 On 4/9/2020 at 10:33 AM, Angus Robertson said: this mostly happens when you are NAT routers with public and local IP addresses Sure, he has 192.168.* which is local network address. Share this post Link to post
Nathan Wild 3 Posted April 13, 2020 Update: I was able to get the OverbyteIcsXferTst aplication working and have implemented the mechanics of it in my own application. It build fine and seems to be correct but I'm getting an exception due to missing libeay32.dll. I understand this is part of the SSL layer and I'm sure I can find this DLL somewhere. What I am curious about is why their test application runs without this error and mine won't? Thought I would reply here in case someone with more Overbyte experience can chime in, Thanks to everyone who has offered assistance so far. Share this post Link to post
Nathan Wild 3 Posted April 13, 2020 Hmm... It looks like it is using the libss1-1_1.dll supplied with ICS... I was l expecting it to require libeay32. All good now, thanks to everyone who helped out. 1 Share this post Link to post
Angus Robertson 574 Posted April 14, 2020 libeay32.dll and ssleay.dll were used by obsolete versions of OpenSSL, support ceased for those versions at the end of last year, so they have been removed from the ICS distribution. But we;'ll leave support for the old version in ICS itself for nine more months, until OpenSSL 3.0 is released and supported by ICS, which will be libss1-3_0.dll, etc. None of this relates to the PORT problem you reported. Angus Share this post Link to post