I'm using CkFtp2 via the perl bindings to access multiple FTP sites without a problem. However, I've ran into a couple of sites that just timeout on calls to GetTextDirListing(), GetFile(), etc. GetCurrentRemoteDir() seems to work just fine. The two sites I have found so far with this issue have banners that show them as running "Pure-FTPd" and " vsFTPd 2.0.1". Any ideas what's going on here or how to fix it?
When a server indicates that it supports the Extended Passive Mode (EPSV) Chilkat will by default use the EPSV command, which is an extension of the FTP protocol created for the purpose of handling IPV6 and NATs. Unfortunately, a few versions of some FTP servers indicate that EPSV is supported, but do not properly handle the commands. In this case, it is required to explicitly tell Chilkat to NOT use EPSV, and instead use the older PASV command for establishing passive data connections. The CkFtp2.UseEpsv property can be set to False (0) to prevent EPSV from being used in these situations, and it solves the problem above.