#include <glib.h>
Go to the source code of this file.
◆ pidfile_create()
int pidfile_create |
( |
gchar * |
daemon_name | ) |
|
Create a PID-file.
A standard PID file will be created for the given daemon name.
- Parameters
-
[in] | daemon_name | The name of the daemon (e.g. "openvasmd") |
- Returns
- 0 for success, anything else indicates an error.
Definition at line 59 of file pidfile.c.
61 gchar *name_pid = g_strconcat (daemon_name,
".pid", NULL);
62 gchar *pidfile_name = g_build_filename (OPENVAS_PID_DIR, name_pid, NULL);
63 FILE *pidfile = g_fopen (pidfile_name,
"w");
69 g_critical (
"%s: failed to open pidfile: %s\n", __FUNCTION__,
75 g_fprintf (pidfile,
"%d\n", getpid ());
77 g_free (pidfile_name);
◆ pidfile_remove()
void pidfile_remove |
( |
gchar * |
daemon_name | ) |
|
Remove PID file.
- Parameters
-
[in] | daemon_name | The name of the daemon (e.g. "openvasmd") |
Definition at line 88 of file pidfile.c.
90 gchar *name_pid = g_strconcat (daemon_name,
".pid", NULL);
91 gchar *pidfile_name = g_build_filename (OPENVAS_PID_DIR, name_pid, NULL);
92 gchar *pidfile_contents;
96 if (g_file_get_contents (pidfile_name, &pidfile_contents, NULL, NULL))
98 int pid = atoi (pidfile_contents);
100 if (pid == getpid ())
102 g_unlink (pidfile_name);
104 g_free (pidfile_contents);
107 g_free (pidfile_name);