[Exim] Enhancement request

Pàgina inicial
Delete this message
Reply to this message
Autor: Rob Butler
Data:  
A: ph10
CC: exim-users
Assumpte: [Exim] Enhancement request
Hello all & Philip,

Could exim be enhanced to take more advantage of Berkeley DB's concurrent
data store model?

For more info on BDB concurrent data store see:
http://www.sleepycat.com/docs/ref/cam/intro.html

This would allow external applications to update the BDB exim uses for
single key lookups without those applications having to implement exim's
locking in order to safely update the db. I.E when BDB is used for holding
users / passwords, etc.

It looks like this could be done by creating a new ifdef like use_dbcm in
addition to use_db.

When use_dbcm (use db - concurrent mode) is specified, additional code for
setting up a BDB environment would be added to the EXIM_DBOPEN macro in
src/dbstuff.h

since BDB cursors are use only for reading by exim EXIM_DBCREATE_CURSOR in
src/dbstuff.h would not need to be modified.

Also, all the locking code in dbfn_open and dbfn_close in src/dbfn.c would
be ifdef'd out as locking now would take place in the Berkeley DB.

It looks like this wouldn't be too difficult to add to exim, and allow
easier (better?) integration with other applications. Any thoughts?

Thanks
Rob