1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-28 01:58:17 +03:00

lib:util:loadparm - fix leak in lpcfg_dump_a_parameter

This function calls talloc_strdup() for the parm_name passed into
it so that we can check whether it's a parametric entry. It's
allocated under the loadparm context passed into the function.
Primary consumer of this is "testparm" and so context short-lived in
typical use-case, but this is also exposed via pyparam and so the
loadparm context may be somewhat longer-lived depending on how it is
being used.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=14544

Signed-off-by: Andrew Walker <awalker@ixsystems.com>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
This commit is contained in:
Andrew Walker 2020-10-21 07:47:14 -04:00 committed by Jeremy Allison
parent d031391bed
commit 3b2a9083f8

View File

@ -2408,11 +2408,14 @@ bool lpcfg_dump_a_parameter(struct loadparm_context *lp_ctx,
local_parm_name, parm_opt);
if (parm_opt_value) {
fprintf(f, "%s\n", parm_opt_value);
TALLOC_FREE(local_parm_name);
return true;
}
}
TALLOC_FREE(local_parm_name);
return false;
}
TALLOC_FREE(local_parm_name);
/* parameter is not parametric, search the table */
parm = lpcfg_parm_struct(lp_ctx, parm_name);