summaryrefslogtreecommitdiff
path: root/ospf6d/ospf6_nssa.c
diff options
context:
space:
mode:
authorMobashshera Rasool <mrasool@vmware.com>2021-07-14 09:07:37 +0000
committerMobashshera Rasool <mrasool@vmware.com>2021-07-21 05:16:54 +0000
commitc405b00fcf3facc46588f731fc46973331b80cff (patch)
tree03e16a515a4e428979595d623d022a6dcd45a12b /ospf6d/ospf6_nssa.c
parentd2e5d5d4445fa2b3a1150beef609e2826010e9c1 (diff)
ospf6d: install summary route NULL0 as nexthop
This is a requirement for avoiding sending traffic somewhere it was not supposed to go: install summary route to local RIB to send traffic to Null0. Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
Diffstat (limited to 'ospf6d/ospf6_nssa.c')
-rw-r--r--ospf6d/ospf6_nssa.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/ospf6d/ospf6_nssa.c b/ospf6d/ospf6_nssa.c
index 9810ccb498..5b83e2f2c1 100644
--- a/ospf6d/ospf6_nssa.c
+++ b/ospf6d/ospf6_nssa.c
@@ -1161,9 +1161,8 @@ static void ospf6_nssa_flush_area(struct ospf6_area *area)
static void ospf6_check_and_originate_type7_lsa(struct ospf6_area *area)
{
- struct ospf6_route rt_aggr, *route;
+ struct ospf6_route *route;
struct route_node *rn = NULL;
- struct ospf6_external_info ei_aggr;
struct ospf6_external_aggr_rt *aggr;
/* Loop through the external_table to find the LSAs originated
@@ -1190,10 +1189,12 @@ static void ospf6_check_and_originate_type7_lsa(struct ospf6_area *area)
if (CHECK_FLAG(aggr->aggrflags,
OSPF6_EXTERNAL_AGGRT_ORIGINATED)) {
- /* Prepare the external_info for aggregator */
- ospf6_fill_aggr_route_details(area->ospf6, &ei_aggr,
- &rt_aggr, aggr);
- ospf6_nssa_lsa_originate(&rt_aggr, area);
+ if (IS_OSPF6_DEBUG_NSSA)
+ zlog_debug(
+ "Originating Type-7 LSAs for area %s",
+ area->name);
+
+ ospf6_nssa_lsa_originate(aggr->route, area);
}
}