@ -28,6 +28,7 @@
# include "runmodes.h"
# include "runmodes.h"
# include "util-daemon.h"
# include "util-daemon.h"
# include "util-debug.h"
# include "util-debug.h"
# include "conf.h"
# ifndef OS_WIN32
# ifndef OS_WIN32
@ -116,6 +117,7 @@ void Daemonize (void) {
exit ( EXIT_FAILURE ) ;
exit ( EXIT_FAILURE ) ;
} else if ( pid = = 0 ) {
} else if ( pid = = 0 ) {
/* Child continues here */
/* Child continues here */
char * daemondir ;
umask ( 027 ) ;
umask ( 027 ) ;
@ -125,15 +127,19 @@ void Daemonize (void) {
exit ( EXIT_FAILURE ) ;
exit ( EXIT_FAILURE ) ;
}
}
/** \todo The daemon runs on the current directory, but later we'll want
if ( ConfGet ( " daemon-directory " , & daemondir ) = = 1 ) {
to allow through the configuration file ( or other means ) to
if ( ( chdir ( daemondir ) ) < 0 ) {
change the running directory */
/* if ((chdir(DAEMON_WORKING_DIRECTORY)) < 0) {
SCLogError ( SC_ERR_DAEMON , " Error changing to working directory " ) ;
SCLogError ( SC_ERR_DAEMON , " Error changing to working directory " ) ;
exit ( EXIT_FAILURE ) ;
exit ( EXIT_FAILURE ) ;
} */
}
}
chdir ( " / " ) ;
# ifndef OS_WIN32
else {
if ( chdir ( " / " ) < 0 ) {
SCLogError ( SC_ERR_DAEMON , " Error changing to working directory '/' " ) ;
}
}
# endif
SetupLogging ( ) ;
SetupLogging ( ) ;