Net-FTPSSL version 0.10
=======================

Net::FTPSSL is an object oriented Perl module which implements a simple
FTPS client over a Secure Socket Layer (SSL) or Transport Layer Security (TLS)
connection written following the directives described in RFC959 and RFC2228


INSTALLATION

To install this module type the following:

   perl Makefile.PL
   make
   make test
   make install


TESTING

If you perform the "deeper test", it will generate a few log files to
help with troubleshooting what is going on.  Debug is always turned on for
this test and written to a log file.  All log files match the pattern "*_new.*".
The 3 main generated files are:
   ./t/test_trace_log_new.txt    - The FTPSSL Debug log of all FTPSSL actions
   ./t/FTPSSL.pm_new.txt         - Test ascii file downloaded
   ./t/test_file_new.tar.gz      - Test binary file downloaded.

   - Another custom trace log is created that is named after some of your
   - responses to the questions.  This allows for easy comparisons between the
   - responses of different servers using different options.  Without having to
   - remember to save a copy of the original file yourself.

   ./t/test_trace_log_new.${server}-${cmd_channel_encrpt_mode}-${data_encrypt_mode}-${ssl_tls_mode}.txt


During installation, you should only have to run the test once to verify
functionality.  The need for extra tests are for when you need to troubleshoot
specific FTPS servers that are having issues with this class.  Since some FTPS
servers take unexpected liberties with resolving ambiguities in the
specifications.  And of course there can be bugs in this code as well.


TROUBLESHOOTING

While support is very limited, a copy of the log file showing the problem
generated by the test would be needed to help analyze what went wrong with
talking to your particular FTPS server.

The desired log file is called:
     ./t/test_trace_log_new.txt
           or
     ./t/test_trace_log_new.*.txt

If these tests pass and it's your program that's failing, then I'd need a copy
of a simple test program to demonstrate the error with Debug turned on and it's
corresponding trace log.  You can turn it on with the following command:
        Net::FTPSSL->new(server, ..., Debug => 1, DebugLogFile => "myLog.txt");

Just be aware that a particular FTPS command may fail if your FTPS server
doesn't support that command or if your login doesn't have enough permissions
to perform the desired command on the FTPS server.

If you are submitting a patch for consideration, please also provide the above
trace file in case I can't duplicate the issue against the FTPS servers I have
available to me for testing.


DEPENDENCIES

This module requires these other modules and libraries:

 Net::SSLeay
 IO::Socket::SSL
 File::Basename
 Time::Local
 Sys::Hostname
 File::Copy


COPYRIGHT AND LICENCE

Copyright (C) 2005 by Marco Dalla Stella
Copyright (C) 2009 by Curtis Leach

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.8.6 or,
at your option, any later version of Perl 5 you may have available.

