diff --git a/CHANGES b/CHANGES
index f551107a15981ca3b3a837bf6f600becf7628438..bccd160fea240cd781b564d054a24924eba99886 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,7 @@
 OpenLDAP 2.4 Change Log
 
 OpenLDAP 2.4.14 Engineering
+	Fixed libldap peer cert memory leak (ITS#5849)
 	Fixed libldap_r deref building (ITS#5768)
 	Fixed slapd syncrepl rename handling (ITS#5809)
 	Build Environment
diff --git a/libraries/libldap/tls.c b/libraries/libldap/tls.c
index 9b008ddb9ceda75440e823051cde6de4887433e0..7bba905124b7ae83387df6aaf1fa622b57d6bf86 100644
--- a/libraries/libldap/tls.c
+++ b/libraries/libldap/tls.c
@@ -1735,6 +1735,7 @@ tls_get_cert_dn( tls_session *session, struct berval *dnbv )
 	xn = X509_get_subject_name(x);
 	dnbv->bv_len = i2d_X509_NAME( xn, NULL );
 	dnbv->bv_val = xn->bytes->data;
+	X509_free(x);
 	return 0;
 }
 #endif /* HAVE_GNUTLS */