From: Willy Tarreau Date: Thu, 24 Apr 2025 15:47:23 +0000 (+0200) Subject: BUG/MINOR: master/cli: properly trim the '@@' process name in error messages X-Git-Tag: v3.2-dev12~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0e94339eaf1c8423132debb6b1b485d8bb1bb7da;p=thirdparty%2Fhaproxy.git BUG/MINOR: master/cli: properly trim the '@@' process name in error messages When '@@' alone is sent on the master CLI (no trailing LF), we get an error that displays anything past these two characters in the buffer since there's no room for a \0. Let's make sure to limit the length of the process name in this case. No backport is needed since this was added with 00c967fac4 ("MINOR: master/cli: support bidirectional communications with workers"). --- diff --git a/src/cli.c b/src/cli.c index 2b72df796..66908bd4a 100644 --- a/src/cli.c +++ b/src/cli.c @@ -2927,7 +2927,7 @@ int pcli_find_bidir_prefix(struct stream *s, struct channel *req, char **str, co target_pid = pcli_prefix_to_pid(pid_str + 1); if (target_pid == -1) { - memprintf(errmsg, "Can't find the target PID matching the prefix '%s'\n", pid_str); + memprintf(errmsg, "Can't find the target PID matching the prefix '%.*s'\n", (int)(p - pid_str), pid_str); ret = -1; goto leave; }