Home | History | Annotate | Download | only in net80211

Lines Matching refs:ic

86 null_key_alloc(struct ieee80211com *ic, const struct ieee80211_key *k,
89 if (!(&ic->ic_nw_keys[0] <= k &&
90 k < &ic->ic_nw_keys[IEEE80211_WEP_NKID])) {
105 *keyix = k - ic->ic_nw_keys;
112 null_key_delete(struct ieee80211com *ic, const struct ieee80211_key *k)
118 null_key_set(struct ieee80211com *ic, const struct ieee80211_key *k,
125 null_key_update(struct ieee80211com *ic)
143 dev_key_alloc(struct ieee80211com *ic, const struct ieee80211_key *key,
146 return ic->ic_crypto.cs_key_alloc(ic, key, keyix, rxkeyix);
150 dev_key_delete(struct ieee80211com *ic, const struct ieee80211_key *key)
152 return ic->ic_crypto.cs_key_delete(ic, key);
156 dev_key_set(struct ieee80211com *ic, const struct ieee80211_key *key,
159 return ic->ic_crypto.cs_key_set(ic, key, mac);
166 ieee80211_crypto_attach(struct ieee80211com *ic)
168 struct ieee80211_crypto_state *cs = &ic->ic_crypto;
176 ieee80211_crypto_resetkey(ic, &cs->cs_nw_keys[i],
193 ieee80211_crypto_detach(struct ieee80211com *ic)
195 ieee80211_crypto_delglobalkeys(ic);
263 * ieee80211_key_update_begin(ic);
264 * ieee80211_key_update_end(ic);
267 ieee80211_crypto_newkey(struct ieee80211com *ic, int cipher, int flags,
280 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
282 ic->ic_stats.is_crypto_badcipher++;
295 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
307 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
312 ic->ic_stats.is_crypto_nocipher++;
324 if ((ic->ic_caps & (1<<cipher)) == 0) {
325 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
337 (ic->ic_caps & IEEE80211_C_TKIPMIC) == 0) {
338 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
362 keyctx = cip->ic_attach(ic, key);
364 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
368 ic->ic_stats.is_crypto_attachfail++;
389 if (!dev_key_alloc(ic, key, &keyix, &rxkeyix)) {
399 ic->ic_stats.is_crypto_swfallback++;
400 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
410 ic->ic_stats.is_crypto_keyfail++;
411 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
427 _ieee80211_crypto_delkey(struct ieee80211com *ic, struct ieee80211_key *key)
433 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
445 if (!dev_key_delete(ic, key)) {
446 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
449 ic->ic_stats.is_crypto_delkey++;
455 ieee80211_crypto_resetkey(ic, key, IEEE80211_KEYIX_NONE);
463 ieee80211_crypto_delkey(struct ieee80211com *ic, struct ieee80211_key *key)
467 ieee80211_key_update_begin(ic);
468 status = _ieee80211_crypto_delkey(ic, key);
469 ieee80211_key_update_end(ic);
477 ieee80211_crypto_delglobalkeys(struct ieee80211com *ic)
481 ieee80211_key_update_begin(ic);
483 (void)_ieee80211_crypto_delkey(ic, &ic->ic_nw_keys[i]);
484 ieee80211_key_update_end(ic);
491 * ieee80211_key_update_begin(ic);
492 * ieee80211_key_update_end(ic);
495 ieee80211_crypto_setkey(struct ieee80211com *ic, struct ieee80211_key *key,
502 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
513 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
517 ic->ic_stats.is_crypto_setkey_cipher++;
522 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
524 ic->ic_stats.is_crypto_setkey_nokey++;
527 return dev_key_set(ic, key, macaddr);
539 ieee80211_crypto_encap(struct ieee80211com *ic, struct ieee80211_node *ni,
557 if (ic->ic_def_txkey == IEEE80211_KEYIX_NONE) {
558 IEEE80211_DPRINTF(ic, IEEE80211_MSG_CRYPTO,
561 ic->ic_def_txkey);
562 ic->ic_stats.is_tx_nodefkey++;
565 keyid = ic->ic_def_txkey;
566 k = &ic->ic_nw_keys[ic->ic_def_txkey];
578 hdrlen = ieee80211_hdrspace(ic, mtod(m, void *));
602 ieee80211_crypto_decap(struct ieee80211com *ic,
618 IEEE80211_DPRINTF(ic, IEEE80211_MSG_ANY,
621 ic->ic_stats.is_rx_tooshort++;
635 k = &ic->ic_nw_keys[keyid >> 6];
650 ic->ic_stats.is_rx_tooshort++;
658 IEEE80211_DPRINTF(ic, IEEE80211_MSG_ANY,
661 ic->ic_stats.is_rx_tooshort++;