]> git.puffer.fish Git - matthieu/frr.git/commitdiff
ospf6d: always generate default route for stubs
authorRafael Zalamena <rzalamena@opensourcerouting.org>
Tue, 20 Jul 2021 12:43:03 +0000 (09:43 -0300)
committermergify-bot <noreply@mergify.io>
Fri, 23 Jul 2021 09:30:10 +0000 (09:30 +0000)
In RFC 2328 OSPF Version 2, Section 12.4.3.1 "Originating summary-LSAs
into stub areas" mentions that the stub areas should not import external
routes and instead should generate a 'default summary-LSA' set to
default destination.

> In a stub area, instead of importing external routes
> each area border router originates a "default summary-
> LSA" into the area. The Link State ID for the default
> summary-LSA is set to DefaultDestination, and the metric
> set to the (per-area) configurable parameter
> StubDefaultCost.  Note that StubDefaultCost need not be
> configured identically in all of the stub area's area
> border routers.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
(cherry picked from commit 80d1eb49b1b3986c86956b5ce473731b793bbf8b)

ospf6d/ospf6_abr.c

index 1af8aed1a9c3474e3bef1ee3330e21272843a56c..adccd7657da1a2f0a53d4193bb9daac8ca954c17 100644 (file)
@@ -652,24 +652,11 @@ void ospf6_abr_defaults_to_stub(struct ospf6 *o)
        struct listnode *node, *nnode;
        struct ospf6_area *oa;
        struct ospf6_route *def, *route;
-       struct ospf6_redist *red;
        int type = DEFAULT_ROUTE;
-       struct prefix_ipv6 p = {};
 
        if (!o->backbone)
                return;
 
-       red = ospf6_redist_lookup(o, type, 0);
-       if (!red)
-               return;
-
-       p.family = AF_INET6;
-       p.prefixlen = 0;
-
-       route = ospf6_route_lookup((struct prefix *)&p, o->external_table);
-       if (!route)
-               return;
-
        def = ospf6_route_create();
        def->type = OSPF6_DEST_TYPE_NETWORK;
        def->prefix.family = AF_INET6;