Subject: CVS commit: pkgsrc/net/p5-Net-FTPSSL
From: Makoto Fujiwara
Date: 2016-08-01 14:47:49
Message id: 20160801124749.DC47AFBB5@cvs.NetBSD.org

Log Message:
Updated net/p5-Net-FTPSSL 0.26 to 0.33
--------------------------------------
0.33 2016/07/06 08:30:00
  - BEHAVIOUR CHANGE - Since many openssl libraries are tightening their
    security, I'm adding a new option to preserve backwards compatibility.
    By default this module now reuses the context of the command channel
    when opening a data channel.  If you need to revert back to the previous
    default of not reusing the context for data channels, you must now use
    option "DisableContext => 1" to do so.  But hopefully the need \ 
for this
    option will be rare.  See the POD for more details.
  - BEHAVIOUR CHANGE - Added support for SNI in the SSL handshake.
  - Changed logic on how to detect if a default "SSL_verify_mode" \ 
value needed
    to be set to VERIFY_NONE() for the caller in new().
  - Can now pass SSL options directly to new().  You no longer need to use the
    "SSL_Client_Certificate" option to pass the hash reference of SSL \ 
options.
    Currently only recognises IO::Socket::SSL options that start with SSL_.
    If any start with something else, I'll address in a future release.
  - Clarified some POD information on a few methods.
  - Enhanced "size" function to use STAT if SIZE wasn't available!
  - Fixed case where sometimes the login account used wasn't being masked in
    the response in the logs.
  - Now prints the INET version in the log file.
  - Resets $ERRSTR gets reset in new() in case previous call had errors!
  - Fixed t/10-complex.t func run_stat_test() to test the "is_file" \ 
& "is_dir()"
    functions.  Some tests disable the "SIZE" command so it can test \ 
