Linux 4.6-rc6
[cris-mirror.git] / include / net / gre.h
blob97eafdc47eea118f6122b4a51a790d93a3830f86
1 #ifndef __LINUX_GRE_H
2 #define __LINUX_GRE_H
4 #include <linux/skbuff.h>
5 #include <net/ip_tunnels.h>
7 struct gre_base_hdr {
8 __be16 flags;
9 __be16 protocol;
11 #define GRE_HEADER_SECTION 4
13 #define GREPROTO_CISCO 0
14 #define GREPROTO_PPTP 1
15 #define GREPROTO_MAX 2
16 #define GRE_IP_PROTO_MAX 2
18 struct gre_protocol {
19 int (*handler)(struct sk_buff *skb);
20 void (*err_handler)(struct sk_buff *skb, u32 info);
23 int gre_add_protocol(const struct gre_protocol *proto, u8 version);
24 int gre_del_protocol(const struct gre_protocol *proto, u8 version);
26 struct net_device *gretap_fb_dev_create(struct net *net, const char *name,
27 u8 name_assign_type);
28 #endif