[Exim] Building exim 3.36 against Berkeley db v4.1.25

Top Page
Delete this message
Reply to this message
Author: Richard Curnow
Date:  
To: exim-users
Subject: [Exim] Building exim 3.36 against Berkeley db v4.1.25
In case this is useful to anybody, I managed to get this combination to
compile with the following patch:

--- exim-3.36/src/dbfn.h        Thu Apr  4 13:56:16 2002
+++ exim-3.36-modified/src/dbfn.h       Mon Mar 31 18:08:21 2003
@@ -135,7 +135,7 @@
 /* EXIM_DBOPEN - sets *dbpp to point to an EXIM_DB, NULL if failed */
 #define EXIM_DBOPEN(name, flags, mode, dbpp)         \
        if (db_create(dbpp, NULL, 0) != 0 || \
-         (*dbpp)->open(*dbpp, name, NULL, DB_HASH, \
+         (*dbpp)->open(*dbpp, NULL, name, NULL, DB_HASH, \
          ((flags) == O_RDONLY)? DB_RDONLY : DB_CREATE, \
          mode) != 0) *(dbpp) = NULL


Being no expert on db, I've no idea which version of db onwards requires
this change, only that it fixed the exim 3.36 compile for db 4.1.25.

(However, my euphoria was short-lived as 'exim -bd' segfaulted at
runtime. The backtrace shows it was in a db_* function called from
inside one of the libnss*.so libraries, so I guess those libraries would
need rebuilding against the new db too to work in this situation. Too
painful for now :-( The system is basically Slackware
8.0 BTW).

Cheers
Richard

--
Richard \\\ SuperH Core+Debug Architect /// .. At home ..
  P.    /// richard.curnow@???  ///  rc@???
Curnow  \\\ http://www.superh.com/    ///  www.rc0.org.uk
Speaking for myself, not on behalf of SuperH