Lines Matching refs:pn

203 	u64 pn;  in tkip_encrypt_skb()  local
235 pn = atomic64_inc_return(&key->conf.tx_pn); in tkip_encrypt_skb()
236 pos = ieee80211_tkip_add_iv(pos, &key->conf, pn); in tkip_encrypt_skb()
317 static void ccmp_special_blocks(struct sk_buff *skb, u8 *pn, u8 *b_0, u8 *aad) in ccmp_special_blocks() argument
361 memcpy(&b_0[8], pn, IEEE80211_CCMP_PN_LEN); in ccmp_special_blocks()
384 static inline void ccmp_pn2hdr(u8 *hdr, u8 *pn, int key_id) in ccmp_pn2hdr() argument
386 hdr[0] = pn[5]; in ccmp_pn2hdr()
387 hdr[1] = pn[4]; in ccmp_pn2hdr()
390 hdr[4] = pn[3]; in ccmp_pn2hdr()
391 hdr[5] = pn[2]; in ccmp_pn2hdr()
392 hdr[6] = pn[1]; in ccmp_pn2hdr()
393 hdr[7] = pn[0]; in ccmp_pn2hdr()
397 static inline void ccmp_hdr2pn(u8 *pn, u8 *hdr) in ccmp_hdr2pn() argument
399 pn[0] = hdr[7]; in ccmp_hdr2pn()
400 pn[1] = hdr[6]; in ccmp_hdr2pn()
401 pn[2] = hdr[5]; in ccmp_hdr2pn()
402 pn[3] = hdr[4]; in ccmp_hdr2pn()
403 pn[4] = hdr[1]; in ccmp_hdr2pn()
404 pn[5] = hdr[0]; in ccmp_hdr2pn()
416 u8 pn[6]; in ccmp_encrypt_skb() local
459 pn[5] = pn64; in ccmp_encrypt_skb()
460 pn[4] = pn64 >> 8; in ccmp_encrypt_skb()
461 pn[3] = pn64 >> 16; in ccmp_encrypt_skb()
462 pn[2] = pn64 >> 24; in ccmp_encrypt_skb()
463 pn[1] = pn64 >> 32; in ccmp_encrypt_skb()
464 pn[0] = pn64 >> 40; in ccmp_encrypt_skb()
466 ccmp_pn2hdr(pos, pn, key->conf.keyidx); in ccmp_encrypt_skb()
473 ccmp_special_blocks(skb, pn, b_0, aad); in ccmp_encrypt_skb()
505 u8 pn[IEEE80211_CCMP_PN_LEN]; in ieee80211_crypto_ccmp_decrypt() local
532 ccmp_hdr2pn(pn, skb->data + hdrlen); in ieee80211_crypto_ccmp_decrypt()
536 res = memcmp(pn, key->u.ccmp.rx_pn[queue], in ieee80211_crypto_ccmp_decrypt()
548 ccmp_special_blocks(skb, pn, b_0, aad); in ieee80211_crypto_ccmp_decrypt()
558 memcpy(key->u.ccmp.rx_pn[queue], pn, IEEE80211_CCMP_PN_LEN); in ieee80211_crypto_ccmp_decrypt()
570 static void gcmp_special_blocks(struct sk_buff *skb, u8 *pn, u8 *j_0, u8 *aad) in gcmp_special_blocks() argument
577 memcpy(&j_0[ETH_ALEN], pn, IEEE80211_GCMP_PN_LEN); in gcmp_special_blocks()
618 static inline void gcmp_pn2hdr(u8 *hdr, const u8 *pn, int key_id) in gcmp_pn2hdr() argument
620 hdr[0] = pn[5]; in gcmp_pn2hdr()
621 hdr[1] = pn[4]; in gcmp_pn2hdr()
624 hdr[4] = pn[3]; in gcmp_pn2hdr()
625 hdr[5] = pn[2]; in gcmp_pn2hdr()
626 hdr[6] = pn[1]; in gcmp_pn2hdr()
627 hdr[7] = pn[0]; in gcmp_pn2hdr()
630 static inline void gcmp_hdr2pn(u8 *pn, const u8 *hdr) in gcmp_hdr2pn() argument
632 pn[0] = hdr[7]; in gcmp_hdr2pn()
633 pn[1] = hdr[6]; in gcmp_hdr2pn()
634 pn[2] = hdr[5]; in gcmp_hdr2pn()
635 pn[3] = hdr[4]; in gcmp_hdr2pn()
636 pn[4] = hdr[1]; in gcmp_hdr2pn()
637 pn[5] = hdr[0]; in gcmp_hdr2pn()
647 u8 pn[6]; in gcmp_encrypt_skb() local
691 pn[5] = pn64; in gcmp_encrypt_skb()
692 pn[4] = pn64 >> 8; in gcmp_encrypt_skb()
693 pn[3] = pn64 >> 16; in gcmp_encrypt_skb()
694 pn[2] = pn64 >> 24; in gcmp_encrypt_skb()
695 pn[1] = pn64 >> 32; in gcmp_encrypt_skb()
696 pn[0] = pn64 >> 40; in gcmp_encrypt_skb()
698 gcmp_pn2hdr(pos, pn, key->conf.keyidx); in gcmp_encrypt_skb()
705 gcmp_special_blocks(skb, pn, j_0, aad); in gcmp_encrypt_skb()
733 u8 pn[IEEE80211_GCMP_PN_LEN]; in ieee80211_crypto_gcmp_decrypt() local
759 gcmp_hdr2pn(pn, skb->data + hdrlen); in ieee80211_crypto_gcmp_decrypt()
763 res = memcmp(pn, key->u.gcmp.rx_pn[queue], in ieee80211_crypto_gcmp_decrypt()
775 gcmp_special_blocks(skb, pn, j_0, aad); in ieee80211_crypto_gcmp_decrypt()
786 memcpy(key->u.gcmp.rx_pn[queue], pn, IEEE80211_GCMP_PN_LEN); in ieee80211_crypto_gcmp_decrypt()
914 static inline void bip_ipn_set64(u8 *d, u64 pn) in bip_ipn_set64() argument
916 *d++ = pn; in bip_ipn_set64()
917 *d++ = pn >> 8; in bip_ipn_set64()
918 *d++ = pn >> 16; in bip_ipn_set64()
919 *d++ = pn >> 24; in bip_ipn_set64()
920 *d++ = pn >> 32; in bip_ipn_set64()
921 *d = pn >> 40; in bip_ipn_set64()