]> git.puffer.fish Git - mirror/frr.git/commit
ospfd: introduce a 'dry run' into SPF code
authorGalaxyGorilla <sascha@netdef.org>
Fri, 7 Aug 2020 12:13:07 +0000 (12:13 +0000)
committerGalaxyGorilla <sascha@netdef.org>
Tue, 18 Aug 2020 10:58:45 +0000 (10:58 +0000)
commit1d376ff539508f336cb5872c5592b780e3db180b
tree7e276efe8ff4cc3316fed894b5d7e0840c978dec
parent5ec5929c62219c221555135b27bf1828497aad4b
ospfd: introduce a 'dry run' into SPF code

in OSPF interface data is used for the nexthop resolution
during the SPF algorithm, see RFC2328 16.1.1. However, for
certain technologies like TI-LFA it is desirable to be able
to calculate SPFs for arbitrary root nodes, not just the
calculating node. Since interface data is not available for
other nodes it is necessary to remove this dependency and
make its usage optional, depending on the intent of
changing the RIB with the generated tree (or not).

To signal that a SPF run is used without the intent to
change the RIB an additional flag `spf_dry_run` is
introduced to the ospf_area struct. This flag is currently
only used within the pure SPF code but will be extended
to the SPF postprocessing later on.

Signed-off-by: GalaxyGorilla <sascha@netdef.org>
ospfd/ospf_interface.c
ospfd/ospf_route.c
ospfd/ospf_route.h
ospfd/ospf_spf.c
ospfd/ospf_spf.h
ospfd/ospfd.h