ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/hopm/trunk/src/config.h
Revision: 7005
Committed: Fri Jan 1 00:06:56 2016 UTC (10 years, 6 months ago) by michael
Content type: text/x-chdr
File size: 2784 byte(s)
Log Message:
- Update copyright years

File Contents

# User Rev Content
1 michael 5351 /*
2     * Copyright (c) 2002 Erik Fears
3 michael 7005 * Copyright (c) 2014-2016 ircd-hybrid development team
4 michael 5351 *
5     * This program is free software; you can redistribute it and/or modify
6     * it under the terms of the GNU General Public License as published by
7     * the Free Software Foundation; either version 2 of the License, or
8     * (at your option) any later version.
9     *
10     * This program is distributed in the hope that it will be useful,
11     * but WITHOUT ANY WARRANTY; without even the implied warranty of
12     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13     * GNU General Public License for more details.
14     *
15     * You should have received a copy of the GNU General Public License
16     * along with this program; if not, write to the Free Software
17     * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
18     * USA
19     */
20    
21 michael 5052 #ifndef CONFIG_H
22     #define CONFIG_H
23    
24     #include <stdio.h>
25 michael 5198 #include <time.h>
26 michael 5052 #include "list.h"
27     #include "libopm/src/opm_types.h"
28    
29     extern char linebuf[512];
30 michael 6043 extern unsigned int linenum;
31 michael 5052
32     struct IRCConf
33     {
34 michael 5120 char *nick;
35     char *username;
36     char *realname;
37     char *server;
38     int port;
39 michael 5198 time_t readtimeout;
40 michael 6078 time_t reconnectinterval;
41 michael 5120 char *password;
42     char *vhost;
43     char *nickserv;
44     char *oper;
45     char *mode;
46     char *away;
47     char *connregex;
48     char *kline;
49     list_t *channels; /* List of ChannelConf */
50     list_t *performs; /* List of char * */
51 michael 5405 list_t *notices; /* List of char * */
52 michael 5052 };
53    
54     struct ChannelConf
55     {
56 michael 5120 char *name;
57     char *key;
58     char *invite;
59 michael 5052 };
60    
61     struct OptionsConf
62     {
63 michael 6086 time_t negcache;
64 michael 5332 time_t negcache_rebuild;
65 michael 5120 unsigned int dns_fdlimit;
66 michael 6200 time_t dns_timeout;
67 michael 5120 char *pidfile;
68     char *scanlog;
69 michael 5052 };
70    
71     struct UserConf
72     {
73 michael 5120 list_t *masks; /* List of char * */
74     list_t *scanners; /* List of char * */
75 michael 5052 };
76    
77     struct ScannerConf
78     {
79 michael 5120 char *name;
80     list_t *protocols;
81     char *vhost;
82     int fd;
83     char *target_ip;
84     int target_port;
85     int timeout;
86     int max_read;
87     list_t *target_string;
88     int target_string_created;
89 michael 5052 };
90    
91     struct ProtocolConf
92     {
93 michael 5120 int type;
94     unsigned int port;
95 michael 5052 };
96    
97     struct OpmConf
98     {
99 michael 5120 list_t *blacklists;
100     char *dnsbl_from;
101     char *dnsbl_to;
102     char *sendmail;
103 michael 5052 };
104    
105 michael 5120 enum BlacklistType
106     {
107 michael 5052 A_BITMASK = 1,
108     A_REPLY
109     };
110    
111     struct BlacklistConf
112     {
113 michael 5120 char *name;
114     char *kline;
115     enum BlacklistType type;
116     int ban_unknown;
117     list_t *reply;
118     unsigned int stats_recv;
119 michael 5052 };
120    
121     struct BlacklistReplyConf
122     {
123 michael 5879 unsigned char number;
124 michael 5120 char *type;
125 michael 5052 };
126    
127     struct ExemptConf
128     {
129 michael 5120 list_t *masks;
130 michael 5052 };
131    
132    
133     /* Extern to actual config data declared in config.c */
134     extern struct IRCConf *IRCItem;
135     extern struct OptionsConf *OptionsItem;
136     extern struct OpmConf *OpmItem;
137     extern struct ExemptConf *ExemptItem;
138     extern list_t *UserItemList;
139     extern list_t *ScannerItemList;
140    
141 michael 6149 extern void yyerror(const char *);
142     extern void config_load(const char *);
143 michael 5052 #endif /* CONFIG_H */

Properties

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