diff options
author | pjd <pjd@FreeBSD.org> | 2005-08-24 17:21:38 +0000 |
---|---|---|
committer | pjd <pjd@FreeBSD.org> | 2005-08-24 17:21:38 +0000 |
commit | a5fe3401b9f1cc44c8011e8aa5cdbbe2637084e4 (patch) | |
tree | b6de69447d47fffaa83dd6300aab8b56a9a55567 /lib/libutil/libutil.h | |
parent | 473f777e4d124b4ed88d3eb95798889f5570e7f4 (diff) | |
download | FreeBSD-src-a5fe3401b9f1cc44c8011e8aa5cdbbe2637084e4.zip FreeBSD-src-a5fe3401b9f1cc44c8011e8aa5cdbbe2637084e4.tar.gz |
Add a family of functions for reliable pidfiles handling.
Idea from: jmg
Discussed on: arch@
Diffstat (limited to 'lib/libutil/libutil.h')
-rw-r--r-- | lib/libutil/libutil.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/libutil/libutil.h b/lib/libutil/libutil.h index 3042d0f..961fa1b 100644 --- a/lib/libutil/libutil.h +++ b/lib/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) |