gue: Protocol constants for remote checksum offload
[firefly-linux-kernel-4.4.55.git] / include / net / fou.h
1 #ifndef __NET_FOU_H
2 #define __NET_FOU_H
3
4 #include <linux/skbuff.h>
5
6 #include <net/flow.h>
7 #include <net/gue.h>
8 #include <net/ip_tunnels.h>
9 #include <net/udp.h>
10
11 int fou_build_header(struct sk_buff *skb, struct ip_tunnel_encap *e,
12                      u8 *protocol, struct flowi4 *fl4);
13 int gue_build_header(struct sk_buff *skb, struct ip_tunnel_encap *e,
14                      u8 *protocol, struct flowi4 *fl4);
15
16 static size_t fou_encap_hlen(struct ip_tunnel_encap *e)
17 {
18         return sizeof(struct udphdr);
19 }
20
21 static size_t gue_encap_hlen(struct ip_tunnel_encap *e)
22 {
23         return sizeof(struct udphdr) + sizeof(struct guehdr);
24 }
25
26 #endif