Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

isisd: fix update link params after circuit is up #16667

Merged

Conversation

louis-6wind
Copy link
Contributor

If the link-params are set when the circuit not yet up, the link-params are never updated.

isis_link_params_update() is called from isis_circuit_up() but returns immediately because circuit->state != C_STATE_UP. circuit->state is updated in isis_csm_state_change after isis_circuit_up().

struct isis_circuit *isis_csm_state_change(enum isis_circuit_event event,
struct isis_circuit *circuit,
void *arg)
{
[...]
if (isis_circuit_up(circuit) != ISIS_OK) {
isis_circuit_deconfigure(circuit, area);
break;
}
circuit->state = C_STATE_UP;
isis_event_circuit_state_change(circuit, circuit->area,
1);

Do not return isis_link_params_update() if circuit->state != C_STATE_UP.

Fixes: 0fdd8b2 ("isisd: update link params after circuit is up")

If the link-params are set when the circuit not yet up, the link-params
are never updated.

isis_link_params_update() is called from isis_circuit_up() but returns
immediately because circuit->state != C_STATE_UP. circuit->state is
updated in isis_csm_state_change after isis_circuit_up().

> struct isis_circuit *isis_csm_state_change(enum isis_circuit_event event,
> 					   struct isis_circuit *circuit,
> 					   void *arg)
> {
> [...]
> 			if (isis_circuit_up(circuit) != ISIS_OK) {
> 				isis_circuit_deconfigure(circuit, area);
> 				break;
> 			}
> 			circuit->state = C_STATE_UP;
> 			isis_event_circuit_state_change(circuit, circuit->area,
> 							1);

Do not return isis_link_params_update() if circuit->state != C_STATE_UP.

Fixes: 0fdd8b2 ("isisd: update link params after circuit is up")
Signed-off-by: Louis Scalbert <[email protected]>
@ton31337
Copy link
Member

@Mergifyio backport stable/10.1 stable/10.0 stable/9.1 stable/9.0 stable/8.5

Copy link

mergify bot commented Aug 29, 2024

backport stable/10.1 stable/10.0 stable/9.1 stable/9.0 stable/8.5

✅ Backports have been created

Copy link
Member

@riw777 riw777 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good

@riw777 riw777 merged commit 2446c63 into FRRouting:master Sep 3, 2024
16 checks passed
donaldsharp added a commit that referenced this pull request Sep 3, 2024
isisd: fix update link params after circuit is up (backport #16667)
Jafaral added a commit that referenced this pull request Sep 3, 2024
isisd: fix update link params after circuit is up (backport #16667)
donaldsharp added a commit that referenced this pull request Sep 3, 2024
isisd: fix update link params after circuit is up (backport #16667)
donaldsharp added a commit that referenced this pull request Sep 3, 2024
isisd: fix update link params after circuit is up (backport #16667)
ton31337 added a commit that referenced this pull request Sep 4, 2024
isisd: fix update link params after circuit is up (backport #16667)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants