From b0764b4677c9434b8722cd4084075b6dfc73d0d7 Mon Sep 17 00:00:00 2001 From: Janis Ruksans Date: Thu, 28 Jun 2012 08:11:57 +0200 Subject: [PATCH] On many systems /var/run is not world-writeable, and writing PID fails if LCR is not being run as root. The lock directory, on the contrary, must be writable by the lcr process, and can be configured by the user. Signed-off-by: Andreas Eversberg --- main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/main.c b/main.c index 7290af9..95388a0 100644 --- a/main.c +++ b/main.c @@ -332,11 +332,13 @@ int main(int argc, char *argv[]) nooutput = 1; /* write pid file */ - pidfile = fopen("/var/run/lcr.pid","w"); + SPRINT(lock, "%s/lcr.pid", options.lock); + pidfile = fopen(lock,"w"); if (pidfile) { fprintf(pidfile, "%d\n", getpid()); fclose(pidfile); - } + } else + fprintf(stderr, "Failed to create PID file: %s\n", lock); } else /* if not start */ if (!!strcasecmp(argv[1],"start")) { -- 2.13.6