xref: /aosp_15_r20/external/iputils/in6_flowlabel.h (revision bd1f8aeb6080fa6544ec30aeca3eb4da100f359f)
1*bd1f8aebSAndroid Build Coastguard Worker /*
2*bd1f8aebSAndroid Build Coastguard Worker    It is just a stripped copy of the kernel header "linux/in6.h"
3*bd1f8aebSAndroid Build Coastguard Worker 
4*bd1f8aebSAndroid Build Coastguard Worker    "Flow label" things are still not defined in "netinet/in*.h" headers,
5*bd1f8aebSAndroid Build Coastguard Worker    but we cannot use "linux/in6.h" immediately because it currently
6*bd1f8aebSAndroid Build Coastguard Worker    conflicts with "netinet/in.h" .
7*bd1f8aebSAndroid Build Coastguard Worker */
8*bd1f8aebSAndroid Build Coastguard Worker 
9*bd1f8aebSAndroid Build Coastguard Worker struct in6_flowlabel_req
10*bd1f8aebSAndroid Build Coastguard Worker {
11*bd1f8aebSAndroid Build Coastguard Worker 	struct in6_addr	flr_dst;
12*bd1f8aebSAndroid Build Coastguard Worker 	__u32	flr_label;
13*bd1f8aebSAndroid Build Coastguard Worker 	__u8	flr_action;
14*bd1f8aebSAndroid Build Coastguard Worker 	__u8	flr_share;
15*bd1f8aebSAndroid Build Coastguard Worker 	__u16	flr_flags;
16*bd1f8aebSAndroid Build Coastguard Worker 	__u16 	flr_expires;
17*bd1f8aebSAndroid Build Coastguard Worker 	__u16	flr_linger;
18*bd1f8aebSAndroid Build Coastguard Worker 	__u32	__flr_pad;
19*bd1f8aebSAndroid Build Coastguard Worker 	/* Options in format of IPV6_PKTOPTIONS */
20*bd1f8aebSAndroid Build Coastguard Worker };
21*bd1f8aebSAndroid Build Coastguard Worker 
22*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_A_GET	0
23*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_A_PUT	1
24*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_A_RENEW	2
25*bd1f8aebSAndroid Build Coastguard Worker 
26*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_F_CREATE	1
27*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_F_EXCL		2
28*bd1f8aebSAndroid Build Coastguard Worker 
29*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_S_NONE		0
30*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_S_EXCL		1
31*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_S_PROCESS	2
32*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_S_USER		3
33*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FL_S_ANY		255
34*bd1f8aebSAndroid Build Coastguard Worker 
35*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FLOWINFO_FLOWLABEL		0x000fffff
36*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FLOWINFO_PRIORITY		0x0ff00000
37*bd1f8aebSAndroid Build Coastguard Worker 
38*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FLOWLABEL_MGR	32
39*bd1f8aebSAndroid Build Coastguard Worker #define IPV6_FLOWINFO_SEND	33
40