35 lines
1.7 KiB
Diff
35 lines
1.7 KiB
Diff
|
diff -up ./src/conf_eval.c.fix ./src/conf_eval.c
|
||
|
--- ./src/conf_eval.c.fix 2023-12-22 12:12:22.961141634 +0100
|
||
|
+++ ./src/conf_eval.c 2023-12-22 14:09:21.217786675 +0100
|
||
|
@@ -166,6 +166,7 @@ static DB_ATTR_TYPE eval_attribute_expre
|
||
|
|
||
|
static void set_database_attr_option(DB_ATTR_TYPE attr, int linenumber, char *filename, char* linebuf) {
|
||
|
char *str;
|
||
|
+ long num;
|
||
|
|
||
|
DB_ATTR_TYPE hashes = get_hashes(true);
|
||
|
if (attr&(~hashes)) {
|
||
|
@@ -298,8 +299,20 @@ static void eval_config_statement(config
|
||
|
LOG_CONFIG_FORMAT_LINE(LOG_LEVEL_CONFIG, "set 'config_version' option to '%s'", str)
|
||
|
break;
|
||
|
case VERBOSE_OPTION:
|
||
|
- log_msg(LOG_LEVEL_ERROR, "%s:%d: 'verbose' option is no longer supported, use 'log_level' and 'report_level' options instead (see man aide.conf for details) (line: '%s')", conf_filename, conf_linenumber, conf_linebuf);
|
||
|
- exit(INVALID_CONFIGURELINE_ERROR);
|
||
|
+ log_msg(LOG_LEVEL_CONFIG, "%s:%d: 'verbose' option is deprecated, use 'log_level' and 'report_level' options instead (see man aide.conf for details) (line: '%s')", conf_filename, conf_linenumber, conf_linebuf);
|
||
|
+ str = eval_string_expression(statement.e, linenumber, filename, linebuf);
|
||
|
+ num = strtol(str, NULL, 10);
|
||
|
+
|
||
|
+ if (num < 0 && num > 255) {
|
||
|
+ LOG_CONFIG_FORMAT_LINE(LOG_LEVEL_ERROR, "invalid verbose level: '%s'", str);
|
||
|
+ exit(INVALID_CONFIGURELINE_ERROR);
|
||
|
+ }
|
||
|
+
|
||
|
+ if (num >= 10) {
|
||
|
+ set_log_level(LOG_LEVEL_DEBUG);
|
||
|
+ }
|
||
|
+
|
||
|
+ free(str);
|
||
|
break;
|
||
|
case LIMIT_CMDLINE_OPTION:
|
||
|
/* command-line options are ignored here */
|