Thread (17 messages) 17 messages, 4 authors, 2013-10-01

Re: [PATCH net 1/2] ip_tunnel: Fix a memory corruption in ip_tunnel_xmit

From: Steffen Klassert <steffen.klassert@secunet.com>
Date: 2013-09-26 08:25:55

On Wed, Sep 25, 2013 at 09:55:50AM -0700, Pravin Shelar wrote:
On Tue, Sep 24, 2013 at 10:54 PM, Steffen Klassert
[off-list ref] wrote:
quoted
We might extend the used aera of a skb beyond the total
headroom when we install the ipip header. Fix this by
calling skb_cow_head() unconditionally.
It is better to call skb_cow_head() from ipip_tunnel_xmit() as it is
consistent with gre.
I think this would just move the bug from ipip to gre. ipgre_xmit()
uses dev->needed_headroom which is based on the guessed output device
in ip_tunnel_bind_dev(). If the device we get from the route lookup
in ip_tunnel_xmit() is different from the guessed one and the resulting
max_headroom is bigger than dev->needed_headroom, we run into that bug
because skb_cow_head() will not be called with the updated
dev->needed_headroom.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help