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

Annotation of /lbbs/src/common.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.47 - (hide 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 sysadm 1.41 /* SPDX-License-Identifier: GPL-3.0-or-later */
2     /*
3     * common
4     * - common definitions
5     *
6 sysadm 1.42 * Copyright (C) 2004-2025 Leaflet <leaflet@leafok.com>
7 sysadm 1.41 */
8 sysadm 1.1
9 sysadm 1.46 #ifdef HAVE_CONFIG_H
10     #include "config.h"
11     #endif
12    
13 sysadm 1.11 #include "common.h"
14 sysadm 1.3
15 sysadm 1.44 // Version
16     const char APP_INFO[] = PACKAGE_STRING " build on " __DATE__ " " __TIME__;
17    
18 sysadm 1.43 // 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 sysadm 1.45 const char CONF_BWF[] = "conf/badwords.conf";
23 sysadm 1.43 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 sysadm 1.21 // 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 sysadm 1.38 DATA_VERSION,
59 sysadm 1.21 DATA_LOGIN_ERROR,
60     DATA_ACTIVE_BOARD,
61     DATA_READ_HELP,
62 sysadm 1.39 DATA_EDITOR_HELP,
63 sysadm 1.22 VAR_BBS_TOP};
64 sysadm 1.40
65     const int data_files_load_startup_count = sizeof(data_files_load_startup) / sizeof(const char *);
66 sysadm 1.21
67 sysadm 1.9 // Global declaration for sockets
68 sysadm 1.29 char hostaddr_client[IP_ADDR_LEN];
69 sysadm 1.1 int port_client;
70    
71 sysadm 1.28 // SSHv2
72     int SSH_v2 = 0;
73     ssh_session SSH_session;
74     ssh_channel SSH_channel;
75    
76 sysadm 1.9 // Global declaration for system
77 sysadm 1.17 volatile int SYS_server_exit = 0;
78     volatile int SYS_child_process_count = 0;
79 sysadm 1.18 volatile int SYS_child_exit = 0;
80 sysadm 1.26 volatile int SYS_conf_reload = 0;
81 sysadm 1.7
82 sysadm 1.9 // Common function
83 sysadm 1.17 void sig_hup_handler(int i)
84 sysadm 1.6 {
85 sysadm 1.26 SYS_conf_reload = 1;
86 sysadm 1.7 }
87    
88 sysadm 1.17 void sig_term_handler(int i)
89 sysadm 1.7 {
90 sysadm 1.17 SYS_server_exit = 1;
91 sysadm 1.7 }
92    
93 sysadm 1.17 void sig_chld_handler(int i)
94 sysadm 1.7 {
95 sysadm 1.18 SYS_child_exit = 1;
96 sysadm 1.6 }

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