summaryrefslogtreecommitdiff
path: root/usr.sbin/ospfd/interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/ospfd/interface.c')
-rw-r--r--usr.sbin/ospfd/interface.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/usr.sbin/ospfd/interface.c b/usr.sbin/ospfd/interface.c
index 30662c5164d..7b7d3785a3d 100644
--- a/usr.sbin/ospfd/interface.c
+++ b/usr.sbin/ospfd/interface.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: interface.c,v 1.55 2006/11/28 19:21:15 reyk Exp $ */
+/* $OpenBSD: interface.c,v 1.56 2007/01/24 14:08:28 claudio Exp $ */
/*
* Copyright (c) 2005 Claudio Jeker <claudio@openbsd.org>
@@ -213,6 +213,13 @@ if_del(struct iface *iface)
while ((nbr = LIST_FIRST(&iface->nbr_list)) != NULL)
nbr_del(nbr);
+ if (evtimer_pending(&iface->hello_timer, NULL))
+ evtimer_del(&iface->hello_timer);
+ if (evtimer_pending(&iface->wait_timer, NULL))
+ evtimer_del(&iface->wait_timer);
+ if (evtimer_pending(&iface->lsack_tx_timer, NULL))
+ evtimer_del(&iface->lsack_tx_timer);
+
ls_ack_list_clr(iface);
md_list_clr(&iface->auth_md_list);
free(iface);