[Freeipa-devel] [PATCH 0059] Fix potential crash after free(uninitialized variable)
Adam Tkac
atkac at redhat.com
Fri Sep 14 13:34:13 UTC 2012
On Wed, Sep 12, 2012 at 01:07:56PM +0200, Petr Spacek wrote:
> Hello,
>
> This patch fixes potential crash after free(uninitialized variable)
> in persistent search code.
>
> Coverity CID 13088.
Ack
> From 3197b4ace3e852495bf4f9fdc32192459160027c Mon Sep 17 00:00:00 2001
> From: Petr Spacek <pspacek at redhat.com>
> Date: Wed, 12 Sep 2012 13:04:39 +0200
> Subject: [PATCH] Fix potential crash after free(uninitialized variable) in
> persistent search code.
>
> Coverity CID 13088.
>
> Signed-off-by: Petr Spacek <pspacek at redhat.com>
> ---
> src/ldap_helper.c | 15 +++++++--------
> 1 file changed, 7 insertions(+), 8 deletions(-)
>
> diff --git a/src/ldap_helper.c b/src/ldap_helper.c
> index 92edbe7159272772e1c993d46da7c93382cbc5d4..67a64b79159983c83cb1bfc73c4b02a9bce986a7 100644
> --- a/src/ldap_helper.c
> +++ b/src/ldap_helper.c
> @@ -2878,8 +2878,8 @@ cleanup:
> static isc_result_t
> ldap_pscontrol_create(LDAPControl **ctrlp)
> {
> - BerElement *ber;
> - struct berval *berval;
> + BerElement *ber = NULL;
> + struct berval *berval = NULL;
> isc_result_t result = ISC_R_FAILURE;
>
> REQUIRE(ctrlp != NULL && *ctrlp == NULL);
> @@ -2905,14 +2905,13 @@ ldap_pscontrol_create(LDAPControl **ctrlp)
> != LDAP_SUCCESS)
> goto cleanup;
>
> - ber_free(ber, 1);
> - ber_bvfree(berval);
> -
> - return ISC_R_SUCCESS;
> + result = ISC_R_SUCCESS;
>
> cleanup:
> - ber_free(ber, 1);
> - ber_bvfree(berval);
> + if (ber != NULL)
> + ber_free(ber, 1);
> + if (berval != NULL)
> + ber_bvfree(berval);
>
> return result;
> }
> --
> 1.7.11.4
>
--
Adam Tkac, Red Hat, Inc.
More information about the Freeipa-devel
mailing list