ipv6: Fix protocol resubmission
authorJosh Hunt <johunt@akamai.com>
Mon, 8 Jun 2015 16:00:59 +0000 (12:00 -0400)
committerDavid S. Miller <davem@davemloft.net>
Mon, 8 Jun 2015 19:13:17 +0000 (12:13 -0700)
commit0243508edd317ff1fa63b495643a7c192fbfcd92
treead7aed1bf7565af3f7220b76ba579880df4f79f3
parent27e41fcfa6b326ad44eee7e0b1930d080b270895
ipv6: Fix protocol resubmission

UDP encapsulation is broken on IPv6. This is because the logic to resubmit
the nexthdr is inverted, checking for a ret value > 0 instead of < 0. Also,
the resubmit label is in the wrong position since we already get the
nexthdr value when performing decapsulation. In addition the skb pull is no
longer necessary either.

This changes the return value check to look for < 0, using it for the
nexthdr on the next iteration, and moves the resubmit label to the proper
location.

With these changes the v6 code now matches what we do in the v4 ip input
code wrt resubmitting when decapsulating.

Signed-off-by: Josh Hunt <johunt@akamai.com>
Acked-by: "Tom Herbert" <tom@herbertland.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ip6_input.c