diff --git a/lab3/daemon.c b/lab3/daemon.c index 92bd407..2143915 100644 --- a/lab3/daemon.c +++ b/lab3/daemon.c @@ -1,4 +1,4 @@ -/* Демпон для отслеживания изменений в файлах в заданной директории +/* Демон для отслеживания изменений в файлах в заданной директории Формат конфигурационного файла (по умолчанию /etc/my-daemon/config): directory=/home/arity @@ -52,7 +52,13 @@ void update_parameter(char * key, char * value) { DIR_PATH = strdup(value); syslog(LOG_DEBUG, "Updated directory path to %s", DIR_PATH); } else if (strcmp(key, "interval") == 0) { - INTERVAL = atoi(value); + int new_interval = atoi(value); + if (new_interval <= 0) { + syslog(LOG_CRIT, "Invalid interval %s in config file %s", + value, CONFIG_PATH); + return; + } + INTERVAL = new_interval; syslog(LOG_DEBUG, "Updated interval to %d", INTERVAL); } else { syslog(LOG_CRIT, "Unknown parameter %s in config file %s",