The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Perl extension CGI::SecureState.

0.36
	- Unicode support!
	- New test for Unicode; requires Perl 5.8.0
	- Updates to POD about Unicode and threading support.
	- Minor updates to POD to fix mild inaccuracies.

---Old Releases-----------------------------------------------

0.35  Wednesday, January 1, 2003
	- README update to explain Perl 5.005_03 compatibility.
	- POD update to explain "recent memory" and to note that
	  the Anthill Bug Manager is now the official large example
	  of how to use CGI::SecureState.
	- Fixed some minor security concerns.  These were:
	  a) not including the remote IP address in the encryption
	  key, and b) only having around 80 bits of randomness in ID
	  generation instead of over 160.
	- Since fixing the security concerns changed the encryption
	  key, the binary format has changed Yet Again.  However, it
	  is now more compact and fixes problems with corner cases.
	- Added the clean_statedir() function to ease the purging
	  of old state files from directories.
	- Added some internal convenience functions (args_to_hash(),
	  stringify_recent_memory(), recover_recent_memory(),
	  generate_random_id()).
	- Added the memory_as() function to add recent memory to the
	  state_* functions.
	- Added user_param(), user_params(), and user_delete() for
	  interaction with "recent memory".
	- Added tests for "recent memory".
	- Addition of the "recent memory" concept that lets user-
	  specified parameters take precedence over parameters in
	  the state file.
	- Fixes for Perl 5.005_03.
	- Made new() check for ID tag in url_param (suggestion from
	  Hise Chapman (hise at nc.rr.com).


0.30  Sunday, June 23, 2002
	- Updated the README to reflect changes.
	- Updated the Makefile to spit out nasty warnings if
	  the user was upgrading from a version below 0.29.
	- Updated the Makefile to require Fcntl and File::Spec.
	- Rewrote the POD to reflect changes.
	- Changed test script to use Test::Harness properly.
	- Split test script into pieces with distinct functionalities.
	- Changed the Long-Filenames.t script to use File::Spec to
	  check for a distinction between upper and lowercase filenames.
	- Added lots of portability changes, so CGI::SecureState
	  should work on just about any system now.
	- Added extra_ and paranoid_ security options.
	- Added Symlink Detection support.
	- Added flock support.
	- Changed new() to make a mindset specification mandatory.
	- Changed new() to accept the hash-style argument listing.
	- Added mindsets.
	- Changed errormsg() to be able to deal with more errors.
	- Changed errormsg() to allow for a user error message
          subroutine.
	- Added remember() to save current parameters.
	- Added params() to return more than one CGI parameter at a time
	- Added state_param() to return a name-value pair so other
          scripts can use the same session.
	- Allowed add() to add more than one parameter at a time.
	- Changed encipher() to be able to update the timestamp
	  on the state file if not given anything to encrypt.
	- Changed functionality of encipher() and decipher() to only
	  do encryption and decryption, and added save_memory() and
	  recover_memory() functions to actually interact with the
	  list of parameters in the CGI object.
	- Rewrite of encipher() and decipher() to use reverse-CBC
	  encryption instead of ECB encryption.


0.26  Tuesday, May 29, 2001
	- Quick and dirty bugfix ($test variable not declared)

0.25  Monday, May 28, 2001
	- Changed e-mail address
	- Fixed Makefile problems
	- Added note about future versions of CGI::SecureState

0.24  Monday, March 26, 2001
	- Quick and dirty bugfix ($test variable not declared)

0.23  Thursday, March 22, 2001
	- Added Dave Stafford's binmode fix.  Hopefully, the code will
	  now work on Win32.
	- changed delete() to accept multiple arguments
	- fixed namespace intrusion
	  (CGI::SecureState::Devel::counter->CGI::SecureState::counter)
	- updated POD to reflect changes and fix misleading
	  CGI::SecureState::errormsg section
	- changed encipher() and decipher() to allow for single parameters
	  having more than one value
	- changed encipher() and decipher() to escape fewer characters,
	  resulting in smaller state files.
	- changed POD to reflect that I have tested the encryption and
	  decryption and am satisfied that it works.


0.22  Thursday, January 18, 2001
	- fixed test.pl spelling error (should be installed)->(should
	  not be installed) and changed it to test the new
	  capabilities of the encipher and decipher functions.
	- fixed POD to not include the blurb about rand() and time()
	  and also add a blurb about age and the update to encipher
          and decipher.
	- added age() method to return the time in days since the last
	  access of the state file
	- fixed encipher and decipher so that they now support binary
	  keys and values.
	- Changed README and POD to reflect that CGI::SecureState now
	  works with CGI.pm v2.74.
	- Changed test.pl to detect systems without case sensitivity.

0.21  Wednesday, January 10, 2001
	- fixed test.pl to work with newer versions of CGI.pm.
          New versions (i.e. 2.74) of CGI.pm don't assume command line
	  parameter entry.

0.20  Monday, January 2, 2001
	- first public release.