mirror of
https://gitlab.labs.nic.cz/labs/bird.git
synced 2024-05-11 16:54:54 +00:00
Fixes and enhancements in 'show ospf state' command.
Now it shows a distance, option to change showing reachable/all network nodes and better handling of AS-external LSAs in multiple areas. The command 'show ospf topology' was changed to not show stubnets in both OSPFv2 and OSPFv3 (previously it displayed stubnets in OSPFv2).
This commit is contained in:
@@ -681,6 +681,10 @@ ospf_rt_sum(struct ospf_area *oa)
|
||||
if (!(abr->n.options & ORTA_ABR))
|
||||
continue;
|
||||
|
||||
/* This check is not mentioned in RFC 2328 */
|
||||
if (abr->n.type != RTS_OSPF)
|
||||
continue;
|
||||
|
||||
/* 16.2. (5) */
|
||||
orta nf = {
|
||||
.type = RTS_OSPF_IA,
|
||||
@@ -966,6 +970,9 @@ ospf_ext_spf(struct proto_ospf *po)
|
||||
nfa.metric2 = LSINFINITY;
|
||||
}
|
||||
|
||||
/* Mark the LSA as reachable */
|
||||
en->color = INSPF;
|
||||
|
||||
/* Whether the route is preferred in route selection according to 16.4.1 */
|
||||
nfa.options = epath_preferred(&nf2->n) ? ORTA_PREF : 0;
|
||||
|
||||
@@ -1046,8 +1053,6 @@ ospf_rt_spf(struct proto_ospf *po)
|
||||
|
||||
if (po->areano == 0) return;
|
||||
|
||||
po->cleanup = 1;
|
||||
|
||||
OSPF_TRACE(D_EVENTS, "Starting routing table calculation");
|
||||
|
||||
/* 16. (1) - Invalidate old routing table */
|
||||
|
Reference in New Issue
Block a user