summaryrefslogtreecommitdiffstats
path: root/isisd/isis_zebra.c
diff options
context:
space:
mode:
authorhasso <hasso>2004-09-14 15:54:30 +0200
committerhasso <hasso>2004-09-14 15:54:30 +0200
commitf891f4438d65e93d5a8224b1b579c9c089c91c27 (patch)
tree3d88a45a47f84fc81ca1e5cbb074df395fd44329 /isisd/isis_zebra.c
parentisis_pdu.c: Update l1_desig_is only if neighbor really is DIS. (diff)
downloadfrr-f891f4438d65e93d5a8224b1b579c9c089c91c27.tar.xz
frr-f891f4438d65e93d5a8224b1b579c9c089c91c27.zip
Isisd is now able to remove addresses from circuit and trigger LSP updates
if it's done. Some random fixes as well and update to sample configuration.
Diffstat (limited to 'isisd/isis_zebra.c')
-rw-r--r--isisd/isis_zebra.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/isisd/isis_zebra.c b/isisd/isis_zebra.c
index ad5a0507f..e2f1dc590 100644
--- a/isisd/isis_zebra.c
+++ b/isisd/isis_zebra.c
@@ -199,6 +199,8 @@ isis_zebra_if_address_del (int command, struct zclient *client,
{
struct connected *c;
struct interface *ifp;
+ struct prefix *p;
+ u_char buf[BUFSIZ];
c = zebra_interface_address_read (ZEBRA_INTERFACE_ADDRESS_DELETE,
zclient->ibuf);
@@ -208,9 +210,20 @@ isis_zebra_if_address_del (int command, struct zclient *client,
ifp = c->ifp;
- connected_free (c);
+#ifdef EXTREME_DEBUG
+ p = c->address;
+ prefix2str (p, buf, BUFSIZ);
+
+ if (p->family == AF_INET)
+ zlog_info ("disconnected IP address %s", buf);
+#ifdef HAVE_IPV6
+ if (p->family == AF_INET6)
+ zlog_info ("disconnected IPv6 address %s", buf);
+#endif /* HAVE_IPV6 */
+#endif /* EXTREME_DEBUG */
isis_circuit_del_addr (circuit_scan_by_ifp (ifp), c);
+ connected_free (c);
return 0;
}