Move struct pidfh definition into pidfile.c, and leave a forward declaration

for pidfh in libutil.h in its place.
This allows us to hide the contents of the pidfh structure, and also
allowed removal of the "#ifdef _SYS_PARAM_H" guard from around the
pidfile_* function prototypes.

Suggested by pjd.
This commit is contained in:
Guy Helmer 2012-01-12 22:49:36 +00:00
parent 82b6bd7d0e
commit 47b3924be0
2 changed files with 13 additions and 12 deletions

View File

@ -48,6 +48,11 @@ typedef __gid_t gid_t;
#define _GID_T_DECLARED
#endif
#ifndef _MODE_T_DECLARED
typedef __mode_t mode_t;
#define _MODE_T_DECLARED
#endif
#ifndef _PID_T_DECLARED
typedef __pid_t pid_t;
#define _PID_T_DECLARED
@ -73,21 +78,12 @@ 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 in_addr;
struct kinfo_file;
struct kinfo_proc;
struct kinfo_vmentry;
struct pidfh;
struct sockaddr;
struct termios;
struct winsize;
@ -174,14 +170,12 @@ struct group
int gr_tmp(int _mdf);
#endif
#ifdef _SYS_PARAM_H_
int pidfile_close(struct pidfh *_pfh);
int pidfile_fileno(const struct pidfh *_pfh);
struct pidfh *
pidfile_open(const char *_path, mode_t _mode, pid_t *_pidptr);
int pidfile_remove(struct pidfh *_pfh);
int pidfile_write(struct pidfh *_pfh);
#endif
#ifdef _UFS_UFS_QUOTA_H_
struct fstab;

View File

@ -41,6 +41,13 @@ __FBSDID("$FreeBSD$");
#include <errno.h>
#include <libutil.h>
struct pidfh {
int pf_fd;
char pf_path[MAXPATHLEN + 1];
dev_t pf_dev;
ino_t pf_ino;
};
static int _pidfile_remove(struct pidfh *pfh, int freeit);
static int