mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-08-06 15:17:01 +02:00
BUG/MINOR: config/userlist: Support one 'users' option for 'group' directive
When a group is defined in a userlist section, only one 'users' option is expected. But it was not tested. Thus it was possible to set several options leading to a memory leak. It is now tested, and it is not allowed to redefine the users option. It was reported by Coverity in #2841: CID 1587771. This patch could be backported to all stable versions.
This commit is contained in:
parent
75e8c8ed33
commit
a1e14d2a82
@ -1407,6 +1407,15 @@ cfg_parse_users(const char *file, int linenum, char **args, int kwm)
|
||||
|
||||
while (*args[cur_arg]) {
|
||||
if (strcmp(args[cur_arg], "users") == 0) {
|
||||
if (ag->groupusers) {
|
||||
ha_alert("parsing [%s:%d]: 'users' option already defined in '%s' name '%s'.\n",
|
||||
file, linenum, args[0], args[1]);
|
||||
err_code |= ERR_ALERT | ERR_FATAL;
|
||||
free(ag->groupusers);
|
||||
free(ag->name);
|
||||
free(ag);
|
||||
goto out;
|
||||
}
|
||||
ag->groupusers = strdup(args[cur_arg + 1]);
|
||||
cur_arg += 2;
|
||||
continue;
|
||||
|
Loading…
Reference in New Issue
Block a user