summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Ryzhov <iryzhov@nfware.com>2021-04-27 15:06:37 +0300
committerIgor Ryzhov <iryzhov@nfware.com>2021-04-29 17:05:21 +0300
commit0fdd8b2b115d1aaa73f483aa8bdec619c036338b (patch)
treed5ed5183672dbbce07527273df046be848f4f1c0
parente2b5b7d6d7fac5507f7bfb4dcf9d66f7c79e7fbb (diff)
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 <iryzhov@nfware.com>
-rw-r--r--isisd/isis_circuit.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/isisd/isis_circuit.c b/isisd/isis_circuit.c
index ed6490266c..80659a4e74 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;
}