int cdb_delete(int, void *, int);
struct cdbdata * cdb_fetch(int, const void *, int);
void cdb_free(struct cdbdata *);
-void cdb_rewind(int);
struct cdbdata * cdb_next_item(int);
void cdb_close_cursor(int);
void cdb_begin_transaction(void);
extern void (*cdb_checkpoint)(void);
extern void (*cdb_compact)(void);
+extern void (*cdb_rewind)(int);
#endif
void (*cdb_compact)(void) = NULL;
void (*cdb_checkpoint)(void) = NULL;
+void (*cdb_rewind)(int) = NULL;
static DB *dbp[MAXCDB]; // One DB handle for each Citadel database
static DB_ENV *dbenv; // The DB environment (global)
// Prepare for a sequential search of an entire database.
// (There is guaranteed to be no more than one traversal in
// progress per thread at any given time.)
-void cdb_rewind(int cdb) {
+void bdb_rewind(int cdb) {
int ret = 0;
if (TSD->cursors[cdb] != NULL) {
void cdb_init_backends(void) {
cdb_compact = bdb_compact;
cdb_checkpoint = bdb_checkpoint;
+ cdb_rewind = bdb_rewind;
syslog(LOG_INFO, "db: initialized Berkeley DB backend");
}