diff options
author | Subbaiah Venkata <svenkata@google.com> | 2012-03-27 23:48:05 -0700 |
---|---|---|
committer | Avneesh Sachdev <avneesh@opensourcerouting.org> | 2012-04-07 13:54:37 -0700 |
commit | e38e0df01ad305ad48ecf816b52fa99fd3f2a4e1 (patch) | |
tree | ad565c3d656c0d5b74a1a3a80f1774bef938b1b4 /isisd/isis_circuit.c | |
parent | 3f045a08812525505e165deea99a79447b44506b (diff) |
isisd: couple of bug fixes
Diffstat (limited to 'isisd/isis_circuit.c')
-rw-r--r-- | isisd/isis_circuit.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/isisd/isis_circuit.c b/isisd/isis_circuit.c index cb439e87..c09c3a28 100644 --- a/isisd/isis_circuit.c +++ b/isisd/isis_circuit.c @@ -2720,6 +2720,15 @@ isis_if_new_hook (struct interface *ifp) int isis_if_delete_hook (struct interface *ifp) { + struct isis_circuit *circuit; + /* Clean up the circuit data */ + if (ifp && ifp->info) + { + circuit = ifp->info; + isis_csm_state_change (IF_DOWN_FROM_Z, circuit, circuit->area); + isis_csm_state_change (ISIS_DISABLE, circuit, circuit->area); + } + return 0; } @@ -2734,6 +2743,7 @@ isis_circuit_init () /* Install interface node */ install_node (&interface_node, isis_interface_config_write); install_element (CONFIG_NODE, &interface_cmd); + install_element (CONFIG_NODE, &no_interface_cmd); install_default (INTERFACE_NODE); install_element (INTERFACE_NODE, &interface_desc_cmd); |