On Thu, Nov 12, 2020 at 07:03:13PM +0530, Bala Sajja wrote:
> I am running bird 2.0.7. Seeing issue with respect to ipv6 address
> add/delete on DR. This added/deleted ipv6 address prefix convergence is not
> happening  till LSA refresh timer fires .
> 
> Topology contains  3 routers connected to a switch. Say IPV6 addresses
> configured on Routers R1(1111::100/64), R2(2222:200/64),R3(3333::300/64).
> 
> If we are deleting ipv6 addresses other than DR, I could see
> intra-area-prefix generated by DR and all routers converged with respect to
> add/deleted ipv6 addresses.
> 
> With the below change, I could see intra-area-prefix LSA generated on DR
> also when ipv6 address added/deleted on DR.  Please advise if this fix
> is  correct ?

Thanks, fixed. Your patch seems correct, but i rather moved
ospf_notify_net_lsa() to Link-LSA origination (patch attached).

-- 
Elen sila lumenn' omentielvo

Ondrej 'Santiago' Zajicek (email: [email protected])
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
"To err is human -- to blame it on a computer is even more so."
commit 00ddd18b02a4a4db973adecf6ef63a350c909cbd
Author: Ondrej Zajicek (work) <[email protected]>
Date:   Wed Nov 18 17:37:29 2020 +0100

    OSPFv3: Fix intra-area-prefix-LSA origination on DR
    
    When a new link-LSA is originated, we need to notify intra-area-prefix-LSA
    handling, like when a new link-LSA is received. Otherwise a new network
    prefix added to a DR is not propagated immediately.
    
    Thanks to Bala Sajja for the bugreport.

diff --git a/proto/ospf/topology.c b/proto/ospf/topology.c
index f1f6570d..ea7176fd 100644
--- a/proto/ospf/topology.c
+++ b/proto/ospf/topology.c
@@ -1455,6 +1455,9 @@ ospf_originate_link_lsa(struct ospf_proto *p, struct ospf_iface *ifa)
   prepare_link_lsa_body(p, ifa);
 
   ifa->link_lsa = ospf_originate_lsa(p, &lsa);
+
+  /* RFC 5340 4.4.3 Events 6+7 - new Link LSA is locally originated */
+  ospf_notify_net_lsa(ifa);
 }
 
 

Reply via email to