Path to this page:
Subject: CVS commit: pkgsrc/net/p5-Net-FTPSSL
From: Jens Rehsack
Date: 2010-03-10 18:06:17
Message id: 20100310170617.124DF175DF@cvs.netbsd.org
Log Message:
Updating net/p5-Net-FTPSSL from 0.04nb1 to 0.14
pkgsrc changes:
- Add license definition
- Adjust dependencies
Upstream changes:
0.14 2010/01/04 08:30:00
- Added minimum requirement of IO::Socket::SSL v1.08, since I just got word
that v0.97 caused Net-FTPSSL to hang! And v1.08 was the release I
originally developed Net::FTPSSL with & is easily available for Windows
users as a pre-built release. But that release is still pretty old.
(IO::Socket::SSL is currently at v1.31 as of this writting.)
- Fixed bug in _common_put() where it didn't actually test the final status
message when closing the data connection. So missed a rare failure case.
- Fixed similar bugs in list() & get() as well.
- Caught more list() & nlst() error conditions that returned undef instead of
the empty list as documented.
- Added the Server/Port to start of trace file after the version # since not
all servers returned this info in their log messagse.
0.13 2009/11/01 08:30:00
- Decided to skip unlucky release # 13!
0.12 2009/09/29 08:30:00
- Made some POD changes.
- Fixed so each class instance has it's own file hande so multiple instances
won't write to the log file of the last Net::FTPSSL->new() call made with
Debug turned on. Also fixed t/10-complex.t to use multiple connections so
we can manually verify this is finally corrected.
- Made sure the version of FTPSSL used always gets written out when Debug is
turned on. So removed this code from t/10-complex.t as no longer needed.
- Fixed "quit" to close the DebugLogFile, will write to STDERR if \
anything
else is improperly called after "quit" is called!
- Fixed "put" tie file handle problem from Tkt # 49378.
- Added mdtm() & mfmt() to follow FTP specs & exposed _mdtm() & \
_mfmt() in
the POD text, which uses timestamps instead. Per request # 49376. The
underscore versions are more user friendly.
- Added size() per request # 49377.
- Minor fixes to 10-complex.t to support new functionality.
- Reorged some older code to make it easier to maintain. Making some blocks
of code much smaller and less awkward.
- Fixed xput & xget to delete the dest file before renaming the scratch file.
Avoids rare file permission issues when the dest file already exists and the
file recognizer is down.
0.11 2009/07/19 08:30:00
- Added ccc() to end of 10-complex.t test script.
- Updated the ccc() docs on issues with older IO::Socket::SSL versions.
- Provided solution to Tkt # 47659, problems with CCC - RFC 4217 Section 12.3.
Where CCC behaves differently for different FTPS servers.
- Added Debug option to allow writing to DebugLogFile in append mode instead
of creating a new log file every time. So can use same log file when
serially making FTPS connections.
- Now allows overriding of the IMP_CRYPT port 990 to something else. Found a
server that allowed me to change the implicit port # for this. Tkt # 46851.
0.10 2009/06/30 08:30:00
- Updated the Port vs IMP_CRYPT documentation to state you can't override
port 990 for IMP_CRYPT. Where before this was just assumed.
- Added option DebugLogFile to allow you to write your Debug info to a
file of your choice instead of STDERR. This way multiple FTPS connections
can be traced separately of each other. Also keeps other writes to STDERR
separate.
0.09 2009/05/13 08:30:00
- Fixed some typos in the documentation.
- Fixed so list() & nlst() no longer return undef on some errors instead of
the empty list as documented.
- Fixed bug # 45710 where nlst() has issues returning zero rows.
- Fixed xput() so the scratch file is guaranteed to appear in the same
directory as the final file unless the prefix overrides it with a directory
of it's own. Fixes issue where the remote file wasn't being written to the
current directory on the remote server and we couldn't write to the current
directory on that server for the scratch file.
- Added xget() as the complement to xput(). Where the file recognizer is on
the client side.
- Added ccc() for finally supporting the CCC command. (Clear Command Channel)
- Improved get() logic for removing zero byte files if it can't download the
requested file. Still leaves behind partially downloaded files on purpose.
- Enhanced t/10-complex.t to test new functionality. (But not CCC due to
security concerns.)
- Added last_status_code() to return the 1 digit status returned by message()
so your code can branch on particular issues instead of just pass/fail.
0.08 2009/03/23 08:30:00
- Fixed new() to also accept a hash reference. So can do either way now!
Pass the hash by reference or pass the hash by value.
- Fixed command() & response() undefined function bug when called by a
socket data type in new() and a fatal error was encountered. Solved by
not calling the member function in the normal way.
- Added $Net::FTPSSL::ERRSTR to give you access to the error messages
generated when you couldn't create a Net::FTPSSL object via new(). Also
set when Croak is called even though you had the special perl variable $@
for this. It is also printed to STDERR when Debug is turned on.
- Fixed response() case where the ending message had CR's in it and it was
being truncated.
- Fixed response() to detect unexpected EOF: Bug # 43670.
- Now passes Timeout to start_SSL() calls in new().
- Added plain old FTP as option CLR_CRYPT. Just avoids encrypting the
command channel. Still doesn't support the CCC command.
- Fixed implicit problem. Turned out to be a bug in choosing the \
"default"
port as well as reading the response to soon. Bug # 28914.
- Exposed all the FTP CMD status constants for public use.
- Added unsupported option SSL_Advanced for Enhancement Request # 44042.
Use at your own risk! It's not supported by the developer of Net::FTPSSL.
- Enhanced t/10-complex.t to print the version of Net-FTPSSL being tested and
support/test the new functionality. Also now generates a backup copy of
the trace log named after the options selected to ease testing of multiple
configurations.
- Added xput for avoiding file recognizer issues on the FTPS server side
during file transfers. IE the file recognizer picks the file up before the
transfer completes. After the rename the file recognizer can safely assume
the file transfer has completed without issues.
- Added option in new() to support preserving the timestamps on files
transfered between the client & server via get(), put(), uput() & xput().
Works providing the FTPS server supports this functionality.
- Fixed response() timing bug where sysread() sometimes read the results of
multiple commands. Ex: the 150 INFO msg for opening the data connection and
the 226 transfer complete message. This bug caused FTPSSL to randomly hang
when connected to some servers.
- Fixed bug where nlst() hung if it returned zero rows on some servers.
- Removed total from list() since it wasn't always present for all servers
and it was the total block size, not the total # of files or bytes returned.
- Fixed list() & nlst() to allow wildcard filters similar to unix \
"ls" cmd.
The only wildcards being "*" or "?".
0.07 2009/02/24 08:30:00
- Corrected some typos in the documentation.
- Implemented call back functionality for all data channel functions.
- Fixed uput() to return the file name used on success instead of just
true/false. Will still return "undef" on failure. Needed in order to
figure out what the other server actually called the file we sent it.
- Exposed the DataProtLevel constants for public use.
- Added callback feature for all data channel FTP functions.
- Now uses caller() extensively to combine multiple similar functions together
and for callback support.
- Another fix to the get() bug introduced by the Bug 17537 fix. The previous
attempt in v0.06 didn't fully fix the problem! So took different approach.
- Enhanced t/10-complex.t & t/00-basic.t
The following changes may break some existing code ...
- Added new option 'Croak' to cause all failures to call croak() instead of
returning undef. This caused some minor incompatabilities on error handling
if your code depended on some old croak() calls. But the new code is now
consistant in error handling in either always returning failure or always
calling croak! It no longer does a combination of both.
- Added set_croak() to help mitigate above issue, by being able to turn the
croak feature on & off. t/10-complex.t uses this logic while initializing
the connection.
- user() & password() have been renamed since internal functions.
0.06 2009/02/03 08:30:00
- Added new() DataProtLevel option to allow selecting the Data Channel
Protection.
- Fixed _help() so supported() works for some new servers.
- new() now allows you to select SSL over TLS for connections via useSSL.
- Fixed get() bug that sometimes added extra \015 to ASCII files downloaded.
Introduced when Bug 17537 was fixed.
- Enhanced t/10-complex.t
0.05 2009/01/05 08:30:00
- Fixed resonse() to properly get the entire response instead of just the 1st
line of it. This change fixes many of the reported bugs reported against
this module.
- Fixed command() & response() to also log socket() calls in debug mode with
"SKT >>>" & "SKT <<<" prefixes.
- Added supported(), quot(), & _help()
- All response calls in new() are now tested & added debug flag to socket
object.
- Enhanced t/10-complex.t
- Other minor fixes.
- Bugs Fixed: 41665, 31720, 16751, 30359, 24136, 17537, 17538, 34818
Files: