fix: validate --conf-keep-n >= 1 and --conf-stale-timeout >= 0 in argument parsing

This commit is contained in:
Rongsong Shen 2026-05-13 16:00:09 +00:00
parent e74fd2aac3
commit ce62406f2c

View file

@ -70,9 +70,13 @@ static error_t parse_opt(int key, char* arg, struct argp_state* state)
break;
case OPT_CONF_KEEP_N:
arguments->conf_keep_n = atoi(arg);
if (arguments->conf_keep_n < 1)
argp_error(state, "--conf-keep-n must be >= 1 (got: %s)", arg);
break;
case OPT_CONF_STALE_TIMEOUT:
arguments->conf_stale_timeout = atol(arg);
if (arguments->conf_stale_timeout < 0)
argp_error(state, "--conf-stale-timeout must be >= 0 (got: %s)", arg);
break;
default:
return ARGP_ERR_UNKNOWN;