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

Diff of /lbbs/include/bbs.h

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

Revision 1.2 by sysadm, Fri Oct 22 15:20:32 2004 UTC Revision 1.35 by sysadm, Tue Nov 4 14:58:55 2025 UTC
# Line 1  Line 1 
1  /***************************************************************************  /* SPDX-License-Identifier: GPL-3.0-or-later */
2                              bbs.h  -  description  /*
3                               -------------------   * bbs
4      begin                : Mon Oct 18 2004   *   - BBS related common definitions
5      copyright            : (C) 2004 by Leaflet   *
6      email                : leaflet@leafok.com   * Copyright (C) 2004-2025  Leaflet <leaflet@leafok.com>
7   ***************************************************************************/   */
8    
9  /***************************************************************************  #ifndef _BBS_H_
10   *                                                                         *  #define _BBS_H_
  *   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 2 of the License, or     *  
  *   (at your option) any later version.                                   *  
  *                                                                         *  
  ***************************************************************************/  
11    
12  #include <time.h>  #include <time.h>
13    #include <netinet/in.h>
14    
15  //BBS  // BBS
16  #define BBS_max_section 1024  #define BBS_max_section 200
17    #define BBS_section_name_max_len 20
18    #define BBS_section_title_max_len 40
19    #define BBS_username_max_len 12
20    #define BBS_password_max_len 12
21    #define BBS_nickname_max_len 40
22    #define BBS_user_tz_max_len 50
23    
24    #define BBS_msg_max_len 1024
25    
26    #define BBS_id_max_len 20
27    #define BBS_name_max_len 50
28    #define BBS_server_max_len 255
29    #define BBS_address_max_len 50
30    #define BBS_start_dt_max_len 50
31    
32    extern const int BBS_section_list_load_interval;
33    
34    extern char BBS_id[BBS_id_max_len + 1];
35    extern char BBS_name[BBS_name_max_len + 1];
36    extern char BBS_server[BBS_server_max_len + 1];
37    extern char BBS_address[BBS_address_max_len + 1];
38    extern in_port_t BBS_port[2];
39    extern int BBS_max_client;
40    extern int BBS_max_client_per_ip;
41    extern char BBS_start_dt[BBS_start_dt_max_len + 1];
42    extern int BBS_sys_id;
43    
44    // User
45    #define BBS_max_user_count 100000
46    #define BBS_max_user_online_count 10000
47    extern const int BBS_user_list_load_interval;
48    extern const int BBS_user_online_list_load_interval;
49    
50    // Session
51    #define MAX_DELAY_TIME 600 // 10 minutes
52    extern const int BBS_user_off_line;
53    
54    extern char BBS_username[BBS_username_max_len + 1];
55    extern char BBS_nickname[BBS_nickname_max_len + 1];
56    extern char BBS_user_tz[BBS_user_tz_max_len + 1];
57    extern int BBS_user_exp;
58    
59  extern char BBS_id[20];  extern time_t BBS_login_tm;
60  extern char BBS_name[50];  extern time_t BBS_last_access_tm;
 extern char BBS_server[256];  
 extern char BBS_address[50];  
 extern unsigned int BBS_port;  
 extern long BBS_max_client;  
 extern long BBS_max_user;  
 extern char BBS_start_dt[50];  
   
 //User privilege  
 #define S_NONE          0x0  
 #define S_LIST          0x1  
 #define S_GETEXP        0x2  
 #define S_POST          0x4  
 #define S_MSG           0x8  
 #define S_MAIL          0x10  
 #define S_MAN_S         0x20  
 #define S_MAN_M         0x60    //(0x40 | 0x20)  
 #define S_ADMIN         0xe0    //(0x80 | 0x40 | 0x20)  
 #define S_ALL           0xff  
 #define S_DEFAULT       0x3     //0x1 | 0x2  
   
 #define P_GUEST         0x0     //游客  
 #define P_USER          0x1     //普通用户  
 #define P_AUTH_USER     0x2     //认证用户  
 #define P_MAN_S         0x4     //副版主  
 #define P_MAN_M         0x8     //正版主  
 #define P_MAN_C         0x10    //栏目主管  
 #define P_ADMIN_S       0x20    //次系统管理员  
 #define P_ADMIN_M       0x40    //主系统管理员  
   
 struct user_priv  
 {  
   long int uid;  
   long int auid;  
   int level;  
   int g_priv;  
   struct  
   {  
     int sid;  
     int s_priv;  
   }s_priv_list[BBS_max_section];  
   int s_count;  
 };  
61    
62  typedef struct user_priv BBS_user_priv;  #define BBS_current_action_max_len 20
63    
64  //Session  extern char BBS_current_action[BBS_current_action_max_len + 1];
65  extern BBS_user_priv BBS_priv;  extern time_t BBS_current_action_tm;
66    extern const int BBS_current_action_refresh_interval;
67    
68  extern int BBS_passwd_complex;  extern const char *get_astro_name(time_t birthday);
69    extern int get_user_level(int point);
70    extern const char *get_user_level_name(int level);
71    
72  extern time_t BBS_login_tm;  extern char *setuserfile(char *buf, size_t len, const char *filename);
 extern time_t BBS_last_access_tm;  
 extern time_t BBS_last_sub_tm;  
73    
74    #endif //_BBS_H_


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

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