]> git.puffer.fish Git - matthieu/frr.git/commit
ospfd: Correct invalid SR-MPLS output label
authorOlivier Dugeon <olivier.dugeon@orange.com>
Sat, 23 Nov 2024 17:50:21 +0000 (18:50 +0100)
committerOlivier Dugeon <olivier.dugeon@orange.com>
Sat, 23 Nov 2024 18:05:25 +0000 (19:05 +0100)
commit1bcccb87cdc5de9dfe0573c0b2faf57d7043ac17
tree65d5ee6e66177003d4c717fdee889c3236865ccd
parentd745f4eae5d6e8df84de930632a3bcf3044408d3
ospfd: Correct invalid SR-MPLS output label

When OSPFd starts, there is 2 possible scenarios for Segment Routing:
1/ Routes associated to Prefixes are not yet available i.e. Segment Routing LSA
are received before LSA Type 1. In this case, the function
ospf_sr_nhlfe_update() is triggered when a new SPF is launch. Thus, neighbors
and output label are always synchronise with the routing table.
2/ Routes are already available i.e. LSA Type 1 are received before Segment
Routing LSA, in particular the Router Information which contains the SRGB.
During nhlfe computation, perfixes are leave with incomplete configuration, in
particular, the SR nexthop is set to NULL. If this scenario is handle through
the function update_out_nhlfe (triggered when SRGB is received or modified from
a neighbor node), the output label is not correctly configured as the nexthop
SR node associated to the prefix has been leave to NULL.

This patch correct this problem by calling the function compute_nhlfe() when
the nexthop SR Node associated to the prefix is NULL within the
update_out_nhlfe() function. Thus, we guarantee that the SR prefix is always
correctly configuration indpedently of the scenario i.e. arrival of the
different LSA.

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
ospfd/ospf_sr.c