Use for_each_link() in most cases
This was done using the below semantic patch. There are a few more places that were missed due to variable declarations or additional checks in the for loop. @@ iterator name for_each_link; identifier max_links =~ "MAX_NUM_MLD_LINKS|MAX_NUM_MLO_LINKS"; expression links; expression further_tests; identifier i; statement stmt; @@ -for (i = 0; i < max_links; i++) +for_each_link(links, i) { ( - if (!(links & BIT(i))) - continue; ... | - if (!(links & BIT(i)) || further_tests) + if (further_tests) continue; ... | - if (further_tests || !(links & BIT(i))) + if (further_tests) continue; ... | - if (links & BIT(i)) stmt | - if (further_tests && (links & BIT(i))) + if (further_tests) stmt | - if ((links & BIT(i)) && further_tests) + if (further_tests) stmt ) } Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
This commit is contained in:
parent
c9f8fe0664
commit
dbdf7ef679
13 changed files with 31 additions and 106 deletions
|
@ -414,10 +414,7 @@ static int wpa_bss_in_use(struct wpa_supplicant *wpa_s, struct wpa_bss *bss)
|
|||
if (!wpa_s->valid_links)
|
||||
return 0;
|
||||
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
if (ether_addr_equal(bss->bssid, wpa_s->links[i].bssid))
|
||||
return 1;
|
||||
}
|
||||
|
|
|
@ -11995,10 +11995,7 @@ static int wpas_ctrl_iface_mlo_signal_poll(struct wpa_supplicant *wpa_s,
|
|||
pos = buf;
|
||||
end = buf + buflen;
|
||||
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(mlo_si.valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(mlo_si.valid_links, i) {
|
||||
ret = os_snprintf(pos, end - pos,
|
||||
"LINK_ID=%d\nRSSI=%d\nLINKSPEED=%lu\n"
|
||||
"NOISE=%d\nFREQUENCY=%u\n",
|
||||
|
@ -12070,10 +12067,7 @@ static int wpas_ctrl_iface_mlo_status(struct wpa_supplicant *wpa_s,
|
|||
pos = buf;
|
||||
end = buf + buflen;
|
||||
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
ret = os_snprintf(pos, end - pos, "link_id=%d\nfreq=%u\n"
|
||||
"ap_link_addr=" MACSTR
|
||||
"\nsta_link_addr=" MACSTR "\n",
|
||||
|
|
|
@ -3983,10 +3983,7 @@ static int wpa_drv_get_mlo_info(struct wpa_supplicant *wpa_s)
|
|||
if (!mlo.valid_links)
|
||||
return 0;
|
||||
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(mlo.valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(mlo.valid_links, i) {
|
||||
if (!ether_addr_equal(wpa_s->links[i].addr,
|
||||
mlo.links[i].addr) ||
|
||||
!ether_addr_equal(wpa_s->links[i].bssid,
|
||||
|
@ -4004,10 +4001,7 @@ static int wpa_drv_get_mlo_info(struct wpa_supplicant *wpa_s)
|
|||
wpa_s->valid_links = mlo.valid_links;
|
||||
wpa_s->mlo_assoc_link_id = mlo.assoc_link_id;
|
||||
os_memcpy(wpa_s->ap_mld_addr, mlo.ap_mld_addr, ETH_ALEN);
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
os_memcpy(wpa_s->links[i].addr, mlo.links[i].addr, ETH_ALEN);
|
||||
os_memcpy(wpa_s->links[i].bssid, mlo.links[i].bssid, ETH_ALEN);
|
||||
wpa_s->links[i].freq = mlo.links[i].freq;
|
||||
|
|
|
@ -1520,10 +1520,7 @@ static bool wpas_beacon_rep_scan_match(struct wpa_supplicant *wpa_s,
|
|||
if (!wpa_s->valid_links)
|
||||
return ether_addr_equal(wpa_s->current_bss->bssid, bssid);
|
||||
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
if (ether_addr_equal(wpa_s->links[i].bssid, bssid))
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -698,10 +698,7 @@ static struct wpabuf * wpa_supplicant_ml_probe_ie(int mld_id, u16 links)
|
|||
else
|
||||
wpa_printf(MSG_DEBUG, "MLD: Probing links 0x%04x", links);
|
||||
|
||||
for (link_id = 0; link_id < MAX_NUM_MLD_LINKS; link_id++) {
|
||||
if (!(links & BIT(link_id)))
|
||||
continue;
|
||||
|
||||
for_each_link(links, link_id) {
|
||||
wpabuf_put_u8(extra_ie, EHT_ML_SUB_ELEM_PER_STA_PROFILE);
|
||||
|
||||
/* Subelement length includes only the control */
|
||||
|
|
|
@ -405,10 +405,7 @@ static struct wpa_bss * wpas_ml_connect_pref(struct wpa_supplicant *wpa_s,
|
|||
return bss;
|
||||
|
||||
if (!is_zero_ether_addr(wpa_s->conf->mld_connect_bssid_pref)) {
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
if (wpa_s->mlo_assoc_link_id == i)
|
||||
continue;
|
||||
|
||||
|
@ -439,10 +436,7 @@ static struct wpa_bss * wpas_ml_connect_pref(struct wpa_supplicant *wpa_s,
|
|||
return bss;
|
||||
}
|
||||
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
if (wpa_s->mlo_assoc_link_id == i)
|
||||
continue;
|
||||
|
||||
|
@ -2597,10 +2591,7 @@ mscs_fail:
|
|||
params.mld_params.mld_addr = wpa_s->ap_mld_addr;
|
||||
params.mld_params.valid_links = wpa_s->valid_links;
|
||||
params.mld_params.assoc_link_id = wpa_s->mlo_assoc_link_id;
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
params.mld_params.mld_links[i].bssid =
|
||||
wpa_s->links[i].bssid;
|
||||
params.mld_params.mld_links[i].freq =
|
||||
|
|
|
@ -2090,10 +2090,7 @@ bool wnm_is_bss_excluded(struct wpa_supplicant *wpa_s, struct wpa_bss *bss)
|
|||
if (!wpa_s->valid_links)
|
||||
return false;
|
||||
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
if (ether_addr_equal(wpa_s->links[i].bssid, bss->bssid)) {
|
||||
wpa_dbg(wpa_s, MSG_DEBUG,
|
||||
"WNM: MLD: Disassociation imminent: current link");
|
||||
|
|
|
@ -9342,10 +9342,7 @@ bool wpas_ap_link_address(struct wpa_supplicant *wpa_s, const u8 *addr)
|
|||
if (!wpa_s->valid_links)
|
||||
return false;
|
||||
|
||||
for (i = 0; i < MAX_NUM_MLD_LINKS; i++) {
|
||||
if (!(wpa_s->valid_links & BIT(i)))
|
||||
continue;
|
||||
|
||||
for_each_link(wpa_s->valid_links, i) {
|
||||
if (ether_addr_equal(wpa_s->links[i].bssid, addr))
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue