From dc003037b920a6e0e3d32c291e17e0e0a02a0730 Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Tue, 24 Feb 2009 11:23:52 +0100 Subject: [PATCH] s3:registry: provide transaction_start|commit|cancel fns for the registry tdb Michael Signed-off-by: Michael Adam (cherry picked from commit 0509eee47ac2da1042bd1bb0d98695abc8ee44a3) --- source/include/proto.h | 3 +++ source/registry/reg_backend_db.c | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/source/include/proto.h b/source/include/proto.h index 51405f05aaf..0467588c20a 100644 --- a/source/include/proto.h +++ b/source/include/proto.h @@ -6721,6 +6721,9 @@ WERROR init_registry_data(void); WERROR regdb_init(void); WERROR regdb_open( void ); int regdb_close( void ); +WERROR regdb_transaction_start(void); +WERROR regdb_transaction_commit(void); +WERROR regdb_transaction_cancel(void); int regdb_get_seqnum(void); bool regdb_store_keys(const char *key, REGSUBKEY_CTR *ctr); int regdb_fetch_keys(const char *key, REGSUBKEY_CTR *ctr); diff --git a/source/registry/reg_backend_db.c b/source/registry/reg_backend_db.c index 689bd1038e3..960e8844041 100644 --- a/source/registry/reg_backend_db.c +++ b/source/registry/reg_backend_db.c @@ -482,6 +482,24 @@ int regdb_close( void ) return 0; } +WERROR regdb_transaction_start(void) +{ + return (regdb->transaction_start(regdb) == 0) ? + WERR_OK : WERR_REG_IO_FAILURE; +} + +WERROR regdb_transaction_commit(void) +{ + return (regdb->transaction_commit(regdb) == 0) ? + WERR_OK : WERR_REG_IO_FAILURE; +} + +WERROR regdb_transaction_cancel(void) +{ + return (regdb->transaction_cancel(regdb) == 0) ? + WERR_OK : WERR_REG_IO_FAILURE; +} + /*********************************************************************** return the tdb sequence number of the registry tdb. this is an indicator for the content of the registry -- 2.11.4.GIT