diff options
| author | David S. Miller <davem@davemloft.net> | 2014-07-15 03:12:24 +0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2014-07-15 03:12:24 +0400 |
| commit | 64bbca3c4b1ea781dbb21474439001125e08a93b (patch) | |
| tree | fe501117127ec38d2ef4402681ff3bc53f245379 /include | |
| parent | 39b1c29b7bb932d7c2bd5680a927f269944bdfda (diff) | |
| parent | 155e010edbc168f43bb332887c43e8579ee3894a (diff) | |
| download | linux-64bbca3c4b1ea781dbb21474439001125e08a93b.tar.xz | |
Merge branch 'udp_tunnel'
Tom Herbert says:
====================
udp: UDP tunnel enhancements
- Add udp_sock_create in new helper module udp_tunnel. Tunnel
implementations call this function to create listener UDP ports.
- Make vxlan and l2tp call udp_sock_create.
- Move udp_tunnel_segment into udp_offload.c.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
| -rw-r--r-- | include/net/udp_tunnel.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/net/udp_tunnel.h b/include/net/udp_tunnel.h new file mode 100644 index 000000000000..ffd69cbded35 --- /dev/null +++ b/include/net/udp_tunnel.h @@ -0,0 +1,32 @@ +#ifndef __NET_UDP_TUNNEL_H +#define __NET_UDP_TUNNEL_H + +struct udp_port_cfg { + u8 family; + + /* Used only for kernel-created sockets */ + union { + struct in_addr local_ip; +#if IS_ENABLED(CONFIG_IPV6) + struct in6_addr local_ip6; +#endif + }; + + union { + struct in_addr peer_ip; +#if IS_ENABLED(CONFIG_IPV6) + struct in6_addr peer_ip6; +#endif + }; + + __be16 local_udp_port; + __be16 peer_udp_port; + unsigned int use_udp_checksums:1, + use_udp6_tx_checksums:1, + use_udp6_rx_checksums:1; +}; + +int udp_sock_create(struct net *net, struct udp_port_cfg *cfg, + struct socket **sockp); + +#endif |
