From 4da53f18e97043b387cb46cc29797ba6494fbb0d Mon Sep 17 00:00:00 2001 From: Matt Porter Date: Tue, 24 Jul 2018 12:21:36 -0400 Subject: Fix crash in parsing of technology added and removed signals The object path in the TechnologyAdded and TechnologyRemoved signals is provided as a tuple. The binding currently segfaults when receiving this signal since it tries to parse it with an invalid variant format string. Update the format string parameter to reflect that it should parse the object path as a tuple. Bug-AGL: SPEC-1585 Change-Id: I36a588ec43475a24996b9a58c1f326a35d260396 Signed-off-by: Matt Porter --- binding/network-api.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/binding/network-api.c b/binding/network-api.c index f2c3c7a..90b132e 100644 --- a/binding/network-api.c +++ b/binding/network-api.c @@ -278,7 +278,7 @@ static void network_manager_signal_callback( if (!g_strcmp0(signal_name, "TechnologyAdded")) { - g_variant_get(parameters, "o(a{sv})", &path, &array); + g_variant_get(parameters, "(oa{sv})", &path, &array); basename = connman_strip_path(path); g_assert(basename); /* guaranteed by dbus */ @@ -310,7 +310,7 @@ static void network_manager_signal_callback( } else if (!g_strcmp0(signal_name, "TechnologyRemoved")) { - g_variant_get(parameters, "o", &path); + g_variant_get(parameters, "(o)", &path); basename = connman_strip_path(path); g_assert(basename); /* guaranteed by dbus */ -- cgit 1.2.3-korg