Joakim Tjernlund | 1 Aug 2012 23:14
Picon

[quagga-dev 9601] Re: [PATCH 1/4] ospfd: Optimize and improve SPF nexthop calculation


Joakim Tjernlund/Transmode wrote on 2012/08/01 23:06:32:

> From: Joakim Tjernlund/Transmode
> To: Scott Feldman <sfeldma <at> cumulusnetworks.com>,
> Cc: Paul Jakma <paul <at> jakma.org>, quagga-dev <at> lists.quagga.net
> Date: 2012/08/01 23:06
> Subject: Re: [quagga-dev 9594] [PATCH 1/4] ospfd: Optimize and improve SPF nexthop calculation
>
> Scott Feldman <sfeldma <at> cumulusnetworks.com> wrote on 2012/08/01 21:50:28:
> >
> > On Aug 1, 2012, at 9:37 AM, Joakim Tjernlund wrote:
> >
> > >> Starting with the patch I got uncertain about the get_next_link() method.
> > >> There may be several IP address matching the criteria so you might get the
> > >> wrong one.
> > >>
> > >> Don't you have a connected entry(see lib/if.h: struct connected) which holds
> > >> the address for nexthop?
> > >
> > > This could POSSIBLY look like below:
> > > if (oi->type == OSPF_IFTYPE_POINTOPOINT)
> > >       {
> > >         added = 1;
> > >         nexthop.s_addr = 0; /* Nexthop not required */
> > >         /* As some PtP links(ethernet used as PtP) really needs
> > >            a nexthop address, try find one */
> > >         if (CONNECTED_PEER(oi->connected))
> > >           nexthop = oi->connected->destination->u.prefix4;
> > >
> > >       }
> >
> > This doesn't work.  In my test, CONNECTED_PEER(oi->connected) is false.
>
> Why is that? Do you not configure the remote IP address for your PtP eth link?
> How do you setup eth PtP?

Is oi->connected->destination->u.prefix4 defined? If so, what does it contain?
Is oi->connected->address->u.prefix4 defined? If so, what is its value?

 Jocke


Gmane