From: Gianluca Merlo Date: Sat, 19 Mar 2016 12:34:26 +0000 (+0100) Subject: config: fix flags in uint option handler X-Git-Tag: 11.22.0-rc1~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fchanges%2F44%2F2444%2F1;p=thirdparty%2Fasterisk.git config: fix flags in uint option handler The configuration unsigned integer option handler sets flags for the parser as if the option should be a signed integer (PARSE_INT32), leading to errors on "out of range" values. Fix flags (PARSE_UINT32). ASTERISK-25612 #close Change-Id: I96b539336275e0e72a8e8033487d2c3344debd3e --- diff --git a/main/config_options.c b/main/config_options.c index 2e6e824934..d0a8363c6a 100644 --- a/main/config_options.c +++ b/main/config_options.c @@ -771,7 +771,7 @@ static int int_handler_fn(const struct aco_option *opt, struct ast_variable *var */ static int uint_handler_fn(const struct aco_option *opt, struct ast_variable *var, void *obj) { unsigned int *field = (unsigned int *)(obj + opt->args[0]); - unsigned int flags = PARSE_INT32 | opt->flags; + unsigned int flags = PARSE_UINT32 | opt->flags; int res = 0; if (opt->flags & PARSE_IN_RANGE) { res = opt->flags & PARSE_DEFAULT ?