summaryrefslogtreecommitdiff
path: root/net/ipv4/gre_demux.c
diff options
context:
space:
mode:
authorTom Herbert <therbert@google.com>2014-08-22 20:34:52 (GMT)
committerDavid S. Miller <davem@davemloft.net>2014-08-25 01:09:24 (GMT)
commit48a5fc773190bd5339869003fa65d38559bb8890 (patch)
treeffcf7e1f7bddfa61924e258facdd367027573922 /net/ipv4/gre_demux.c
parent57c67ff4bd92af634f7c91c40eb02a96dd785dda (diff)
downloadlinux-48a5fc773190bd5339869003fa65d38559bb8890.tar.xz
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/gre_demux.c')
-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 0485bf7..7c1a8ff 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++;
}