diff options
author | Pawel Jakub Dawidek <pjd@FreeBSD.org> | 2005-08-24 17:21:38 +0000 |
---|---|---|
committer | Pawel Jakub Dawidek <pjd@FreeBSD.org> | 2005-08-24 17:21:38 +0000 |
commit | 2934fb395b69cf33f1f34bbdeb315fc97255cf08 (patch) | |
tree | c792c94e273313efbdd6a37c1082c2c722e222eb /libutil/libutil.h | |
parent | a0dc9e9f231d71a5945b1e7c5248d25ddd456387 (diff) | |
download | pw-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.h | 17 |
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) |