ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/include/ircd.h
Revision: 644
Committed: Wed Jun 7 12:36:21 2006 UTC (20 years, 2 months ago) by michael
Content type: text/x-chdr
File size: 4235 byte(s)
Log Message:
- Moved split_users and split_servers ints to GlobalSetOptions struct

File Contents

# User Rev Content
1 adx 30 /*
2     * ircd-hybrid: an advanced Internet Relay Chat Daemon(ircd).
3     * ircd.h: A header for the ircd startup routines.
4     *
5     * Copyright (C) 2002 by the past and present ircd coders, and others.
6     *
7     * This program is free software; you can redistribute it and/or modify
8     * it under the terms of the GNU General Public License as published by
9     * the Free Software Foundation; either version 2 of the License, or
10     * (at your option) any later version.
11     *
12     * This program is distributed in the hope that it will be useful,
13     * but WITHOUT ANY WARRANTY; without even the implied warranty of
14     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15     * GNU General Public License for more details.
16     *
17     * You should have received a copy of the GNU General Public License
18     * along with this program; if not, write to the Free Software
19     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20     * USA
21     *
22 knight 31 * $Id$
23 adx 30 */
24    
25     #ifndef INCLUDED_ircd_h
26     #define INCLUDED_ircd_h
27    
28     #include "ircd_defs.h"
29     #include "setup.h"
30    
31     struct Client;
32     struct dlink_list;
33    
34     struct SetOptions
35     {
36     int autoconn; /* autoconn enabled for all servers? */
37     int idletime;
38     int floodcount; /* Number of messages in 1 second */
39     /* XXX for join flood catching - Dianora */
40     int joinfloodtime;
41     int joinfloodcount;
42     /* XXX */
43     int rejecttime;
44     int ident_timeout; /* timeout for identd lookups */
45     int spam_num;
46     int spam_time;
47 db 278 int maxlisters;
48 michael 644 int split_users;
49     int split_servers;
50 adx 30 };
51    
52     struct Counter
53     {
54     int myserver; /* my servers */
55     int oper; /* Opers */
56     int local; /* Local Clients */
57     int total; /* total clients */
58     int invisi; /* invisible clients */
59     int max_loc; /* MAX local clients */
60     int max_tot; /* MAX global clients */
61     unsigned long totalrestartcount; /* Total client count ever */
62     };
63    
64 michael 515 /*
65     * statistics structures
66     */
67     struct ServerStatistics
68     {
69     unsigned int is_cl; /* number of client connections */
70     unsigned int is_sv; /* number of server connections */
71     unsigned int is_ni; /* connection but no idea who it was */
72    
73     uint64_t is_cbs; /* bytes sent to clients */
74     uint64_t is_cbr; /* bytes received from clients */
75     uint64_t is_sbs; /* bytes sent to servers */
76     uint64_t is_sbr; /* bytes received from servers */
77     time_t is_cti; /* time spent connected by clients */
78     time_t is_sti; /* time spent connected by servers */
79     unsigned int is_ac; /* connections accepted */
80     unsigned int is_ref; /* accepts refused */
81     unsigned int is_unco; /* unknown commands */
82     unsigned int is_wrdi; /* command going in wrong direction */
83     unsigned int is_unpf; /* unknown prefix */
84     unsigned int is_empt; /* empty message */
85     unsigned int is_num; /* numeric message */
86     unsigned int is_kill; /* number of kills generated on collisions */
87     unsigned int is_asuc; /* successful auth requests */
88     unsigned int is_abad; /* bad auth requests */
89     };
90    
91     EXTERN struct ServerStatistics ServerStats;
92    
93 adx 30 struct ServerState_t
94     {
95     int foreground;
96     };
97    
98 adx 190 char *get_ircd_platform(char *);
99 adx 30
100 adx 190 EXTERN struct SetOptions GlobalSetOptions; /* defined in ircd.c */
101     EXTERN unsigned long connect_id; /* unique connect ID */
102     EXTERN struct ServerState_t server_state;
103     EXTERN char **myargv;
104     EXTERN char ircd_platform[PLATFORMLEN];
105     EXTERN const char *infotext[];
106     EXTERN const char *serno;
107     EXTERN const char *ircd_version;
108     EXTERN const char *logFileName;
109     EXTERN const char *pidFileName;
110     EXTERN int dorehash;
111     EXTERN int doremotd;
112     EXTERN struct Counter Count;
113     EXTERN int default_server_capabs;
114 adx 30 #ifdef HAVE_LIBCRYPTO
115 adx 190 EXTERN int bio_spare_fd;
116 adx 30 #endif /* HAVE_LIBCRYPTO */
117    
118 adx 190 EXTERN int splitmode;
119     EXTERN int splitchecking;
120 adx 30
121 adx 190 EXTERN dlink_list unknown_list; /* unknown clients ON this server only */
122     EXTERN dlink_list local_client_list; /* local clients only ON this server */
123     EXTERN dlink_list serv_list; /* local servers to this server ONLY */
124     EXTERN dlink_list global_serv_list; /* global servers on the network */
125     EXTERN dlink_list oper_list; /* our opers, duplicated in local_client_list */
126     EXTERN int rehashed_klines;
127 adx 30 #endif

Properties

Name Value
svn:eol-style native
svn:keywords Id Revision