Re: [mpls-linux-general] Bug in mpls-linux?
Status: Beta
Brought to you by:
jleu
From: James R. L. <jl...@mi...> - 2001-01-04 18:08:59
|
Hello Yordan, On Thu, Jan 04, 2001 at 04:20:43PM +0100, yal wrote: > Hello everyone, > > I find something strange in mpls-linux code. > > In 'mpls_output' function is labeled every packet, > independent from the protocol including the > ARP request or replay packets. > I think this is error because we can not update > ARP table and .... I'm not sure I follow you. Are you reporting that you have seen ARP packets with a label on them, or are you reporting that you think the code will allow for ARP packet to be labeled. If you are reporting seeing labeled arp packet please describe how you were able to accomplish this, because it certainly would be a bug. If you are saying that the code would allow ARP packets to be labeled, I would disagree. The only way a packet gets to mpls_output is via mpls_input or via the output function pointer in a dst_entry. A dst_entry is what gets created from the info return in a ARP reply. Right now the only protocol that sets the dst_entry output function to be mpls_output is IPv4 (route.c:rt_set_nexthop()) > I'm sorry if I've misunderstood something! Maybe your seeing the output message (mpls_output: unknown protocol ....) This is not what your thinking. What has happened is that an sk_buff has been re-used. The IPv4 stack is lazy and didn't set skb->protocol. So the value is left over from the last protocol that used the sk_buff. > > Yordan. Jim -- James R. Leu |