mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-11-16 08:21:01 +01:00
BUG/MEDIUM: ssl: fix the gcc-12 broken fix :-(
... or how a bogus warning forces you to do tricky changes in your code
and fail on a length test condition! Fortunately it changed in the right
direction that immediately broke, due to a missing "> sizeof(path)" that
had to be added to the already ugly condition.
This fixes recent commit 393e42ae5 ("BUILD: ssl: work around bogus warning
in gcc 12's -Wformat-truncation"). It may have to be backported if that
one is backported.
This commit is contained in:
parent
d86793479f
commit
63fc900ba2
@ -537,7 +537,7 @@ int crtlist_parse_file(char *file, struct bind_conf *bind_conf, struct proxy *cu
|
|||||||
|
|
||||||
if (*crt_path != '/' && global_ssl.crt_base) {
|
if (*crt_path != '/' && global_ssl.crt_base) {
|
||||||
if ((strlen(global_ssl.crt_base) + 1 + strlen(crt_path)) > sizeof(path) ||
|
if ((strlen(global_ssl.crt_base) + 1 + strlen(crt_path)) > sizeof(path) ||
|
||||||
snprintf(path, sizeof(path), "%s/%s", global_ssl.crt_base, crt_path)) {
|
snprintf(path, sizeof(path), "%s/%s", global_ssl.crt_base, crt_path) > sizeof(path)) {
|
||||||
memprintf(err, "parsing [%s:%d]: '%s' : path too long",
|
memprintf(err, "parsing [%s:%d]: '%s' : path too long",
|
||||||
file, linenum, crt_path);
|
file, linenum, crt_path);
|
||||||
cfgerr |= ERR_ALERT | ERR_FATAL;
|
cfgerr |= ERR_ALERT | ERR_FATAL;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user