ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/include/modules.h
Revision: 32
Committed: Sun Oct 2 20:41:23 2005 UTC (18 years, 6 months ago) by knight
Content type: text/x-chdr
Original Path: ircd-hybrid/include/modules.h
File size: 6877 byte(s)
Log Message:
- svn:keywords

File Contents

# Content
1 /*
2 * ircd-hybrid: an advanced Internet Relay Chat Daemon(ircd).
3 * modules.h: A header for the modules functions.
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_modules_h
26 #define INCLUDED_modules_h
27
28 #include "setup.h"
29 #include "parse.h"
30
31 #ifdef HAVE_SHL_LOAD
32 #include <dl.h>
33 #endif
34 #if !defined(STATIC_MODULES) && defined(HAVE_DLFCN_H)
35 #include <dlfcn.h>
36 #endif
37
38 #include "ircd_handler.h"
39 #include "msg.h"
40 #include "memory.h"
41
42 #ifndef STATIC_MODULES
43 struct module
44 {
45 dlink_node node;
46 char *name;
47 const char *version;
48 void *address;
49 int core;
50 void (*modremove)(void);
51 };
52
53 struct module_path
54 {
55 dlink_node node;
56 char path[PATH_MAX + 1];
57 };
58
59 /* add a path */
60 extern void mod_add_path(const char *);
61 extern void mod_clear_paths(void);
62
63 /* load all modules */
64 extern void load_all_modules(int);
65
66 /* load core modules */
67 extern void load_core_modules(int);
68
69 /* Add this module to list of modules to be loaded from conf */
70 extern void add_conf_module(const char *);
71 /* load all modules listed in conf */
72 extern void load_conf_modules(void);
73
74 extern void _modinit(void);
75 extern void _moddeinit(void);
76
77 extern int unload_one_module(char *, int);
78 extern int load_one_module(char *, int);
79 extern int load_a_module(char *, int, int);
80 extern dlink_node *findmodule_byname(const char *);
81 extern void modules_init(void);
82
83 #else /* STATIC_MODULES */
84
85 extern struct Message accept_msgtab;
86 extern struct Message admin_msgtab;
87 extern struct Message away_msgtab;
88 extern struct Message capab_msgtab;
89 extern struct Message cburst_msgtab;
90 #ifdef HAVE_LIBCRYPTO
91 extern struct Message challenge_msgtab;
92 extern struct Message cryptlink_msgtab;
93 #endif
94 extern struct Message cjoin_msgtab;
95 extern struct Message close_msgtab;
96 extern struct Message connect_msgtab;
97 extern struct Message die_msgtab;
98 extern struct Message drop_msgtab;
99 extern struct Message eob_msgtab;
100 extern struct Message error_msgtab;
101 extern struct Message etrace_msgtab;
102 extern struct Message gline_msgtab;
103 extern struct Message hash_msgtab;
104 extern struct Message ungline_msgtab;
105 extern struct Message info_msgtab;
106 extern struct Message invite_msgtab;
107 extern struct Message ison_msgtab;
108 extern struct Message join_msgtab;
109 extern struct Message kick_msgtab;
110 extern struct Message kill_msgtab;
111 extern struct Message kline_msgtab;
112 extern struct Message unkline_msgtab;
113 extern struct Message dline_msgtab;
114 extern struct Message undline_msgtab;
115 extern struct Message knock_msgtab;
116 extern struct Message knockll_msgtab;
117 extern struct Message links_msgtab;
118 extern struct Message list_msgtab;
119 extern struct Message lljoin_msgtab;
120 extern struct Message llnick_msgtab;
121 extern struct Message locops_msgtab;
122 extern struct Message lusers_msgtab;
123 extern struct Message privmsg_msgtab;
124 extern struct Message notice_msgtab;
125 extern struct Message map_msgtab;
126 extern struct Message mode_msgtab;
127 extern struct Message motd_msgtab;
128 extern struct Message names_msgtab;
129 extern struct Message nburst_msgtab;
130 extern struct Message nick_msgtab;
131 extern struct Message omotd_msgtab;
132 extern struct Message oper_msgtab;
133 extern struct Message operwall_msgtab;
134 extern struct Message part_msgtab;
135 extern struct Message pass_msgtab;
136 extern struct Message ping_msgtab;
137 extern struct Message pong_msgtab;
138 extern struct Message post_msgtab;
139 extern struct Message quit_msgtab;
140 extern struct Message rehash_msgtab;
141 extern struct Message restart_msgtab;
142 extern struct Message resv_msgtab;
143 extern struct Message rkline_msgtab;
144 extern struct Message rxline_msgtab;
145 extern struct Message server_msgtab;
146 extern struct Message set_msgtab;
147 extern struct Message sid_msgtab;
148 extern struct Message sjoin_msgtab;
149 extern struct Message squit_msgtab;
150 extern struct Message stats_msgtab;
151 extern struct Message svinfo_msgtab;
152 extern struct Message tb_msgtab;
153 extern struct Message testline_msgtab;
154 extern struct Message testgecos_msgtab;
155 extern struct Message testmask_msgtab;
156 extern struct Message time_msgtab;
157 extern struct Message topic_msgtab;
158 extern struct Message trace_msgtab;
159 extern struct Message uid_msgtab;
160 extern struct Message unresv_msgtab;
161 extern struct Message unxline_msgtab;
162 extern struct Message user_msgtab;
163 extern struct Message userhost_msgtab;
164 extern struct Message users_msgtab;
165 extern struct Message version_msgtab;
166 extern struct Message wallops_msgtab;
167 extern struct Message who_msgtab;
168 extern struct Message whois_msgtab;
169 extern struct Message whowas_msgtab;
170 extern struct Message xline_msgtab;
171 extern struct Message get_msgtab;
172 extern struct Message put_msgtab;
173 extern struct Message rxline_msgtab;
174 extern struct Message help_msgtab;
175 extern struct Message uhelp_msgtab;
176
177 #ifdef BUILD_CONTRIB
178 extern struct Message botserv_msgtab;
179 extern struct Message capture_msgtab;
180 extern struct Message chanserv_msgtab;
181 extern struct Message chghost_msgtab;
182 extern struct Message chgident_msgtab;
183 extern struct Message chgname_msgtab;
184 extern struct Message classlist_msgtab;
185 extern struct Message clearchan_msgtab;
186 extern struct Message cs_msgtab;
187 extern struct Message ctrace_msgtab;
188 extern struct Message delspoof_msgtab;
189 extern struct Message flags_msgtab;
190 extern struct Message forcejoin_msgtab;
191 extern struct Message forcepart_msgtab;
192 extern struct Message global_msgtab;
193 extern struct Message helpserv_msgtab;
194 extern struct Message hostserv_msgtab;
195 extern struct Message identify_msgtab;
196 extern struct Message jupe_msgtab;
197 extern struct Message killhost_msgtab;
198 extern struct Message ltrace_msgtab;
199 extern struct Message memoserv_msgtab;
200 extern struct Message mkpasswd_msgtab;
201 extern struct Message ms_msgtab;
202 extern struct Message nickserv_msgtab;
203 extern struct Message ns_msgtab;
204 extern struct Message ojoin_msgtab;
205 extern struct Message operserv_msgtab;
206 extern struct Message operspy_msgtab;
207 extern struct Message opme_msgtab;
208 extern struct Message os_msgtab;
209 extern struct Message seenserv_msgtab;
210 extern struct Message spoof_msgtab;
211 extern struct Message statserv_msgtab;
212 extern struct Message svsnick_msgtab;
213 extern struct Message uncapture_msgtab;
214 #endif
215
216 extern void load_all_modules(int);
217
218 #endif /* STATIC_MODULES */
219 #endif /* INCLUDED_modules_h */

Properties

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