ip6_udp_tunnel: remove unused IPCB related codes
authorEli Cooper <elicooper@gmx.com>
Tue, 1 Nov 2016 15:45:13 +0000 (23:45 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 2 Nov 2016 19:18:36 +0000 (15:18 -0400)
Some IPCB fields are currently set in udp_tunnel6_xmit_skb(), which are
never used before it reaches ip6tunnel_xmit(), and past that point the
control buffer is no longer interpreted as IPCB.

This clears these unused IPCB related codes. Currently there is no skb
scrubbing in ip6_udp_tunnel, otherwise IPCB(skb)->opt might need to be
cleared for IPv4 packets, as shown in 5146d1f1511
("tunnel: Clear IPCB(skb)->opt before dst_link_failure called").

Signed-off-by: Eli Cooper <elicooper@gmx.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ip6_udp_tunnel.c

index a7520528ecd27fae3d8ccee03c76345f0776234a..b283f293ee4ae7537da0bde51b5a4695a2e6f249 100644 (file)
@@ -88,9 +88,6 @@ int udp_tunnel6_xmit_skb(struct dst_entry *dst, struct sock *sk,
 
        uh->len = htons(skb->len);
 
-       memset(&(IPCB(skb)->opt), 0, sizeof(IPCB(skb)->opt));
-       IPCB(skb)->flags &= ~(IPSKB_XFRM_TUNNEL_SIZE | IPSKB_XFRM_TRANSFORMED
-                           | IPSKB_REROUTED);
        skb_dst_set(skb, dst);
 
        udp6_set_csum(nocheck, skb, saddr, daddr, skb->len);