[Bug report] Unable to remove 'default' routes using the CLI tools

Thomas Graf tgraf at suug.ch
Sat Mar 23 03:03:59 EDT 2013


On 03/22/13 at 05:21pm, Roopa Prabhu wrote:
> On 3/21/13 11:09 AM, Thomas Graf wrote:
> >On 03/19/13 at 01:37pm, Roopa Prabhu wrote:
> >>Fix libnl to include additional attributes in the hash key depending
> >>on 'message type + msg flags'.
> >>ie In this case, use next hop info during lookup when ('msgtype ==
> >>RTM_NEWROUTE&&  (msgflag == NLM_F_CREATE || 'msgflag&
> >>NLM_F_APPEND' || 'and more if needed'))
> >
> >Why do we want to only regard the nexthop info if the append flag
> >is set? What's wrong with always comparing nexthops?
> 
> I pointed out nexthop because in tony's problem, only nexthop
> attribute was different between the two routes. It could have been
> any other attribute like scope, type etc.
> 
> I think our current key attributes are correct. Kernel also seems to
> use the same during lookup. However, I was trying to say that after
> lookup we should probably use more attributes to compare the objects
> than simply nl_object identical. We could use nl_object_diff or a
> variant depending on whether kernel appended, replaced or created a
> fresh route. At this point i am afraid adding more attributes in the
> lookup might break something else.
> I will think about this some more and also look at the kernel code again.

OK, I now understand what you have been saying before. Let's look
into how we can improve the kernel situation and be more verbose
on what action was taken.



More information about the libnl mailing list