Fix dereferencing issues 17/281417/1 accepted/tizen/unified/20220920.110641
authorJaehyun Kim <jeik01.kim@samsung.com>
Fri, 16 Sep 2022 14:13:01 +0000 (23:13 +0900)
committerJaehyun Kim <jeik01.kim@samsung.com>
Fri, 16 Sep 2022 14:13:47 +0000 (23:13 +0900)
Change-Id: I8ec97355b5ebf673d792339a7d0a2911392d6a89
Signed-off-by: Jaehyun Kim <jeik01.kim@samsung.com>
plugins/wifi.c
src/dhcp.c

index 90d4b8f..7a8eccc 100755 (executable)
@@ -3989,7 +3989,7 @@ static void disconnect_callback(int result, GSupplicantInterface *interface,
        struct connman_network *network = dd->network;
 #if defined TIZEN_EXT
        GList *list;
-       struct wifi_data *wifi;
+       struct wifi_data *wifi = NULL;
 
        g_free(dd);
        DBG("network %p result %d", network, result);
@@ -4004,7 +4004,7 @@ static void disconnect_callback(int result, GSupplicantInterface *interface,
                        goto found;
        }
 
-       if (network == wifi->pending_network)
+       if (wifi && network == wifi->pending_network)
                wifi->pending_network = NULL;
 
        /* wifi_data may be invalid because wifi is already disabled */
@@ -4198,7 +4198,7 @@ static void signalpoll_callback(int result, int maxspeed, int strength,
        struct connman_device *device;
        struct connman_network *network = user_data;
        GSupplicantNetwork *supplicant_network;
-       struct wifi_data *wifi;
+       struct wifi_data *wifi = NULL;
        uint16_t freq = connman_network_get_frequency(network);
        const char *group = connman_network_get_group(network);
 
@@ -4212,7 +4212,7 @@ static void signalpoll_callback(int result, int maxspeed, int strength,
        if (device)
                wifi = connman_device_get_data(device);
 
-       if (group) {
+       if (group && wifi) {
                supplicant_network = g_supplicant_interface_get_network(wifi->interface, group);
                if (supplicant_network) {
                        g_supplicant_network_set_signal(supplicant_network, strength);
index 7c446cf..f15a214 100644 (file)
@@ -848,7 +848,7 @@ int __connman_dhcp_start(struct connman_ipconfig *ipconfig,
        dhcp->user_data = user_data;
 
 #if defined TIZEN_EXT
-       if (connman_network_get_bool(network, "WiFi.RoamingDHCP")) {
+       if (network && connman_network_get_bool(network, "WiFi.RoamingDHCP")) {
                const char *last_addr = __connman_ipconfig_get_dhcp_address(ipconfig);
 
                DBG("Start DHCP with last address request");