doc/NEWS.html
changeset 0 6f7a81934006
child 2 b3afb9f1e801
equal deleted inserted replaced
-1:000000000000 0:6f7a81934006
       
     1 <html>
       
     2 <head>
       
     3 <title>Release History</title>
       
     4 <body>
       
     5 <center><h1>Release History</h1></center>
       
     6 <hr>
       
     7 <h2>Changes in version 0.96.9</h2>
       
     8 <p>
       
     9 New Features:
       
    10 <ul>
       
    11 <li>vdeluser now has an option to prevent it from deleting users with a
       
    12   mailbox.
       
    13 <li>All the Python CGI code has been dropped.  A stand-alone vpyadmin
       
    14   package (to be release very shortly) will replace the Python CGIs.
       
    15   Between this new interface and the PHP code, the C++ CGIs are
       
    16   depricated and will be removed in a future version, unless somebody
       
    17   violently objects.
       
    18 <p>
       
    19 </ul>
       
    20 Internal Changes:
       
    21 <ul>
       
    22 <li>Cleaned up the vpwtable API.
       
    23 <li>New CLI documentation generator, should help keep the man pages and
       
    24   the programs in sync.
       
    25 <li>Major overhaul to the Python library.
       
    26 <p>
       
    27 </ul>
       
    28 Bug Fixes:
       
    29 <ul>
       
    30 <li>Fixed error handling in vdeliver to properly handle file-system quota
       
    31   errors.
       
    32 <li>Fixed a bug in the Courier IMAP authentication module that prevented
       
    33   non-virtual users from authenticating.
       
    34 <li>The daemon now exits immediately if a SIGALRM or SIGPIPE is caught,
       
    35   instead of completing the action.
       
    36 <li>Fixed a bug in autodetecting Python.  It should now work with any
       
    37   version of make.
       
    38 </ul>
       
    39 <hr>
       
    40 <h2>Changes in version 0.96.8</h2>
       
    41 <p>
       
    42 New Features:
       
    43 <ul>
       
    44 <li>Added a quota checking program for use in vdeliver-predeliver.
       
    45 <li>The authvmailmgr Courier-IMAP auth module now executes
       
    46   authvmailmgr-presetuid and authvmailmgr-postsetuid before and after
       
    47   executing the setuid respectively, just like checkvpw.
       
    48 <p>
       
    49 </ul>
       
    50 Internal Changes:
       
    51 <ul>
       
    52 <li>The daemon lookup command now returns all of the virtual user data,
       
    53   not just the mailbox and forwarding.
       
    54 <p>
       
    55 </ul>
       
    56 Bug Fixes:
       
    57 <ul>
       
    58 <li>Fixed a typo in the vmailmgrd run script.
       
    59 <li>Fixed a bug in the daemon that would cause actions to be applied to
       
    60   the default virtual user if the named virtual user did not exist.
       
    61 <li>Fixed a bug in the daemon that would allow disabled autoresponders to
       
    62   be written to.
       
    63 <li>Fixed a bug in the subprogram execution code that would cause the
       
    64   wrong exit status to be returned.
       
    65 <li>vdeliver now rewinds standard input before executing postdeliver.
       
    66 <li>The autoresponse daemon command will now read the disabled
       
    67   autoresponse file if the enabled one does not exist.
       
    68 <li>Fixed note on setting up a domain in the HOWTO.
       
    69 <li>Fixed a bug in the fdbuf library.
       
    70 </ul>
       
    71 <hr>
       
    72 <h2>Changes in version 0.96.7</h2>
       
    73 <p>
       
    74 New Features:
       
    75 <ul>
       
    76 <li>Contains configure-time switchable support for GDBM virtual user tables.
       
    77 <li>Added a new utility, vpasswd2db, to convert a plain text password
       
    78   table into whatever vpwtable format is configured.  This utility will
       
    79   be much slower than vpasswd2cdb for CDB files (for now), so only use
       
    80   it for other (ie GDBM) formats.
       
    81 <p>
       
    82 </ul>
       
    83 Internal Changes:
       
    84 <ul>
       
    85 <li>Updated PHP code.
       
    86 <li>The daemon now relies on ucspi-unix to handle connections and forking
       
    87   instead of doing it internally.
       
    88 <li>The autoresponse is written into a new subdirectory of the virtual
       
    89   user's mailbox directory.  This makes it work better with the
       
    90   autoresponder, which requires a directory to store temporary files in.
       
    91 <li>Reorganized the vpwtable code somewhat.
       
    92 <p>
       
    93 </ul>
       
    94 Bug Fixes:
       
    95 <ul>
       
    96 <li>The daemon now initializes its random number generator each time it
       
    97   handles a command, which should make it generate different salts for
       
    98   password hashes.
       
    99 <li>The python subdirectory no longer requires GNU make to build, and
       
   100   should no longer build at all if Python cannot be located.
       
   101 </ul>
       
   102 <hr>
       
   103 <h2>Changes in version 0.96.6</h2>
       
   104 <p>
       
   105 New Features:
       
   106 <ul>
       
   107 <li>Added autoresponse command to daemon, modified from code submitted by
       
   108   Mike Bell.  This allows the user to upload a autoresponse file to
       
   109   their virtual mailbox, to be used by an autoresponder (not included).
       
   110 <li>Added autoresponse CGI written in Python, as well as updated Python
       
   111   library code.
       
   112 <li>Updated PHP code from Mike Bell.
       
   113 <li>Replaced the FAQ and HOWTO documents with the revised ones by Dan
       
   114   Kuykendall.
       
   115 <p>
       
   116 </ul>
       
   117 Internal Changes:
       
   118 <ul>
       
   119 <li>The necessary parts of the Courier IMAP "authlib" library is now
       
   120   included in this package.  The Courier IMAP authentication module is
       
   121   now always built.
       
   122 <li>The Courier IMAP module is now part of the standard RPM.
       
   123 <p>
       
   124 </ul>
       
   125 Bug Fixes:
       
   126 <ul>
       
   127 <li>Fixed a problem with converting from old records that didn't set the
       
   128   virtual user flags properly.
       
   129 <li>Fixed a problem with the virtual user creation time field not being
       
   130   set properly.
       
   131 <li>Fixed a bug in vdeliver that would cause any error from the predeliver
       
   132   script to be treated as a temporary failure.
       
   133 <li>Fixed a bug in the domain name lookup code that caused case sensitive
       
   134   domain name comparisons.
       
   135 </ul>
       
   136 <hr>
       
   137 <h2>Changes in version 0.96.5</h2>
       
   138 <p>
       
   139 New Features:
       
   140 <ul>
       
   141 <li>Mailbox delivery can be temporarily disabled on a per-virtual-user
       
   142   basis, through either the CGIs, command-line tools, or PHP, without
       
   143   deleting the mailbox.
       
   144 <li>Account expiry is handled by the authentication tools and by vdeliver.
       
   145 <p>
       
   146 </ul>
       
   147 Internal Changes:
       
   148 <ul>
       
   149 <li>The binary record format has changed to handle the new boolean flags.
       
   150   Note that this new format is backwards compatible, so no conversion is
       
   151   needed.
       
   152 <p>
       
   153 </ul>
       
   154 Bug Fixes: None
       
   155 <hr>
       
   156 <h2>Changes in version 0.96.4</h2>
       
   157 <p>
       
   158 New Features:
       
   159 <ul>
       
   160 <li>Added an upgrading section in the FAQ.
       
   161 <li>The command-line tools now have a "--quiet" option to suppress all
       
   162   status messages.
       
   163 <li>Added a "vchforwards" CGI interface.
       
   164 <li>Modified the "vaddalias" CGI program to accept a comma-seperated list
       
   165   of destinations.
       
   166 <li>Added some sample HTML pages for the CGIs.
       
   167 <p>
       
   168 </ul>
       
   169 Internal Changes:
       
   170 <ul>
       
   171 <li>Minor updates to the mystring and fdbuf libraries.
       
   172 <p>
       
   173 </ul>
       
   174 Bug Fixes:
       
   175 <ul>
       
   176 <li>Fixed a problem that caused the Courier IMAP authentication module to
       
   177   fail for users of the form "baseuser-virtuser".  It should work now.
       
   178 </ul>
       
   179 <hr>
       
   180 <h2>Changes in version 0.96.3</h2>
       
   181 <p>
       
   182 New Features: None
       
   183 <p>
       
   184 Internal Changes:
       
   185 <ul>
       
   186 <li>Removed the "include" directory.
       
   187 <li>Made vpwtable & vpwentry a seperate source directory.
       
   188 <li>Merged the "adduser", "addalias", and "addaliasp" daemon interfaces
       
   189   into one new inteface named "adduser2".  The C++ CGIs and the PHP3
       
   190   code has been modified to use the new interface.
       
   191 <p>
       
   192 </ul>
       
   193 Bug Fixes: None
       
   194 <hr>
       
   195 <h2>Changes in version 0.96.2</h2>
       
   196 <p>
       
   197 New Features:
       
   198 <ul>
       
   199 <li>Updated the FAQ, and added some new answers.
       
   200 <li>Added a Courier IMAP authentication module.  This module does not yet
       
   201   work, unfortunately.
       
   202 <li>Tossed the existing non-functional PHP3 module and added a working one
       
   203   (written in PHP3) from Mike Bell.
       
   204 <li>Modified vsetup to call programs before and after setting up the
       
   205   domain.
       
   206 <li>Added new "vauthenticate" command.
       
   207 <li>Turned the small vaddalias program into a simple shell script.
       
   208 <p>
       
   209 </ul>
       
   210 Internal Changes:
       
   211 <ul>
       
   212 <li>Moved the Python code into its own directory, like the PHP3 stuff.
       
   213 <li>Moved the checkvpw module into an "authenticate" directory.
       
   214 <li>Imported changes to the CLI library to make it behave more like the
       
   215   standard getopt.
       
   216 <p>
       
   217 </ul>
       
   218 Bug Fixes:
       
   219 <ul>
       
   220 <li>Fixed some bugs in the Kerberos5 configuration handling.
       
   221 </ul>
       
   222 <hr>
       
   223 <h2>Changes in version 0.96.1</h2>
       
   224 <p>
       
   225 New Features:
       
   226 <ul>
       
   227 <li>Output of listvdomain CGI has changed slightly to reflect the change
       
   228   in internal data structures.
       
   229 <p>
       
   230 </ul>
       
   231 Internal Changes:
       
   232 <ul>
       
   233 <li>Changed listdomain daemon protocol to speed up domain listings and to
       
   234   allow for more information (not yet present in the listdomain CGI).
       
   235 <p>
       
   236 </ul>
       
   237 Bug Fixes:
       
   238 <ul>
       
   239 <li>Fixed bug in building Python code from input files with non-GNU make.
       
   240 </ul>
       
   241 <hr>
       
   242 <h2>Changes in version 0.96</h2>
       
   243 <p>
       
   244 New Features:
       
   245 <ul>
       
   246 <li>Record data format has been enhanced to add personal information,
       
   247   simple quotas, and expiry information, plus other extra data.
       
   248 <li>Messages can now be delivered to both a mailbox and a list of
       
   249   forwarding addresses at once.
       
   250 <li>Programs executed from checkvpw or vdeliver will have all the above
       
   251   data set in environment variables.
       
   252 <li>listvdomain can now list only users, only aliases, or selected names.
       
   253 <li>The listvdomain CGI has improved formatting ability.
       
   254 <li>Preliminary support for Kerberos5 authentication.  Please tell me if
       
   255   this works for you if you need this, as I can't test it myself.
       
   256 <li>New "vchattr" command to change a virtual user's attributes.
       
   257 <li>New "vchforwards" command to change the forwarding addresses of a
       
   258   user.
       
   259 <li>Executable configuration settings are treated as executable files
       
   260   rather than lists of statements to execute.
       
   261 <p>
       
   262 </ul>
       
   263 Internal Changes:
       
   264 <ul>
       
   265 <li>Record parsing routines will read either record format but will write
       
   266   out new record format.
       
   267 <li>Daemon command dispatching now requires seperate virtual domain and
       
   268   virtual user arguments (all the CGIs do this anyways), as opposed to
       
   269   allowing "baseuser-virtual".
       
   270 <p>
       
   271 </ul>
       
   272 Bug Fixes:
       
   273 <ul>
       
   274 <li>Fixed non-portable increment statement in vconf2dir shell script, as
       
   275   well as a couple of other bugs.
       
   276 <li>Fixed bug in vdeliver that would cause it to loop without sleeping
       
   277   when it couldn't write to the output file.
       
   278 <p>
       
   279 </ul>
       
   280 NOTES:
       
   281 <ul>
       
   282 <li>I would consider this an unstable release.  Adding and deleting users,
       
   283   delivery, and password checking have been tested, but little else.  I
       
   284   just want to get this out.  There are so many big changes in this one
       
   285   that there are bound to be unexpected bugs.
       
   286 <li>Despite the change in the record format, no password table upgrading
       
   287   will be necessary, as this version can read in both new and old
       
   288   records.
       
   289 <li>The "vaddalias" command has been superceeded by "vadduser -D".
       
   290 <li>The "vchalias" command has been replace with "vchforwards".
       
   291 <li>The "vdelalias" command has been removed since "vdeluser" does both
       
   292   jobs.
       
   293 <li>Support for quota management and account expiry are not included yet.
       
   294 <li>The C++ CGIs are limited to adding aliases with a single forwarding
       
   295   address.  The generic Python CGI can be used to create users with
       
   296   multiple forwarding addresses.  I intend to remove most or all of the
       
   297   C++ CGIs in favour of a more generic interface.
       
   298 </ul>
       
   299 <hr>
       
   300 <h2>Changes in version 0.95</h2>
       
   301 <p>
       
   302 New Features:
       
   303 <ul>
       
   304 <li>vdeliver now has a hook to execute a list of programs before and after
       
   305   delivering an email.  See doc/configuration.* for full details.
       
   306 <li>checkvpw now has a hook to execute a list of programs before and after
       
   307   changing its uid, and after executing the subprogram
       
   308 <li>The bulletins facility is now a standalone program called vpopbull.
       
   309 <li>There is a new program showvconfig which can list the configuration
       
   310   information.
       
   311 <p>
       
   312 </ul>
       
   313 Internal Changes as above.
       
   314 <p>
       
   315 Bug Fixes:
       
   316 <ul>
       
   317 <li>The call to execl in vdeliver when calling qmail-queue was missing a
       
   318   parameter.
       
   319 </ul>
       
   320 <hr>
       
   321 <h2>Changes in version 0.94</h2>
       
   322 <p>
       
   323 New Features:
       
   324 <ul>
       
   325 <li>vdeliver and checkvpw no longer call up to vmailmgrd to do user
       
   326   lookups and authentication.  This makes them significantly faster,
       
   327   since the daemon no longer does any useful memorization of any kind of
       
   328   data (no password or virtualdomains caches, etc.), and the socket
       
   329   connection and fork took significant amounts of time.
       
   330 <p>
       
   331 </ul>
       
   332 Internal Changes:
       
   333 <ul>
       
   334 <li>The virtual user and virtual password table manipulation were moved
       
   335   into a class interface.  This will be (once the password content
       
   336   changes are integrated in the next couple of versions) the official
       
   337   API target for building alternative database backends (like the much
       
   338   requested MySQL interface).
       
   339 <li>Removed the "check" command from the daemon, since it's no longer
       
   340   used.
       
   341 <p>
       
   342 </ul>
       
   343 Bug Fixes:
       
   344 <ul>
       
   345 <li>vdeliver still used a hard coded /var/qmail instead of
       
   346   config->qmail_root().
       
   347 <p>
       
   348 </ul>
       
   349 NOTES:
       
   350 * You will no longer need to have vmailmgrd running to use checkvpw,
       
   351 <ul>
       
   352   vdeliver, and the command-line tools.  You only need vmailmgrd (and
       
   353   the vmailmgr-daemon RPM package) if you need to use the CGIs.
       
   354 </ul>
       
   355 <hr>
       
   356 <h2>Changes in version 0.93</h2>
       
   357 <p>
       
   358 New Features:
       
   359 <ul>
       
   360 <li>New configuration system, based on individual files per configuration
       
   361   parameter rather than one big file.  Should be more extensable this
       
   362   way, and has been benchmarked to be faster.  The configuration files
       
   363   are documented in the configuration.{html,texi,txt} files.
       
   364 <li>New configuration system also set up to allow domain-local
       
   365   configurations by putting a directory named ".vmailmgr" in the domain
       
   366   directory.  This IS (unlike my last attempt) read properly by the
       
   367   daemon and all the utilities and clients.  The daemon switches over to
       
   368   checking for local configuration items immediately after determining
       
   369   what user/domain is being handled.
       
   370 <li>A new "qmail-root" configuration parameter to allow for installations
       
   371   where qmail is not installed in /var/qmail.
       
   372 <p>
       
   373 </ul>
       
   374 Internal Changes:
       
   375 <ul>
       
   376 <li>All the v* commands now do a chdir to $HOME before continuing.
       
   377 <li>A virtual domain class has been set up, and is used to reference each
       
   378   domain through a user, with both a user-local and domain-local
       
   379   configuration structure.  This will shortly be used to set up multiple
       
   380   virtual domains per user.
       
   381 <li>Imported new and improved mystring and fdbuf libraries.
       
   382 <p>
       
   383 </ul>
       
   384 Bug Fixes:
       
   385 <ul>
       
   386 <li>The .qmail-default file is created with mode r--r--r-- to prevent
       
   387   qmail problems with a writable delivery file in situations where the
       
   388   umask is less restrictive than 022.
       
   389 <p>
       
   390 </ul>
       
   391 IMPORTANT NOTES:
       
   392 * This version uses a new configuration structure.  You *MUST* run the
       
   393 <ul>
       
   394   included vconf2dir program.  The RPM tries to do this automatically.
       
   395 </ul>
       
   396 <hr>
       
   397 <h2>Changes in version 0.92.2</h2>
       
   398 <p>
       
   399 Bug Fixes:
       
   400 <ul>
       
   401 <li>Delivery to partially qualified aliases was broken again in a few hard
       
   402   to trace cases by potentially changing one character in the domain
       
   403   address.  Fixed by rewriting the envelope building code into something
       
   404   simpler and more efficient.
       
   405 </ul>
       
   406 <hr>
       
   407 <h2>Changes in version 0.92.1</h2>
       
   408 <p>
       
   409 Bug Fixes:
       
   410 <ul>
       
   411 <li>Delivery to partially qualified aliases (such as the common 'root@')
       
   412   caused vdeliver to either crash itself or to cause qmail-queue to
       
   413   crash (since qmail-queue expects FQDN addresses).  This behavior has
       
   414   been fixed to make such addresses use a domain name of the contents of
       
   415   control/me.
       
   416 </ul>
       
   417 <hr>
       
   418 <h2>Changes in version 0.92</h2>
       
   419 <p>
       
   420 New Features:
       
   421 <ul>
       
   422 <li>Aliases can now have passwords.  See the man page for vaddalias or the
       
   423   CGI documentation for details on how to create such an alias.  The
       
   424   intended effect is that, once set up, a virtual user could "own" an
       
   425   alias, for the purpose of changing its destination (or password, of
       
   426   course).
       
   427 <p>
       
   428 </ul>
       
   429 Bug Fixes:
       
   430 <ul>
       
   431 <li>Delivery to aliases in vdeliver used to go through qmail-inject.  This
       
   432   would cause qmail to reformat headers or even bounce the message.
       
   433   vdeliver now sends aliases through qmail-queue, the same way that
       
   434   qmail itself does it.
       
   435 </ul>
       
   436 <hr>
       
   437 <h2>Changes in version 0.91</h2>
       
   438 <p>
       
   439 New Features:
       
   440 <ul>
       
   441 <li>Command-line and CGI programs to change an alias (to avoid the delete,
       
   442   recreate cycle).
       
   443 <p>
       
   444 </ul>
       
   445 Bug Fixes:
       
   446 <ul>
       
   447 <li>Always set the mode on created files to be read-write-only by owner.
       
   448 <p>
       
   449 </ul>
       
   450 Other Changes:
       
   451 <ul>
       
   452 <li>vdeliver now uses fdbuf instead of raw I/O to deliver content.
       
   453 <li>Changed the default default username from '*' to '+', to avoid
       
   454   confusion when typing '*' at a shell prompt.
       
   455 <li>Command-line tools now count and report the number of errors
       
   456   encountered and exit false if any errors occurred.
       
   457 </ul>
       
   458 <hr>
       
   459 <h2>Changes in version 0.90.2</h2>
       
   460 <p>
       
   461 New Features: None
       
   462 <p>
       
   463 Bug Fixes:
       
   464 <ul>
       
   465 <li>Fixed compile problem on systems lacking the O_SYNC definition.
       
   466 <li>Fixed compile problem on systems where perror is in stdio.h, and
       
   467   stdio.h is not included through other includes.
       
   468 <p>
       
   469 </ul>
       
   470 NOTES: If you did not have a problem compiling 0.90 or 0.90.1, don't
       
   471 bother with this version.
       
   472 <hr>
       
   473 <h2>Changes in version 0.90.1</h2>
       
   474 <p>
       
   475 New Features: None
       
   476 <p>
       
   477 Bug Fixes:
       
   478 <ul>
       
   479 <li>Added definitions for MIN and MAX in md5-crypt.c if they aren't
       
   480   defined by the included headers.
       
   481 <li>Removed the include of errnos.h in vpwentry_putpw.cc
       
   482 <p>
       
   483 </ul>
       
   484 NOTES: If you did not have a problem compiling 0.90, don't bother with
       
   485 this version.
       
   486 <hr>
       
   487 <h2>Changes in version 0.90</h2>
       
   488 <p>
       
   489 New Features:
       
   490 <ul>
       
   491 <li>Eliminated all dependance on any C++ library by incorporating my own
       
   492   C++ I/O library.
       
   493 <li>Dropped the RSA MD5 library and incorporated the GNU MD5 code.
       
   494 <li>Added the GNU md5-crypt module which should provide compatibility with
       
   495   all systems that do MD5-based passcodes.  The new code will read in
       
   496   and authenticate against standard DES-crypted codes, the new standard
       
   497   MD5-crypted '$1$' style codes, and my mistaken MD5 hashes (for
       
   498   temporary backwards compatibility), and will write out the '$1$' style
       
   499   MD5 codes.
       
   500 <p>
       
   501 </ul>
       
   502 Bug Fixes:
       
   503 <ul>
       
   504 <li>Fixed a nearly invisible bug in the parsing of the configuration file
       
   505   (it was too lenient in the syntax it allowed).
       
   506 <li>In the bulletin code, the timestamp file was named wrong
       
   507   ("maildir/cur/.timestamp" instead of "maildir/.timestamp"), and it was
       
   508   not created with a proper mode flag.
       
   509 <p>
       
   510 </ul>
       
   511 Other Changes:
       
   512 <ul>
       
   513 <li>This package is now distributed under the GPL.
       
   514 <li>The daemon will now not print out any "Accepted Connection" messages
       
   515   unless the verbose flag is set.
       
   516 <li>Inverted the sense of the crypt flag in configure.  There is now a
       
   517   "--enable-crypt" flag which causes the code to revert to only using
       
   518   crypt for password encryption and comparison (the default is to use
       
   519   the built-in md5-crypt module).
       
   520 <p>
       
   521 </ul>
       
   522 NOTES:
       
   523 <ul>
       
   524 <li>My plan to move from a fork-based daemon to a thread-based one is on
       
   525   temporary hold until I can complete several other more important
       
   526   reorganizations and cleanups, most importantly completing a generic DB
       
   527   interface layer.
       
   528 </ul>
       
   529 <hr>
       
   530 <h2>Changes in version 0.89</h2>
       
   531 <p>
       
   532 New Features:
       
   533 <ul>
       
   534 <li>Changed the file format for the virtual password tables to using CDB
       
   535   tables.
       
   536 <li>The daemon now forks immediately after accepting a connection,
       
   537   allowing for greater concurrency in the POP3 server.
       
   538 <p>
       
   539 </ul>
       
   540 Bug Fixes:
       
   541 <ul>
       
   542 <li>Use a ".timestamp" file in a virtual user's maildir to determine the
       
   543   last login time for bulletin delivery.
       
   544 <p>
       
   545 </ul>
       
   546 Other Changes:
       
   547 <ul>
       
   548 <li>Removed all the cache tables in the daemon.
       
   549 <li>Did a major reorganization of the libraries and header files.
       
   550 <p>
       
   551 </ul>
       
   552 IMPORTANT NOTES:
       
   553 * This package now uses an incompatible file format for the virtual
       
   554 <ul>
       
   555   domain password tables.  You *MUST* run "vpasswd2cdb" in each
       
   556   domain to convert your tables before starting the new daemon!
       
   557 </ul>
       
   558 <hr>
       
   559 <h2>Changes in version 0.88</h2>
       
   560 <p>
       
   561 New Features:
       
   562 <ul>
       
   563 <li>Long passwords are now supported using MD5 hashing to create the
       
   564   encoded version.  The code will still read the older passwords but
       
   565   will always write out MD5 hashes.
       
   566 <p>
       
   567 </ul>
       
   568 Bug Fixes:  None
       
   569 <p>
       
   570 Other Changes:
       
   571 <ul>
       
   572 <li>I am now finally using automake to build the package.
       
   573 </ul>
       
   574 <hr>
       
   575 </body>
       
   576 </html>