xref: /linux-6.15/include/linux/if_tunnel.h (revision 1da177e4)
1*1da177e4SLinus Torvalds #ifndef _IF_TUNNEL_H_
2*1da177e4SLinus Torvalds #define _IF_TUNNEL_H_
3*1da177e4SLinus Torvalds 
4*1da177e4SLinus Torvalds #define SIOCGETTUNNEL   (SIOCDEVPRIVATE + 0)
5*1da177e4SLinus Torvalds #define SIOCADDTUNNEL   (SIOCDEVPRIVATE + 1)
6*1da177e4SLinus Torvalds #define SIOCDELTUNNEL   (SIOCDEVPRIVATE + 2)
7*1da177e4SLinus Torvalds #define SIOCCHGTUNNEL   (SIOCDEVPRIVATE + 3)
8*1da177e4SLinus Torvalds 
9*1da177e4SLinus Torvalds #define GRE_CSUM	__constant_htons(0x8000)
10*1da177e4SLinus Torvalds #define GRE_ROUTING	__constant_htons(0x4000)
11*1da177e4SLinus Torvalds #define GRE_KEY		__constant_htons(0x2000)
12*1da177e4SLinus Torvalds #define GRE_SEQ		__constant_htons(0x1000)
13*1da177e4SLinus Torvalds #define GRE_STRICT	__constant_htons(0x0800)
14*1da177e4SLinus Torvalds #define GRE_REC		__constant_htons(0x0700)
15*1da177e4SLinus Torvalds #define GRE_FLAGS	__constant_htons(0x00F8)
16*1da177e4SLinus Torvalds #define GRE_VERSION	__constant_htons(0x0007)
17*1da177e4SLinus Torvalds 
18*1da177e4SLinus Torvalds struct ip_tunnel_parm
19*1da177e4SLinus Torvalds {
20*1da177e4SLinus Torvalds 	char			name[IFNAMSIZ];
21*1da177e4SLinus Torvalds 	int			link;
22*1da177e4SLinus Torvalds 	__u16			i_flags;
23*1da177e4SLinus Torvalds 	__u16			o_flags;
24*1da177e4SLinus Torvalds 	__u32			i_key;
25*1da177e4SLinus Torvalds 	__u32			o_key;
26*1da177e4SLinus Torvalds 	struct iphdr		iph;
27*1da177e4SLinus Torvalds };
28*1da177e4SLinus Torvalds 
29*1da177e4SLinus Torvalds #endif /* _IF_TUNNEL_H_ */
30