diff options
author | Michael Adam <obnox@samba.org> | 2011-05-11 15:27:01 +0200 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2011-05-15 20:21:22 +0200 |
commit | 8c1db29945a8d833d9b400027382a3ddc0c52b29 (patch) | |
tree | b5d6b2f543109b4951a74f0a0f5658d92536eff3 | |
parent | 3913147532249bfc9aa8165e31822df20bc568d8 (diff) | |
download | samba-8c1db29945a8d833d9b400027382a3ddc0c52b29.tar.gz |
s3:registry: add create_sorted_subkeys() to delete and recreate the sorted subkeys key
This is to be used from other places than the key_exists() code path.
(cherry picked from commit 39bc60c77d5083c5ca68a83f55a3c6efde9b78a7)
-rw-r--r-- | source3/registry/reg_backend_db.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/source3/registry/reg_backend_db.c b/source3/registry/reg_backend_db.c index c9ab18ab1f5..013a1e3f87e 100644 --- a/source3/registry/reg_backend_db.c +++ b/source3/registry/reg_backend_db.c @@ -47,6 +47,8 @@ static int regdb_fetch_values_internal(struct db_context *db, const char* key, static bool regdb_store_values_internal(struct db_context *db, const char *key, struct regval_ctr *values); +static NTSTATUS create_sorted_subkeys(const char *key); + /* List the deepest path into the registry. All part components will be created.*/ /* If you want to have a part of the path controlled by the tdb and part by @@ -1423,6 +1425,25 @@ static NTSTATUS create_sorted_subkeys_internal(const char *key, return status; } +static NTSTATUS create_sorted_subkeys(const char *key) +{ + char *sorted_subkeys_keyname; + NTSTATUS status; + + sorted_subkeys_keyname = talloc_asprintf(talloc_tos(), "%s\\%s", + REG_SORTED_SUBKEYS_PREFIX, + key); + if (sorted_subkeys_keyname == NULL) { + status = NT_STATUS_NO_MEMORY; + goto done; + } + + status = create_sorted_subkeys_internal(key, sorted_subkeys_keyname); + +done: + return status; +} + struct scan_subkey_state { char *name; bool scanned; |