From b81b3cde4794eb7a195e49f782fbfab930cd1a2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Thu, 30 Jul 2015 10:48:47 +0200 Subject: [PATCH 1/2] Set sys.bindir to /usr/sbin, expect cf-*components there That's where the /var/cfengine/bin/* symlinks point to and where the systemd .service files expect the daemons. This path is used in 'processes' of masterfiles/update/update_processes.cf:enable_cfengine_agents --- libenv/sysinfo.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libenv/sysinfo.c b/libenv/sysinfo.c index 06f2095270df..d615f5ed6e1d 100644 --- a/libenv/sysinfo.c +++ b/libenv/sysinfo.c @@ -586,8 +586,7 @@ static void GetNameInfo3(EvalContext *ctx) EvalContextVariablePutSpecial(ctx, SPECIAL_SCOPE_SYS, "masterdir", GetMasterDir(), CF_DATA_TYPE_STRING, "source=agent"); EvalContextVariablePutSpecial(ctx, SPECIAL_SCOPE_SYS, "inputdir", GetInputDir(), CF_DATA_TYPE_STRING, "source=agent"); - snprintf(workbuf, CF_BUFSIZE, "%s%cbin", workdir, FILE_SEPARATOR); - EvalContextVariablePutSpecial(ctx, SPECIAL_SCOPE_SYS, "bindir", workbuf, CF_DATA_TYPE_STRING, "source=agent"); + EvalContextVariablePutSpecial(ctx, SPECIAL_SCOPE_SYS, "bindir", "/usr/bin", CF_DATA_TYPE_STRING, "source=agent"); snprintf(workbuf, CF_BUFSIZE, "%s%cfailsafe.cf", GetInputDir(), FILE_SEPARATOR); EvalContextVariablePutSpecial(ctx, SPECIAL_SCOPE_SYS, "failsafe_policy_path", workbuf, CF_DATA_TYPE_STRING, "source=agent"); @@ -632,7 +631,7 @@ static void GetNameInfo3(EvalContext *ctx) components[i]); } #else - snprintf(name, CF_MAXVARSIZE - 1, "%s%cbin%c%s", workdir, FILE_SEPARATOR, FILE_SEPARATOR, components[i]); + snprintf(name, CF_MAXVARSIZE - 1, "/usr/bin/%s", components[i]); #endif have_component[i] = false; @@ -655,7 +654,7 @@ static void GetNameInfo3(EvalContext *ctx) snprintf(name, CF_MAXVARSIZE - 1, "%s%cbin%c%s.exe", workdir, FILE_SEPARATOR, FILE_SEPARATOR, components[1]); #else - snprintf(name, CF_MAXVARSIZE - 1, "%s%cbin%c%s", workdir, FILE_SEPARATOR, FILE_SEPARATOR, components[1]); + snprintf(name, CF_MAXVARSIZE - 1, "/usr/bin/%s", components[1]); #endif if (stat(name, &sb) != -1) -- 2.11.0