kernel_optimize_test/net
Stefano Brivio d4d576f5ab ip6_tunnel: Fix encapsulation layout
Commit 058214a4d1 ("ip6_tun: Add infrastructure for doing
encapsulation") added the ip6_tnl_encap() call in ip6_tnl_xmit(), before
the call to ipv6_push_frag_opts() to append the IPv6 Tunnel Encapsulation
Limit option (option 4, RFC 2473, par. 5.1) to the outer IPv6 header.

As long as the option didn't actually end up in generated packets, this
wasn't an issue. Then commit 89a23c8b52 ("ip6_tunnel: Fix missing tunnel
encapsulation limit option") fixed sending of this option, and the
resulting layout, e.g. for FoU, is:

.-------------------.------------.----------.-------------------.----- - -
| Outer IPv6 Header | UDP header | Option 4 | Inner IPv6 Header | Payload
'-------------------'------------'----------'-------------------'----- - -

Needless to say, FoU and GUE (at least) won't work over IPv6. The option
is appended by default, and I couldn't find a way to disable it with the
current iproute2.

Turn this into a more reasonable:

.-------------------.----------.------------.-------------------.----- - -
| Outer IPv6 Header | Option 4 | UDP header | Inner IPv6 Header | Payload
'-------------------'----------'------------'-------------------'----- - -

With this, and with 84dad55951 ("udp6: fix encap return code for
resubmitting"), FoU and GUE work again over IPv6.

Fixes: 058214a4d1 ("ip6_tun: Add infrastructure for doing encapsulation")
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-10-18 16:54:40 -07:00
..
6lowpan
9p
802
8021q
appletalk
atm
ax25
batman-adv
bluetooth
bpf
bpfilter net: bpfilter: use get_pid_task instead of pid_task 2018-10-17 22:03:40 -07:00
bridge
caif
can
ceph
core ethtool: fix a privilege escalation bug 2018-10-15 21:37:58 -07:00
dcb
dccp inet: make sure to grab rcu_read_lock before using ireq->ireq_opt 2018-10-02 15:52:12 -07:00
decnet
dns_resolver
dsa
ethernet
hsr
ieee802154
ife
ipv4 net: ipmr: fix unresolved entry dumps 2018-10-17 22:35:42 -07:00
ipv6 ip6_tunnel: Fix encapsulation layout 2018-10-18 16:54:40 -07:00
iucv
kcm
key
l2tp
l3mdev
lapb
llc llc: set SOCK_RCU_FREE in llc_sap_add_socket() 2018-10-15 22:01:37 -07:00
mac80211
mac802154
mpls
ncsi
netfilter
netlabel
netlink
netrom
nfc
nsh
openvswitch openvswitch: load NAT helper 2018-10-04 21:45:16 -07:00
packet net/packet: fix packet drop as of virtio gso 2018-10-04 22:23:15 -07:00
phonet
psample
qrtr
rds rds: RDS (tcp) hangs on sendto() to unresponding address 2018-10-10 22:19:52 -07:00
rfkill
rose
rxrpc rxrpc: Fix a missing rxrpc_put_peer() in the error_report handler 2018-10-15 23:13:42 -07:00
sched net: sched: Fix for duplicate class dump 2018-10-18 16:00:02 -07:00
sctp sctp: not free the new asoc when sctp_wait_for_connect returns err 2018-10-17 22:12:46 -07:00
smc
strparser
sunrpc
switchdev
tipc tipc: fix info leak from kernel tipc_event 2018-10-18 16:49:53 -07:00
tls
unix
vmw_vsock
wimax
wireless
x25
xdp xsk: do not call synchronize_net() under RCU read lock 2018-10-11 10:19:01 +02:00
xfrm xfrm: policy: use hlist rcu variants on insert 2018-10-11 13:24:46 +02:00
compat.c
Kconfig
Makefile
socket.c net: socket: fix a missing-check bug 2018-10-18 16:43:06 -07:00
sysctl_net.c