the new
    alternate size logic as well.
  - New test program t/05-simple.t that does a simple read only test against
    the FTPS server.  Added so that you can run a simple test against servers
    you don't want to upload anything to during the tests.  These tests are
    not as robust as the t/10-complex.t tests so failures here are not as
    meaningfull.  So run t/10-complex if you encounter any issues for more
    analysis.
  - Added t/05-simple.t to the MANIFEST.
  - Updated the Copyright in the README file.  And reworded a few sections.
  - Updated all t/*.t files to add a retry the 1st time they try to connect
    to a server via new().  Added a hard coded "SSL_cipher_list" value if
    the defaults don't work.  This kludge might not work for everyone.
  - Modified t/20-certificate.t to be a bit more robust.
  NOTE: Found a server where supported() doesn't completely work.  That server
        fails to put a "*" after some of the commands it didn't implement.

0.32 2016/06/14 08:30:00
  - Clarified some POD information on a few methods.
  - Bug ID: 115296 - Changed the use_ssl test when providing custom SSL_Version
    settings via the SSL_Client_Certificate option.  Now does a positive test
    for SSL instead of a negative test.
  - Modified t/10-complex.t to do a better uput test.  Put into its own test
    function so that I could also validate the filename returned instead of just
    assuming it was correct!
  - Added additional test cases for files with spaces in their names.
  - Added run_stat_test() for future tests for "is_..." functions.

0.31 2016/03/30 08:30:00
  - Updated the Copyright.
  - Fixed issue where "uput" cmd generated "Invalid number of \ 
parameters" error.
    Fix is to call STOU a 2nd time with no file name.  But if this happens and
    the server doesn't return the file name, uput now returns "?" \ 
instead of
    making what it knows is a very flawed guess! (since it doesn't use the hint)
  - Implemented mdtm() server bug fix.  Some rare servers do (19xxx) instead of
    (20xx) for the year part of the timestamp returned.  So implemented
    autodetection & fix for this server issue!
  - Added undocumented Debug value to supress printing out the HELP information
    during login.  It got in the way of debugging via add-hock perl scripts.
  - Added is_file() to validate if the given name is a regular file!
  - Added is_dir() to validate if the given name is a directory!
  - Fixed bug in t/10-complex.t that made it look like "make test" \ 
succeeded
    when in fact it encountered a fatal error forcing it to skip over all the
    other deeper tests.  Affected call to config func: check_for_pasv_issue()
  - Fixed some undef warnings in "uput() test" in t/10-complex.t when \ 
talking
    to buggy windows FTPS servers that says it supports "uput" but \ 
handles it
    really strangely or not at all.  Now also handles new "?" return \ 
value in
    the strange case.
  - Fixed bug in t/10-complex.t in test_log_redirection() failing a EPSV test
    when the destination server didn't support this functionality.
  - Modified t/10-complex.t to print the "OK" results to the log file.
    Makes it a bit easier to associate failures to what's in the log file!
  - Fixed some typoes in the POD.

0.30 2015/08/13 08:30:00
  - INCOMPATIBILITY WARNING!  If you've been hacking internal undocumented
    variables referenced by my module, your code is most likely broken with this
    release!  If you've been doing "$ftps = new (...);  $x = \ 
${*$ftps}{abc};",
    it's now "$x = ${*$ftps}{_FTPSSL_arguments}->{abc};" for a lot \ 
of them.
    This change was made to make it less likely I'll accidentaly step on a
    IO::Socket::SSL variable in a future release of either module.  It also
    helps me with error log traces & some future plans if they ever happen.
  - Changed t/00-basic.t so it no longer needs to call uc().  Also now uses
    __PACKAGE__ keyword instead of hard coded text.
  - Fixed error message bug in _get_data_channel().  Got SSL_version from wrong
    hash.
  - Reorganized the order of some functions in the POD.
  - Fixed minor bug in the masking of the user id when writing to a log file!
  - Looks like the sysread() call in response() is sometimes spurriously setting
    the special variable "$!" for Perl 5.10.1 on AIX 7.1.  So if the \ 
command
    looks complete I'm going to ignore the error message returned in "$!".
    I'm probably going to have to figure out a better test for this later on!
  ######
  - EXPERIMENTAL: Added 2 new functions set_dc_from_hash() and copy_cc_to_dc().
    They provide two different ways to micro manage the SSL options used to
    manage the Data Channel without the need to hack the code base.  There are
    more SSL options than I know what to do with so hopefully this will help
    with managing the data channel.

0.29 2015/07/06 08:30:00
  - Fixed typo that broke reuse session.  Bug was overwriting key value!
  - Fixed uc() warning in t/00-basic.t for Perl 12 & above.

0.28 2015/07/01 08:30:00
  - Updated README file with info on how to turn on SSL tracing so that I can
    more easily find that information again.
  - Fixed log display issue if there was no username and/or password passed
    to login().
  - In quot() fixed pattern match bug when setting $cmd2.  (\S* to \S+)
  - Added LICENSE file to my package (+ Manifest).   Kwaltiee Experimental # 3.
  - Rewrote Makefile.PL to support optional parameters so I could add
    conditional Kwaltiee Score variables.
  - Added MIN_PERL_VERSION tag to Makefile.PL   Extra Kwaltiee Metric # 1.
    Enforced Ver. 5.6.1, since that is the earliest perl my module was tested
    against by the smoke testers.  But it was last tested that way with v0.11.
    Version 5.8.8 is the oldest version of Perl I test against regularly.
  - Added LICENSE tag to Makefile.PL            Extra Kwaltiee Metric # 2.
  - Added Net::SSLeay as a fake dependancy to Makefile.PL & as a test case in
    t/00-basic.t for the benifit of some Smoke Testers who fail my module due
    to this indirect dependancy not working.  I don't use this module, but it's
    obviously a dependancy of IO::Socket::SSL.  But it looks like it might
    not be a declared dependancy since it's failing to load for a smoke tester
    while he's testing my module.
  - Fixed _print_LOG() to support multiple arguments.  So no longer have to
    concatinate everything before using.
  - Rewrote _debug_print_hash() to be able to handle hashes of any depth.
    It's now recursive with infinite loop detection.
  - Added logic to support reusing the session instead of just the context.
    This is via the new option "ReuseSession=>1".
    Thanks Forrest Tiffany for your patch!  (Bug Ids 76108 & 105507)

0.27 2015/03/28 08:30:00
  - Fixed Bug Id # 102680.  Bad "supported" test in xput/xtransfer with
    regard to OverrideHELP=>1.  (All other OverrideHELP options worked fine.)
  - Added "all_supported()" to assist fixing the above bug & put \ 
into the POD.
  - Some minor POD corrections.
  - Added check to quot("HELP") to see if HELP was overriden.  Required
    a minor change in new() to support this logic.  We know help is broken if
    OverrideHELP was used!
  - Added the INTERPRETING THE LOGS section in the POD text.

Files:
RevisionActionfile
1.17modifypkgsrc/net/p5-Net-FTPSSL/Makefile
1.6modifypkgsrc/net/p5-Net-FTPSSL/distinfo