* As soon as we have written the PID file, we can switch
* to the user and group ID indicated by the --user option
*/
- write_pid_file();
-
+ if (pidfile != NULL)
+ {
+ write_pid_file(pidfile);
+ }
if (NULL != pw)
{
if (setgid((NULL != grp) ? grp->gr_gid : pw->pw_gid))
#include "project.h"
#include "miscutil.h"
#include "errlog.h"
-#include "jcc.h"
const char miscutil_h_rcs[] = MISCUTIL_H_VERSION;
* Description : Writes a pid file with the pid of the main process.
* Exits if the file can't be opened
*
- * Parameters : None
+ * Parameters :
+ * 1 : pidfile = Path of the pidfile that gets created.
*
* Returns : N/A
*
*********************************************************************/
-void write_pid_file(void)
+void write_pid_file(const char *pidfile)
{
FILE *fp;
- /*
- * If no --pidfile option was given,
- * we can live without one.
- */
- if (pidfile == NULL) return;
-
if ((fp = fopen(pidfile, "w")) == NULL)
{
log_error(LOG_LEVEL_FATAL, "can't open pidfile '%s': %E", pidfile);
extern void *malloc_or_die(size_t buffer_size);
#if defined(unix)
-extern void write_pid_file(void);
+extern void write_pid_file(const char *pidfile);
#endif /* unix */
extern unsigned int hash_string(const char* s);