summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafał Miłecki2017-03-10 10:49:44 +0000
committerRafał Miłecki2017-03-10 10:54:12 +0000
commitd4376788601c38963c4c836d325e3a66498079ea (patch)
tree2709f28e9fdcb4786a53d10170b2c3b3adac8095
parent46b87811664756aacaf6ef945b9d247790de49df (diff)
downloadmdnsd-d4376788601c38963c4c836d325e3a66498079ea.tar.gz
Cancel (re)connect timer when deleting interface
Firing timeout would cause a crash if interface has been deleted meanwhile. The easiest way to trigger this was calling set_config ubus method twice within 100 ms. Cancel pending interface start before freeing it. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
-rw-r--r--interface.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/interface.c b/interface.c
index f9fe40a..a09e7ce 100644
--- a/interface.c
+++ b/interface.c
@@ -153,6 +153,7 @@ static void interface_close(struct interface *iface)
static void interface_free(struct interface *iface)
{
+ uloop_timeout_cancel(&iface->reconnect);
interface_close(iface);
free(iface);
}