From 2292547af9638e2b3f7e0e96a56dd6c909e516dc Mon Sep 17 00:00:00 2001 From: Tom Gundersen Date: Mon, 31 Mar 2014 10:01:59 +0200 Subject: [PATCH] networkd: fix use-after-free Free networks before links (the reverse of creation order). --- src/network/networkd-manager.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c index b2cb0fab4..ddbdabbff 100644 --- a/src/network/networkd-manager.c +++ b/src/network/networkd-manager.c @@ -145,13 +145,13 @@ void manager_free(Manager *m) { sd_event_source_unref(m->sigint_event_source); sd_event_unref(m->event); - while ((network = m->networks)) - network_free(network); - while ((link = hashmap_first(m->links))) link_free(link); hashmap_free(m->links); + while ((network = m->networks)) + network_free(network); + while ((netdev = hashmap_first(m->netdevs))) netdev_free(netdev); hashmap_free(m->netdevs); -- 2.30.2