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 11#define GRE_CSUM __constant_htons(0x8000) 12#define GRE_ROUTING __constant_htons(0x4000) 13#define GRE_KEY __constant_htons(0x2000) 14#define GRE_SEQ __constant_htons(0x1000) 15#define GRE_STRICT __constant_htons(0x0800) 16#define GRE_REC __constant_htons(0x0700) 17#define GRE_FLAGS __constant_htons(0x00F8) 18#define GRE_VERSION __constant_htons(0x0007) 19 20struct ip_tunnel_parm 21{ 22 char name[IFNAMSIZ]; 23 int link; 24 __be16 i_flags; 25 __be16 o_flags; 26 __be32 i_key; 27 __be32 o_key; 28 struct iphdr iph; 29}; 30 31#endif /* _IF_TUNNEL_H_ */ 32