]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
modules/sd_watchdog nitpick: detect more errors
authorVladimír Čunát <vladimir.cunat@nic.cz>
Thu, 20 Jun 2019 11:45:28 +0000 (13:45 +0200)
committerVladimír Čunát <vladimir.cunat@nic.cz>
Mon, 24 Jun 2019 14:03:36 +0000 (16:03 +0200)
modules/sd_watchdog/sd_watchdog.c

index 0a2664ecd49eb3b8ea07c45458fc0da47da77d52..9598144677dda35ecdff05a4c30e7409f9e51cd2 100644 (file)
@@ -36,7 +36,12 @@ int sd_watchdog_init(struct kr_module *module)
        module->data = conf;
 
        /* Check if watchdog is enabled */
-       conf->enabled = (bool)sd_watchdog_enabled(1, &conf->timeout_usec);
+       int ret = sd_watchdog_enabled(1, &conf->timeout_usec);
+       if (ret < 0) {
+               kr_log_error("[sd_watchdog] error: %s\n", strerror(abs(ret)));
+               return kr_error(ret);
+       }
+       conf->enabled = ret > 0;
        if (!conf->enabled) {
                kr_log_verbose("[sd_watchdog] disabled (not required)\n");
                return kr_ok();
@@ -50,7 +55,7 @@ int sd_watchdog_init(struct kr_module *module)
 
        uv_loop_t *loop = uv_default_loop();
        uv_timer_init(loop, &conf->timer);
-       int ret = uv_timer_start(&conf->timer, keepalive_ping, delay_ms, delay_ms);
+       ret = uv_timer_start(&conf->timer, keepalive_ping, delay_ms, delay_ms);
        if (ret != 0) {
                kr_log_error("[sd_watchdog] error: failed to start uv_timer!\n");
                return kr_error(ret);