1*6f52b16cSGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2bf355b8dSDavid Lebrun #ifndef _UAPI_LINUX_SEG6_HMAC_H 3bf355b8dSDavid Lebrun #define _UAPI_LINUX_SEG6_HMAC_H 4bf355b8dSDavid Lebrun 5a50a05f4SDavid Lebrun #include <linux/types.h> 6bf355b8dSDavid Lebrun #include <linux/seg6.h> 7bf355b8dSDavid Lebrun 8bf355b8dSDavid Lebrun #define SEG6_HMAC_SECRET_LEN 64 9bf355b8dSDavid Lebrun #define SEG6_HMAC_FIELD_LEN 32 10bf355b8dSDavid Lebrun 11bf355b8dSDavid Lebrun struct sr6_tlv_hmac { 12bf355b8dSDavid Lebrun struct sr6_tlv tlvhdr; 13bf355b8dSDavid Lebrun __u16 reserved; 14bf355b8dSDavid Lebrun __be32 hmackeyid; 15bf355b8dSDavid Lebrun __u8 hmac[SEG6_HMAC_FIELD_LEN]; 16bf355b8dSDavid Lebrun }; 17bf355b8dSDavid Lebrun 18bf355b8dSDavid Lebrun enum { 19bf355b8dSDavid Lebrun SEG6_HMAC_ALGO_SHA1 = 1, 20bf355b8dSDavid Lebrun SEG6_HMAC_ALGO_SHA256 = 2, 21bf355b8dSDavid Lebrun }; 22bf355b8dSDavid Lebrun 23bf355b8dSDavid Lebrun #endif 24