diff --git a/0016-ITS-8782-fix-cancel-memleak.patch b/0016-ITS-8782-fix-cancel-memleak.patch new file mode 100644 index 0000000..afcc54b --- /dev/null +++ b/0016-ITS-8782-fix-cancel-memleak.patch @@ -0,0 +1,46 @@ +From f82ca15a1862749e13a989599d7f4c52c7648957 Mon Sep 17 00:00:00 2001 +From: Howard Chu +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; + } diff --git a/openldap2.changes b/openldap2.changes index adc7875..cfdc1bf 100644 --- a/openldap2.changes +++ b/openldap2.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Dec 4 21:32:11 UTC 2017 - michael@stroeder.com + +- added 0016-ITS-8782-fix-cancel-memleak.patch + ------------------------------------------------------------------- Thu Nov 23 13:36:52 UTC 2017 - rbrown@suse.com diff --git a/openldap2.spec b/openldap2.spec index 42d46db..01946ac 100644 --- a/openldap2.spec +++ b/openldap2.spec @@ -66,6 +66,7 @@ Patch12: 0012-ITS8051-sockdnpat.patch Patch13: 0013-ITS-8692-let-back-sock-generate-increment-line.patch Patch14: 0014-ITS-8714-Send-out-EXTENDED-operation-message-from-back-sock.patch Patch15: openldap-r-only.dif +Patch16: 0016-ITS-8782-fix-cancel-memleak.patch Source200: %{name_ppolicy_check_module}-%{version_ppolicy_check_module}.tar.gz Source201: %{name_ppolicy_check_module}.Makefile Source202: %{name_ppolicy_check_module}.conf