ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid-7.2/include/ircd.h
Revision: 885
Committed: Wed Oct 31 18:09:24 2007 UTC (16 years, 5 months ago) by michael
Content type: text/x-chdr
File size: 3256 byte(s)
Log Message:
- Removed LazyLinks in 7.2 to stop people from asking why we keep
  broken code for half a decade. LL will be implemented in a smarter
  fashion in due time

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 "setup.h"
30 #include "tools.h"
31 #include "memory.h"
32
33 struct Client;
34 struct dlink_list;
35
36 struct SetOptions
37 {
38 int autoconn; /* autoconn enabled for all servers? */
39 int idletime;
40 int floodcount; /* Number of messages in 1 second */
41 /* XXX for join flood catching - Dianora */
42 int joinfloodtime;
43 int joinfloodcount;
44 /* XXX */
45 int rejecttime;
46 int ident_timeout; /* timeout for identd lookups */
47 int spam_num;
48 int spam_time;
49 };
50
51 struct Counter
52 {
53 int myserver; /* my servers */
54 int oper; /* Opers */
55 int local; /* Local Clients */
56 int total; /* total clients */
57 int invisi; /* invisible clients */
58 int max_loc; /* MAX local clients */
59 int max_tot; /* MAX global clients */
60 unsigned long totalrestartcount; /* Total client count ever */
61 };
62
63 extern struct SetOptions GlobalSetOptions; /* defined in ircd.c */
64 extern unsigned long connect_id; /* unique connect ID */
65
66 struct ServerState_t
67 {
68 int foreground;
69 };
70
71 extern struct ServerState_t server_state;
72
73 extern char **myargv;
74 extern char ircd_platform[PLATFORMLEN];
75 extern char *get_ircd_platform(char *);
76 extern const char *infotext[];
77 extern const char *serno;
78 extern const char *ircd_version;
79 extern const char *logFileName;
80 extern const char *pidFileName;
81 extern int dorehash;
82 extern int doremotd;
83 extern struct Counter Count;
84 extern struct timeval SystemTime;
85 #define CurrentTime SystemTime.tv_sec
86 extern time_t nextconnect;
87 extern int default_server_capabs;
88 #ifdef HAVE_LIBCRYPTO
89 extern int bio_spare_fd;
90 #endif /* HAVE_LIBCRYPTO */
91
92 extern int splitmode;
93 extern int splitchecking;
94 extern int split_users;
95 extern unsigned int split_servers;
96
97 extern dlink_list unknown_list; /* unknown clients ON this server only */
98 extern dlink_list local_client_list; /* local clients only ON this server */
99 extern dlink_list serv_list; /* local servers to this server ONLY */
100 extern dlink_list global_serv_list; /* global servers on the network */
101 extern dlink_list oper_list; /* our opers, duplicated in local_client_list */
102 extern int rehashed_klines;
103 extern unsigned long get_maxrss(void);
104 extern void set_time(void);
105
106 #endif

Properties

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