/[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.5 by sysadm, Tue Mar 22 08:19:11 2005 UTC Revision 1.38 by sysadm, Tue Nov 18 15:15:18 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   ***************************************************************************/   */
   
 /***************************************************************************  
  *                                                                         *  
  *   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.                                   *  
  *                                                                         *  
  ***************************************************************************/  
8    
9  #include <time.h>  #ifndef _BBS_H_
10    #define _BBS_H_
11    
12  //BBS  #include <time.h>
13  #define BBS_max_section 1024  #include <netinet/in.h>
 #define BBS_max_username_length 20  
   
 extern char BBS_id[20];  
 extern char BBS_name[50];  
 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    //主系统管理员  
14    
15  struct user_priv  enum bbs_const_t
16  {  {
17    long int uid;  #ifdef __CYGWIN__
18    long int auid;      BBS_max_section = 50,
19    int level;  #else
20    int g_priv;      BBS_max_section = 200,
21    struct  #endif
22    {      BBS_section_name_max_len = 20,
23      int sid;      BBS_section_title_max_len = 40,
24      int s_priv;      BBS_username_max_len = 12,
25    } s_priv_list[BBS_max_section];      BBS_password_max_len = 12,
26    int s_count;      BBS_nickname_max_len = 40,
27  };      BBS_user_tz_max_len = 50,
28    
29        BBS_msg_max_len = 1024,
30    
31        BBS_id_max_len = 20,
32        BBS_name_max_len = 50,
33        BBS_server_max_len = 255,
34        BBS_address_max_len = 50,
35        BBS_start_dt_max_len = 50,
36    
37  typedef struct user_priv BBS_user_priv;      BBS_max_user_count = 100000,
38        BBS_max_user_online_count = 10000,
39    
40  //Session      BBS_max_user_idle_time = 600, // 10 minutes
41  #define MAX_DELAY_TIME          600  
42        BBS_current_action_max_len = 20,
43    };
44    
45  extern char BBS_username[BBS_max_username_length];  // BBS
46  extern BBS_user_priv BBS_priv;  extern const int BBS_section_list_load_interval;
47  extern int BBS_passwd_complex;  
48    extern char BBS_id[BBS_id_max_len + 1];
49    extern char BBS_name[BBS_name_max_len + 1];
50    extern char BBS_server[BBS_server_max_len + 1];
51    extern char BBS_address[BBS_address_max_len + 1];
52    extern in_port_t BBS_port[2];
53    extern int BBS_max_client;
54    extern int BBS_max_client_per_ip;
55    extern char BBS_start_dt[BBS_start_dt_max_len + 1];
56    extern int BBS_sys_id;
57    
58    // User
59    extern const int BBS_user_list_load_interval;
60    extern const int BBS_user_online_list_load_interval;
61    
62    // Session
63    extern const int BBS_user_off_line;
64    
65    extern char BBS_username[BBS_username_max_len + 1];
66    extern char BBS_nickname[BBS_nickname_max_len + 1];
67    extern char BBS_user_tz[BBS_user_tz_max_len + 1];
68    extern int BBS_user_exp;
69    
70  extern time_t BBS_login_tm;  extern time_t BBS_login_tm;
71  extern time_t BBS_last_access_tm;  extern time_t BBS_last_access_tm;
 extern time_t BBS_last_sub_tm;  
72    
73  extern char BBS_current_section_name[20];  extern char BBS_current_action[BBS_current_action_max_len + 1];
74    extern time_t BBS_current_action_tm;
75    extern const int BBS_current_action_refresh_interval;
76    
77    extern const char *get_astro_name(time_t birthday);
78    extern int get_user_level(int point);
79    extern const char *get_user_level_name(int level);
80    
81    extern char *setuserfile(char *buf, size_t len, const char *filename);
82    
83    #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