|
|
@@ -109,6 +109,7 @@ |
|
|
|
{ |
|
|
|
struct ieee80211_bssid bssid; |
|
|
|
int sockfd; |
|
|
|
uint8_t zero_bssid[IEEE80211_ADDR_LEN]; |
|
|
|
|
|
|
|
memset(&bssid, 0, sizeof(bssid)); |
|
|
|
memset(nr, 0, sizeof(struct ieee80211_nodereq)); |
|
|
@@ -122,6 +123,12 @@ |
|
|
|
close(sockfd); |
|
|
|
return 0; |
|
|
|
} |
|
|
|
memset(&zero_bssid, 0, sizeof(zero_bssid)); |
|
|
|
if (memcmp(bssid.i_bssid, zero_bssid, |
|
|
|
IEEE80211_ADDR_LEN) == 0) { |
|
|
|
close(sockfd); |
|
|
|
return 0; |
|
|
|
} |
|
|
|
strlcpy(nr->nr_ifname, iface, sizeof(nr->nr_ifname)); |
|
|
|
memcpy(&nr->nr_macaddr, bssid.i_bssid, sizeof(nr->nr_macaddr)); |
|
|
|
if ((ioctl(sockfd, SIOCG80211NODE, nr)) < 0 && nr->nr_rssi) { |
|
|
|