summaryrefslogtreecommitdiffstats
path: root/source3/winbindd/idmap_autorid.c
diff options
context:
space:
mode:
authorMichael Adam <obnox@samba.org>2014-03-21 00:07:07 +0100
committerJeremy Allison <jra@samba.org>2014-04-03 00:26:28 +0200
commite9796edaa8c67c88b30b4e5e937fd7279674403b (patch)
treea478f049c71b1719a07882503e796be53a13e747 /source3/winbindd/idmap_autorid.c
parent90d8e0f8bc6498fea7845a66280cdd0909dc3b81 (diff)
downloadsamba-e9796edaa8c67c88b30b4e5e937fd7279674403b.tar.gz
samba-e9796edaa8c67c88b30b4e5e937fd7279674403b.tar.xz
samba-e9796edaa8c67c88b30b4e5e937fd7279674403b.zip
autorid: initialize: use the split db_open and init_hwms function instead of db_init
This way, we can later put all of the storing functions inside one transaction. Signed-off-by: Michael Adam <obnox@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/winbindd/idmap_autorid.c')
-rw-r--r--source3/winbindd/idmap_autorid.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/source3/winbindd/idmap_autorid.c b/source3/winbindd/idmap_autorid.c
index fcfdb2bb1e..ec12278388 100644
--- a/source3/winbindd/idmap_autorid.c
+++ b/source3/winbindd/idmap_autorid.c
@@ -650,7 +650,7 @@ static NTSTATUS idmap_autorid_initialize(struct idmap_domain *dom)
commonconfig->rw_ops->get_new_id = idmap_autorid_allocate_id;
commonconfig->rw_ops->set_mapping = idmap_tdb_common_set_mapping;
- status = idmap_autorid_db_init(state_path("autorid.tdb"),
+ status = idmap_autorid_db_open(state_path("autorid.tdb"),
NULL, /* TALLOC_CTX */
&autorid_db);
if (!NT_STATUS_IS_OK(status)) {
@@ -659,6 +659,11 @@ static NTSTATUS idmap_autorid_initialize(struct idmap_domain *dom)
commonconfig->db = autorid_db;
+ status = idmap_autorid_init_hwms(autorid_db);
+ if (!NT_STATUS_IS_OK(status)) {
+ goto error;
+ }
+
status = idmap_autorid_saveconfig(autorid_db, config);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(1, ("Failed to store configuration data!\n"));