From 9a6c68c952957c8f36218f03859c13cfade13a2b Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Fri, 5 May 2023 04:32:09 +0200 Subject: [PATCH] initctl: follow-up to 700c32fd, fix enable regression Signed-off-by: Joachim Wiberg --- src/serv.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/serv.c b/src/serv.c index f190191e..dd279573 100644 --- a/src/serv.c +++ b/src/serv.c @@ -273,7 +273,7 @@ int serv_enable(char *arg) ERR(73, "failed creating %s/enabled directory", finit_rcsd); len = snprintf(NULL, 0, "%s/available/%s", finit_rcsd, src); - arglen = snprintf(NULL, 0, "%s/enabled/%s", finit_rcsd, arg); + arglen = snprintf(NULL, 0, "%s/enabled/%s.conf", finit_rcsd, arg); char argpath[arglen + 1], path[len + 1]; snprintf(path, sizeof(path), "%s/available/%s", finit_rcsd, src); @@ -289,6 +289,8 @@ int serv_enable(char *arg) ERRX(72, "cannot find %s%s", ptr ? "template ": "", path); snprintf(argpath, sizeof(argpath), "%s/enabled/%s", finit_rcsd, arg); + if (!strstr(argpath, ".conf")) + strlcat(argpath, ".conf", sizeof(argpath)); if (fexist(argpath)) ERRX(noerr ? 0 : 1, "%s already enabled", arg);