summaryrefslogtreecommitdiffstats
path: root/libutil/libutil.h
diff options
context:
space:
mode:
authorPawel Jakub Dawidek <pjd@FreeBSD.org>2005-08-24 17:21:38 +0000
committerPawel Jakub Dawidek <pjd@FreeBSD.org>2005-08-24 17:21:38 +0000
commit2934fb395b69cf33f1f34bbdeb315fc97255cf08 (patch)
treec792c94e273313efbdd6a37c1082c2c722e222eb /libutil/libutil.h
parenta0dc9e9f231d71a5945b1e7c5248d25ddd456387 (diff)
downloadpw-darwin-2934fb395b69cf33f1f34bbdeb315fc97255cf08.tar.gz
pw-darwin-2934fb395b69cf33f1f34bbdeb315fc97255cf08.tar.zst
pw-darwin-2934fb395b69cf33f1f34bbdeb315fc97255cf08.zip
Add a family of functions for reliable pidfiles handling.
Idea from: jmg Discussed on: arch@
Diffstat (limited to 'libutil/libutil.h')
-rw-r--r--libutil/libutil.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/libutil/libutil.h b/libutil/libutil.h
index 3042d0f..961fa1b 100644
--- a/libutil/libutil.h
+++ b/libutil/libutil.h
@@ -49,6 +49,16 @@ typedef struct _property {
char *value;
} *properties;
+#ifdef _SYS_PARAM_H_
+/* for pidfile.c */
+struct pidfh {
+ int pf_fd;
+ char pf_path[MAXPATHLEN + 1];
+ __dev_t pf_dev;
+ ino_t pf_ino;
+};
+#endif
+
/* Avoid pulling in all the include files for no need */
struct termios;
struct winsize;
@@ -102,6 +112,13 @@ struct passwd *pw_scan(const char *_line, int _flags);
const char *pw_tempname(void);
int pw_tmp(int _mfd);
#endif
+
+#ifdef _SYS_PARAM_H_
+struct pidfh *pidfile_open(const char *path, mode_t mode, pid_t *pidptr);
+int pidfile_write(struct pidfh *pfh);
+int pidfile_close(struct pidfh *pfh);
+int pidfile_remove(struct pidfh *pfh);
+#endif
__END_DECLS
#define UU_LOCK_INUSE (1)