Lines Matching refs:link
347 static void __ieee80211_set_default_key(struct ieee80211_link_data *link, in __ieee80211_set_default_key() argument
350 struct ieee80211_sub_if_data *sdata = link->sdata; in __ieee80211_set_default_key()
360 link->gtk[idx]); in __ieee80211_set_default_key()
371 rcu_assign_pointer(link->default_multicast_key, key); in __ieee80211_set_default_key()
376 void ieee80211_set_default_key(struct ieee80211_link_data *link, int idx, in ieee80211_set_default_key() argument
379 lockdep_assert_wiphy(link->sdata->local->hw.wiphy); in ieee80211_set_default_key()
381 __ieee80211_set_default_key(link, idx, uni, multi); in ieee80211_set_default_key()
385 __ieee80211_set_default_mgmt_key(struct ieee80211_link_data *link, int idx) in __ieee80211_set_default_mgmt_key() argument
387 struct ieee80211_sub_if_data *sdata = link->sdata; in __ieee80211_set_default_mgmt_key()
395 link->gtk[idx]); in __ieee80211_set_default_mgmt_key()
397 rcu_assign_pointer(link->default_mgmt_key, key); in __ieee80211_set_default_mgmt_key()
402 void ieee80211_set_default_mgmt_key(struct ieee80211_link_data *link, in ieee80211_set_default_mgmt_key() argument
405 lockdep_assert_wiphy(link->sdata->local->hw.wiphy); in ieee80211_set_default_mgmt_key()
407 __ieee80211_set_default_mgmt_key(link, idx); in ieee80211_set_default_mgmt_key()
411 __ieee80211_set_default_beacon_key(struct ieee80211_link_data *link, int idx) in __ieee80211_set_default_beacon_key() argument
413 struct ieee80211_sub_if_data *sdata = link->sdata; in __ieee80211_set_default_beacon_key()
422 link->gtk[idx]); in __ieee80211_set_default_beacon_key()
424 rcu_assign_pointer(link->default_beacon_key, key); in __ieee80211_set_default_beacon_key()
429 void ieee80211_set_default_beacon_key(struct ieee80211_link_data *link, in ieee80211_set_default_beacon_key() argument
432 lockdep_assert_wiphy(link->sdata->local->hw.wiphy); in ieee80211_set_default_beacon_key()
434 __ieee80211_set_default_beacon_key(link, idx); in ieee80211_set_default_beacon_key()
438 struct ieee80211_link_data *link, in ieee80211_key_replace() argument
475 if (!link) { in ieee80211_key_replace()
476 link = sdata_dereference(sdata->link[link_id], sdata); in ieee80211_key_replace()
477 if (!link) in ieee80211_key_replace()
482 link_sta = rcu_dereference_protected(sta->link[link_id], in ieee80211_key_replace()
488 link = &sdata->deflink; in ieee80211_key_replace()
545 link->default_multicast_key); in ieee80211_key_replace()
548 link->default_mgmt_key); in ieee80211_key_replace()
551 link->default_beacon_key); in ieee80211_key_replace()
554 __ieee80211_set_default_key(link, -1, true, false); in ieee80211_key_replace()
556 __ieee80211_set_default_key(link, -1, false, true); in ieee80211_key_replace()
558 __ieee80211_set_default_mgmt_key(link, -1); in ieee80211_key_replace()
560 __ieee80211_set_default_beacon_key(link, -1); in ieee80211_key_replace()
565 rcu_assign_pointer(link->gtk[idx], new); in ieee80211_key_replace()
568 __ieee80211_set_default_key(link, new->conf.keyidx, in ieee80211_key_replace()
571 __ieee80211_set_default_key(link, new->conf.keyidx, in ieee80211_key_replace()
574 __ieee80211_set_default_mgmt_key(link, in ieee80211_key_replace()
577 __ieee80211_set_default_beacon_key(link, in ieee80211_key_replace()
844 struct ieee80211_link_data *link, in ieee80211_key_link() argument
847 struct ieee80211_sub_if_data *sdata = link->sdata; in ieee80211_key_link()
883 link_sta = rcu_dereference_protected(sta->link[link_id], in ieee80211_key_link()
899 link->gtk[idx]); in ieee80211_key_link()
935 ret = ieee80211_key_replace(sdata, link, sta, pairwise, old_key, key); in ieee80211_key_link()
1100 void ieee80211_remove_link_keys(struct ieee80211_link_data *link, in ieee80211_remove_link_keys() argument
1103 struct ieee80211_sub_if_data *sdata = link->sdata; in ieee80211_remove_link_keys()
1110 if (key->conf.link_id != link->link_id) in ieee80211_remove_link_keys()
1112 ieee80211_key_replace(key->sdata, link, key->sta, in ieee80211_remove_link_keys()
1369 sdata_dereference(sdata->link[link_id], sdata); in ieee80211_gtk_rekey_add()