/[LeafOK_CVS]/lbbs/include/common.h
ViewVC logotype

Diff of /lbbs/include/common.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.37 by sysadm, Sun Jun 1 03:07:42 2025 UTC Revision 1.63 by sysadm, Fri Nov 7 04:58:09 2025 UTC
# Line 1  Line 1 
1  /***************************************************************************  /* SPDX-License-Identifier: GPL-3.0-or-later */
2                                                    common.h  -  description  /*
3                                                           -------------------   * common
4          Copyright            : (C) 2004-2025 by Leaflet   *   - common definitions
5          Email                : leaflet@leafok.com   *
6   ***************************************************************************/   * Copyright (C) 2004-2025  Leaflet <leaflet@leafok.com>
7     */
 /***************************************************************************  
  *                                                                         *  
  *   This program is free software; you can redistribute it and/or modify  *  
  *   it under the terms of the GNU General Public License as published by  *  
  *   the Free Software Foundation; either version 3 of the License, or     *  
  *   (at your option) any later version.                                   *  
  *                                                                         *  
  ***************************************************************************/  
8    
9  #ifndef _COMMON_H_  #ifndef _COMMON_H_
10  #define _COMMON_H_  #define _COMMON_H_
11    
12  #include <stddef.h>  #include <stddef.h>
13    #include <libssh/libssh.h>
14    #include <libssh/server.h>
15    
16  #define LINE_BUFFER_LEN 1024  enum common_constant_t
17  #define FILE_PATH_LEN 4096  {
18        LINE_BUFFER_LEN = 1024,
19        FILE_PATH_LEN = 4096,
20    
21        // Screen
22        SCREEN_ROWS = 24,
23        SCREEN_COLS = 80,
24    
25        // Network
26        MAX_CLIENT_LIMIT = 2000,
27        MAX_CLIENT_PER_IP_LIMIT = 100,
28        IP_ADDR_LEN = 50,
29        MAX_EVENTS = 10,
30    };
31    
32  // Version  // Version
33  extern char app_version[256];  extern const char APP_INFO[];
34    
35  // Enviroment  // Enviroment
36  #define CONF_BBSD "conf/bbsd.conf"  extern const char CONF_BBSD[];
37  #define CONF_MENU "var/menu_merged.conf"  extern const char CONF_MENU[];
38  #define CONF_BBSNET "conf/bbsnet.conf"  extern const char CONF_BBSNET[];
39    extern const char CONF_BWF[];
40  #define LOG_FILE_INFO "log/bbsd.log"  extern const char CONF_TOP10_MENU[];
41  #define LOG_FILE_ERROR "log/error.log"  extern const char SSH_HOST_KEYFILE[];
42    
43  #define DATA_WELCOME "data/welcome.txt"  extern const char LOG_FILE_INFO[];
44  #define DATA_REGISTER "data/register.txt"  extern const char LOG_FILE_ERROR[];
45  #define DATA_GOODBYE "data/goodbye.txt"  
46  #define DATA_LICENSE "data/license.txt"  extern const char DATA_WELCOME[];
47  #define DATA_COPYRIGHT "data/copyright.txt"  extern const char DATA_REGISTER[];
48  #define DATA_LOGIN_ERROR "data/login_error.txt"  extern const char DATA_GOODBYE[];
49  #define DATA_ACTIVE_BOARD "data/active_board.txt"  extern const char DATA_LICENSE[];
50  #define DATA_READ_HELP "data/read_help.txt"  extern const char DATA_COPYRIGHT[];
51    extern const char DATA_VERSION[];
52  #define VAR_MAX_USER_ONLINE "var/max_user_online.dat"  extern const char DATA_LOGIN_ERROR[];
53  #define VAR_BBS_TOP "var/bbs_top.txt"  extern const char DATA_ACTIVE_BOARD[];
54    extern const char DATA_READ_HELP[];
55  #define VAR_ARTICLE_BLOCK_SHM "var/article_block_shm.~"  extern const char DATA_EDITOR_HELP[];
56  #define VAR_SECTION_LIST_SHM "var/section_list_shm.~"  
57  #define VAR_TRIE_DICT_SHM "var/trie_dict_shm.~"  extern const char VAR_BBS_TOP[];
58    
59  #define VAR_ARTICLE_CACHE_DIR "var/articles/"  extern const char VAR_ARTICLE_BLOCK_SHM[];
60    extern const char VAR_SECTION_LIST_SHM[];
61    extern const char VAR_TRIE_DICT_SHM[];
62    extern const char VAR_USER_LIST_SHM[];
63    
64    extern const char VAR_ARTICLE_CACHE_DIR[];
65    extern const char VAR_GEN_EX_MENU_DIR[];
66    extern const char VAR_SECTION_AID_LOC_DIR[];
67    
68  // File loader  // File loader
69  extern const char *data_files_load_startup[];  extern const char *data_files_load_startup[];
70  extern int data_files_load_startup_count;  extern const int data_files_load_startup_count;
 extern const char *data_files_load_on_timeval[];  
 extern int data_files_load_timeval_count;  
   
 // Screen  
 #define SCREEN_ROWS 24  
 #define SCREEN_COLS 80  
71    
72  // Network  // Network
73  #define MAX_CLIENTS_LIMIT 2048  extern int socket_server[2];
 #define IP_ADDR_LEN 50  
 #define MAX_EVENTS 10  
   
 extern int socket_server;  
74  extern int socket_client;  extern int socket_client;
 extern char hostaddr_server[IP_ADDR_LEN];  
75  extern char hostaddr_client[IP_ADDR_LEN];  extern char hostaddr_client[IP_ADDR_LEN];
 extern int port_server;  
76  extern int port_client;  extern int port_client;
77    
78  extern const char *get_time_str(char *string, size_t length);  // SSHv2
79    extern int SSH_v2;
80    extern ssh_bind sshbind;
81    extern ssh_session SSH_session;
82    extern ssh_channel SSH_channel;
83    
84  // Signal handler  // Signal handler
85  extern void sig_hup_handler(int);  extern void sig_hup_handler(int);
# Line 85  extern volatile int SYS_server_exit; Line 91  extern volatile int SYS_server_exit;
91  extern volatile int SYS_child_process_count;  extern volatile int SYS_child_process_count;
92  extern volatile int SYS_child_exit;  extern volatile int SYS_child_exit;
93  extern volatile int SYS_conf_reload;  extern volatile int SYS_conf_reload;
 extern volatile int SYS_data_file_reload;  
 extern volatile int SYS_section_list_reload;  
   
 // Network  
 extern const char *ip_mask(char *s, int level, char mask);  
94    
95  #endif //_COMMON_H_  #endif //_COMMON_H_


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

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