X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=src%2Fmain.c;h=0ca3d31ea190c1be70efb3f6eded83e96dfa43d9;hb=706e48b1e666054030c491d864f740071e390038;hp=79043b19452374fe9648859ccc074ca88e94163a;hpb=b53d0c5f88063f075a48a0426f9d5d6b3490b9fc;p=NeonServV5.git diff --git a/src/main.c b/src/main.c index 79043b1..0ca3d31 100644 --- a/src/main.c +++ b/src/main.c @@ -61,6 +61,7 @@ static pthread_mutex_t log_sync; static void check_firstrun(); void cleanup() { + stop_modules(); free_sockets(); qserver_free(); free_parser(); @@ -69,7 +70,6 @@ void cleanup() { free_bind(); free_modcmd(); free_whoqueue(); - free_bots(); free_mysql(); free_handleinfohandler(); free_lang(); @@ -282,7 +282,7 @@ main: init_modcmd(); init_handleinfohandler(); init_tools(); - register_commands(); + init_bots(); init_DBHelper(); qserver_init(); @@ -290,9 +290,9 @@ main: load_languages(); int update_minutes = get_int_field("statistics.frequency"); if(!update_minutes) update_minutes = 2; - timeq_add(update_minutes * 60 + 10, main_statistics, NULL); + timeq_add(update_minutes * 60 + 10, 0, main_statistics, NULL); - timeq_add(90, main_checkauths, NULL); + timeq_add(90, 0, main_checkauths, NULL); int worker_threads = get_int_field("General.worker_threads"); if(!worker_threads) worker_threads = 1; @@ -307,7 +307,7 @@ main: int usleep_delay = 1000000 / TICKS_PER_SECOND; while(running) { timeq_tick(); - loop_bots(); + loop_modules(); qserver_loop(); queue_loop(); mysql_free(); @@ -329,7 +329,7 @@ main: } } while(time(0) < socket_wait); timeq_tick(); - loop_bots(); + loop_modules(); clearTempUsers(); destroyEvents(); qserver_loop(); @@ -472,13 +472,13 @@ TIMEQ_CALLBACK(main_checkauths) { } } - timeq_add(next_call, main_checkauths, NULL); + timeq_add(next_call, 0, main_checkauths, NULL); } TIMEQ_CALLBACK(main_statistics) { int update_minutes = get_int_field("statistics.frequency"); if(!update_minutes) update_minutes = 2; - timeq_add(update_minutes * 60, main_statistics, NULL); + timeq_add(update_minutes * 60, 0, main_statistics, NULL); if(get_int_field("statistics.enable")) { statistics_enabled = 1; statistics_requested_lusers = 1; @@ -518,6 +518,14 @@ void statistics_update() { } } +time_t getStartTime() { + return start_time; +} + +int getRunningThreads() { + return running_threads; +} + void write_log(int loglevel, const char *line, int len) { SYNCHRONIZE(log_sync); if(!daemonized && (print_loglevel & loglevel)) {