]> git.puffer.fish Git - mirror/frr.git/commit
isisd: fix building asla at first flex-algo config
authorLouis Scalbert <louis.scalbert@6wind.com>
Thu, 25 Jul 2024 07:34:10 +0000 (09:34 +0200)
committerLouis Scalbert <louis.scalbert@6wind.com>
Fri, 26 Jul 2024 09:28:00 +0000 (11:28 +0200)
commitae27101e6ff8b636f02254ba0aa2217239d896e1
tree312e23525322a6fd26e19d59c88538cb50a86b47
parent9c0e668050b2ae77257cdcb780d444edb78c036b
isisd: fix building asla at first flex-algo config

When an color affinity is set on an interface before configuring the
flex-algorithm, the ASLA (Application Specific Link-Attribute) sub-TLV
is not build. Flex-algo fails to build the paths when a affinity
constraint is required because of the lacking of information contained
in ASLA. There are no problems when the configuration order is reversed.
For example:

> affinity-map red bit-position 1
>
> interface eth2
>  link-params
>   affinity red
>
> router isis 1
>  mpls-te on
>  flex-algo 129
>   dataplane sr-mpls
>   advertise-definition
>   affinity include-any green

In isis_link_params_update_asla(), the ASLA sub-TLV is not build when
the list of flex-algos is empty.

Update ASLA when the first flex-algorithm is configured.

Fixes: 893882ee20 ("isisd: add isis flex-algo configuration backend")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
isisd/isis_nb_config.c
isisd/isis_te.c
isisd/isis_te.h