mirror of
https://github.com/samba-team/samba.git
synced 2025-01-12 09:18:10 +03:00
net conf: fix import to correctly add includes (at the end)
Michael
(This used to be commit 3e81db8370
)
This commit is contained in:
parent
92f52469a9
commit
a98c08c151
@ -127,6 +127,9 @@ static WERROR import_process_service(struct smbconf_ctx *conf_ctx,
|
||||
{
|
||||
uint32_t idx;
|
||||
WERROR werr = WERR_OK;
|
||||
uint32_t num_includes = 0;
|
||||
char **includes = NULL;
|
||||
TALLOC_CTX *mem_ctx = talloc_stackframe();
|
||||
|
||||
if (opt_testmode) {
|
||||
d_printf("[%s]\n", servicename);
|
||||
@ -148,17 +151,42 @@ static WERROR import_process_service(struct smbconf_ctx *conf_ctx,
|
||||
d_printf("\t%s = %s\n", param_names[idx],
|
||||
param_values[idx]);
|
||||
} else {
|
||||
werr = smbconf_set_parameter(conf_ctx,
|
||||
servicename,
|
||||
param_names[idx],
|
||||
param_values[idx]);
|
||||
if (!W_ERROR_IS_OK(werr)) {
|
||||
goto done;
|
||||
if (strequal(param_names[idx], "include")) {
|
||||
includes = TALLOC_REALLOC_ARRAY(mem_ctx,
|
||||
includes,
|
||||
char *,
|
||||
num_includes+1);
|
||||
if (includes == NULL) {
|
||||
werr = WERR_NOMEM;
|
||||
goto done;
|
||||
}
|
||||
includes[num_includes] =
|
||||
talloc_strdup(includes,
|
||||
param_values[idx]);
|
||||
if (includes[num_includes] == NULL) {
|
||||
werr = WERR_NOMEM;
|
||||
goto done;
|
||||
}
|
||||
num_includes++;
|
||||
} else {
|
||||
werr = smbconf_set_parameter(conf_ctx,
|
||||
servicename,
|
||||
param_names[idx],
|
||||
param_values[idx]);
|
||||
if (!W_ERROR_IS_OK(werr)) {
|
||||
goto done;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!opt_testmode) {
|
||||
werr = smbconf_set_includes(conf_ctx, servicename, num_includes,
|
||||
(const char **)includes);
|
||||
}
|
||||
|
||||
done:
|
||||
TALLOC_FREE(mem_ctx);
|
||||
return werr;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user