Hi all,
Today i've implemented 3 major changes to CVS:
(1) dropped the CONFIG-table, using a config file instead
(2) changed all of the IMAP server code (forking, signals, connecting -
it's all improved)
(3) updated the separate authentication scheme
For the new CVS to work you will have to adapt your dbmail.conf file -
the one included in cvs has already been updated.
Few key points regarding this file:
The file is divided in section. Each section starts with [NAME]
(including the vertical braces) and ends with an empty line. Sections
needed:
[DBMAIL] - this defines the database connection parameters & the
trace-level for the maintenance program (yes that last item is
quick&dirty)
[POP] your POP settings
[IMAP] .. IMAP settings
[SMTP] dbmail-smtp injector settings
The names of the items in each section should be self-explanatory for
you dbmail cracks but in doubt do not hesitate to ask as the
documentation isn't completed yet ;)
Comments are behind a '#'.
The POP, IMAP and -SMTP programs now no longer use 2 connections on a
database to discriminate between authentication and mail
retrieval/insertion. Instead the first connection is copied for the
authentication. This is done because two connections to the same
database is actually quite expensive when they are completely identical
and never used at the same time. Furthermore I haven't heard any of you
complaining about using a separate authentication system and i'm pretty
sure there are still some bugs in the actual separation. If anyone does
use this and encounters problems with the new code (you will!), please
mail and i'll try to fix a solution for you. Anyway, the only like
option is having users into a LDAP system and that isn't supported at
all just yet; using a postgresql database for your users and mysql for
mail just doesn't seem so sensible :).
The new IMAP code should fix problems of dying children (resulting in
less performance) and eating up all resources when killed by a TERM
signal. As a new feature, the IMAP daemon will re-read the config file
when given a SIGHUP.
This code will be implemented shortly into the POP daemon.
Enjoy!
regards,
roel