1 // Copyright (c) 1987-2017 by the citadel.org team
2 // This program is open source software. Use, duplication, or disclosure
3 // are subject to the terms of the GNU General Public License, version 3.
5 // We expect these functions to act as an internal API that remains identical
6 // across multiple database back ends.
11 void cdb_open_databases(void);
12 void cdb_close_databases(void);
13 int cdb_store(int cdb, const void *key, int keylen, void *data, int datalen);
14 int cdb_delete(int cdb, void *key, int keylen);
15 struct cdbdata * cdb_fetch(int cdb, const void *key, int keylen);
16 void cdb_free(struct cdbdata *cdb);
17 void cdb_rewind(int cdb);
18 struct cdbdata * cdb_next_item(int cdb);
19 void cdb_close_cursor(int cdb);
20 void cdb_begin_transaction(void);
21 void cdb_end_transaction(void);
22 void cdb_check_handles(void);
23 void cdb_trunc(int cdb);
24 void cdb_chmod_data(void);
25 void cdb_checkpoint(void);
26 void check_handles(void *arg);
27 void cdb_compact(void);