mirror of
https://github.com/haproxy/haproxy.git
synced 2026-05-28 04:12:17 -04: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
1 changed files with 9 additions and 0 deletions
|
|
@ -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 a new issue