50 const int flags = TDB_NOLOCK | TDB_INCOMPATIBLE_HASH | TDB_NOSYNC;
51 const int hash_size = 33533;
53 struct tdb_context *db = tdb_open(path, hash_size, flags, O_CREAT | O_RDWR, 00600);
68 TDB_CONTEXT *db = store;
72 dkey.dptr = (
unsigned char *) key;
74 data = tdb_fetch(db, dkey);
92 void *value,
size_t vlen)
98 TDB_CONTEXT *db = store;
102 dkey.dptr = (
unsigned char *) key;
105 databuf.dsize = vlen;
106 databuf.dptr = value;
108 return tdb_store(db, dkey, databuf, TDB_INSERT);
120 TDB_CONTEXT *db = store;
123 dkey.dptr = (
unsigned char *) key;
126 return tdb_delete(db, dkey);
138 TDB_CONTEXT *db = *ptr;
static void store_tdb_close(StoreHandle **ptr)
Close a Store connection - Implements StoreOps::close() -.
static int store_tdb_delete_record(StoreHandle *store, const char *key, size_t klen)
Delete a record from the Store - Implements StoreOps::delete_record() -.
static void * store_tdb_fetch(StoreHandle *store, const char *key, size_t klen, size_t *vlen)
Fetch a Value from the Store - Implements StoreOps::fetch() -.
static void store_tdb_free(StoreHandle *store, void **ptr)
Free a Value returned by fetch() - Implements StoreOps::free() -.
static StoreHandle * store_tdb_open(const char *path)
Open a connection to a Store - Implements StoreOps::open() -.
static int store_tdb_store(StoreHandle *store, const char *key, size_t klen, void *value, size_t vlen)
Write a Value to the Store - Implements StoreOps::store() -.
static const char * store_tdb_version(void)
Get a Store version string - Implements StoreOps::version() -.
Convenience wrapper for the library headers.
void StoreHandle
Opaque type for store backend.
#define STORE_BACKEND_OPS(_name)