forked from pool/openldap2
a078bd0820
- added 0016-ITS-8782-fix-cancel-memleak.patch OBS-URL: https://build.opensuse.org/request/show/549731 OBS-URL: https://build.opensuse.org/package/show/network:ldap/openldap2?expand=0&rev=199
47 lines
1.4 KiB
Diff
47 lines
1.4 KiB
Diff
From f82ca15a1862749e13a989599d7f4c52c7648957 Mon Sep 17 00:00:00 2001
|
|
From: Howard Chu <hyc@openldap.org>
|
|
Date: Mon, 4 Dec 2017 15:59:33 +0000
|
|
Subject: ITS#8782 plug memleaks in cancel
|
|
|
|
|
|
diff --git a/libraries/libldap/cancel.c b/libraries/libldap/cancel.c
|
|
index b09f6f021..f3677b13a 100644
|
|
--- a/libraries/libldap/cancel.c
|
|
+++ b/libraries/libldap/cancel.c
|
|
@@ -42,14 +42,14 @@ ldap_cancel(
|
|
int *msgidp )
|
|
{
|
|
BerElement *cancelidber = NULL;
|
|
- struct berval *cancelidvalp = NULL;
|
|
+ struct berval cancelidvalp = { 0, NULL };
|
|
int rc;
|
|
|
|
cancelidber = ber_alloc_t( LBER_USE_DER );
|
|
ber_printf( cancelidber, "{i}", cancelid );
|
|
- ber_flatten( cancelidber, &cancelidvalp );
|
|
+ ber_flatten2( cancelidber, &cancelidvalp, 0 );
|
|
rc = ldap_extended_operation( ld, LDAP_EXOP_CANCEL,
|
|
- cancelidvalp, sctrls, cctrls, msgidp );
|
|
+ &cancelidvalp, sctrls, cctrls, msgidp );
|
|
ber_free( cancelidber, 1 );
|
|
return rc;
|
|
}
|
|
@@ -62,14 +62,14 @@ ldap_cancel_s(
|
|
LDAPControl **cctrls )
|
|
{
|
|
BerElement *cancelidber = NULL;
|
|
- struct berval *cancelidvalp = NULL;
|
|
+ struct berval cancelidvalp = { 0, NULL };
|
|
int rc;
|
|
|
|
cancelidber = ber_alloc_t( LBER_USE_DER );
|
|
ber_printf( cancelidber, "{i}", cancelid );
|
|
- ber_flatten( cancelidber, &cancelidvalp );
|
|
+ ber_flatten2( cancelidber, &cancelidvalp, 0 );
|
|
rc = ldap_extended_operation_s( ld, LDAP_EXOP_CANCEL,
|
|
- cancelidvalp, sctrls, cctrls, NULL, NULL );
|
|
+ &cancelidvalp, sctrls, cctrls, NULL, NULL );
|
|
ber_free( cancelidber, 1 );
|
|
return rc;
|
|
}
|