[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20160615.221533.906327416634459889.davem@davemloft.net>
Date: Wed, 15 Jun 2016 22:15:33 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: eric.dumazet@...il.com
Cc: jbenc@...hat.com, netdev@...r.kernel.org, tom@...bertland.com,
maze@...gle.com
Subject: Re: [PATCH v2 net] gre: fix error handler
From: Eric Dumazet <eric.dumazet@...il.com>
Date: Wed, 15 Jun 2016 06:24:00 -0700
> From: Eric Dumazet <edumazet@...gle.com>
>
> 1) gre_parse_header() can be called from gre_err()
>
> At this point transport header points to ICMP header, not the inner
> header.
>
> 2) We can not really change transport header as ipgre_err() will later
> assume transport header still points to ICMP header (using icmp_hdr())
>
> 3) pskb_may_pull() logic in gre_parse_header() really works
> if we are interested at zone pointed by skb->data
>
> 4) As Jiri explained in commit b7f8fe251e46 ("gre: do not pull header in
> ICMP error processing") we should not pull headers in error handler.
>
> So this fix :
>
> A) changes gre_parse_header() to use skb->data instead of
> skb_transport_header()
>
> B) Adds a nhs parameter to gre_parse_header() so that we can skip the
> not pulled IP header from error path.
> This offset is 0 for normal receive path.
>
> C) remove obsolete IPV6 includes
>
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
Applied, thanks Eric.
Powered by blists - more mailing lists