================================
Version 1.88 -- Tue Dec 10, 2002

WARNING: SessionData files will need to be re-generated if switching to
      this release from previous releases.
Code to attempt to deal with "Acct-Delay-Time" entries.
      (Reported by Simon Byrnand).
Made a better error report when the database file doesn't exist.

================================
Version 1.86 -- Wed Nov 27, 2002

Added the "--secsconv-limit" option to limit the length that the conversion
      of seconds to human-readable format is done.
      (Funded by Polar Communications, thanks)
Added help description for "-s" to say that 0 can be used to not produce
      user subdirectories.

================================
Version 1.84 -- Mon Sep 16, 2002

Added code for forcing the use of gdbm in stdreport, just like in
      raddetail.  This works around issues where anydbm seems to be broken.
      (reported by Jon Bebeau)

================================
Version 1.83 -- Mon Aug 13, 2002

Converting additional integer conversions to strings to fix large value
      errors in raw report.  (Reported by Rico Abarintos)
Fixed a traceback because of a too large value in the raw report format.
      (Reported by Rico Abarintos)

================================
Version 1.80 -- Mon May 20, 2002

Changed the dbm.error to usedbm.error.  Prevents problems on some
platforms where dbm is not being used.  (Reported by Ed Orosz)

================================
Version 1.79 -- Fri Dec 21, 2001

Fixed a traceback in stdreport where the CSVs couldn't be generated if
      certain values were >2billion.  (Reported by Chuck Mills)

================================
Version 1.78 -- Fri Dec 14, 2001

Ugh, fixed a bug in option names in raddetail/stdreport.
Added a "latestlist" which will generate an "index-lru.html" file based on
      the SessionData database.  This lists all the users in the database
      sorted by the ones that have logged in the longest ago.
      (Funded by iLogistix)
Added a "loginlist" which will generate an "index-lastlogins.html" file
      which is a list of all logins, in reverse chronological order, of the
      last 7 days of logins.
      (Funded by iLogistix)
Above two reports also generate CSV output.
Fixed a bug if a value larger than 2 billion was in the detail file.
      (Reported by Chuck Mills)

================================
Version 1.76 -- Tue Oct 23, 2001

Fixed a bug where directory split (-s) option set to 0 would cause errors.
Added code to make the errors generated when a directory doesn't exist or
      isn't writable for the reports more obvious than a traceback.
Wow, looks like Windows doesn't include "gdbm" or "dbm".  So, I changed it
      from falling back to "dbm" to falling back to "anydbm".  Thanks to
      Razvan for reporting this.

================================
Version 1.75 -- Fri Oct 12, 2001

BUGFIX: Wrong number of params in genhtml mods for caller-id.
Ignore dbm.errors when inserting the sessionData.  The dbm module seems to
      be buggy, so we'll use it if we can.  If we can't, we'll just plod
      along.

================================
Version 1.74 -- Fri Oct 12, 2001

Added caller-id information to HTML report (Suggested by multiple).
Switching to fall back to dbm if gdbm isn't available.
Updating copyright notice dates.

================================
Version 1.73 -- Tue Sep 21, 2001

Forcing shelve to use gdbm.  This works around the problem where the
      regular berkeley ndbm files were eventually generating an "Error".
      (Funded by Egyptian Internet)
      (Fix suggested by Rob Riggs)

================================
Version 1.72 -- Tue Jun 12, 2001

Added code to discard everything but "Stop" records.
      Shouldn't make much of a difference, unless your non-stop records
      include a "session length" record.
      Submitted by Stewart MacLund.

================================
Version 1.71 -- Fri Oct 13, 2000

Added a section to the README on the supported RADIUS servers.
Added README.FORMAT which describes the input format used by radiusContext
      (basicly just the standard "detail" format written by most Unix
      RADIUS servers).
Giving a non-existant directory with "-D" provides a more useful message.
      (reported by Nicolai Brown)
BUGFIX: Changed online counter to be a long, though it appears that bogus
      data is causing this huge online time (over 60 years).
      (reported by Nicolai Brown)

================================
Version 1.70 -- Sun Oct 1, 2000

BUGFIX: Empty values in detail file would case a traceback.  Reported
      by David L Robinson.
Changed the header of genhtmlascend with patch sent by Matthew S. Hallacy.
Full list of ascend termination reasons (very verbose though), thanks
      to.  Reported by Matthew S. Hallacy.
Added a "QUICK START" section on README.

================================
Version 1.64 -- Tue Apr 4, 2000

