--- lbbs/src/main.c 2005/03/20 17:37:14 1.12 +++ lbbs/src/main.c 2005/05/07 09:28:12 1.14 @@ -19,7 +19,9 @@ #include "common.h" #include "io.h" #include "menu.h" +#include #include +#include void app_help (void) @@ -108,18 +110,21 @@ main (int argc, char *argv[]) if (daemon) init_daemon (); - //Initialize log + //Change current dir strncpy (app_home_dir, argv[0], rindex (argv[0], '/') - argv[0] + 1); strcat (app_home_dir, "../"); + chdir (app_home_dir); + + //Initialize log strcpy (app_temp_dir, "/tmp/lbbs/"); - mkdir (app_temp_dir, 0700); + mkdir (app_temp_dir, 0750); strcpy (log_dir, app_home_dir); strcat (log_dir, "log/"); strcpy (file_log_std, log_dir); strcpy (file_log_error, log_dir); strcat (file_log_std, "bbsd.log"); strcat (file_log_error, "error.log"); - mkdir (log_dir, 0700); + mkdir (log_dir, 0750); if (log_begin (file_log_std, file_log_error) < 0) exit (-1); @@ -140,6 +145,9 @@ main (int argc, char *argv[]) if (load_menu (&bbs_menu, file_config) < 0) exit (-3); + //Set signal handler + signal (SIG_RELOAD_MENU, reload_bbs_menu); + //Initialize socket server net_server (BBS_address, BBS_port);