aboutsummaryrefslogtreecommitdiffstats
path: root/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2011-04-14 15:14:55 +0200
committerTobias Brunner <tobias@strongswan.org>2011-04-14 18:11:45 +0200
commit862ef49f85cf5a7656210022aa6523234e06f2b7 (patch)
tree3d591b1c836545db709fc27008175305c04d07d9 /src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c
parent29388829fabd85ac7b3636d6975213c970445bbc (diff)
downloadstrongswan-862ef49f85cf5a7656210022aa6523234e06f2b7.tar.bz2
strongswan-862ef49f85cf5a7656210022aa6523234e06f2b7.tar.xz
Fixed potential memory leak when processing routes from the kernel.
Diffstat (limited to 'src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c')
-rw-r--r--src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c b/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c
index a3f5dfd93..6d0a56780 100644
--- a/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c
+++ b/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c
@@ -534,6 +534,7 @@ static void process_route(private_kernel_netlink_net_t *this, struct nlmsghdr *h
switch (rta->rta_type)
{
case RTA_PREFSRC:
+ DESTROY_IF(host);
host = host_create_from_chunk(msg->rtm_family,
chunk_create(RTA_DATA(rta), RTA_PAYLOAD(rta)), 0);
break;