summaryrefslogtreecommitdiff
path: root/net/ipv4/gre_demux.c
diff options
context:
space:
mode:
authorTom Herbert <therbert@google.com>2014-08-23 00:34:52 +0400
committerDavid S. Miller <davem@davemloft.net>2014-08-25 05:09:24 +0400
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 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++;
}