From 4b56bbc05a7e48de6209d03280c60bf53fceb91f Mon Sep 17 00:00:00 2001 From: Nishant Chaprana Date: Fri, 27 Sep 2019 15:10:59 +0530 Subject: [Fix] Dereference after free in sta_remove_callback() Change-Id: I0e3e98f588ea186c514090a86a1a5a9d78e10420 Signed-off-by: Nishant Chaprana --- packaging/connman.spec | 2 +- plugins/wifi.c | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/packaging/connman.spec b/packaging/connman.spec index af8e27f0..a2774df4 100644 --- a/packaging/connman.spec +++ b/packaging/connman.spec @@ -5,7 +5,7 @@ Name: connman Version: 1.37 -Release: 33 +Release: 34 License: GPL-2.0+ Summary: Connection Manager Url: http://connman.net diff --git a/plugins/wifi.c b/plugins/wifi.c index e74e2d9b..322cfa0a 100644 --- a/plugins/wifi.c +++ b/plugins/wifi.c @@ -5498,16 +5498,24 @@ static void sta_remove_callback(int result, if ((result < 0) || (info->wifi->ap_supported != WIFI_AP_SUPPORTED)) { info->wifi->tethering = false; connman_technology_tethering_notify(info->technology, false); +#if !defined TIZEN_EXT g_free(info->ifname); g_free(info->ssid); g_free(info); +#endif /* !defined TIZEN_EXT */ if (info->wifi->ap_supported == WIFI_AP_SUPPORTED) { g_free(info->wifi->tethering_param->ssid); g_free(info->wifi->tethering_param); info->wifi->tethering_param = NULL; } +#if defined TIZEN_EXT + + g_free(info->ifname); + g_free(info->ssid); + g_free(info); +#endif /* defined TIZEN_EXT */ return; } -- cgit v1.2.3