]> git.puffer.fish Git - mirror/frr.git/commit
ospf6d: fix loop in ABRs 1991/head
authorChirag Shah <chirag@cumulusnetworks.com>
Tue, 27 Mar 2018 22:28:14 +0000 (15:28 -0700)
committerChirag Shah <chirag@cumulusnetworks.com>
Thu, 29 Mar 2018 17:13:32 +0000 (10:13 -0700)
commit10efbdc2eb546571140eb412b5d0e6ffc3805b6a
treefa07051b8e850e9a187314fe47e36249cbdb0e1b
parent46f1e1ee964e6408fbae477b824e8ed18cb357d6
ospf6d: fix loop in ABRs

When two routers from same area connected to backbone,
intra route advertised from area x should take precedence
within area x. The same route would be injected as summary
lsa to area 0/y. The same LSA via second abr injected back to
area x and since area 0 is lower than area x its route take
precedence.
Move the area check below path type and cost as both are crucial
to determine best route.

Ticket:CM-19627
Testing Done:
Initial route generated via area 1 as Intra-Prefix LSA (2009).
R1 and R2 both re advertised Inter Area Prefix LSA
(Summary LSA 2003) to area 1.
With the change area 1 Intra route precedence is preserved.
The address of H1 from Right is reachable via ping.

     area 1 |  area 0
            R1
          /   \
         /     \
        /       \
  H1 --Left     Right
        \       /
         \     /
          \   /
            R2
     area 1 |  area 0

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
ospf6d/ospf6_abr.c
ospf6d/ospf6_intra.c
ospf6d/ospf6_route.c