diff options
Diffstat (limited to 'lib/pid_output.c')
| -rw-r--r-- | lib/pid_output.c | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/lib/pid_output.c b/lib/pid_output.c index 023a166f27..21687e48c4 100644 --- a/lib/pid_output.c +++ b/lib/pid_output.c @@ -24,6 +24,7 @@ #include <log.h> #include "version.h" #include "network.h" +#include "lib_errors.h" #define PIDFILE_MASK 0644 @@ -41,8 +42,9 @@ pid_t pid_output(const char *path) oldumask = umask(0777 & ~PIDFILE_MASK); fd = open(path, O_RDWR | O_CREAT, PIDFILE_MASK); if (fd < 0) { - zlog_err("Can't create pid lock file %s (%s), exiting", path, - safe_strerror(errno)); + zlog_ferr(LIB_ERR_SYSTEM_CALL, + "Can't create pid lock file %s (%s), exiting", path, + safe_strerror(errno)); umask(oldumask); exit(1); } else { @@ -57,22 +59,23 @@ pid_t pid_output(const char *path) lock.l_whence = SEEK_SET; if (fcntl(fd, F_SETLK, &lock) < 0) { - zlog_err("Could not lock pid_file %s (%s), exiting", - path, safe_strerror(errno)); + zlog_ferr(LIB_ERR_SYSTEM_CALL, + "Could not lock pid_file %s (%s), exiting", + path, safe_strerror(errno)); exit(1); } sprintf(buf, "%d\n", (int)pid); pidsize = strlen(buf); if ((tmp = write(fd, buf, pidsize)) != (int)pidsize) - zlog_err( - "Could not write pid %d to pid_file %s, rc was %d: %s", - (int)pid, path, tmp, safe_strerror(errno)); + zlog_ferr(LIB_ERR_SYSTEM_CALL, + "Could not write pid %d to pid_file %s, rc was %d: %s", + (int)pid, path, tmp, safe_strerror(errno)); else if (ftruncate(fd, pidsize) < 0) - zlog_err( - "Could not truncate pid_file %s to %u bytes: %s", - path, (unsigned int)pidsize, - safe_strerror(errno)); + zlog_ferr(LIB_ERR_SYSTEM_CALL, + "Could not truncate pid_file %s to %u bytes: %s", + path, (unsigned int)pidsize, + safe_strerror(errno)); } return pid; } |
