Lines Matching refs:links

278 			cr.links[0].bssid = bssid;  in cfg80211_conn_work()
381 cr.links[0].bssid = mgmt->bssid; in cfg80211_sme_rx_auth()
473 if (!wdev->links[link].client.current_bss) in cfg80211_wdev_release_bsses()
475 cfg80211_unhold_bss(wdev->links[link].client.current_bss); in cfg80211_wdev_release_bsses()
477 &wdev->links[link].client.current_bss->pub); in cfg80211_wdev_release_bsses()
478 wdev->links[link].client.current_bss = NULL; in cfg80211_wdev_release_bsses()
487 if (!wdev->links[link].client.current_bss || in cfg80211_wdev_release_link_bsses()
490 cfg80211_unhold_bss(wdev->links[link].client.current_bss); in cfg80211_wdev_release_link_bsses()
492 &wdev->links[link].client.current_bss->pub); in cfg80211_wdev_release_link_bsses()
493 wdev->links[link].client.current_bss = NULL; in cfg80211_wdev_release_link_bsses()
723 if (!cr->links[link].bss) in cfg80211_connect_result_release_bsses()
725 cfg80211_unhold_bss(bss_from_pub(cr->links[link].bss)); in cfg80211_connect_result_release_bsses()
726 cfg80211_put_bss(wdev->wiphy, cr->links[link].bss); in cfg80211_connect_result_release_bsses()
763 if (WARN_ON(!cr->links[link].addr)) in __cfg80211_connect_result()
774 connected_addr = cr->valid_links ? cr->ap_mld_addr : cr->links[0].bssid; in __cfg80211_connect_result()
806 if (WARN_ON_ONCE(!cr->links[link].bss)) in __cfg80211_connect_result()
813 if (cr->links[link].status != WLAN_STATUS_SUCCESS) in __cfg80211_connect_result()
816 if (cr->links[link].bss) in __cfg80211_connect_result()
819 cr->links[link].bss = in __cfg80211_connect_result()
821 cr->links[link].bssid, in __cfg80211_connect_result()
826 if (!cr->links[link].bss) { in __cfg80211_connect_result()
830 cfg80211_hold_bss(bss_from_pub(cr->links[link].bss)); in __cfg80211_connect_result()
851 memset(wdev->links, 0, sizeof(wdev->links)); in __cfg80211_connect_result()
853 if (cr->links[link].status == WLAN_STATUS_SUCCESS) in __cfg80211_connect_result()
857 if (!cr->links[link].bss) in __cfg80211_connect_result()
859 cfg80211_unhold_bss(bss_from_pub(cr->links[link].bss)); in __cfg80211_connect_result()
860 cfg80211_put_bss(wdev->wiphy, cr->links[link].bss); in __cfg80211_connect_result()
864 wdev->links[link].client.current_bss = in __cfg80211_connect_result()
865 bss_from_pub(cr->links[link].bss); in __cfg80211_connect_result()
870 memcpy(wdev->links[link].addr, cr->links[link].addr, in __cfg80211_connect_result()
879 ieee80211_bss_get_elem(cr->links[link].bss, in __cfg80211_connect_result()
897 cr->links[link].bss->channel->band, in __cfg80211_connect_result()
904 ssid = ieee80211_bss_get_elem(cr->links[link].bss, in __cfg80211_connect_result()
920 cfg80211_put_bss(wdev->wiphy, cr->links[link].bss); in __cfg80211_connect_result()
979 cfg80211_update_link_bss(wdev, &params->links[link].bss); in cfg80211_connect_done()
980 link_info_size += params->links[link].bssid ? ETH_ALEN : 0; in cfg80211_connect_done()
981 link_info_size += params->links[link].addr ? ETH_ALEN : 0; in cfg80211_connect_done()
993 params->links[link].bss); in cfg80211_connect_done()
1044 if (params->links[link].bss) in cfg80211_connect_done()
1046 bss_from_pub(params->links[link].bss)); in cfg80211_connect_done()
1047 ev->cr.links[link].bss = params->links[link].bss; in cfg80211_connect_done()
1048 ev->cr.links[link].status = params->links[link].status; in cfg80211_connect_done()
1050 if (params->links[link].addr) { in cfg80211_connect_done()
1051 ev->cr.links[link].addr = next; in cfg80211_connect_done()
1052 memcpy((void *)ev->cr.links[link].addr, in cfg80211_connect_done()
1053 params->links[link].addr, in cfg80211_connect_done()
1057 if (params->links[link].bssid) { in cfg80211_connect_done()
1058 ev->cr.links[link].bssid = next; in cfg80211_connect_done()
1059 memcpy((void *)ev->cr.links[link].bssid, in cfg80211_connect_done()
1060 params->links[link].bssid, in cfg80211_connect_done()
1099 if (WARN_ON(!info->links[link].addr)) in __cfg80211_roamed()
1107 if (WARN_ON(!info->links[link].bss)) in __cfg80211_roamed()
1111 memset(wdev->links, 0, sizeof(wdev->links)); in __cfg80211_roamed()
1114 cfg80211_hold_bss(bss_from_pub(info->links[link].bss)); in __cfg80211_roamed()
1115 wdev->links[link].client.current_bss = in __cfg80211_roamed()
1116 bss_from_pub(info->links[link].bss); in __cfg80211_roamed()
1121 info->links[0].bss->bssid; in __cfg80211_roamed()
1125 memcpy(wdev->links[link].addr, info->links[link].addr, in __cfg80211_roamed()
1160 cfg80211_put_bss(wdev->wiphy, info->links[link].bss); in __cfg80211_roamed()
1177 link_info_size += info->links[link].addr ? ETH_ALEN : 0; in cfg80211_roamed()
1178 link_info_size += info->links[link].bssid ? ETH_ALEN : 0; in cfg80211_roamed()
1180 if (info->links[link].bss) in cfg80211_roamed()
1183 info->links[link].bss = in cfg80211_roamed()
1185 info->links[link].channel, in cfg80211_roamed()
1186 info->links[link].bssid, in cfg80211_roamed()
1192 if (!info->links[link].bss) { in cfg80211_roamed()
1254 ev->rm.links[link].bss = info->links[link].bss; in cfg80211_roamed()
1256 if (info->links[link].addr) { in cfg80211_roamed()
1257 ev->rm.links[link].addr = next; in cfg80211_roamed()
1258 memcpy((void *)ev->rm.links[link].addr, in cfg80211_roamed()
1259 info->links[link].addr, in cfg80211_roamed()
1264 if (info->links[link].bssid) { in cfg80211_roamed()
1265 ev->rm.links[link].bssid = next; in cfg80211_roamed()
1266 memcpy((void *)ev->rm.links[link].bssid, in cfg80211_roamed()
1267 info->links[link].bssid, in cfg80211_roamed()
1281 cfg80211_put_bss(wdev->wiphy, info->links[link].bss); in cfg80211_roamed()