summaryrefslogtreecommitdiffstats
path: root/net/ipv4
diff options
context:
space:
mode:
authorTom Herbert <therbert@google.com>2014-08-22 13:34:52 -0700
committerDavid S. Miller <davem@davemloft.net>2014-08-24 18:09:24 -0700
commit48a5fc773190bd5339869003fa65d38559bb8890 (patch)
treeffcf7e1f7bddfa61924e258facdd367027573922 /net/ipv4
parent57c67ff4bd92af634f7c91c40eb02a96dd785dda (diff)
downloadlinux-48a5fc773190bd5339869003fa65d38559bb8890.tar.bz2
gre: When GRE csum is present count as encap layer wrt csum
In GRE demux if the GRE checksum pop rcv encapsulation so that any encapsulated checksums are treated as tunnel checksums. Signed-off-by: Tom Herbert <therbert@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4')
-rw-r--r--net/ipv4/gre_demux.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/gre_demux.c b/net/ipv4/gre_demux.c
index 0485bf7f8f03..7c1a8ff974dd 100644
--- a/net/ipv4/gre_demux.c
+++ b/net/ipv4/gre_demux.c
@@ -125,6 +125,7 @@ static int parse_gre_header(struct sk_buff *skb, struct tnl_ptk_info *tpi,
*csum_err = true;
return -EINVAL;
}
+ skb_pop_rcv_encapsulation(skb);
options++;
}