/[LeafOK_CVS]/lbbs/src/common.c
ViewVC logotype

Contents of /lbbs/src/common.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.47 - (show annotations)
Mon Nov 17 02:32:42 2025 UTC (3 months, 4 weeks ago) by sysadm
Branch: MAIN
Changes since 1.46: +0 -3 lines
Content type: text/x-csrc
Optimize epoll handling to avoid repeated create / close
Modify several extern variables to static
Cleanup more server-side variables after fork of client process

1 /* SPDX-License-Identifier: GPL-3.0-or-later */
2 /*
3 * common
4 * - common definitions
5 *
6 * Copyright (C) 2004-2025 Leaflet <leaflet@leafok.com>
7 */
8
9 #ifdef HAVE_CONFIG_H
10 #include "config.h"
11 #endif
12
13 #include "common.h"
14
15 // Version
16 const char APP_INFO[] = PACKAGE_STRING " build on " __DATE__ " " __TIME__;
17
18 // Enviroment
19 const char CONF_BBSD[] = "conf/bbsd.conf";
20 const char CONF_MENU[] = "var/menu_merged.conf";
21 const char CONF_BBSNET[] = "conf/bbsnet.conf";
22 const char CONF_BWF[] = "conf/badwords.conf";
23 const char CONF_TOP10_MENU[] = "var/bbs_top_menu.conf";
24 const char SSH_HOST_KEYFILE[] = "conf/ssh_host_rsa_key";
25
26 const char LOG_FILE_INFO[] = "log/bbsd.log";
27 const char LOG_FILE_ERROR[] = "log/error.log";
28
29 const char DATA_WELCOME[] = "data/welcome.txt";
30 const char DATA_REGISTER[] = "data/register.txt";
31 const char DATA_GOODBYE[] = "data/goodbye.txt";
32 const char DATA_LICENSE[] = "data/license.txt";
33 const char DATA_COPYRIGHT[] = "data/copyright.txt";
34 const char DATA_VERSION[] = "data/version.txt";
35 const char DATA_LOGIN_ERROR[] = "data/login_error.txt";
36 const char DATA_ACTIVE_BOARD[] = "data/active_board.txt";
37 const char DATA_READ_HELP[] = "data/read_help.txt";
38 const char DATA_EDITOR_HELP[] = "data/editor_help.txt";
39
40 const char VAR_BBS_TOP[] = "var/bbs_top.txt";
41
42 const char VAR_ARTICLE_BLOCK_SHM[] = "var/article_block_shm.~";
43 const char VAR_SECTION_LIST_SHM[] = "var/section_list_shm.~";
44 const char VAR_TRIE_DICT_SHM[] = "var/trie_dict_shm.~";
45 const char VAR_USER_LIST_SHM[] = "var/user_list_shm.~";
46
47 const char VAR_ARTICLE_CACHE_DIR[] = "var/articles/";
48 const char VAR_GEN_EX_MENU_DIR[] = "var/gen_ex/";
49 const char VAR_SECTION_AID_LOC_DIR[] = "var/section_aid_loc/";
50
51 // File loader
52 const char *data_files_load_startup[] = {
53 DATA_WELCOME,
54 DATA_REGISTER,
55 DATA_GOODBYE,
56 DATA_LICENSE,
57 DATA_COPYRIGHT,
58 DATA_VERSION,
59 DATA_LOGIN_ERROR,
60 DATA_ACTIVE_BOARD,
61 DATA_READ_HELP,
62 DATA_EDITOR_HELP,
63 VAR_BBS_TOP};
64
65 const int data_files_load_startup_count = sizeof(data_files_load_startup) / sizeof(const char *);
66
67 // Global declaration for sockets
68 char hostaddr_client[IP_ADDR_LEN];
69 int port_client;
70
71 // SSHv2
72 int SSH_v2 = 0;
73 ssh_session SSH_session;
74 ssh_channel SSH_channel;
75
76 // Global declaration for system
77 volatile int SYS_server_exit = 0;
78 volatile int SYS_child_process_count = 0;
79 volatile int SYS_child_exit = 0;
80 volatile int SYS_conf_reload = 0;
81
82 // Common function
83 void sig_hup_handler(int i)
84 {
85 SYS_conf_reload = 1;
86 }
87
88 void sig_term_handler(int i)
89 {
90 SYS_server_exit = 1;
91 }
92
93 void sig_chld_handler(int i)
94 {
95 SYS_child_exit = 1;
96 }

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1