diff options
| author | Donatas Abraitis <donatas@opensourcerouting.org> | 2024-09-23 10:24:36 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-23 10:24:36 +0200 |
| commit | fa200e837b1d027fd0d502c518cbbc84898c26d3 (patch) | |
| tree | b5c1cfdda6829151bccdf3db2a47ec69ccb7e4eb /isisd | |
| parent | 2599b83308938b1464376442812d751f20aa0788 (diff) | |
| parent | a9af78af42403ba8b77baf6b576023a14ef80f19 (diff) | |
Merge pull request #16887 from zhou-run/202409211508
isisd: Fix infinity flag not being set successfully
Diffstat (limited to 'isisd')
| -rw-r--r-- | isisd/isis_spf.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/isisd/isis_spf.c b/isisd/isis_spf.c index 0f37ed012a..8fc0f144b2 100644 --- a/isisd/isis_spf.c +++ b/isisd/isis_spf.c @@ -1469,14 +1469,13 @@ static void spf_adj_list_parse_tlv(struct isis_spftree *spftree, sadj->metric = metric; if (oldmetric) SET_FLAG(flags, F_ISIS_SPF_ADJ_OLDMETRIC); + if ((oldmetric && sadj->metric == ISIS_NARROW_METRIC_INFINITY) || + (!oldmetric && sadj->metric == ISIS_WIDE_METRIC_INFINITY)) + SET_FLAG(flags, F_ISIS_SPF_ADJ_METRIC_INFINITY); sadj->lsp = lsp; sadj->subtlvs = subtlvs; sadj->flags = flags; - if ((oldmetric && metric == ISIS_NARROW_METRIC_INFINITY) - || (!oldmetric && metric == ISIS_WIDE_METRIC_INFINITY)) - SET_FLAG(flags, F_ISIS_SPF_ADJ_METRIC_INFINITY); - /* Set real adjacency. */ if (!CHECK_FLAG(spftree->flags, F_SPFTREE_NO_ADJACENCIES) && !LSP_PSEUDO_ID(id)) { |
