v3-ldap-msg-free.patch

application/octet-stream

Filename: v3-ldap-msg-free.patch
Type: application/octet-stream
Part: 0
Message: Re: freeing LDAPMessage in CheckLDAPAuth

Patch

Format: unified
Series: patch v3
File+
src/backend/libpq/auth.c 3 1
diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c
index b2b0b83a97..4d4fe7a366 100644
--- a/src/backend/libpq/auth.c
+++ b/src/backend/libpq/auth.c
@@ -2538,7 +2538,7 @@ CheckLDAPAuth(Port *port)
 		 * trying to log in as.
 		 */
 		char	   *filter;
-		LDAPMessage *search_message;
+		LDAPMessage *search_message = NULL;
 		LDAPMessage *entry;
 		char	   *attributes[] = {LDAP_NO_ATTRS, NULL};
 		char	   *dn;
@@ -2610,6 +2610,8 @@ CheckLDAPAuth(Port *port)
 							filter, server_name, ldap_err2string(r)),
 					 errdetail_for_ldap(ldap)));
 			ldap_unbind(ldap);
+			if (search_message != NULL)
+				ldap_msgfree(search_message);
 			pfree(passwd);
 			pfree(filter);
 			return STATUS_ERROR;