Lines Matching refs:pn
310 static void ccmp_special_blocks(struct sk_buff *skb, u8 *pn, u8 *b_0, u8 *aad) in ccmp_special_blocks() argument
354 memcpy(&b_0[8], pn, IEEE80211_CCMP_PN_LEN); in ccmp_special_blocks()
377 static inline void ccmp_pn2hdr(u8 *hdr, u8 *pn, int key_id) in ccmp_pn2hdr() argument
379 hdr[0] = pn[5]; in ccmp_pn2hdr()
380 hdr[1] = pn[4]; in ccmp_pn2hdr()
383 hdr[4] = pn[3]; in ccmp_pn2hdr()
384 hdr[5] = pn[2]; in ccmp_pn2hdr()
385 hdr[6] = pn[1]; in ccmp_pn2hdr()
386 hdr[7] = pn[0]; in ccmp_pn2hdr()
390 static inline void ccmp_hdr2pn(u8 *pn, u8 *hdr) in ccmp_hdr2pn() argument
392 pn[0] = hdr[7]; in ccmp_hdr2pn()
393 pn[1] = hdr[6]; in ccmp_hdr2pn()
394 pn[2] = hdr[5]; in ccmp_hdr2pn()
395 pn[3] = hdr[4]; in ccmp_hdr2pn()
396 pn[4] = hdr[1]; in ccmp_hdr2pn()
397 pn[5] = hdr[0]; in ccmp_hdr2pn()
409 u8 pn[6]; in ccmp_encrypt_skb() local
452 pn[5] = pn64; in ccmp_encrypt_skb()
453 pn[4] = pn64 >> 8; in ccmp_encrypt_skb()
454 pn[3] = pn64 >> 16; in ccmp_encrypt_skb()
455 pn[2] = pn64 >> 24; in ccmp_encrypt_skb()
456 pn[1] = pn64 >> 32; in ccmp_encrypt_skb()
457 pn[0] = pn64 >> 40; in ccmp_encrypt_skb()
459 ccmp_pn2hdr(pos, pn, key->conf.keyidx); in ccmp_encrypt_skb()
466 ccmp_special_blocks(skb, pn, b_0, aad); in ccmp_encrypt_skb()
500 u8 pn[IEEE80211_CCMP_PN_LEN]; in ieee80211_crypto_ccmp_decrypt() local
523 ccmp_hdr2pn(pn, skb->data + hdrlen); in ieee80211_crypto_ccmp_decrypt()
527 if (memcmp(pn, key->u.ccmp.rx_pn[queue], in ieee80211_crypto_ccmp_decrypt()
537 ccmp_special_blocks(skb, pn, b_0, aad); in ieee80211_crypto_ccmp_decrypt()
547 memcpy(key->u.ccmp.rx_pn[queue], pn, IEEE80211_CCMP_PN_LEN); in ieee80211_crypto_ccmp_decrypt()
559 static void gcmp_special_blocks(struct sk_buff *skb, u8 *pn, u8 *j_0, u8 *aad) in gcmp_special_blocks() argument
566 memcpy(&j_0[ETH_ALEN], pn, IEEE80211_GCMP_PN_LEN); in gcmp_special_blocks()
608 static inline void gcmp_pn2hdr(u8 *hdr, const u8 *pn, int key_id) in gcmp_pn2hdr() argument
610 hdr[0] = pn[5]; in gcmp_pn2hdr()
611 hdr[1] = pn[4]; in gcmp_pn2hdr()
614 hdr[4] = pn[3]; in gcmp_pn2hdr()
615 hdr[5] = pn[2]; in gcmp_pn2hdr()
616 hdr[6] = pn[1]; in gcmp_pn2hdr()
617 hdr[7] = pn[0]; in gcmp_pn2hdr()
620 static inline void gcmp_hdr2pn(u8 *pn, const u8 *hdr) in gcmp_hdr2pn() argument
622 pn[0] = hdr[7]; in gcmp_hdr2pn()
623 pn[1] = hdr[6]; in gcmp_hdr2pn()
624 pn[2] = hdr[5]; in gcmp_hdr2pn()
625 pn[3] = hdr[4]; in gcmp_hdr2pn()
626 pn[4] = hdr[1]; in gcmp_hdr2pn()
627 pn[5] = hdr[0]; in gcmp_hdr2pn()
637 u8 pn[6]; in gcmp_encrypt_skb() local
681 pn[5] = pn64; in gcmp_encrypt_skb()
682 pn[4] = pn64 >> 8; in gcmp_encrypt_skb()
683 pn[3] = pn64 >> 16; in gcmp_encrypt_skb()
684 pn[2] = pn64 >> 24; in gcmp_encrypt_skb()
685 pn[1] = pn64 >> 32; in gcmp_encrypt_skb()
686 pn[0] = pn64 >> 40; in gcmp_encrypt_skb()
688 gcmp_pn2hdr(pos, pn, key->conf.keyidx); in gcmp_encrypt_skb()
695 gcmp_special_blocks(skb, pn, j_0, aad); in gcmp_encrypt_skb()
725 u8 pn[IEEE80211_GCMP_PN_LEN]; in ieee80211_crypto_gcmp_decrypt() local
749 gcmp_hdr2pn(pn, skb->data + hdrlen); in ieee80211_crypto_gcmp_decrypt()
753 if (memcmp(pn, key->u.gcmp.rx_pn[queue], in ieee80211_crypto_gcmp_decrypt()
763 gcmp_special_blocks(skb, pn, j_0, aad); in ieee80211_crypto_gcmp_decrypt()
774 memcpy(key->u.gcmp.rx_pn[queue], pn, IEEE80211_GCMP_PN_LEN); in ieee80211_crypto_gcmp_decrypt()
903 static inline void bip_ipn_set64(u8 *d, u64 pn) in bip_ipn_set64() argument
905 *d++ = pn; in bip_ipn_set64()
906 *d++ = pn >> 8; in bip_ipn_set64()
907 *d++ = pn >> 16; in bip_ipn_set64()
908 *d++ = pn >> 24; in bip_ipn_set64()
909 *d++ = pn >> 32; in bip_ipn_set64()
910 *d = pn >> 40; in bip_ipn_set64()