summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2008-03-27 16:08:21 +0100
committerMichael Adam <obnox@samba.org>2008-03-27 18:14:56 +0100
commit474916b70c4bed3accd8592ff82aa2d6f90c8e8d (patch)
treec32c377260973c3b463ed3f9db81178f6f42fe2d /source3
parent32e7cc5193a2c6eaf06a977e16915c74db19d76c (diff)
downloadsamba-474916b70c4bed3accd8592ff82aa2d6f90c8e8d.tar.gz
samba-474916b70c4bed3accd8592ff82aa2d6f90c8e8d.tar.bz2
samba-474916b70c4bed3accd8592ff82aa2d6f90c8e8d.zip
dbwrap: add db_open_trans()
This should be used when transactions are wanted. For now it's just a wrapper of db_open(), but this will change. metze Signed-off-by: Stefan Metzmacher <metze@samba.org> (This used to be commit 74a070b8a24fea1009e557f711b76fc14e8961dc)
Diffstat (limited to 'source3')
-rw-r--r--source3/include/dbwrap.h5
-rw-r--r--source3/lib/dbwrap.c15
2 files changed, 20 insertions, 0 deletions
diff --git a/source3/include/dbwrap.h b/source3/include/dbwrap.h
index 095719a01d..654c7a4f7a 100644
--- a/source3/include/dbwrap.h
+++ b/source3/include/dbwrap.h
@@ -54,6 +54,11 @@ struct db_context *db_open(TALLOC_CTX *mem_ctx,
int hash_size, int tdb_flags,
int open_flags, mode_t mode);
+struct db_context *db_open_trans(TALLOC_CTX *mem_ctx,
+ const char *name,
+ int hash_size, int tdb_flags,
+ int open_flags, mode_t mode);
+
struct db_context *db_open_rbt(TALLOC_CTX *mem_ctx);
struct db_context *db_open_tdb(TALLOC_CTX *mem_ctx,
diff --git a/source3/lib/dbwrap.c b/source3/lib/dbwrap.c
index 001424a6c0..fd924639a9 100644
--- a/source3/lib/dbwrap.c
+++ b/source3/lib/dbwrap.c
@@ -42,6 +42,9 @@ static int dbwrap_fallback_fetch(struct db_context *db, TALLOC_CTX *mem_ctx,
return 0;
}
+/**
+ * If you need transaction support use db_open_trans()
+ */
struct db_context *db_open(TALLOC_CTX *mem_ctx,
const char *name,
int hash_size, int tdb_flags,
@@ -93,6 +96,18 @@ struct db_context *db_open(TALLOC_CTX *mem_ctx,
return result;
}
+/**
+ * If you use this you can only modify with a transaction
+ */
+struct db_context *db_open_trans(TALLOC_CTX *mem_ctx,
+ const char *name,
+ int hash_size, int tdb_flags,
+ int open_flags, mode_t mode)
+{
+ /* TODO: implement this differently */
+ return db_open(mem_ctx, name, hash_size, tdb_flags, open_flags, mode);
+}
+
NTSTATUS dbwrap_delete_bystring(struct db_context *db, const char *key)
{
struct db_record *rec;