Lines Matching refs:rx

87 ieee80211_rx_h_michael_mic_verify(struct ieee80211_rx_data *rx)  in ieee80211_rx_h_michael_mic_verify()  argument
93 struct sk_buff *skb = rx->skb; in ieee80211_rx_h_michael_mic_verify()
114 if (!(status->flag & RX_FLAG_IV_STRIPPED) && rx->key && in ieee80211_rx_h_michael_mic_verify()
115 rx->key->conf.cipher == WLAN_CIPHER_SUITE_TKIP) in ieee80211_rx_h_michael_mic_verify()
126 if (!rx->key || rx->key->conf.cipher != WLAN_CIPHER_SUITE_TKIP || in ieee80211_rx_h_michael_mic_verify()
130 if (rx->sdata->vif.type == NL80211_IFTYPE_AP && rx->key->conf.keyidx) { in ieee80211_rx_h_michael_mic_verify()
147 if (skb_linearize(rx->skb)) in ieee80211_rx_h_michael_mic_verify()
153 key = &rx->key->conf.key[NL80211_TKIP_DATA_OFFSET_RX_MIC_KEY]; in ieee80211_rx_h_michael_mic_verify()
163 rx->key->u.tkip.rx[rx->security_idx].iv32 = rx->tkip_iv32; in ieee80211_rx_h_michael_mic_verify()
164 rx->key->u.tkip.rx[rx->security_idx].iv16 = rx->tkip_iv16; in ieee80211_rx_h_michael_mic_verify()
169 rx->key->u.tkip.mic_failures++; in ieee80211_rx_h_michael_mic_verify()
177 cfg80211_michael_mic_failure(rx->sdata->dev, hdr->addr2, in ieee80211_rx_h_michael_mic_verify()
181 rx->key ? rx->key->conf.keyidx : -1, in ieee80211_rx_h_michael_mic_verify()
261 ieee80211_crypto_tkip_decrypt(struct ieee80211_rx_data *rx) in ieee80211_crypto_tkip_decrypt() argument
263 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) rx->skb->data; in ieee80211_crypto_tkip_decrypt()
265 struct ieee80211_key *key = rx->key; in ieee80211_crypto_tkip_decrypt()
266 struct sk_buff *skb = rx->skb; in ieee80211_crypto_tkip_decrypt()
274 if (!rx->sta || skb->len - hdrlen < 12) in ieee80211_crypto_tkip_decrypt()
278 if (skb_linearize(rx->skb)) in ieee80211_crypto_tkip_decrypt()
290 res = ieee80211_tkip_decrypt_data(rx->local->wep_rx_tfm, in ieee80211_crypto_tkip_decrypt()
292 skb->len - hdrlen, rx->sta->sta.addr, in ieee80211_crypto_tkip_decrypt()
293 hdr->addr1, hwaccel, rx->security_idx, in ieee80211_crypto_tkip_decrypt()
294 &rx->tkip_iv32, in ieee80211_crypto_tkip_decrypt()
295 &rx->tkip_iv16); in ieee80211_crypto_tkip_decrypt()
492 ieee80211_crypto_ccmp_decrypt(struct ieee80211_rx_data *rx, in ieee80211_crypto_ccmp_decrypt() argument
495 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)rx->skb->data; in ieee80211_crypto_ccmp_decrypt()
497 struct ieee80211_key *key = rx->key; in ieee80211_crypto_ccmp_decrypt()
498 struct sk_buff *skb = rx->skb; in ieee80211_crypto_ccmp_decrypt()
511 if (!rx->sta || data_len < 0) in ieee80211_crypto_ccmp_decrypt()
515 if (!pskb_may_pull(rx->skb, hdrlen + IEEE80211_CCMP_HDR_LEN)) in ieee80211_crypto_ccmp_decrypt()
518 if (skb_linearize(rx->skb)) in ieee80211_crypto_ccmp_decrypt()
525 queue = rx->security_idx; in ieee80211_crypto_ccmp_decrypt()
718 ieee80211_crypto_gcmp_decrypt(struct ieee80211_rx_data *rx) in ieee80211_crypto_gcmp_decrypt() argument
720 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)rx->skb->data; in ieee80211_crypto_gcmp_decrypt()
722 struct ieee80211_key *key = rx->key; in ieee80211_crypto_gcmp_decrypt()
723 struct sk_buff *skb = rx->skb; in ieee80211_crypto_gcmp_decrypt()
737 if (!rx->sta || data_len < 0) in ieee80211_crypto_gcmp_decrypt()
741 if (!pskb_may_pull(rx->skb, hdrlen + IEEE80211_GCMP_HDR_LEN)) in ieee80211_crypto_gcmp_decrypt()
744 if (skb_linearize(rx->skb)) in ieee80211_crypto_gcmp_decrypt()
751 queue = rx->security_idx; in ieee80211_crypto_gcmp_decrypt()
830 ieee80211_crypto_cs_decrypt(struct ieee80211_rx_data *rx) in ieee80211_crypto_cs_decrypt() argument
832 struct ieee80211_key *key = rx->key; in ieee80211_crypto_cs_decrypt()
833 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)rx->skb->data; in ieee80211_crypto_cs_decrypt()
836 struct ieee80211_rx_status *status = IEEE80211_SKB_RXCB(rx->skb); in ieee80211_crypto_cs_decrypt()
842 if (!rx->sta || !rx->sta->cipher_scheme || in ieee80211_crypto_cs_decrypt()
849 cs = rx->sta->cipher_scheme; in ieee80211_crypto_cs_decrypt()
851 data_len = rx->skb->len - hdrlen - cs->hdr_len; in ieee80211_crypto_cs_decrypt()
862 if (skb_linearize(rx->skb)) in ieee80211_crypto_cs_decrypt()
865 hdr = (struct ieee80211_hdr *)rx->skb->data; in ieee80211_crypto_cs_decrypt()
868 skb_pn = rx->skb->data + hdrlen + cs->pn_off; in ieee80211_crypto_cs_decrypt()
876 if (pskb_trim(rx->skb, rx->skb->len - cs->mic_len)) in ieee80211_crypto_cs_decrypt()
879 memmove(rx->skb->data + cs->hdr_len, rx->skb->data, hdrlen); in ieee80211_crypto_cs_decrypt()
880 skb_pull(rx->skb, cs->hdr_len); in ieee80211_crypto_cs_decrypt()
1012 ieee80211_crypto_aes_cmac_decrypt(struct ieee80211_rx_data *rx) in ieee80211_crypto_aes_cmac_decrypt() argument
1014 struct sk_buff *skb = rx->skb; in ieee80211_crypto_aes_cmac_decrypt()
1016 struct ieee80211_key *key = rx->key; in ieee80211_crypto_aes_cmac_decrypt()
1062 ieee80211_crypto_aes_cmac_256_decrypt(struct ieee80211_rx_data *rx) in ieee80211_crypto_aes_cmac_256_decrypt() argument
1064 struct sk_buff *skb = rx->skb; in ieee80211_crypto_aes_cmac_256_decrypt()
1066 struct ieee80211_key *key = rx->key; in ieee80211_crypto_aes_cmac_256_decrypt()
1161 ieee80211_crypto_aes_gmac_decrypt(struct ieee80211_rx_data *rx) in ieee80211_crypto_aes_gmac_decrypt() argument
1163 struct sk_buff *skb = rx->skb; in ieee80211_crypto_aes_gmac_decrypt()
1165 struct ieee80211_key *key = rx->key; in ieee80211_crypto_aes_gmac_decrypt()
1242 ieee80211_crypto_hw_decrypt(struct ieee80211_rx_data *rx) in ieee80211_crypto_hw_decrypt() argument
1244 if (rx->sta && rx->sta->cipher_scheme) in ieee80211_crypto_hw_decrypt()
1245 return ieee80211_crypto_cs_decrypt(rx); in ieee80211_crypto_hw_decrypt()