Sophie

Sophie

distrib > Fedora > 13 > i386 > by-pkgid > 88c0c11ea20da15d1aa88f642b27f1b2 > files > 20

nss_ldap-264-10.fc13.src.rpm

diff -up pam_ldap/pam_ldap.c pam_ldap/pam_ldap.c
--- pam_ldap/pam_ldap.c	2009-07-22 15:55:42.000000000 -0400
+++ pam_ldap/pam_ldap.c	2009-07-22 16:00:23.000000000 -0400
@@ -437,6 +437,7 @@ static void
 _release_config (pam_ldap_config_t ** pconfig)
 {
   pam_ldap_config_t *c;
+  pam_ssd_t *ssd, *next_ssd;
 
   c = *pconfig;
   if (c == NULL)
@@ -445,6 +446,9 @@ _release_config (pam_ldap_config_t ** pc
   if (c->configFile != NULL)
     free (c->configFile);
 
+  if (c->uri != NULL)
+    free (c->uri);
+
   if (c->host != NULL)
     free (c->host);
 
@@ -474,6 +478,16 @@ _release_config (pam_ldap_config_t ** pc
       free (c->sslpath);
     }
 
+  ssd = c->ssd;
+  while ( ssd != NULL )
+    {
+      next_ssd = ssd->next;
+      free (ssd->base);
+      free (ssd->filter);
+      free (ssd);
+      ssd = next_ssd;
+    }
+
   if (c->userattr != NULL)
     {
       free (c->userattr);
@@ -509,6 +523,36 @@ _release_config (pam_ldap_config_t ** pc
       free (c->logdir);
     }
 
+  if (c->tls_cacertfile != NULL)
+    {
+      free (c->tls_cacertfile);
+    }
+
+  if (c->tls_cacertdir != NULL)
+    {
+      free (c->tls_cacertdir);
+    }
+
+  if (c->tls_ciphers != NULL)
+    {
+      free (c->tls_ciphers);
+    }
+
+  if (c->tls_cert != NULL)
+    {
+      free (c->tls_cert);
+    }
+
+  if (c->tls_key != NULL)
+    {
+      free (c->tls_key);
+    }
+
+  if (c->tls_randfile != NULL)
+    {
+      free (c->tls_randfile);
+    }
+
   if (c->sasl_mechanism != NULL)
     {
       free (c->sasl_mechanism);