This is an automated email from the git hooks/post-receive script.
firstyear pushed a commit to branch master
in repository 389-ds-base.
commit e741e40fa03f29041d5dbd83ec09d72885d97e7f
Author: William Brown <firstyear(a)redhat.com>
Date: Mon Nov 20 17:45:38 2017 +0100
Ticket 49445 - Memory leak in ldif2db
Bug Description: Memory leak in ldif2db of the instance
name selected for the import
Fix Description: Free the affected memory.
https://pagure.io/389-ds-base/issue/49445
Author: wibrown
Review by: lkrispen (thanks)
---
ldap/servers/slapd/main.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/ldap/servers/slapd/main.c b/ldap/servers/slapd/main.c
index d53f431..305e4a4 100644
--- a/ldap/servers/slapd/main.c
+++ b/ldap/servers/slapd/main.c
@@ -2033,6 +2033,7 @@ slapd_exemode_ldif2db(struct main_config *mcfg)
{
int return_value = 0;
struct slapdplugin *plugin;
+ char **instances = NULL;
if (mcfg->ldif_file == NULL) {
slapi_log_err(SLAPI_LOG_ERR, "slapd_exemode_ldif2db",
@@ -2051,11 +2052,10 @@ slapd_exemode_ldif2db(struct main_config *mcfg)
* otherwise, we use included/excluded suffix list to specify a backend.
*/
if (NULL == mcfg->cmd_line_instance_name) {
- char **instances, **ip;
+ char **ip;
int counter;
- if (lookup_instance_name_by_suffixes(mcfg->db2ldif_include,
mcfg->db2ldif_exclude,
- &instances) < 0) {
+ if (lookup_instance_name_by_suffixes(mcfg->db2ldif_include,
mcfg->db2ldif_exclude, &instances) < 0) {
slapi_log_err(SLAPI_LOG_ERR, "slapd_exemode_ldif2db",
"Backend instances name [-n <name>] or "
"included suffix [-s <suffix>] need to be
specified.\n");
@@ -2146,6 +2146,7 @@ slapd_exemode_ldif2db(struct main_config *mcfg)
}
slapi_pblock_destroy(pb);
slapi_ch_free((void **)&(mcfg->myname));
+ charray_free(instances);
charray_free(mcfg->cmd_line_instance_names);
charray_free(mcfg->db2ldif_include);
charray_free(mcfg->db2index_attrs);
@@ -2174,8 +2175,7 @@ slapd_exemode_db2ldif(int argc, char **argv, struct main_config
*mcfg)
char **instances, **ip;
int counter;
- if (lookup_instance_name_by_suffixes(mcfg->db2ldif_include,
mcfg->db2ldif_exclude,
- &instances) < 0) {
+ if (lookup_instance_name_by_suffixes(mcfg->db2ldif_include,
mcfg->db2ldif_exclude, &instances) < 0) {
slapi_log_err(SLAPI_LOG_ERR, "slapd_exemode_db2ldif",
"Backend instances name [-n <name>] or "
"included suffix [-s <suffix>] need to be
specified.\n");
@@ -2389,8 +2389,7 @@ slapd_exemode_db2index(struct main_config *mcfg)
char **ip;
int counter;
- if (lookup_instance_name_by_suffixes(mcfg->db2ldif_include,
mcfg->db2ldif_exclude,
- &instances) < 0) {
+ if (lookup_instance_name_by_suffixes(mcfg->db2ldif_include,
mcfg->db2ldif_exclude, &instances) < 0) {
slapi_log_err(SLAPI_LOG_ERR, "slapd_exemode_db2index",
"Backend instances name [-n <name>] or "
"included suffix [-s <suffix>] need to be
specified.\n");
@@ -2456,9 +2455,11 @@ slapd_exemode_db2index(struct main_config *mcfg)
return_value = (*plugin->plg_db2index)(pb);
slapi_pblock_destroy(pb);
+ charray_free(mcfg->db2index_attrs);
slapi_ch_free((void **)&(mcfg->myname));
charray_free(mcfg->db2ldif_include);
+ /* This frees mcfg->cmd_line_instance_name */
charray_free(instances);
return (return_value);
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.