32 #include <glib/gstdio.h> 46 #define G_LOG_DOMAIN "base pidfile" 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);
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);
void pidfile_remove(gchar *daemon_name)
Remove PID file.
int pidfile_create(gchar *daemon_name)
Create a PID-file.