aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/lib.h1
-rw-r--r--lib/xwrap.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/lib/lib.h b/lib/lib.h
index 5d1d03c7..b7b10ff4 100644
--- a/lib/lib.h
+++ b/lib/lib.h
@@ -123,6 +123,7 @@ void xmkpath(char *path, int mode);
void xsetuid(uid_t uid);
char *xreadlink(char *name);
long xparsetime(char *arg, long units, long *fraction);
+void xpidfile(char *name);
// lib.c
void verror_msg(char *msg, int err, va_list va);
diff --git a/lib/xwrap.c b/lib/xwrap.c
index 9f1dc996..f5eb4d11 100644
--- a/lib/xwrap.c
+++ b/lib/xwrap.c
@@ -452,7 +452,7 @@ void xpidfile(char *name)
sprintf(pidfile, "/var/run/%s.pid", name);
// Try three times to open the sucker.
for (i=0; i<3; i++) {
- fd = open(pidfile, O_CREAT|O_EXCL, 0644);
+ fd = open(pidfile, O_CREAT|O_EXCL|O_WRONLY, 0644);
if (fd != -1) break;
// If it already existed, read it. Loop for race condition.