diff options
Diffstat (limited to 'main/linux-grsec/gre-fix-the-inner-mac-header-in-nbma-gre-tunnels-xmit-path.patch')
-rw-r--r-- | main/linux-grsec/gre-fix-the-inner-mac-header-in-nbma-gre-tunnels-xmit-path.patch | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/main/linux-grsec/gre-fix-the-inner-mac-header-in-nbma-gre-tunnels-xmit-path.patch b/main/linux-grsec/gre-fix-the-inner-mac-header-in-nbma-gre-tunnels-xmit-path.patch deleted file mode 100644 index 92ee9a9689..0000000000 --- a/main/linux-grsec/gre-fix-the-inner-mac-header-in-nbma-gre-tunnels-xmit-path.patch +++ /dev/null @@ -1,52 +0,0 @@ -From a09d1e25a3f333dfb0034f2812750fdb0506ba5d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> -Date: Wed, 10 Dec 2014 08:57:23 +0200 -Subject: [PATCH] gre: fix the inner mac header in nbma gre tunnels xmit path -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The NBMA GRE tunnels temporarily push GRE header that contain the -per-packet NBMA destination on the skb via header ops early in xmit -path. It is the later pulled before the real GRE header is constructed. - -The inner mac was thus set differently in nbma case. Fix this be -reordering the pull before calling offload handler to make sure -both tunnel types have inner mac header set same way. - -Fixes: 14051f0452a2 ("gre: Use inner mac length when computing tunnel length" -Signed-off-by: Timo Teräs <timo.teras@iki.fi> ---- - net/ipv4/ip_gre.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c -index 94213c8..afedb52 100644 ---- a/net/ipv4/ip_gre.c -+++ b/net/ipv4/ip_gre.c -@@ -250,10 +250,6 @@ static netdev_tx_t ipgre_xmit(struct sk_buff *skb, - struct ip_tunnel *tunnel = netdev_priv(dev); - const struct iphdr *tnl_params; - -- skb = gre_handle_offloads(skb, !!(tunnel->parms.o_flags&TUNNEL_CSUM)); -- if (IS_ERR(skb)) -- goto out; -- - if (dev->header_ops) { - /* Need space for new headers */ - if (skb_cow_head(skb, dev->needed_headroom - -@@ -273,6 +269,10 @@ static netdev_tx_t ipgre_xmit(struct sk_buff *skb, - tnl_params = &tunnel->parms.iph; - } - -+ skb = gre_handle_offloads(skb, !!(tunnel->parms.o_flags&TUNNEL_CSUM)); -+ if (IS_ERR(skb)) -+ goto out; -+ - __gre_xmit(skb, dev, tnl_params, skb->protocol); - - return NETDEV_TX_OK; --- -2.2.0 - - |