Lines Matching refs:hdr

547 		 const struct ieee802154_hdr *hdr,  in llsec_lookup_key()  argument
552 u8 key_id_mode = hdr->sec.key_id_mode; in llsec_lookup_key()
558 if (hdr->fc.type == IEEE802154_FC_TYPE_BEACON) { in llsec_lookup_key()
569 if (!(key_entry->key->frame_types & BIT(hdr->fc.type))) in llsec_lookup_key()
579 if (id->id != hdr->sec.key_id) in llsec_lookup_key()
584 id->short_source == hdr->sec.short_src) || in llsec_lookup_key()
586 id->extended_source == hdr->sec.extended_src)) in llsec_lookup_key()
616 const struct ieee802154_hdr *hdr, in llsec_do_encrypt_unauth() argument
627 llsec_geniv(iv, sec->params.hwaddr, &hdr->sec); in llsec_do_encrypt_unauth()
646 const struct ieee802154_hdr *hdr, in llsec_do_encrypt_auth() argument
655 authlen = ieee802154_sechdr_authtag_len(&hdr->sec); in llsec_do_encrypt_auth()
656 llsec_geniv(iv, sec->params.hwaddr, &hdr->sec); in llsec_do_encrypt_auth()
669 if (hdr->sec.level & IEEE802154_SCF_SECLEVEL_ENC) { in llsec_do_encrypt_auth()
696 const struct ieee802154_hdr *hdr, in llsec_do_encrypt() argument
699 if (hdr->sec.level == IEEE802154_SCF_SECLEVEL_ENC) in llsec_do_encrypt()
700 return llsec_do_encrypt_unauth(skb, sec, hdr, key); in llsec_do_encrypt()
702 return llsec_do_encrypt_auth(skb, sec, hdr, key); in llsec_do_encrypt()
707 struct ieee802154_hdr hdr; in mac802154_llsec_encrypt() local
712 hlen = ieee802154_hdr_pull(skb, &hdr); in mac802154_llsec_encrypt()
714 if (hlen < 0 || hdr.fc.type != IEEE802154_FC_TYPE_DATA) in mac802154_llsec_encrypt()
717 if (!hdr.fc.security_enabled || hdr.sec.level == 0) { in mac802154_llsec_encrypt()
722 authlen = ieee802154_sechdr_authtag_len(&hdr.sec); in mac802154_llsec_encrypt()
736 key = llsec_lookup_key(sec, &hdr, &hdr.dest, NULL); in mac802154_llsec_encrypt()
747 hdr.sec.frame_counter = cpu_to_le32(frame_ctr); in mac802154_llsec_encrypt()
761 skb->mac_len = ieee802154_hdr_push(skb, &hdr); in mac802154_llsec_encrypt()
764 rc = llsec_do_encrypt(skb, sec, &hdr, key); in mac802154_llsec_encrypt()
831 const struct ieee802154_hdr *hdr, in llsec_do_decrypt_unauth() argument
844 llsec_geniv(iv, dev_addr, &hdr->sec); in llsec_do_decrypt_unauth()
855 const struct ieee802154_hdr *hdr, in llsec_do_decrypt_auth() argument
864 authlen = ieee802154_sechdr_authtag_len(&hdr->sec); in llsec_do_decrypt_auth()
865 llsec_geniv(iv, dev_addr, &hdr->sec); in llsec_do_decrypt_auth()
878 if (hdr->sec.level & IEEE802154_SCF_SECLEVEL_ENC) { in llsec_do_decrypt_auth()
903 const struct ieee802154_hdr *hdr, in llsec_do_decrypt() argument
906 if (hdr->sec.level == IEEE802154_SCF_SECLEVEL_ENC) in llsec_do_decrypt()
907 return llsec_do_decrypt_unauth(skb, sec, hdr, key, dev_addr); in llsec_do_decrypt()
909 return llsec_do_decrypt_auth(skb, sec, hdr, key, dev_addr); in llsec_do_decrypt()
983 struct ieee802154_hdr hdr; in mac802154_llsec_decrypt() local
992 if (ieee802154_hdr_peek(skb, &hdr) < 0) in mac802154_llsec_decrypt()
994 if (!hdr.fc.security_enabled) in mac802154_llsec_decrypt()
996 if (hdr.fc.version == 0) in mac802154_llsec_decrypt()
1008 key = llsec_lookup_key(sec, &hdr, &hdr.source, &key_id); in mac802154_llsec_decrypt()
1014 dev = llsec_lookup_dev(sec, &hdr.source); in mac802154_llsec_decrypt()
1020 if (llsec_lookup_seclevel(sec, hdr.fc.type, 0, &seclevel) < 0) { in mac802154_llsec_decrypt()
1025 if (!(seclevel.sec_levels & BIT(hdr.sec.level)) && in mac802154_llsec_decrypt()
1026 (hdr.sec.level == 0 && seclevel.device_override && in mac802154_llsec_decrypt()
1032 frame_ctr = le32_to_cpu(hdr.sec.frame_counter); in mac802154_llsec_decrypt()
1047 err = llsec_do_decrypt(skb, sec, &hdr, key, dev_addr); in mac802154_llsec_decrypt()