netifd: process reload calls immediately instead of going through a timer
[project/netifd.git] / main.c
diff --git a/main.c b/main.c
index c5e8e67..bbae97b 100644 (file)
--- a/main.c
+++ b/main.c
@@ -211,22 +211,17 @@ static void netifd_do_restart(struct uloop_timeout *timeout)
        execvp(global_argv[0], global_argv);
 }
 
-static void netifd_do_reload(struct uloop_timeout *timeout)
-{
-       config_init_all();
-}
-
-static struct uloop_timeout main_timer;
-
 void netifd_reload(void)
 {
-       main_timer.cb = netifd_do_reload;
-       uloop_timeout_set(&main_timer, 100);
+       config_init_all();
 }
 
 void netifd_restart(void)
 {
-       main_timer.cb = netifd_do_restart;
+       static struct uloop_timeout main_timer = {
+               .cb = netifd_do_restart
+       };
+
        interface_set_down(NULL);
        uloop_timeout_set(&main_timer, 1000);
 }