aboutsummaryrefslogtreecommitdiffstats
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
parentudp: additional GRO support (diff)
downloadlinux-dev-48a5fc773190bd5339869003fa65d38559bb8890.tar.xz
linux-dev-48a5fc773190bd5339869003fa65d38559bb8890.zip
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>
-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++;
}