Lines Matching refs:skb
91 struct sk_buff *skb, in ieee80211_wep_add_iv() argument
94 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; in ieee80211_wep_add_iv()
95 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); in ieee80211_wep_add_iv()
101 if (WARN_ON(skb_headroom(skb) < IEEE80211_WEP_IV_LEN)) in ieee80211_wep_add_iv()
105 newhdr = skb_push(skb, IEEE80211_WEP_IV_LEN); in ieee80211_wep_add_iv()
119 struct sk_buff *skb, in ieee80211_wep_remove_iv() argument
122 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; in ieee80211_wep_remove_iv()
126 memmove(skb->data + IEEE80211_WEP_IV_LEN, skb->data, hdrlen); in ieee80211_wep_remove_iv()
127 skb_pull(skb, IEEE80211_WEP_IV_LEN); in ieee80211_wep_remove_iv()
162 struct sk_buff *skb, in ieee80211_wep_encrypt() argument
169 if (WARN_ON(skb_tailroom(skb) < IEEE80211_WEP_ICV_LEN)) in ieee80211_wep_encrypt()
172 iv = ieee80211_wep_add_iv(local, skb, keylen, keyidx); in ieee80211_wep_encrypt()
176 len = skb->len - (iv + IEEE80211_WEP_IV_LEN - skb->data); in ieee80211_wep_encrypt()
185 skb_put(skb, IEEE80211_WEP_ICV_LEN); in ieee80211_wep_encrypt()
226 struct sk_buff *skb, in ieee80211_wep_decrypt() argument
232 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; in ieee80211_wep_decrypt()
241 if (skb->len < hdrlen + IEEE80211_WEP_IV_LEN + IEEE80211_WEP_ICV_LEN) in ieee80211_wep_decrypt()
244 len = skb->len - hdrlen - IEEE80211_WEP_IV_LEN - IEEE80211_WEP_ICV_LEN; in ieee80211_wep_decrypt()
246 keyidx = skb->data[hdrlen + 3] >> 6; in ieee80211_wep_decrypt()
254 memcpy(rc4key, skb->data + hdrlen, 3); in ieee80211_wep_decrypt()
260 skb->data + hdrlen + in ieee80211_wep_decrypt()
265 skb_trim(skb, skb->len - IEEE80211_WEP_ICV_LEN); in ieee80211_wep_decrypt()
268 memmove(skb->data + IEEE80211_WEP_IV_LEN, skb->data, hdrlen); in ieee80211_wep_decrypt()
269 skb_pull(skb, IEEE80211_WEP_IV_LEN); in ieee80211_wep_decrypt()
277 struct sk_buff *skb = rx->skb; in ieee80211_crypto_wep_decrypt() local
278 struct ieee80211_rx_status *status = IEEE80211_SKB_RXCB(skb); in ieee80211_crypto_wep_decrypt()
279 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; in ieee80211_crypto_wep_decrypt()
286 if (skb_linearize(rx->skb)) in ieee80211_crypto_wep_decrypt()
288 if (ieee80211_wep_decrypt(rx->local, rx->skb, rx->key)) in ieee80211_crypto_wep_decrypt()
291 if (!pskb_may_pull(rx->skb, ieee80211_hdrlen(fc) + in ieee80211_crypto_wep_decrypt()
294 ieee80211_wep_remove_iv(rx->local, rx->skb, rx->key); in ieee80211_crypto_wep_decrypt()
296 if (pskb_trim(rx->skb, rx->skb->len - IEEE80211_WEP_ICV_LEN)) in ieee80211_crypto_wep_decrypt()
303 static int wep_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb) in wep_encrypt_skb() argument
305 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); in wep_encrypt_skb()
309 if (ieee80211_wep_encrypt(tx->local, skb, tx->key->conf.key, in wep_encrypt_skb()
315 if (!ieee80211_wep_add_iv(tx->local, skb, in wep_encrypt_skb()
327 struct sk_buff *skb; in ieee80211_crypto_wep_encrypt() local
331 skb_queue_walk(&tx->skbs, skb) { in ieee80211_crypto_wep_encrypt()
332 if (wep_encrypt_skb(tx, skb) < 0) { in ieee80211_crypto_wep_encrypt()