Stephen Hemminger [EMAIL PROTECTED] wrote:
--- linux-2.6.16.6.orig/net/ipv4/route.c
+++ linux-2.6.16.6/net/ipv4/route.c
@@ -2750,7 +2750,10 @@ int inet_rtm_getroute(struct sk_buff *in
/* Reserve room for dummy headers, this skb can pass
through good chunk of routing engine.
From: Herbert Xu [EMAIL PROTECTED]
Date: Tue, 18 Apr 2006 16:54:48 +1000
Looking at this again, the root of this problem is the IGMPv3
patch which started using the skb-nh.iph-protocol as a key.
So what we really should do is make the protocol an explicit parameter
to the ip_route_input
Hello!
Looking at this again, the root of this problem is the IGMPv3
patch which started using the skb-nh.iph-protocol as a key.
No, root is that this fake skb was not properly initialized.
It should, it should be a good real IP skb.
In fact I'm unsure as to whether all the other users of
Hello!
There is also the ARP code which passes an ARP packet through that
would get dereferenced as an IP packet. Granted this shouldn't crash
because nh is set properly.
And points to something which is not an IP header. So, iph-protocol
is something funny. :-)
It is plain luck that this
Hello!
There is also the ARP code which passes an ARP packet through that
would get dereferenced as an IP packet. Granted this shouldn't crash
because nh is set properly.
And point to something which is not an IP header. So, iph-protocol
is something funny. :-)
It is plain luck that this
From: Alexey Kuznetsov [EMAIL PROTECTED]
Date: Wed, 19 Apr 2006 03:52:22 +0400
Actually, this weird case in inet_get_route() is the only place, where
a dummy skb is used and it is needed mostly to resolve multicast routes.
In this case this fake skb really passes through all the engine, even
This fixes http://bugzilla.kernel.org/show_bug.cgi?id=6388
The bug is caused by ip_route_input dereferencing skb-nh.protocol of
the dummy skb passed dow from inet_rtm_getroute (Thanks Thomas for seeing
it). It only happens if the route requested is for a multicast IP
address.
Signed-off-by:
Hi Stephen:
Stephen Hemminger [EMAIL PROTECTED] wrote:
This fixes http://bugzilla.kernel.org/show_bug.cgi?id=6388
The bug is caused by ip_route_input dereferencing skb-nh.protocol of
the dummy skb passed dow from inet_rtm_getroute (Thanks Thomas for seeing
it). It only happens if the route
From: Herbert Xu [EMAIL PROTECTED]
Date: Tue, 18 Apr 2006 12:28:48 +1000
Stephen Hemminger [EMAIL PROTECTED] wrote:
+ /* Bugfix: need to give ip_route_input enough of an IP header to
not gag. */
+ skb-nh.iph-protocol = IPPROTO_ICMP;
Do we really need this? After all we can