mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
s3:registry: remove unneeded TALLOC_CTX argument from reg_deletekey_recursive
This commit is contained in:
parent
a2ea85b68d
commit
7a25d13742
@ -721,7 +721,7 @@ static WERROR smbconf_reg_drop(struct smbconf_ctx *ctx)
|
||||
goto done;
|
||||
}
|
||||
|
||||
werr = reg_deletekey_recursive(mem_ctx, parent_key, p+1);
|
||||
werr = reg_deletekey_recursive(parent_key, p+1);
|
||||
|
||||
if (!W_ERROR_IS_OK(werr)) {
|
||||
goto done;
|
||||
@ -913,8 +913,7 @@ static WERROR smbconf_reg_delete_share(struct smbconf_ctx *ctx,
|
||||
TALLOC_CTX *mem_ctx = talloc_stackframe();
|
||||
|
||||
if (servicename != NULL) {
|
||||
werr = reg_deletekey_recursive(mem_ctx, rpd(ctx)->base_key,
|
||||
servicename);
|
||||
werr = reg_deletekey_recursive(rpd(ctx)->base_key, servicename);
|
||||
} else {
|
||||
werr = smbconf_reg_delete_values(rpd(ctx)->base_key);
|
||||
}
|
||||
|
@ -301,7 +301,7 @@ static WERROR scripts_apply(TALLOC_CTX *mem_ctx,
|
||||
section, count++);
|
||||
W_ERROR_HAVE_NO_MEMORY(keystr);
|
||||
|
||||
reg_deletekey_recursive(mem_ctx, root_key, keystr);
|
||||
reg_deletekey_recursive(root_key, keystr);
|
||||
|
||||
werr = gp_store_reg_subkey(mem_ctx, keystr,
|
||||
root_key, &root_key);
|
||||
|
@ -326,7 +326,7 @@ static WERROR gp_reg_del_groupmembership(TALLOC_CTX *mem_ctx,
|
||||
flags);
|
||||
W_ERROR_HAVE_NO_MEMORY(path);
|
||||
|
||||
return reg_deletekey_recursive(mem_ctx, key, path);
|
||||
return reg_deletekey_recursive(key, path);
|
||||
|
||||
}
|
||||
|
||||
@ -447,7 +447,7 @@ static WERROR gp_del_reg_state(TALLOC_CTX *mem_ctx,
|
||||
struct registry_key *key,
|
||||
const char *path)
|
||||
{
|
||||
return reg_deletesubkeys_recursive(mem_ctx, key, path);
|
||||
return reg_deletesubkeys_recursive(key, path);
|
||||
}
|
||||
|
||||
/****************************************************************
|
||||
|
@ -784,22 +784,15 @@ WERROR reg_deleteallvalues(struct registry_key *key)
|
||||
* Note that reg_deletekey returns ACCESS_DENIED when called on a
|
||||
* key that has subkeys.
|
||||
*/
|
||||
static WERROR reg_deletekey_recursive_internal(TALLOC_CTX *ctx,
|
||||
struct registry_key *parent,
|
||||
static WERROR reg_deletekey_recursive_internal(struct registry_key *parent,
|
||||
const char *path,
|
||||
bool del_key)
|
||||
{
|
||||
TALLOC_CTX *mem_ctx = NULL;
|
||||
WERROR werr = WERR_OK;
|
||||
struct registry_key *key;
|
||||
char *subkey_name = NULL;
|
||||
uint32 i;
|
||||
|
||||
mem_ctx = talloc_new(ctx);
|
||||
if (mem_ctx == NULL) {
|
||||
werr = WERR_NOMEM;
|
||||
goto done;
|
||||
}
|
||||
TALLOC_CTX *mem_ctx = talloc_stackframe();
|
||||
|
||||
/* recurse through subkeys first */
|
||||
werr = reg_openkey(mem_ctx, parent, path, REG_KEY_ALL, &key);
|
||||
@ -816,9 +809,7 @@ static WERROR reg_deletekey_recursive_internal(TALLOC_CTX *ctx,
|
||||
*/
|
||||
for (i = regsubkey_ctr_numkeys(key->subkeys) ; i > 0; i--) {
|
||||
subkey_name = regsubkey_ctr_specific_key(key->subkeys, i-1);
|
||||
werr = reg_deletekey_recursive_internal(mem_ctx, key,
|
||||
subkey_name,
|
||||
true);
|
||||
werr = reg_deletekey_recursive_internal(key, subkey_name, true);
|
||||
W_ERROR_NOT_OK_GOTO_DONE(werr);
|
||||
}
|
||||
|
||||
@ -832,8 +823,7 @@ done:
|
||||
return werr;
|
||||
}
|
||||
|
||||
static WERROR reg_deletekey_recursive_trans(TALLOC_CTX *ctx,
|
||||
struct registry_key *parent,
|
||||
static WERROR reg_deletekey_recursive_trans(struct registry_key *parent,
|
||||
const char *path,
|
||||
bool del_key)
|
||||
{
|
||||
@ -847,7 +837,7 @@ static WERROR reg_deletekey_recursive_trans(TALLOC_CTX *ctx,
|
||||
return werr;
|
||||
}
|
||||
|
||||
werr = reg_deletekey_recursive_internal(ctx, parent, path, del_key);
|
||||
werr = reg_deletekey_recursive_internal(parent, path, del_key);
|
||||
|
||||
if (!W_ERROR_IS_OK(werr)) {
|
||||
DEBUG(1, (__location__ " failed to delete key '%s' from key "
|
||||
@ -871,17 +861,15 @@ static WERROR reg_deletekey_recursive_trans(TALLOC_CTX *ctx,
|
||||
return werr;
|
||||
}
|
||||
|
||||
WERROR reg_deletekey_recursive(TALLOC_CTX *ctx,
|
||||
struct registry_key *parent,
|
||||
WERROR reg_deletekey_recursive(struct registry_key *parent,
|
||||
const char *path)
|
||||
{
|
||||
return reg_deletekey_recursive_trans(ctx, parent, path, true);
|
||||
return reg_deletekey_recursive_trans(parent, path, true);
|
||||
}
|
||||
|
||||
WERROR reg_deletesubkeys_recursive(TALLOC_CTX *ctx,
|
||||
struct registry_key *parent,
|
||||
WERROR reg_deletesubkeys_recursive(struct registry_key *parent,
|
||||
const char *path)
|
||||
{
|
||||
return reg_deletekey_recursive_trans(ctx, parent, path, false);
|
||||
return reg_deletekey_recursive_trans(parent, path, false);
|
||||
}
|
||||
|
||||
|
@ -61,11 +61,9 @@ WERROR reg_setkeysecurity(struct registry_key *key,
|
||||
struct security_descriptor *psecdesc);
|
||||
WERROR reg_getversion(uint32_t *version);
|
||||
WERROR reg_deleteallvalues(struct registry_key *key);
|
||||
WERROR reg_deletekey_recursive(TALLOC_CTX *ctx,
|
||||
struct registry_key *parent,
|
||||
WERROR reg_deletekey_recursive(struct registry_key *parent,
|
||||
const char *path);
|
||||
WERROR reg_deletesubkeys_recursive(TALLOC_CTX *ctx,
|
||||
struct registry_key *parent,
|
||||
WERROR reg_deletesubkeys_recursive(struct registry_key *parent,
|
||||
const char *path);
|
||||
|
||||
|
||||
|
@ -835,7 +835,7 @@ static WERROR import_delete_key(struct import_ctx* ctx,
|
||||
name = subkeyname;
|
||||
}
|
||||
|
||||
werr = reg_deletekey_recursive(mem_ctx, parent, name);
|
||||
werr = reg_deletekey_recursive(parent, name);
|
||||
if (!W_ERROR_IS_OK(werr)) {
|
||||
d_fprintf(stderr, "reg_deletekey_recursive %s: %s\n", _("failed"),
|
||||
win_errstr(werr));
|
||||
|
Loading…
Reference in New Issue
Block a user