New function pid_file_read(), returns PID from a pid file

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
This commit is contained in:
Joachim Nilsson
2020-02-26 11:40:44 +01:00
parent 9052248127
commit f6372de6a9
2 changed files with 20 additions and 0 deletions
+19
View File
@@ -109,6 +109,25 @@ char *pid_file(svc_t *svc)
return pid_runpath(fn, path, sizeof(path));
}
pid_t pid_file_read(const char *fn)
{
pid_t pid = 0;
FILE *fp;
char buf[42];
fp = fopen(fn, "r");
if (!fp)
return -1;
if (fgets(buf, sizeof(buf), fp)) {
chomp(buf);
pid = atoi(buf);
}
fclose(fp);
return pid;
}
int pid_file_create(svc_t *svc)
{
FILE *fp;
+1
View File
@@ -31,6 +31,7 @@ int pid_alive (pid_t pid);
char *pid_get_name (pid_t pid, char *name, size_t len);
char *pid_file (svc_t *svc);
pid_t pid_file_read (const char *fn);
int pid_file_create (svc_t *svc);
int pid_file_parse (svc_t *svc, char *arg);