From: Zbigniew Jędrzejewski-Szmek Date: Wed, 20 Jan 2016 00:50:17 +0000 (-0500) Subject: libsystemd-network: avoid double free on error X-Git-Tag: v229~111^2~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=63a54aa15edee5ecadd894d2d5c73870d86e8ec4;p=thirdparty%2Fsystemd.git libsystemd-network: avoid double free on error This could happen if the remote sent us a badly formatted option. CID #1317206. --- diff --git a/src/libsystemd-network/sd-dhcp6-lease.c b/src/libsystemd-network/sd-dhcp6-lease.c index 3f32ba35e7f..327759e1800 100644 --- a/src/libsystemd-network/sd-dhcp6-lease.c +++ b/src/libsystemd-network/sd-dhcp6-lease.c @@ -256,7 +256,7 @@ int dhcp6_lease_set_ntp(sd_dhcp6_lease *lease, uint8_t *optval, size_t optlen) { assert_return(lease, -EINVAL); assert_return(optval, -EINVAL); - free(lease->ntp); + lease->ntp = mfree(lease->ntp); lease->ntp_count = 0; lease->ntp_allocated = 0;