while searching for the reason of some strange behaviour of RTnet when pinging a realtime box, I discovered a small but severe bug in the IP input chain. Under certain conditions the input route may not have been correctly resolved and an old value may have been mistakenly re-used.
It is recommended to apply the attached patch to ip_input.c or update to the latest CVS version. We will try to release a new version next week, bundeling all the recent fixes.
Jan
PS: Arno, could you verify if this fixes all your problems? Thanks.
Index: ip_input.c
===================================================================
RCS file: /cvsroot/rtnet/rtnet/ipv4/ip_input.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- ip_input.c 14 Feb 2004 18:49:04 -0000 1.11
+++ ip_input.c 11 Mar 2004 12:43:01 -0000 1.12
@@ -154,9 +154,8 @@
rtskb_trim(skb, len);
- if (skb->dst == NULL)
- if ( rt_ip_route_input(skb, iph->daddr, iph->saddr, skb->rtdev) )
- goto drop;
+ if (rt_ip_route_input(skb, iph->daddr, iph->saddr, skb->rtdev) != 0)
+ goto drop;
return rt_ip_local_deliver(skb);

