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