From ae6a33f6a27689465365c7bc2c17225ceeba5141 Mon Sep 17 00:00:00 2001 From: Rich Megginson Date: Aug 28 2012 16:16:49 +0000 Subject: fix mem leaks with parent dn log message, setting winsync windows domain Reviewed by: nkinder (Thanks!) (cherry picked from commit f59ea3c6cfe5bcd1e8604c0215df651d491587b9) --- diff --git a/ldap/servers/plugins/posix-winsync/posix-winsync-config.c b/ldap/servers/plugins/posix-winsync/posix-winsync-config.c index 8239456..a2d21be 100644 --- a/ldap/servers/plugins/posix-winsync/posix-winsync-config.c +++ b/ldap/servers/plugins/posix-winsync/posix-winsync-config.c @@ -81,8 +81,10 @@ posix_winsync_agmt_init(const Slapi_DN *ds_subtree, const Slapi_DN *ad_subtree) sdn = slapi_get_next_suffix(&node, 0); } if (!sdn) { + char *pardn = slapi_dn_parent(slapi_sdn_get_dn(ds_subtree)); slapi_log_error(SLAPI_LOG_FATAL, POSIX_WINSYNC_PLUGIN_NAME, "suffix not found for '%s'\n", - slapi_dn_parent(slapi_sdn_get_dn(ds_subtree))); + pardn); + slapi_ch_free_string(&pardn); } slapi_log_error(SLAPI_LOG_PLUGIN, POSIX_WINSYNC_PLUGIN_NAME, diff --git a/ldap/servers/plugins/replication/windows_private.c b/ldap/servers/plugins/replication/windows_private.c index 26d03c2..058de6e 100644 --- a/ldap/servers/plugins/replication/windows_private.c +++ b/ldap/servers/plugins/replication/windows_private.c @@ -368,6 +368,7 @@ void windows_agreement_delete(Repl_Agmt *ra) slapi_filter_free(dp->directory_filter, 1); slapi_filter_free(dp->deleted_filter, 1); slapi_entry_free(dp->raw_entry); + slapi_ch_free_string(&dp->windows_domain); dp->raw_entry = NULL; dp->api_cookie = NULL; slapi_ch_free((void **)dp); @@ -534,6 +535,7 @@ windows_private_set_windows_domain(const Repl_Agmt *ra, char *domain) dp = (Dirsync_Private *) agmt_get_priv(ra); PR_ASSERT (dp); + slapi_ch_free_string(&dp->windows_domain); dp->windows_domain = domain; LDAPDebug0Args( LDAP_DEBUG_TRACE, "<= windows_private_set_windows_domain\n" );