summaryrefslogtreecommitdiffstats
path: root/ospf6d/ospf6_lsdb.c
diff options
context:
space:
mode:
authorDon Slice <dslice@cumulusnetworks.com>2016-12-16 17:53:30 +0100
committerDonald Sharp <sharpd@cumulusnetworks.com>2017-01-03 21:14:56 +0100
commit54c8d91e5d79004d812ac816bf0785c8edd6c0cd (patch)
tree68532655c3b6b36a4c93bf7bcfb6f81779a355df /ospf6d/ospf6_lsdb.c
parentMerge pull request #37 from LabNConsulting/working/2.0/patch-set-170102a (diff)
downloadfrr-54c8d91e5d79004d812ac816bf0785c8edd6c0cd.tar.xz
frr-54c8d91e5d79004d812ac816bf0785c8edd6c0cd.zip
ospf6d: resolve problem with area range lsid creation
The problem reported was that routers downstream from the ABR would have prefixes in the IPv6 rib that should have been summarized. Testing showed that the prefixes were absent in the lsdb but not removed from the rib. The problem (and others) stemmed from determining the link-state id to use for the area-range statement only from other entries in the range-table. Since the area range statement creates inter-prefix LSAs (summaries) which are in all aspects identical to other inter-prefix LSAs, the number space for the lsid needs to be unique across all inter-prefix LSAs, not just unique between area range statements. This fix removes the use of range-table specific lsids and acquires the lsid just as any other inter-prefix LSA. Ticket: CM-13626 Signed-off-by: Don Slice Reviewed By: CCR-5489 Testing Done: Manual testing, repeated runs of the test that previously failed, ospf-smoke
Diffstat (limited to 'ospf6d/ospf6_lsdb.c')
-rw-r--r--ospf6d/ospf6_lsdb.c18
1 files changed, 0 insertions, 18 deletions
diff --git a/ospf6d/ospf6_lsdb.c b/ospf6d/ospf6_lsdb.c
index 04bea84ae..1d4b557cd 100644
--- a/ospf6d/ospf6_lsdb.c
+++ b/ospf6d/ospf6_lsdb.c
@@ -547,24 +547,6 @@ ospf6_lsdb_show (struct vty *vty, enum ospf_lsdb_show_level level,
}
}
-/* Decide new Link State ID to originate for the range. */
-u_int32_t
-ospf6_new_range_ls_id (struct ospf6_route_table *range_table)
-{
- u_int32_t id;
-
- bf_assign_index(range_table->idspace, id);
- return (id);
-}
-
-/* Release the LS ID back to the ID pool */
-void
-ospf6_release_range_ls_id (struct ospf6_route_table *range_table,
- u_int32_t id)
-{
- bf_release_index(range_table->idspace, id);
-}
-
u_int32_t
ospf6_new_ls_id (u_int16_t type, u_int32_t adv_router,
struct ospf6_lsdb *lsdb)