BUG/MINOR: cfgparse-tcp: leak when re-declaring interface from bind line
When interface keyword is used multiple times within the same bind line, the previous value isn't checked and is rewritten as-is, resulting in a small memory leak. Ensuring the interface name is first freed before assigning it to a new value. This may be backported to every stable versions. [Note for 2.2, the fix must be performed in bind_parse_interface() from proto_tcp.c, directly within the listener's loop, also ha_free() was not available so free() must be used instead]
This commit is contained in:
parent
1bdd490f9f
commit
c49224a29d
|
@ -142,6 +142,7 @@ static int bind_parse_interface(char **args, int cur_arg, struct proxy *px, stru
|
|||
return ERR_ALERT | ERR_FATAL;
|
||||
}
|
||||
|
||||
ha_free(&conf->settings.interface);
|
||||
conf->settings.interface = strdup(args[cur_arg + 1]);
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue