Added tdb_store_by_string() and tdb_fetch_by_string() functions to store
authorTim Potter <tpot@samba.org>
Tue, 9 May 2000 06:22:12 +0000 (06:22 +0000)
committerTim Potter <tpot@samba.org>
Tue, 9 May 2000 06:22:12 +0000 (06:22 +0000)
data with null terminated string keys.
(This used to be commit d58146321b6fe50e1cc1a73da80c3d2e8c3412dc)

source3/tdb/tdbutil.c

index 751102087380a506528afb1d8641610d6bbd549b..d7cc7f8b2a234e3a3c9f1682a4cb1edcb3ed983b 100644 (file)
@@ -65,3 +65,30 @@ int tdb_store_int(TDB_CONTEXT *tdb, char *keystr, int v)
 {
        return tdb_store_int_byblob(tdb, keystr, strlen(keystr), v);
 }
+
+/* Store a buffer by a null terminated string key.  Return 0 on success, -1
+   on failure */
+int tdb_store_by_string(TDB_CONTEXT *tdb, char *keystr, void *buffer, int len)
+{
+    TDB_DATA key, data;
+
+    key.dptr = keystr;
+    key.dsize = strlen(keystr) + 1;
+
+    data.dptr = buffer;
+    data.dsize = len;
+
+    return tdb_store(tdb, key, data, TDB_REPLACE);
+}
+
+/* Fetch a buffer using a null terminated string key.  Don't forget to call
+   free() on the result dptr. */
+TDB_DATA tdb_fetch_by_string(TDB_CONTEXT *tdb, char *keystr)
+{
+    TDB_DATA key;
+
+    key.dptr = keystr;
+    key.dsize = strlen(keystr) + 1;
+
+    return tdb_fetch(tdb, key);
+}