From d39389afdd0ea7b8e2d3057791057ed13fcfd1a6 Mon Sep 17 00:00:00 2001 From: James Prestwood Date: Fri, 18 Mar 2022 09:44:15 -0700 Subject: [PATCH] client: add a few return checks These were caught by static analysis --- client/daemon.c | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/client/daemon.c b/client/daemon.c index 509f8137..64bb41c9 100644 --- a/client/daemon.c +++ b/client/daemon.c @@ -57,24 +57,26 @@ static void get_info_callback(struct l_dbus_message *message, void *user_data) if (dbus_message_has_error(message)) return; - if (!l_dbus_message_get_arguments(message, "a{sv}", &iter)) { - l_error("Failed to parse GetInfo message"); - return; - } + if (!l_dbus_message_get_arguments(message, "a{sv}", &iter)) + goto parse_failed; while (l_dbus_message_iter_next_entry(&iter, &key, &variant)) { if (strcmp(key, "NetworkConfigurationEnabled")) continue; - l_dbus_message_iter_get_variant(&variant, "b", - &netconfig_enabled); + if (!l_dbus_message_iter_get_variant(&variant, "b", + &netconfig_enabled)) + goto parse_failed; + break; } if (!command_is_interactive_mode()) return; - l_dbus_message_get_arguments(message, "a{sv}", &iter); + if (!l_dbus_message_get_arguments(message, "a{sv}", &iter)) + goto parse_failed; + display("NetworkConfigurationEnabled: %s\n", netconfig_enabled ? "enabled" : "disabled"); @@ -90,6 +92,12 @@ static void get_info_callback(struct l_dbus_message *message, void *user_data) display("%s: %s\n", key, sval); } } + + return; + +parse_failed: + l_error("Failed to parse GetInfo message"); + return; } static bool daemon_get_info(void)