Changes for version 0.18 - 2011-07-29
- More fixes/clarifications to the POD text.
- Fixed minor wild card issue with LIST & NLST if "+" was in the file name.
- Added LocalAddr option to new(). Works against both the command channel and the data channel.
- Added restart() function to be compatable with Net::FTP for restarts.
- Added ability to restart downloads/get() where previous attempt left off.
- Added ability to restart uploads/put() where the previous attempt left off.
- Added append() command [APPE], it also uses OFFSET, but doesn't send the REST command to the server.
- Masks out the user name used when generating a log file. Similar to how this is already done for the password. Except it must also hide it in the response to USER & PASS. Only masked when written to the log, message() and last_message() still returns the user name unmasked in any response string!
- Fixed a bug in t/10-complex.t and added optional environment variables for some of the connection values to make it easier for me to quickly rerun tests during development without having to key in ansers to questions with no good default values over & over again.
- Added SSL_Client_Certificate to support client certificates on the data channel as well as the command channel. Bug ID: 69327.
- Depreciated SSL_Advanced in favor of SSL_Client_Certificate. SSL_Advanced is now just an alias for SSL_Client_Certificate for backwards compatibility. I just feel the new name better describes what we are trying to do with it now that this feature is supported.
- Wrote t/20-certificate.t to test this out. But this & t/10-complex.t are probably incompatable in most settings. Anyone else trying to use this test case will have to modify this code to point to their certificate and provide it's password, since I'm not going to publish my test client certificate.
- Calls to command() now return a reference to this class so that you can code something like: "if ($ftps->command("NOOP")->response() == CMD_OK)". This should be compatible since it shouldn't be called externally, and you should always be calling response() afterwards anyway. It still calls die if "Croak=>1" is used. Response() will return CMD_ERROR should command() have issues to avoid hangs.
- Modifed Net::FTPSSL to use the new command()->response() format internally.
- Net::FTPSSL - A FTP over SSL/TLS class