diff --git a/src/scan.c b/src/scan.c index e1257e1f..2ced83c5 100644 --- a/src/scan.c +++ b/src/scan.c @@ -98,3 +98,10 @@ enum scan_ssid_security scan_get_ssid_security( return SCAN_SSID_SECURITY_NONE; } + +void scan_bss_free(struct scan_bss *bss) +{ + l_free(bss->rsne); + l_free(bss->wpa); + l_free(bss); +} diff --git a/src/scan.h b/src/scan.h index 21365101..18383468 100644 --- a/src/scan.h +++ b/src/scan.h @@ -52,3 +52,4 @@ void scan_get_results(struct l_genl_family *nl80211, uint32_t ifindex, enum scan_ssid_security scan_get_ssid_security(enum ie_bss_capability bss_cap, const struct ie_rsn_info *info); +void scan_bss_free(struct scan_bss *bss); diff --git a/src/wiphy.c b/src/wiphy.c index 6d62ede6..2be1642c 100644 --- a/src/wiphy.c +++ b/src/wiphy.c @@ -436,9 +436,8 @@ static void bss_free(void *data) l_debug("Freeing BSS %02X:%02X:%02X:%02X:%02X:%02X", bss->addr[0], bss->addr[1], bss->addr[2], bss->addr[3], bss->addr[4], bss->addr[5]); - l_free(bss->rsne); - l_free(bss->wpa); - l_free(bss); + + scan_bss_free(bss); } static void network_free(void *data)