xref: /aosp_15_r20/external/libnl/include/linux-private/linux/seg6_hmac.h (revision 4dc78e53d49367fa8e61b07018507c90983a077d)
1*4dc78e53SAndroid Build Coastguard Worker /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2*4dc78e53SAndroid Build Coastguard Worker #ifndef _LINUX_SEG6_HMAC_H
3*4dc78e53SAndroid Build Coastguard Worker #define _LINUX_SEG6_HMAC_H
4*4dc78e53SAndroid Build Coastguard Worker 
5*4dc78e53SAndroid Build Coastguard Worker #include <linux/types.h>
6*4dc78e53SAndroid Build Coastguard Worker #include <linux/seg6.h>
7*4dc78e53SAndroid Build Coastguard Worker 
8*4dc78e53SAndroid Build Coastguard Worker #define SEG6_HMAC_SECRET_LEN	64
9*4dc78e53SAndroid Build Coastguard Worker #define SEG6_HMAC_FIELD_LEN	32
10*4dc78e53SAndroid Build Coastguard Worker 
11*4dc78e53SAndroid Build Coastguard Worker struct sr6_tlv_hmac {
12*4dc78e53SAndroid Build Coastguard Worker 	struct sr6_tlv tlvhdr;
13*4dc78e53SAndroid Build Coastguard Worker 	__u16 reserved;
14*4dc78e53SAndroid Build Coastguard Worker 	__be32 hmackeyid;
15*4dc78e53SAndroid Build Coastguard Worker 	__u8 hmac[SEG6_HMAC_FIELD_LEN];
16*4dc78e53SAndroid Build Coastguard Worker };
17*4dc78e53SAndroid Build Coastguard Worker 
18*4dc78e53SAndroid Build Coastguard Worker enum {
19*4dc78e53SAndroid Build Coastguard Worker 	SEG6_HMAC_ALGO_SHA1 = 1,
20*4dc78e53SAndroid Build Coastguard Worker 	SEG6_HMAC_ALGO_SHA256 = 2,
21*4dc78e53SAndroid Build Coastguard Worker };
22*4dc78e53SAndroid Build Coastguard Worker 
23*4dc78e53SAndroid Build Coastguard Worker #endif
24