Lines Matching refs:pn

69 	__be64 pn;
77 __be32 pn;
292 const struct macsec_secy *secy, u32 pn,
311 h->packet_number = htonl(pn);
413 /* rx.pn != 0 if not XPN (figure 10-5 with 802.11AEbw-2013 amendment) */
426 static void macsec_fill_iv_xpn(unsigned char *iv, ssci_t ssci, u64 pn,
432 gcm_iv->pn = cpu_to_be64(pn) ^ salt.pn;
435 static void macsec_fill_iv(unsigned char *iv, sci_t sci, u32 pn)
440 gcm_iv->pn = htonl(pn);
468 pn_t pn;
472 pn = tx_sa->next_pn_halves;
482 return pn;
597 pn_t pn;
638 pn = tx_sa_update_pn(tx_sa, secy);
639 if (pn.full64 == 0) {
644 macsec_fill_sectag(hh, secy, pn.lower, sci_present);
676 macsec_fill_iv_xpn(iv, tx_sa->ssci, pn.full64, tx_sa->key.salt);
678 macsec_fill_iv(iv, secy->sci, pn.lower);
723 static bool macsec_post_decrypt(struct sk_buff *skb, struct macsec_secy *secy, u32 pn)
737 if (secy->replay_protect && pn < lowest_pn &&
738 (!secy->xpn || pn_same_half(pn, lowest_pn))) {
775 } else if (pn < lowest_pn) {
783 if (pn < lowest_pn) {
791 // Instead of "pn >=" - to support pn overflow in xpn
792 if (pn + 1 > rx_sa->next_pn_halves.lower) {
793 rx_sa->next_pn_halves.lower = pn + 1;
795 !pn_same_half(pn, rx_sa->next_pn_halves.lower)) {
797 rx_sa->next_pn_halves.lower = pn + 1;
838 u32 pn;
846 pn = ntohl(macsec_ethhdr(skb)->packet_number);
847 if (!macsec_post_decrypt(skb, &macsec->secy, pn)) {
1793 pr_notice("macsec: nl: add_rxsa: bad pn length: %d != %d\n",
2036 pr_notice("macsec: nl: add_txsa: bad pn length: %d != %d\n",
2382 pr_notice("macsec: nl: upd_txsa: bad pn length: %d != %d\n",
2480 pr_notice("macsec: nl: upd_rxsa: bad pn length: %d != %d\n",
3156 u64 pn;
3185 pn = tx_sa->next_pn;
3188 pn = tx_sa->next_pn_halves.lower;
3193 nla_put(skb, MACSEC_SA_ATTR_PN, pn_len, &pn) ||
3256 u64 pn;
3290 pn = rx_sa->next_pn;
3293 pn = rx_sa->next_pn_halves.lower;
3298 nla_put(skb, MACSEC_SA_ATTR_PN, pn_len, &pn) ||