49 const int flags = TDB_NOLOCK | TDB_INCOMPATIBLE_HASH | TDB_NOSYNC;
50 const int hash_size = 33533;
51 return tdb_open(path, hash_size, flags, O_CREAT | O_RDWR, 00600);
57 static void *
store_tdb_fetch(
void *store,
const char *key,
size_t klen,
size_t *vlen)
62 TDB_CONTEXT *db = store;
66 dkey.dptr = (
unsigned char *) key;
68 data = tdb_fetch(db, dkey);
85 static int store_tdb_store(
void *store,
const char *key,
size_t klen,
void *value,
size_t vlen)
90 TDB_CONTEXT *db = store;
94 dkey.dptr = (
unsigned char *) key;
100 return tdb_store(db, dkey, databuf, TDB_INSERT);
111 TDB_CONTEXT *db = store;
114 dkey.dptr = (
unsigned char *) key;
117 return tdb_delete(db, dkey);
128 TDB_CONTEXT *db = *ptr;
static void store_tdb_close(void **ptr)
Implements StoreOps::close() -.
static int store_tdb_delete_record(void *store, const char *key, size_t klen)
Implements StoreOps::delete_record() -.
static void * store_tdb_fetch(void *store, const char *key, size_t klen, size_t *vlen)
Implements StoreOps::fetch() -.
static void store_tdb_free(void *store, void **ptr)
Implements StoreOps::free() -.
static void * store_tdb_open(const char *path)
Implements StoreOps::open() -.
static int store_tdb_store(void *store, const char *key, size_t klen, void *value, size_t vlen)
Implements StoreOps::store() -.
static const char * store_tdb_version(void)
Implements StoreOps::version() -.
Convenience wrapper for the library headers.
#define STORE_BACKEND_OPS(_name)