diff options
author | Stefan Metzmacher <metze@samba.org> | 2008-03-27 16:08:21 +0100 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2008-03-27 18:14:56 +0100 |
commit | 474916b70c4bed3accd8592ff82aa2d6f90c8e8d (patch) | |
tree | c32c377260973c3b463ed3f9db81178f6f42fe2d /source3 | |
parent | 32e7cc5193a2c6eaf06a977e16915c74db19d76c (diff) | |
download | samba-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.h | 5 | ||||
-rw-r--r-- | source3/lib/dbwrap.c | 15 |
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; |