Lines Matching +full:out +full:- +full:of +full:- +full:band

2  * FST module - FST group object implementation
5 * This software may be distributed under the terms of the BSD license.
33 WPA_ASSERT(mbie->eid == WLAN_EID_MULTI_BAND); in fst_dump_mb_ies()
34 WPA_ASSERT(2U + mbie->len >= sizeof(*mbie)); in fst_dump_mb_ies()
35 len = 2 + mbie->len; in fst_dump_mb_ies()
44 mbie->mb_ctrl, mbie->band_id, mbie->op_class, in fst_dump_mb_ies()
45 mbie->chan, MAC2STR(mbie->bssid), mbie->beacon_int, in fst_dump_mb_ies()
46 mbie->tsf_offs[0], mbie->tsf_offs[1], in fst_dump_mb_ies()
47 mbie->tsf_offs[2], mbie->tsf_offs[3], in fst_dump_mb_ies()
48 mbie->tsf_offs[4], mbie->tsf_offs[5], in fst_dump_mb_ies()
49 mbie->tsf_offs[6], mbie->tsf_offs[7], in fst_dump_mb_ies()
50 mbie->mb_connection_capability, in fst_dump_mb_ies()
51 mbie->fst_session_tmout); in fst_dump_mb_ies()
54 s -= len; in fst_dump_mb_ies()
60 const u8 *own_addr, enum mb_band_id band, u8 channel) in fst_fill_mb_ie() argument
72 mbie->eid = WLAN_EID_MULTI_BAND; in fst_fill_mb_ie()
73 mbie->len = len - 2; in fst_fill_mb_ie()
75 mbie->mb_ctrl = MB_STA_ROLE_AP; in fst_fill_mb_ie()
76 mbie->mb_connection_capability = MB_CONNECTION_CAPABILITY_AP; in fst_fill_mb_ie()
78 mbie->mb_ctrl = MB_STA_ROLE_NON_PCP_NON_AP; in fst_fill_mb_ie()
79 mbie->mb_connection_capability = 0; in fst_fill_mb_ie()
82 os_memcpy(mbie->bssid, bssid, ETH_ALEN); in fst_fill_mb_ie()
83 mbie->band_id = band; in fst_fill_mb_ie()
84 mbie->op_class = 0; /* means all */ in fst_fill_mb_ie()
85 mbie->chan = channel; in fst_fill_mb_ie()
86 mbie->fst_session_tmout = FST_DEFAULT_SESSION_TIMEOUT_TU; in fst_fill_mb_ie()
89 mbie->mb_ctrl |= MB_CTRL_STA_MAC_PRESENT; in fst_fill_mb_ie()
117 while (num_modes--) { in fst_fill_iface_mb_ies()
118 b = fst_hw_mode_to_band(modes->mode); in fst_fill_iface_mb_ies()
187 switch (MB_CTRL_ROLE(mbie->mb_ctrl)) { in fst_mbie_get_peer_addr()
189 peer_addr = mbie->bssid; in fst_mbie_get_peer_addr()
192 if (mbie->mb_ctrl & MB_CTRL_STA_MAC_PRESENT && in fst_mbie_get_peer_addr()
193 (size_t) 2 + mbie->len >= sizeof(*mbie) + ETH_ALEN) in fst_mbie_get_peer_addr()
214 if (mbie->eid != WLAN_EID_MULTI_BAND) { in fst_mbie_get_peer_addr_for_band()
215 fst_printf(MSG_INFO, "unexpected eid %d", mbie->eid); in fst_mbie_get_peer_addr_for_band()
219 if (mbie->len < sizeof(*mbie) - 2 || mbie->len > s - 2) { in fst_mbie_get_peer_addr_for_band()
221 mbie->len); in fst_mbie_get_peer_addr_for_band()
225 if (mbie->band_id == band_id) in fst_mbie_get_peer_addr_for_band()
228 p += 2 + mbie->len; in fst_mbie_get_peer_addr_for_band()
229 s -= 2 + mbie->len; in fst_mbie_get_peer_addr_for_band()
232 fst_printf(MSG_INFO, "mbie doesn't contain band %d", band_id); in fst_mbie_get_peer_addr_for_band()
255 g->dialog_token++; in fst_group_assign_dialog_token()
256 if (g->dialog_token == 0) in fst_group_assign_dialog_token()
257 g->dialog_token++; in fst_group_assign_dialog_token()
258 return g->dialog_token; in fst_group_assign_dialog_token()
264 g->fsts_id++; in fst_group_assign_fsts_id()
265 return g->fsts_id; in fst_group_assign_fsts_id()
270 * fst_group_get_peer_other_connection_1 - Find peer's "other" connection
275 * @band_id: "other" connection band id
276 * @other_peer_addr (out): Peer's MAC address on the "other" connection (on the
324 * fst_group_get_peer_other_connection_2 - Find peer's "other" connection
325 * (iface, MAC tuple) by using MB IEs of other peers.
329 * @band_id: "other" connection band id
330 * @other_peer_addr (out): Peer's MAC address on the "other" connection (on the
334 * For each connection, MB IE (of cur_peer_addr on other_iface) is parsed and
380 * fst_group_get_peer_other_connection - Find peer's "other" connection (iface,
385 * @band_id: "other" connection band id
386 * @other_peer_addr (out): Peer's MAC address on the "other" connection (on the
390 * has peer_addr on iface. It searches for another connection of the same peer
447 dl_list_init(&g->ifaces); in fst_group_create()
448 os_strlcpy(g->group_id, group_id, sizeof(g->group_id)); in fst_group_create()
450 dl_list_add_tail(&fst_global_groups_list, &g->global_groups_lentry); in fst_group_create()
461 struct dl_list *list = &g->ifaces; in fst_group_attach_iface()
467 * multiple MB IEs creation according to the spec (see 10.32 Multi-band in fst_group_attach_iface()
474 list = &f->group_lentry; in fst_group_attach_iface()
476 dl_list_add(list, &i->group_lentry); in fst_group_attach_iface()
482 dl_list_del(&i->group_lentry); in fst_group_detach_iface()
490 dl_list_del(&group->global_groups_lentry); in fst_group_delete()
491 WPA_ASSERT(dl_list_empty(&group->ifaces)); in fst_group_delete()
524 fst_printf_iface(i, MSG_DEBUG, "multi-band IE set to %p", mbie); in fst_group_update_ie()