From 0fdd8b2b115d1aaa73f483aa8bdec619c036338b Mon Sep 17 00:00:00 2001 From: Igor Ryzhov Date: Tue, 27 Apr 2021 15:06:37 +0300 Subject: [PATCH] isisd: update link params after circuit is up Call from isis_circuit_create works only if we enable isis on an already existing interface. If we configure isis on a pseudo interface and then actually create it - this call doesn't work. Signed-off-by: Igor Ryzhov --- isisd/isis_circuit.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/isisd/isis_circuit.c b/isisd/isis_circuit.c index ed6490266ca5..80659a4e741f 100644 --- a/isisd/isis_circuit.c +++ b/isisd/isis_circuit.c @@ -735,6 +735,9 @@ int isis_circuit_up(struct isis_circuit *circuit) circuit->last_uptime = time(NULL); + if (circuit->area->mta && circuit->area->mta->status) + isis_link_params_update(circuit, circuit->interface); + #ifndef FABRICD /* send northbound notification */ isis_notif_if_state_change(circuit, false); @@ -1302,8 +1305,6 @@ struct isis_circuit *isis_circuit_create(struct isis_area *area, if (circuit->state != C_STATE_CONF && circuit->state != C_STATE_UP) return circuit; isis_circuit_if_bind(circuit, ifp); - if (circuit->area->mta && circuit->area->mta->status) - isis_link_params_update(circuit, ifp); return circuit; }