GSList *bss_info_list = NULL;
const gchar *ssid = NULL;
const gchar *bssid = NULL;
+ gsize ssid_len;
GSList *vsie_list = NULL;
int freq = 0;
int rssi = 0;
while (g_variant_iter_loop(iter, "{sv}", &key, &value)) {
if (g_strcmp0(key, "ssid") == 0) {
- ssid = g_variant_get_string(value, NULL);
+ ssid = g_variant_get_fixed_array(value, &ssid_len, sizeof(guchar));
ssid_found = TRUE;
} else if (g_strcmp0(key, "bssid") == 0) {
bssid = g_variant_get_string(value, NULL);
return NET_ERR_UNKNOWN;
}
- g_strlcpy(bss->ssid, ssid, strlen(ssid) + 1);
+ memcpy(bss->ssid, ssid, ssid_len);
g_strlcpy(bss->bssid, bssid, WIFI_MAC_ADDR_LEN + 1);
bss->freq = freq;
bss->rssi = rssi;