Trying to debug a libnl3 issue with NM (adding IPv6 default gateway)

Thomas Graf tgraf at infradead.org
Mon Oct 10 06:17:23 EDT 2011


On Fri, Sep 30, 2011 at 04:38:39PM -0400, Mathieu Trudel-Lapierre wrote:
> Hi,
> 
> I'm trying to debug an issue I'm seeing with NetworkManager built
> against libnl3 (3.0). Seems like although everything appears to be
> there to add the default gateway route, it fails to do so with a
> "Missing attribute" error.
> 
> Now, I eventually found out that the Missing attribute error was due
> to the lack of a dst attribute for the route, but when I add that I'm
> running into another issue:
> "Object not found" is returned by NM. In reality, what appears to
> happen is that I get a response with a -19 error (No such device).
> Couldn't really find out why.
> 
> The (almost) exact same code works properly in libnl1; so I'm thinking
> some other changes introduced with libnl3 are breaking this. I'm
> saying "almost" the same code because there is some level of
> abstraction to support both versions of the library in NM.

I believe this hs been fixed by Michael in the following commit:

commit 790966d69aea9aea304caed22486834ba55eb5c7
Author: Michael Altizer <xiche at verizon.net>
Date:   Sun Oct 9 17:02:36 2011 -0400

    Only use the MULTIPATH attribute when adding routes with more than one next hop.
    
    Only use the MULTIPATH attribute when adding routes with more than one
    next hop.
    This solves issues with two scenarios:
    1. Adding an IPv4 route to a kernel configured without
    CONFIG_IP_ROUTE_MULTIPATH=y.
    2. Adding an IPv6 route in general, since the MULTIPATH attribute is not
    supported there.
    
    Signed-off-by: Michael Altizer <xiche at verizon.net>

Therefore your problem should disappear when using the latest git tree.



More information about the libnl mailing list