ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid-8/include/ircd.h
Revision: 1402
Committed: Wed May 9 18:42:45 2012 UTC (11 years, 10 months ago) by michael
Content type: text/x-chdr
File size: 4434 byte(s)
Log Message:
- /info no longer sends information about the platform ircd is running on
- remove get_ircd_platform() function
- configure: --enable-efnet switch is no longer required

File Contents

# Content
1 /*
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 * $Id$
23 */
24
25 #ifndef INCLUDED_ircd_h
26 #define INCLUDED_ircd_h
27
28 #include "ircd_defs.h"
29 #include "config.h"
30 #include "memory.h"
31 #include "list.h"
32
33 struct Client;
34
35 struct SetOptions
36 {
37 int autoconn; /* autoconn enabled for all servers? */
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 };
48
49 /*
50 * statistics structures
51 */
52 struct ServerStatistics
53 {
54 uint64_t is_cbs; /* bytes sent to clients */
55 uint64_t is_cbr; /* bytes received from clients */
56 uint64_t is_sbs; /* bytes sent to servers */
57 uint64_t is_sbr; /* bytes received from servers */
58
59 time_t is_cti; /* time spent connected by clients */
60 time_t is_sti; /* time spent connected by servers */
61
62 unsigned int is_cl; /* number of client connections */
63 unsigned int is_sv; /* number of server connections */
64 unsigned int is_ni; /* connection but no idea who it was */
65 unsigned int is_ac; /* connections accepted */
66 unsigned int is_ref; /* accepts refused */
67 unsigned int is_unco; /* unknown commands */
68 unsigned int is_wrdi; /* command going in wrong direction */
69 unsigned int is_unpf; /* unknown prefix */
70 unsigned int is_empt; /* empty message */
71 unsigned int is_num; /* numeric message */
72 unsigned int is_kill; /* number of kills generated on collisions */
73 unsigned int is_asuc; /* successful auth requests */
74 unsigned int is_abad; /* bad auth requests */
75 };
76
77 extern struct ServerStatistics ServerStats;
78
79
80 struct Counter
81 {
82 uint64_t totalrestartcount; /* Total client count ever */
83 unsigned int myserver; /* my servers */
84 unsigned int oper; /* Opers */
85 unsigned int local; /* Local Clients */
86 unsigned int total; /* total clients */
87 unsigned int invisi; /* invisible clients */
88 unsigned int max_loc; /* MAX local clients */
89 unsigned int max_tot; /* MAX global clients */
90 unsigned int max_loc_con; /* MAX local connection count (clients + server) */
91 unsigned int max_loc_cli; /* XXX This is redundant - Max local client count */
92 };
93
94 extern struct SetOptions GlobalSetOptions; /* defined in ircd.c */
95
96 struct ServerState_t
97 {
98 int foreground;
99 };
100
101 extern struct ServerState_t server_state;
102
103 extern char **myargv;
104 extern const char *infotext[];
105 extern const char *serno;
106 extern const char *ircd_version;
107 extern const char *logFileName;
108 extern const char *pidFileName;
109 extern int dorehash;
110 extern int doremotd;
111 extern struct Counter Count;
112 extern struct timeval SystemTime;
113 #define CurrentTime SystemTime.tv_sec
114 extern int default_server_capabs;
115 extern unsigned int splitmode;
116 extern unsigned int splitchecking;
117 extern unsigned int split_users;
118 extern unsigned int split_servers;
119
120 extern dlink_list unknown_list; /* unknown clients ON this server only */
121 extern dlink_list local_client_list; /* local clients only ON this server */
122 extern dlink_list serv_list; /* local servers to this server ONLY */
123 extern dlink_list global_serv_list; /* global servers on the network */
124 extern dlink_list oper_list; /* our opers, duplicated in local_client_list */
125 extern int rehashed_klines;
126 extern void set_time(void);
127 #endif

Properties

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