1 #ifndef _IF_TUNNEL_H_ 2 #define _IF_TUNNEL_H_ 3 4 #include <linux/types.h> 5 6 #define SIOCGETTUNNEL (SIOCDEVPRIVATE + 0) 7 #define SIOCADDTUNNEL (SIOCDEVPRIVATE + 1) 8 #define SIOCDELTUNNEL (SIOCDEVPRIVATE + 2) 9 #define SIOCCHGTUNNEL (SIOCDEVPRIVATE + 3) 10 #define SIOCGETPRL (SIOCDEVPRIVATE + 4) 11 #define SIOCADDPRL (SIOCDEVPRIVATE + 5) 12 #define SIOCDELPRL (SIOCDEVPRIVATE + 6) 13 #define SIOCCHGPRL (SIOCDEVPRIVATE + 7) 14 15 #define GRE_CSUM __constant_htons(0x8000) 16 #define GRE_ROUTING __constant_htons(0x4000) 17 #define GRE_KEY __constant_htons(0x2000) 18 #define GRE_SEQ __constant_htons(0x1000) 19 #define GRE_STRICT __constant_htons(0x0800) 20 #define GRE_REC __constant_htons(0x0700) 21 #define GRE_FLAGS __constant_htons(0x00F8) 22 #define GRE_VERSION __constant_htons(0x0007) 23 24 struct ip_tunnel_parm 25 { 26 char name[IFNAMSIZ]; 27 int link; 28 __be16 i_flags; 29 __be16 o_flags; 30 __be32 i_key; 31 __be32 o_key; 32 struct iphdr iph; 33 }; 34 35 /* SIT-mode i_flags */ 36 #define SIT_ISATAP 0x0001 37 38 struct ip_tunnel_prl { 39 __be32 addr; 40 __u16 flags; 41 __u16 __reserved; 42 __u32 datalen; 43 __u32 __reserved2; 44 /* data follows */ 45 }; 46 47 /* PRL flags */ 48 #define PRL_DEFAULT 0x0001 49 50 #endif /* _IF_TUNNEL_H_ */ 51