• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * This header was generated from the Linux kernel headers by update_headers.py,
3  * to provide necessary information from kernel to userspace, such as constants,
4  * structures, and macros, and thus, contains no copyrightable information.
5  */
6 #ifndef _IP6_TUNNEL_H
7 #define _IP6_TUNNEL_H
8 #include <linux/types.h>
9 #include <linux/if.h>
10 #include <linux/in6.h>
11 #define IPV6_TLV_TNL_ENCAP_LIMIT 4
12 #define IPV6_DEFAULT_TNL_ENCAP_LIMIT 4
13 #define IP6_TNL_F_IGN_ENCAP_LIMIT 0x1
14 #define IP6_TNL_F_USE_ORIG_TCLASS 0x2
15 #define IP6_TNL_F_USE_ORIG_FLOWLABEL 0x4
16 #define IP6_TNL_F_MIP6_DEV 0x8
17 #define IP6_TNL_F_RCV_DSCP_COPY 0x10
18 #define IP6_TNL_F_USE_ORIG_FWMARK 0x20
19 #define IP6_TNL_F_ALLOW_LOCAL_REMOTE 0x40
20 struct ip6_tnl_parm {
21 	char name[IFNAMSIZ];
22 	int link;
23 	__u8 proto;
24 	__u8 encap_limit;
25 	__u8 hop_limit;
26 	__be32 flowinfo;
27 	__u32 flags;
28 	struct in6_addr laddr;
29 	struct in6_addr raddr;
30 };
31 struct ip6_tnl_parm2 {
32 	char name[IFNAMSIZ];
33 	int link;
34 	__u8 proto;
35 	__u8 encap_limit;
36 	__u8 hop_limit;
37 	__be32 flowinfo;
38 	__u32 flags;
39 	struct in6_addr laddr;
40 	struct in6_addr raddr;
41 	__be16			i_flags;
42 	__be16			o_flags;
43 	__be32			i_key;
44 	__be32			o_key;
45 };
46 #endif
47