From e5a53c175a2cdc59eeb0c0ddd459a9980c832c8b Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Wed, 17 Feb 2021 10:33:20 +0100 Subject: [PATCH] initctl: fix too long cmd arglist with 'initctl -v show' Only append args that have length, MAX number of args are many. Signed-off-by: Joachim Wiberg --- src/initctl.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/initctl.c b/src/initctl.c index a7d24a40..2d81606a 100644 --- a/src/initctl.c +++ b/src/initctl.c @@ -523,11 +523,14 @@ static int show_status(char *arg) if (!verbose) { printf("%s\n", svc->desc); } else { - char args[512] = ""; + char args[CMD_SIZE] = ""; for (i = 1; i < MAX_NUM_SVC_ARGS; i++) { + if (strlen(svc->args[i]) == 0) + continue; + if (args[0]) + strlcat(args, " ", sizeof(args)); strlcat(args, svc->args[i], sizeof(args)); - strlcat(args, " ", sizeof(args)); } printf("%s %s\n", svc->cmd, args);