Lines Matching refs:tlv
88 struct sr6_tlv_hmac *tlv; in seg6_get_tlv_hmac() local
96 tlv = (struct sr6_tlv_hmac *) in seg6_get_tlv_hmac()
99 if (tlv->tlvhdr.type != SR6_TLV_HMAC || tlv->tlvhdr.len != 38) in seg6_get_tlv_hmac()
102 return tlv; in seg6_get_tlv_hmac()
243 struct sr6_tlv_hmac *tlv; in seg6_hmac_validate_skb() local
251 tlv = seg6_get_tlv_hmac(srh); in seg6_hmac_validate_skb()
254 if (idev->cnf.seg6_require_hmac > 0 && !tlv) in seg6_hmac_validate_skb()
262 if (idev->cnf.seg6_require_hmac == 0 && !tlv) in seg6_hmac_validate_skb()
267 hinfo = seg6_hmac_info_lookup(net, be32_to_cpu(tlv->hmackeyid)); in seg6_hmac_validate_skb()
274 if (memcmp(hmac_output, tlv->hmac, SEG6_HMAC_FIELD_LEN) != 0) in seg6_hmac_validate_skb()
331 struct sr6_tlv_hmac *tlv; in seg6_push_hmac() local
334 tlv = seg6_get_tlv_hmac(srh); in seg6_push_hmac()
335 if (!tlv) in seg6_push_hmac()
340 hinfo = seg6_hmac_info_lookup(net, be32_to_cpu(tlv->hmackeyid)); in seg6_push_hmac()
344 memset(tlv->hmac, 0, SEG6_HMAC_FIELD_LEN); in seg6_push_hmac()
345 err = seg6_hmac_compute(hinfo, srh, saddr, tlv->hmac); in seg6_push_hmac()