s3:dbwrap: add dbwrap_delete(), dbwrap_store() and dbwrap_fetch()
authorStefan Metzmacher <metze@samba.org>
Wed, 17 Dec 2008 07:53:31 +0000 (08:53 +0100)
committerStefan Metzmacher <metze@samba.org>
Mon, 19 Jan 2009 16:06:03 +0000 (17:06 +0100)
The _bystring function are now just tiny wrappers.

metze

source3/include/dbwrap.h
source3/lib/dbwrap.c

index 3312f9c12172f9a01ffbff20c4b2346bead0fbc9..aad4ccd721e08715432f8330a21d67d4e8a78c7d 100644 (file)
@@ -83,6 +83,11 @@ struct db_context *db_open_file(TALLOC_CTX *mem_ctx,
                                int open_flags, mode_t mode);
 
 
+NTSTATUS dbwrap_delete(struct db_context *db, TDB_DATA key);
+NTSTATUS dbwrap_store(struct db_context *db, TDB_DATA key,
+                     TDB_DATA data, int flags);
+TDB_DATA dbwrap_fetch(struct db_context *db, TALLOC_CTX *mem_ctx,
+                     TDB_DATA key);
 NTSTATUS dbwrap_delete_bystring(struct db_context *db, const char *key);
 NTSTATUS dbwrap_store_bystring(struct db_context *db, const char *key,
                               TDB_DATA data, int flags);
index 73c2761a1b3d069cf482a31757e9c150fe1f00a0..a57b7c97a5dc4690c53027e76d73b875852d1c6f 100644 (file)
@@ -105,12 +105,12 @@ struct db_context *db_open(TALLOC_CTX *mem_ctx,
        return result;
 }
 
-NTSTATUS dbwrap_delete_bystring(struct db_context *db, const char *key)
+NTSTATUS dbwrap_delete(struct db_context *db, TDB_DATA key)
 {
        struct db_record *rec;
        NTSTATUS status;
 
-       rec = db->fetch_locked(db, talloc_tos(), string_term_tdb_data(key));
+       rec = db->fetch_locked(db, talloc_tos(), key);
        if (rec == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -119,13 +119,13 @@ NTSTATUS dbwrap_delete_bystring(struct db_context *db, const char *key)
        return status;
 }
 
-NTSTATUS dbwrap_store_bystring(struct db_context *db, const char *key,
-                              TDB_DATA data, int flags)
+NTSTATUS dbwrap_store(struct db_context *db, TDB_DATA key,
+                     TDB_DATA data, int flags)
 {
        struct db_record *rec;
        NTSTATUS status;
 
-       rec = db->fetch_locked(db, talloc_tos(), string_term_tdb_data(key));
+       rec = db->fetch_locked(db, talloc_tos(), key);
        if (rec == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -135,14 +135,32 @@ NTSTATUS dbwrap_store_bystring(struct db_context *db, const char *key,
        return status;
 }
 
-TDB_DATA dbwrap_fetch_bystring(struct db_context *db, TALLOC_CTX *mem_ctx,
-                              const char *key)
+TDB_DATA dbwrap_fetch(struct db_context *db, TALLOC_CTX *mem_ctx,
+                     TDB_DATA key)
 {
        TDB_DATA result;
 
-       if (db->fetch(db, mem_ctx, string_term_tdb_data(key), &result) == -1) {
+       if (db->fetch(db, mem_ctx, key, &result) == -1) {
                return make_tdb_data(NULL, 0);
        }
 
        return result;
 }
+
+NTSTATUS dbwrap_delete_bystring(struct db_context *db, const char *key)
+{
+       return dbwrap_delete(db, string_term_tdb_data(key));
+}
+
+NTSTATUS dbwrap_store_bystring(struct db_context *db, const char *key,
+                              TDB_DATA data, int flags)
+{
+       return dbwrap_store(db, string_term_tdb_data(key), data, flags);
+}
+
+TDB_DATA dbwrap_fetch_bystring(struct db_context *db, TALLOC_CTX *mem_ctx,
+                              const char *key)
+{
+       return dbwrap_fetch(db, mem_ctx, string_term_tdb_data(key));
+}
+