I recently upgraded to SleepyCats DB 4 and XEmacs from CVS and
database.c stopped compiling.
I traced it back to an additional parameter being added in
SleepyCat 4 release in the DB->open .
int DB->open(DB *db, DB_TXN *txnid, const char *file, const char *database, DBTYPE type, u_int32_t flags, int mode);
Attached is a patch adding support for DB 4.
I haven't actually used it against a DB database, so it might break
elsewhere, but it should work fine.