BUGFIX: Invalid termination reasons in Ascend code were causing traceback.
      Was catching wrong exception.  Reported by Matthew S. Hallacy.
Map an empty termination reason to "Unknown" so it can be distintushed
      from "User-Request".  Reported by Matthew S. Hallacy.

================================
Version 1.63 -- Tue Mar 28, 2000

Added "htmlascend" output format which is an HTML-format output with extended
      Ascend results.  Based on a patch by Matthew S. Hallacy.
BUGFIX: Initial split index line may be duplicated.

================================
Version 1.62 -- Sat Mar  4, 2000

Testing by J.P. Racine found syntax error.  Thanks.
Code review of raddetail, found that in some instances the last record of a
      file may not be processed.
Moved processing of record into function, call it when exiting to make sure
      all records are processed.  Note that if you have an incomplete
      record at the end, this will ALSO get processed.

================================
Version 1.60 -- Thu Feb  3, 2000

Changed date parser so it can deal with upper-case month names (Reported by
      Mike Smith)

================================
Version 1.59 -- Tue Dec 28, 1999

Rename user-name "index" to "index(user)" to prevent conflict with index files.
      (Reported by Ben Kohn, Triton Technologies Inc.)
Drop records with "Service-Type" of "NAS-Prompt-User"
      (Reported by Rob Walker <rob at valinux.com>)
Multiple stop records occuring with the same user name and time-stamp are
      now allowed (as long as they have different "Acct-Session-ID"s).

================================
Version 1.56 -- Sun Jun 21, 1999

The split code can be disabled by specifying a split of 0.  This will return
      to the old functionality.
Split HTML index into smaller indexes if "-s" is greater than 0.
      (Funded by Ben Kohn, Triton Technologies Inc.)
stdreport can limit reports generated to one or more users with '-u'.
      (Funded by Ben Kohn, Triton Technologies Inc.)
When no Acct-Terminate-Cause is found, Ascend-Disconnect-Cause is checked.
      (Funded by Ben Kohn, Triton Technologies Inc.)
Added stdreport '--split-num' to specify number of characters in second-level
      sirectory names.
BUGFIX: If specifying a report directory, HTML links to individual records
      were broken.
BUGFIX: When a very large negative number is passed to bytesToStr(), it was
      causing a traceback.  (reported by Ben Kohn)

===============================
Version 1.54 -- Tue Jun 1, 1999

Reports are now split into sub-directories based on first character.  Should
      help for users with 10 to 100K users (Reported by Ben Kohn).
BUGFIX: If user-name had a '/' in it, report generation would fail.  Translate
        '/' to '_'.
BUGFIX: If no records in session database, stdreport would generate traceback.
        Now generate warning message and exit.  (Reported by Jon Marler)

================================
Version 1.52 -- Wed Apr 28, 1999

Added generic regex-based date parser.
Now parses detail files using Ascend date format (17-04-1999 23:58:19).

================================
Version 1.51

BUG: RADIUS detail files with empty user-names would cause "stdreport" to
   die.  While this probably isn't a good detail file, it's not good for
   radiusContext to do this either.  (Thanks to Paul Frieden for sending
   a detail file which demonstrated this).
Found another overflow condition in gencsv -- fixed.
I'm no longer going to follow the convention of keeping "production" releases
   at "X.Y0".

================================
Version 1.50 -- Fri Jun 26, 1998

BUG: Last users (lexically) information was not being properly closed and
   written.  (Thanks to Marco Colombo)
BUG: "Generated by" message was getting written to user file twice in
   some situations and causing exceptions in others (Thanks to Marco Colombo)
Generators can now be specified on the command-line.

================================
Version 1.40 -- Wed Jun 24, 1998

Added CSV (comma seperated value) output format.
HTML format now includes <BODY> and </BODY> tags. (Thanks to Hannes Faestermann)
Some sample companion scripts donated by Richard A. Soderberg

================================
Version 1.30 -- Sat Jun 13, 1998

Now works with MERIT log files as well as Livingston.  The "raddetail"
   program notices the missing Timestamp field in the MERIT log and
   generates it based on the ctime()-like time format.
   (Thanks to Richard A. Soderberg for a sample log).

================================
Version 1.20 -- Sat May  2, 1998

Tabs removed from documentation.  Bad documentation, BAD!
Documentation fixes.
Fixed overflow exception for users with >2GB data sent/received.
  (Reported by Cyril Slobin while I was working on it -- end of month report
  time! :-)
