if_tunnel.h revision 67881151423f1173ddc31e4f27d736044c2c9a96
1#ifndef _IF_TUNNEL_H_ 2#define _IF_TUNNEL_H_ 3 4#include <linux/types.h> 5 6 7#define SIOCGETTUNNEL (SIOCDEVPRIVATE + 0) 8#define SIOCADDTUNNEL (SIOCDEVPRIVATE + 1) 9#define SIOCDELTUNNEL (SIOCDEVPRIVATE + 2) 10#define SIOCCHGTUNNEL (SIOCDEVPRIVATE + 3) 11#define SIOCGETPRL (SIOCDEVPRIVATE + 4) 12#define SIOCADDPRL (SIOCDEVPRIVATE + 5) 13#define SIOCDELPRL (SIOCDEVPRIVATE + 6) 14#define SIOCCHGPRL (SIOCDEVPRIVATE + 7) 15 16#define GRE_CSUM __constant_htons(0x8000) 17#define GRE_ROUTING __constant_htons(0x4000) 18#define GRE_KEY __constant_htons(0x2000) 19#define GRE_SEQ __constant_htons(0x1000) 20#define GRE_STRICT __constant_htons(0x0800) 21#define GRE_REC __constant_htons(0x0700) 22#define GRE_FLAGS __constant_htons(0x00F8) 23#define GRE_VERSION __constant_htons(0x0007) 24 25struct ip_tunnel_parm 26{ 27 char name[IFNAMSIZ]; 28 int link; 29 __be16 i_flags; 30 __be16 o_flags; 31 __be32 i_key; 32 __be32 o_key; 33 struct iphdr iph; 34}; 35 36/* SIT-mode i_flags */ 37#define SIT_ISATAP 0x0001 38 39struct ip_tunnel_prl { 40 __be32 addr; 41 __u16 flags; 42 __u16 __reserved; 43 __u32 datalen; 44 __u32 __reserved2; 45 /* data follows */ 46}; 47 48/* PRL flags */ 49#define PRL_DEFAULT 0x0001 50 51enum 52{ 53 IFLA_GRE_UNSPEC, 54 IFLA_GRE_LINK, 55 IFLA_GRE_IFLAGS, 56 IFLA_GRE_OFLAGS, 57 IFLA_GRE_IKEY, 58 IFLA_GRE_OKEY, 59 IFLA_GRE_LOCAL, 60 IFLA_GRE_REMOTE, 61 IFLA_GRE_TTL, 62 IFLA_GRE_TOS, 63 IFLA_GRE_PMTUDISC, 64 __IFLA_GRE_MAX, 65}; 66 67#define IFLA_GRE_MAX (__IFLA_GRE_MAX - 1) 68 69#endif /* _IF_TUNNEL_H_ */ 70