]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - docs/module-doc/classServer.html
Added support for modules to create commands - this needs a proof-of-concept module...
[user/henk/code/inspircd.git] / docs / module-doc / classServer.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3 <title>Server class Reference</title>
4 <link href="doxygen.css" rel="stylesheet" type="text/css">
5 </head><body>
6 <!-- Generated by Doxygen 1.3-rc3 -->
7 <center>
8 <a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
9 <hr><h1>Server Class Reference</h1>Allows server output and query functions This class contains methods which allow a module to query the state of the irc server, and produce output to users and other servers. 
10 <a href="#_details">More...</a>
11 <p>
12 <code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
13 <p>
14 Inheritance diagram for Server:<p><center><img src="classServer__inherit__graph.gif" border="0" usemap="#Server__inherit__map" alt="Inheritance graph"></center>
15 <map name="Server__inherit__map">
16 <area href="classclassbase.html" shape="rect" coords="7,16,73,37" alt="">
17 </map>
18 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Server:<p><center><img src="classServer__coll__graph.gif" border="0" usemap="#Server__coll__map" alt="Collaboration graph"></center>
19 <map name="Server__coll__map">
20 <area href="classclassbase.html" shape="rect" coords="7,106,73,128" alt="">
21 </map>
22 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classServer-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
23 <tr><td></td></tr>
24 <tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
25 <tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a0">Server</a> ()</td></tr>
26 <tr><td>&nbsp;</td><td><font size=-1><em>Default constructor.</em> <a href="#a0"></a><em></em></font><br><br></td></tr>
27 <tr><td nowrap align=right valign=top>virtual&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a1">~Server</a> ()</td></tr>
28 <tr><td>&nbsp;</td><td><font size=-1><em>Default destructor.</em> <a href="#a1"></a><em></em></font><br><br></td></tr>
29 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a2">SendOpers</a> (std::string s)</td></tr>
30 <tr><td>&nbsp;</td><td><font size=-1><em>Sends text to all opers.</em> <a href="#a2"></a><em></em></font><br><br></td></tr>
31 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a3">Log</a> (int level, std::string s)</td></tr>
32 <tr><td>&nbsp;</td><td><font size=-1><em>Writes a log string.</em> <a href="#a3"></a><em></em></font><br><br></td></tr>
33 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a4">Send</a> (int Socket, std::string s)</td></tr>
34 <tr><td>&nbsp;</td><td><font size=-1><em>Sends a line of text down a TCP/IP socket.</em> <a href="#a4"></a><em></em></font><br><br></td></tr>
35 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a5">SendServ</a> (int Socket, std::string s)</td></tr>
36 <tr><td>&nbsp;</td><td><font size=-1><em>Sends text from the server to a socket.</em> <a href="#a5"></a><em></em></font><br><br></td></tr>
37 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a6">SendFrom</a> (int Socket, <a class="el" href="classuserrec.html">userrec</a> *User, std::string s)</td></tr>
38 <tr><td>&nbsp;</td><td><font size=-1><em>Sends text from a user to a socket.</em> <a href="#a6"></a><em></em></font><br><br></td></tr>
39 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a7">SendTo</a> (<a class="el" href="classuserrec.html">userrec</a> *Source, <a class="el" href="classuserrec.html">userrec</a> *Dest, std::string s)</td></tr>
40 <tr><td>&nbsp;</td><td><font size=-1><em>Sends text from a user to another user.</em> <a href="#a7"></a><em></em></font><br><br></td></tr>
41 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a8">SendChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="classchanrec.html">chanrec</a> *Channel, std::string s, bool IncludeSender)</td></tr>
42 <tr><td>&nbsp;</td><td><font size=-1><em>Sends text from a user to a channel (mulicast).</em> <a href="#a8"></a><em></em></font><br><br></td></tr>
43 <tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a9">CommonChannels</a> (<a class="el" href="classuserrec.html">userrec</a> *u1, <a class="el" href="classuserrec.html">userrec</a> *u2)</td></tr>
44 <tr><td>&nbsp;</td><td><font size=-1><em>Returns true if two users share a common channel.</em> <a href="#a9"></a><em></em></font><br><br></td></tr>
45 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a10">SendCommon</a> (<a class="el" href="classuserrec.html">userrec</a> *User, std::string text, bool IncludeSender)</td></tr>
46 <tr><td>&nbsp;</td><td><font size=-1><em>Sends text from a user to one or more channels (mulicast).</em> <a href="#a10"></a><em></em></font><br><br></td></tr>
47 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a11">SendWallops</a> (<a class="el" href="classuserrec.html">userrec</a> *User, std::string text)</td></tr>
48 <tr><td>&nbsp;</td><td><font size=-1><em>Sends a WALLOPS message.</em> <a href="#a11"></a><em></em></font><br><br></td></tr>
49 <tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a12">IsNick</a> (std::string nick)</td></tr>
50 <tr><td>&nbsp;</td><td><font size=-1><em>Returns true if a nick is valid.</em> <a href="#a12"></a><em></em></font><br><br></td></tr>
51 <tr><td nowrap align=right valign=top>virtual <a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a13">FindNick</a> (std::string nick)</td></tr>
52 <tr><td>&nbsp;</td><td><font size=-1><em>Attempts to look up a nick and return a pointer to it.</em> <a href="#a13"></a><em></em></font><br><br></td></tr>
53 <tr><td nowrap align=right valign=top>virtual <a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a14">FindChannel</a> (std::string channel)</td></tr>
54 <tr><td>&nbsp;</td><td><font size=-1><em>Attempts to look up a channel and return a pointer to it.</em> <a href="#a14"></a><em></em></font><br><br></td></tr>
55 <tr><td nowrap align=right valign=top>virtual std::string&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a15">ChanMode</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="classchanrec.html">chanrec</a> *Chan)</td></tr>
56 <tr><td>&nbsp;</td><td><font size=-1><em>Attempts to look up a user's privilages on a channel.</em> <a href="#a15"></a><em></em></font><br><br></td></tr>
57 <tr><td nowrap align=right valign=top>virtual std::string&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a16">GetServerName</a> ()</td></tr>
58 <tr><td>&nbsp;</td><td><font size=-1><em>Returns the server name of the server where the module is loaded.</em> <a href="#a16"></a><em></em></font><br><br></td></tr>
59 <tr><td nowrap align=right valign=top>virtual std::string&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a17">GetNetworkName</a> ()</td></tr>
60 <tr><td>&nbsp;</td><td><font size=-1><em>Returns the network name, global to all linked servers.</em> <a href="#a17"></a><em></em></font><br><br></td></tr>
61 <tr><td nowrap align=right valign=top>virtual <a class="el" href="classAdmin.html">Admin</a>&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a18">GetAdmin</a> ()</td></tr>
62 <tr><td>&nbsp;</td><td><font size=-1><em>Returns the information of the server as returned by the /ADMIN command.</em> <a href="#a18"></a><em></em></font><br><br></td></tr>
63 <tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a19">AddExtendedMode</a> (char modechar, int type, bool default_on, int params_when_on, int params_when_off)</td></tr>
64 <tr><td>&nbsp;</td><td><font size=-1><em>Adds an extended mode letter which is parsed by a module This allows modules to add extra mode letters, e.g.</em> <a href="#a19"></a><em></em></font><br><br></td></tr>
65 <tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a20">AddCommand</a> (char *cmd, <a class="el" href="ctables_8h.html#a0">handlerfunc</a> f, char flags, int minparams)</td></tr>
66 <tr><td>&nbsp;</td><td><font size=-1><em>Adds a command to the command table.</em> <a href="#a20"></a><em></em></font><br><br></td></tr>
67 </table>
68 <hr><a name="_details"></a><h2>Detailed Description</h2>
69 Allows server output and query functions This class contains methods which allow a module to query the state of the irc server, and produce output to users and other servers.
70 <p>
71 All modules should instantiate at least one copy of this class, and use its member functions to perform their tasks. 
72 <p>
73
74 <p>
75 Definition at line <a class="el" href="modules_8h-source.html#l00163">163</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
76 <a name="a0" doxytag="Server::Server"></a><p>
77 <table width="100%" cellpadding="2" cellspacing="0" border="0">
78   <tr>
79     <td class="md">
80       <table cellpadding="0" cellspacing="0" border="0">
81         <tr>
82           <td class="md" nowrap valign="top"> Server::Server </td>
83           <td class="md" valign="top">(&nbsp;</td>
84           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
85           <td class="md" valign="top">)&nbsp;</td>
86           <td class="md" nowrap></td>
87         </tr>
88
89       </table>
90     </td>
91   </tr>
92 </table>
93 <table cellspacing=5 cellpadding=0 border=0>
94   <tr>
95     <td>
96       &nbsp;
97     </td>
98     <td>
99
100 <p>
101 Default constructor.
102 <p>
103 Creates a Server object.
104 <p>
105 Definition at line <a class="el" href="modules_8cpp-source.html#l00105">105</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
106 <p>
107 <div class="fragment"><pre>00106 {
108 00107 }
109 </pre></div>    </td>
110   </tr>
111 </table>
112 <a name="a1" doxytag="Server::~Server"></a><p>
113 <table width="100%" cellpadding="2" cellspacing="0" border="0">
114   <tr>
115     <td class="md">
116       <table cellpadding="0" cellspacing="0" border="0">
117         <tr>
118           <td class="md" nowrap valign="top"> Server::~Server </td>
119           <td class="md" valign="top">(&nbsp;</td>
120           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
121           <td class="md" valign="top">)&nbsp;</td>
122           <td class="md" nowrap><code> [virtual]</code></td>
123         </tr>
124
125       </table>
126     </td>
127   </tr>
128 </table>
129 <table cellspacing=5 cellpadding=0 border=0>
130   <tr>
131     <td>
132       &nbsp;
133     </td>
134     <td>
135
136 <p>
137 Default destructor.
138 <p>
139 Destroys a Server object.
140 <p>
141 Definition at line <a class="el" href="modules_8cpp-source.html#l00109">109</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
142 <p>
143 <div class="fragment"><pre>00110 {
144 00111 }
145 </pre></div>    </td>
146   </tr>
147 </table>
148 <hr><h2>Member Function Documentation</h2>
149 <a name="a20" doxytag="Server::AddCommand"></a><p>
150 <table width="100%" cellpadding="2" cellspacing="0" border="0">
151   <tr>
152     <td class="md">
153       <table cellpadding="0" cellspacing="0" border="0">
154         <tr>
155           <td class="md" nowrap valign="top"> void Server::AddCommand </td>
156           <td class="md" valign="top">(&nbsp;</td>
157           <td class="md" nowrap valign="top">char *&nbsp;</td>
158           <td class="mdname" nowrap>&nbsp; <em>cmd</em>, </td>
159         </tr>
160         <tr>
161           <td></td>
162           <td></td>
163           <td class="md" nowrap><a class="el" href="ctables_8h.html#a0">handlerfunc</a>&nbsp;</td>
164           <td class="mdname" nowrap>&nbsp; <em>f</em>, </td>
165         </tr>
166         <tr>
167           <td></td>
168           <td></td>
169           <td class="md" nowrap>char&nbsp;</td>
170           <td class="mdname" nowrap>&nbsp; <em>flags</em>, </td>
171         </tr>
172         <tr>
173           <td></td>
174           <td></td>
175           <td class="md" nowrap>int&nbsp;</td>
176           <td class="mdname" nowrap>&nbsp; <em>minparams</em></td>
177         </tr>
178         <tr>
179           <td></td>
180           <td class="md">)&nbsp;</td>
181           <td class="md" colspan="2"><code> [virtual]</code></td>
182         </tr>
183
184       </table>
185     </td>
186   </tr>
187 </table>
188 <table cellspacing=5 cellpadding=0 border=0>
189   <tr>
190     <td>
191       &nbsp;
192     </td>
193     <td>
194
195 <p>
196 Adds a command to the command table.
197 <p>
198 This allows modules to add extra commands into the command table. You must place a function within your module which is is of type handlerfunc:<p>
199 typedef void (handlerfunc) (char**, int, userrec*); ... void handle_kill(char **parameters, int pcnt, userrec *user)<p>
200 When the command is typed, the parameters will be placed into the parameters array (similar to argv) and the parameter count will be placed into pcnt (similar to argv). There will never be any less parameters than the 'minparams' value you specified when creating the command. The *user parameter is the class of the user which caused the command to trigger, who will always have the flag you specified in 'flags' when creating the initial command. For example to create an oper only command create the commands with flags='o'.
201 <p>
202 Definition at line <a class="el" href="modules_8cpp-source.html#l00123">123</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
203 <p>
204 References <a class="el" href="modules_8h.html#a12">createcommand()</a>.
205 <p>
206 <div class="fragment"><pre>00124 {
207 00125         <a class="code" href="modules_8h.html#a12">createcommand</a>(cmd,f,flags,minparams);
208 00126 }
209 </pre></div>    </td>
210   </tr>
211 </table>
212 <a name="a19" doxytag="Server::AddExtendedMode"></a><p>
213 <table width="100%" cellpadding="2" cellspacing="0" border="0">
214   <tr>
215     <td class="md">
216       <table cellpadding="0" cellspacing="0" border="0">
217         <tr>
218           <td class="md" nowrap valign="top"> bool Server::AddExtendedMode </td>
219           <td class="md" valign="top">(&nbsp;</td>
220           <td class="md" nowrap valign="top">char&nbsp;</td>
221           <td class="mdname" nowrap>&nbsp; <em>modechar</em>, </td>
222         </tr>
223         <tr>
224           <td></td>
225           <td></td>
226           <td class="md" nowrap>int&nbsp;</td>
227           <td class="mdname" nowrap>&nbsp; <em>type</em>, </td>
228         </tr>
229         <tr>
230           <td></td>
231           <td></td>
232           <td class="md" nowrap>bool&nbsp;</td>
233           <td class="mdname" nowrap>&nbsp; <em>default_on</em>, </td>
234         </tr>
235         <tr>
236           <td></td>
237           <td></td>
238           <td class="md" nowrap>int&nbsp;</td>
239           <td class="mdname" nowrap>&nbsp; <em>params_when_on</em>, </td>
240         </tr>
241         <tr>
242           <td></td>
243           <td></td>
244           <td class="md" nowrap>int&nbsp;</td>
245           <td class="mdname" nowrap>&nbsp; <em>params_when_off</em></td>
246         </tr>
247         <tr>
248           <td></td>
249           <td class="md">)&nbsp;</td>
250           <td class="md" colspan="2"><code> [virtual]</code></td>
251         </tr>
252
253       </table>
254     </td>
255   </tr>
256 </table>
257 <table cellspacing=5 cellpadding=0 border=0>
258   <tr>
259     <td>
260       &nbsp;
261     </td>
262     <td>
263
264 <p>
265 Adds an extended mode letter which is parsed by a module This allows modules to add extra mode letters, e.g.
266 <p>
267 +x for hostcloak. the "type" parameter is either MT_CHANNEL, MT_CLIENT, or MT_SERVER, to indicate wether the mode is a channel mode, a client mode, or a server mode. default_on is true if the mode is to be applied to default connections. params_when_on is the number of modes to expect when the mode is turned on (for type MT_CHANNEL only), e.g. with mode +b, this would have a value of 1. the params_when_off value has a similar value to params_when_on, except it indicates the number of parameters to expect when the mode is disabled. Modes which act in a similar way to channel mode +l (e.g. require a parameter to enable, but not to disable) should use this parameter. The function returns false if the mode is unavailable, and will not attempt to allocate another character, as this will confuse users. This also means that as only one module can claim a specific mode character, the core does not need to keep track of which modules own which modes, which speeds up operation of the server. In this version, a mode can have at most one parameter, attempting to use more parameters will have undefined effects.
268 <p>
269 Definition at line <a class="el" href="modules_8cpp-source.html#l00220">220</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
270 <p>
271 <div class="fragment"><pre>00221 {
272 00222 }
273 </pre></div>    </td>
274   </tr>
275 </table>
276 <a name="a15" doxytag="Server::ChanMode"></a><p>
277 <table width="100%" cellpadding="2" cellspacing="0" border="0">
278   <tr>
279     <td class="md">
280       <table cellpadding="0" cellspacing="0" border="0">
281         <tr>
282           <td class="md" nowrap valign="top"> std::string Server::ChanMode </td>
283           <td class="md" valign="top">(&nbsp;</td>
284           <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
285           <td class="mdname" nowrap>&nbsp; <em>User</em>, </td>
286         </tr>
287         <tr>
288           <td></td>
289           <td></td>
290           <td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
291           <td class="mdname" nowrap>&nbsp; <em>Chan</em></td>
292         </tr>
293         <tr>
294           <td></td>
295           <td class="md">)&nbsp;</td>
296           <td class="md" colspan="2"><code> [virtual]</code></td>
297         </tr>
298
299       </table>
300     </td>
301   </tr>
302 </table>
303 <table cellspacing=5 cellpadding=0 border=0>
304   <tr>
305     <td>
306       &nbsp;
307     </td>
308     <td>
309
310 <p>
311 Attempts to look up a user's privilages on a channel.
312 <p>
313 This function will return a string containing either @, , +, or an empty string, representing the user's privilages upon the channel you specify.
314 <p>
315 Definition at line <a class="el" href="modules_8cpp-source.html#l00198">198</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
316 <p>
317 <div class="fragment"><pre>00199 {
318 00200         <span class="keywordflow">return</span> cmode(User,Chan);
319 00201 }
320 </pre></div>    </td>
321   </tr>
322 </table>
323 <a name="a9" doxytag="Server::CommonChannels"></a><p>
324 <table width="100%" cellpadding="2" cellspacing="0" border="0">
325   <tr>
326     <td class="md">
327       <table cellpadding="0" cellspacing="0" border="0">
328         <tr>
329           <td class="md" nowrap valign="top"> bool Server::CommonChannels </td>
330           <td class="md" valign="top">(&nbsp;</td>
331           <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
332           <td class="mdname" nowrap>&nbsp; <em>u1</em>, </td>
333         </tr>
334         <tr>
335           <td></td>
336           <td></td>
337           <td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
338           <td class="mdname" nowrap>&nbsp; <em>u2</em></td>
339         </tr>
340         <tr>
341           <td></td>
342           <td class="md">)&nbsp;</td>
343           <td class="md" colspan="2"><code> [virtual]</code></td>
344         </tr>
345
346       </table>
347     </td>
348   </tr>
349 </table>
350 <table cellspacing=5 cellpadding=0 border=0>
351   <tr>
352     <td>
353       &nbsp;
354     </td>
355     <td>
356
357 <p>
358 Returns true if two users share a common channel.
359 <p>
360 This method is used internally by the NICK and QUIT commands, and the <a class="el" href="classServer.html#a10">Server::SendCommon</a> method.
361 <p>
362 Definition at line <a class="el" href="modules_8cpp-source.html#l00161">161</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
363 <p>
364 <div class="fragment"><pre>00162 {
365 00163         <span class="keywordflow">return</span> (common_channels(u1,u2) != 0);
366 00164 }
367 </pre></div>    </td>
368   </tr>
369 </table>
370 <a name="a14" doxytag="Server::FindChannel"></a><p>
371 <table width="100%" cellpadding="2" cellspacing="0" border="0">
372   <tr>
373     <td class="md">
374       <table cellpadding="0" cellspacing="0" border="0">
375         <tr>
376           <td class="md" nowrap valign="top"> <a class="el" href="classchanrec.html">chanrec</a> * Server::FindChannel </td>
377           <td class="md" valign="top">(&nbsp;</td>
378           <td class="md" nowrap valign="top">std::string&nbsp;</td>
379           <td class="mdname1" valign="top" nowrap>&nbsp; <em>channel</em>          </td>
380           <td class="md" valign="top">)&nbsp;</td>
381           <td class="md" nowrap><code> [virtual]</code></td>
382         </tr>
383
384       </table>
385     </td>
386   </tr>
387 </table>
388 <table cellspacing=5 cellpadding=0 border=0>
389   <tr>
390     <td>
391       &nbsp;
392     </td>
393     <td>
394
395 <p>
396 Attempts to look up a channel and return a pointer to it.
397 <p>
398 This function will return NULL if the channel does not exist.
399 <p>
400 Definition at line <a class="el" href="modules_8cpp-source.html#l00193">193</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
401 <p>
402 <div class="fragment"><pre>00194 {
403 00195         <span class="keywordflow">return</span> FindChan(channel.c_str());
404 00196 }
405 </pre></div>    </td>
406   </tr>
407 </table>
408 <a name="a13" doxytag="Server::FindNick"></a><p>
409 <table width="100%" cellpadding="2" cellspacing="0" border="0">
410   <tr>
411     <td class="md">
412       <table cellpadding="0" cellspacing="0" border="0">
413         <tr>
414           <td class="md" nowrap valign="top"> <a class="el" href="classuserrec.html">userrec</a> * Server::FindNick </td>
415           <td class="md" valign="top">(&nbsp;</td>
416           <td class="md" nowrap valign="top">std::string&nbsp;</td>
417           <td class="mdname1" valign="top" nowrap>&nbsp; <em>nick</em>          </td>
418           <td class="md" valign="top">)&nbsp;</td>
419           <td class="md" nowrap><code> [virtual]</code></td>
420         </tr>
421
422       </table>
423     </td>
424   </tr>
425 </table>
426 <table cellspacing=5 cellpadding=0 border=0>
427   <tr>
428     <td>
429       &nbsp;
430     </td>
431     <td>
432
433 <p>
434 Attempts to look up a nick and return a pointer to it.
435 <p>
436 This function will return NULL if the nick does not exist.
437 <p>
438 Definition at line <a class="el" href="modules_8cpp-source.html#l00188">188</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
439 <p>
440 <div class="fragment"><pre>00189 {
441 00190         <span class="keywordflow">return</span> Find(nick);
442 00191 }
443 </pre></div>    </td>
444   </tr>
445 </table>
446 <a name="a18" doxytag="Server::GetAdmin"></a><p>
447 <table width="100%" cellpadding="2" cellspacing="0" border="0">
448   <tr>
449     <td class="md">
450       <table cellpadding="0" cellspacing="0" border="0">
451         <tr>
452           <td class="md" nowrap valign="top"> <a class="el" href="classAdmin.html">Admin</a> Server::GetAdmin </td>
453           <td class="md" valign="top">(&nbsp;</td>
454           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
455           <td class="md" valign="top">)&nbsp;</td>
456           <td class="md" nowrap><code> [virtual]</code></td>
457         </tr>
458
459       </table>
460     </td>
461   </tr>
462 </table>
463 <table cellspacing=5 cellpadding=0 border=0>
464   <tr>
465     <td>
466       &nbsp;
467     </td>
468     <td>
469
470 <p>
471 Returns the information of the server as returned by the /ADMIN command.
472 <p>
473 See the <a class="el" href="classAdmin.html">Admin</a> class for further information of the return value. The members <a class="el" href="classAdmin.html#m2">Admin::Nick</a>, <a class="el" href="classAdmin.html#m1">Admin::Email</a> and <a class="el" href="classAdmin.html#m0">Admin::Name</a> contain the information for the server where the module is loaded.
474 <p>
475 Definition at line <a class="el" href="modules_8cpp-source.html#l00213">213</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
476 <p>
477 <div class="fragment"><pre>00214 {
478 00215         <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
479 00216 }
480 </pre></div>    </td>
481   </tr>
482 </table>
483 <a name="a17" doxytag="Server::GetNetworkName"></a><p>
484 <table width="100%" cellpadding="2" cellspacing="0" border="0">
485   <tr>
486     <td class="md">
487       <table cellpadding="0" cellspacing="0" border="0">
488         <tr>
489           <td class="md" nowrap valign="top"> std::string Server::GetNetworkName </td>
490           <td class="md" valign="top">(&nbsp;</td>
491           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
492           <td class="md" valign="top">)&nbsp;</td>
493           <td class="md" nowrap><code> [virtual]</code></td>
494         </tr>
495
496       </table>
497     </td>
498   </tr>
499 </table>
500 <table cellspacing=5 cellpadding=0 border=0>
501   <tr>
502     <td>
503       &nbsp;
504     </td>
505     <td>
506
507 <p>
508 Returns the network name, global to all linked servers.
509 <p>
510
511 <p>
512 Definition at line <a class="el" href="modules_8cpp-source.html#l00208">208</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
513 <p>
514 <div class="fragment"><pre>00209 {
515 00210         <span class="keywordflow">return</span> getnetworkname();
516 00211 }
517 </pre></div>    </td>
518   </tr>
519 </table>
520 <a name="a16" doxytag="Server::GetServerName"></a><p>
521 <table width="100%" cellpadding="2" cellspacing="0" border="0">
522   <tr>
523     <td class="md">
524       <table cellpadding="0" cellspacing="0" border="0">
525         <tr>
526           <td class="md" nowrap valign="top"> std::string Server::GetServerName </td>
527           <td class="md" valign="top">(&nbsp;</td>
528           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
529           <td class="md" valign="top">)&nbsp;</td>
530           <td class="md" nowrap><code> [virtual]</code></td>
531         </tr>
532
533       </table>
534     </td>
535   </tr>
536 </table>
537 <table cellspacing=5 cellpadding=0 border=0>
538   <tr>
539     <td>
540       &nbsp;
541     </td>
542     <td>
543
544 <p>
545 Returns the server name of the server where the module is loaded.
546 <p>
547
548 <p>
549 Definition at line <a class="el" href="modules_8cpp-source.html#l00203">203</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
550 <p>
551 <div class="fragment"><pre>00204 {
552 00205         <span class="keywordflow">return</span> getservername();
553 00206 }
554 </pre></div>    </td>
555   </tr>
556 </table>
557 <a name="a12" doxytag="Server::IsNick"></a><p>
558 <table width="100%" cellpadding="2" cellspacing="0" border="0">
559   <tr>
560     <td class="md">
561       <table cellpadding="0" cellspacing="0" border="0">
562         <tr>
563           <td class="md" nowrap valign="top"> bool Server::IsNick </td>
564           <td class="md" valign="top">(&nbsp;</td>
565           <td class="md" nowrap valign="top">std::string&nbsp;</td>
566           <td class="mdname1" valign="top" nowrap>&nbsp; <em>nick</em>          </td>
567           <td class="md" valign="top">)&nbsp;</td>
568           <td class="md" nowrap><code> [virtual]</code></td>
569         </tr>
570
571       </table>
572     </td>
573   </tr>
574 </table>
575 <table cellspacing=5 cellpadding=0 border=0>
576   <tr>
577     <td>
578       &nbsp;
579     </td>
580     <td>
581
582 <p>
583 Returns true if a nick is valid.
584 <p>
585 Nicks for unregistered connections will return false.
586 <p>
587 Definition at line <a class="el" href="modules_8cpp-source.html#l00183">183</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
588 <p>
589 <div class="fragment"><pre>00184 {
590 00185         <span class="keywordflow">return</span> (isnick(nick.c_str()) != 0);
591 00186 }
592 </pre></div>    </td>
593   </tr>
594 </table>
595 <a name="a3" doxytag="Server::Log"></a><p>
596 <table width="100%" cellpadding="2" cellspacing="0" border="0">
597   <tr>
598     <td class="md">
599       <table cellpadding="0" cellspacing="0" border="0">
600         <tr>
601           <td class="md" nowrap valign="top"> void Server::Log </td>
602           <td class="md" valign="top">(&nbsp;</td>
603           <td class="md" nowrap valign="top">int&nbsp;</td>
604           <td class="mdname" nowrap>&nbsp; <em>level</em>, </td>
605         </tr>
606         <tr>
607           <td></td>
608           <td></td>
609           <td class="md" nowrap>std::string&nbsp;</td>
610           <td class="mdname" nowrap>&nbsp; <em>s</em></td>
611         </tr>
612         <tr>
613           <td></td>
614           <td class="md">)&nbsp;</td>
615           <td class="md" colspan="2"><code> [virtual]</code></td>
616         </tr>
617
618       </table>
619     </td>
620   </tr>
621 </table>
622 <table cellspacing=5 cellpadding=0 border=0>
623   <tr>
624     <td>
625       &nbsp;
626     </td>
627     <td>
628
629 <p>
630 Writes a log string.
631 <p>
632 This method writes a line of text to the log. If the level given is lower than the level given in the configuration, this command has no effect.
633 <p>
634 Definition at line <a class="el" href="modules_8cpp-source.html#l00118">118</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
635 <p>
636 <div class="fragment"><pre>00119 {
637 00120         log(level,<span class="stringliteral">"%s"</span>,s.c_str());
638 00121 }
639 </pre></div>    </td>
640   </tr>
641 </table>
642 <a name="a4" doxytag="Server::Send"></a><p>
643 <table width="100%" cellpadding="2" cellspacing="0" border="0">
644   <tr>
645     <td class="md">
646       <table cellpadding="0" cellspacing="0" border="0">
647         <tr>
648           <td class="md" nowrap valign="top"> void Server::Send </td>
649           <td class="md" valign="top">(&nbsp;</td>
650           <td class="md" nowrap valign="top">int&nbsp;</td>
651           <td class="mdname" nowrap>&nbsp; <em>Socket</em>, </td>
652         </tr>
653         <tr>
654           <td></td>
655           <td></td>
656           <td class="md" nowrap>std::string&nbsp;</td>
657           <td class="mdname" nowrap>&nbsp; <em>s</em></td>
658         </tr>
659         <tr>
660           <td></td>
661           <td class="md">)&nbsp;</td>
662           <td class="md" colspan="2"><code> [virtual]</code></td>
663         </tr>
664
665       </table>
666     </td>
667   </tr>
668 </table>
669 <table cellspacing=5 cellpadding=0 border=0>
670   <tr>
671     <td>
672       &nbsp;
673     </td>
674     <td>
675
676 <p>
677 Sends a line of text down a TCP/IP socket.
678 <p>
679 This method writes a line of text to an established socket, cutting it to 510 characters plus a carriage return and linefeed if required.
680 <p>
681 Definition at line <a class="el" href="modules_8cpp-source.html#l00129">129</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
682 <p>
683 <div class="fragment"><pre>00130 {
684 00131         Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
685 00132 }
686 </pre></div>    </td>
687   </tr>
688 </table>
689 <a name="a8" doxytag="Server::SendChannel"></a><p>
690 <table width="100%" cellpadding="2" cellspacing="0" border="0">
691   <tr>
692     <td class="md">
693       <table cellpadding="0" cellspacing="0" border="0">
694         <tr>
695           <td class="md" nowrap valign="top"> void Server::SendChannel </td>
696           <td class="md" valign="top">(&nbsp;</td>
697           <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
698           <td class="mdname" nowrap>&nbsp; <em>User</em>, </td>
699         </tr>
700         <tr>
701           <td></td>
702           <td></td>
703           <td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
704           <td class="mdname" nowrap>&nbsp; <em>Channel</em>, </td>
705         </tr>
706         <tr>
707           <td></td>
708           <td></td>
709           <td class="md" nowrap>std::string&nbsp;</td>
710           <td class="mdname" nowrap>&nbsp; <em>s</em>, </td>
711         </tr>
712         <tr>
713           <td></td>
714           <td></td>
715           <td class="md" nowrap>bool&nbsp;</td>
716           <td class="mdname" nowrap>&nbsp; <em>IncludeSender</em></td>
717         </tr>
718         <tr>
719           <td></td>
720           <td class="md">)&nbsp;</td>
721           <td class="md" colspan="2"><code> [virtual]</code></td>
722         </tr>
723
724       </table>
725     </td>
726   </tr>
727 </table>
728 <table cellspacing=5 cellpadding=0 border=0>
729   <tr>
730     <td>
731       &nbsp;
732     </td>
733     <td>
734
735 <p>
736 Sends text from a user to a channel (mulicast).
737 <p>
738 This method writes a line of text to a channel, with the given user's nick/ident /host combination prepended, as used in PRIVMSG etc commands (see RFC 1459). If the IncludeSender flag is set, then the text is also sent back to the user from which it originated, as seen in MODE (see RFC 1459).
739 <p>
740 Definition at line <a class="el" href="modules_8cpp-source.html#l00149">149</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
741 <p>
742 <div class="fragment"><pre>00150 {
743 00151         <span class="keywordflow">if</span> (IncludeSender)
744 00152         {
745 00153                 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
746 00154         }
747 00155         <span class="keywordflow">else</span>
748 00156         {
749 00157                 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
750 00158         }
751 00159 }
752 </pre></div>    </td>
753   </tr>
754 </table>
755 <a name="a10" doxytag="Server::SendCommon"></a><p>
756 <table width="100%" cellpadding="2" cellspacing="0" border="0">
757   <tr>
758     <td class="md">
759       <table cellpadding="0" cellspacing="0" border="0">
760         <tr>
761           <td class="md" nowrap valign="top"> void Server::SendCommon </td>
762           <td class="md" valign="top">(&nbsp;</td>
763           <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
764           <td class="mdname" nowrap>&nbsp; <em>User</em>, </td>
765         </tr>
766         <tr>
767           <td></td>
768           <td></td>
769           <td class="md" nowrap>std::string&nbsp;</td>
770           <td class="mdname" nowrap>&nbsp; <em>text</em>, </td>
771         </tr>
772         <tr>
773           <td></td>
774           <td></td>
775           <td class="md" nowrap>bool&nbsp;</td>
776           <td class="mdname" nowrap>&nbsp; <em>IncludeSender</em></td>
777         </tr>
778         <tr>
779           <td></td>
780           <td class="md">)&nbsp;</td>
781           <td class="md" colspan="2"><code> [virtual]</code></td>
782         </tr>
783
784       </table>
785     </td>
786   </tr>
787 </table>
788 <table cellspacing=5 cellpadding=0 border=0>
789   <tr>
790     <td>
791       &nbsp;
792     </td>
793     <td>
794
795 <p>
796 Sends text from a user to one or more channels (mulicast).
797 <p>
798 This method writes a line of text to all users which share a common channel with a given user, with the user's nick/ident/host combination prepended, as used in PRIVMSG etc commands (see RFC 1459). If the IncludeSender flag is set, then the text is also sent back to the user from which it originated, as seen in NICK (see RFC 1459). Otherwise, it is only sent to the other recipients, as seen in QUIT.
799 <p>
800 Definition at line <a class="el" href="modules_8cpp-source.html#l00166">166</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
801 <p>
802 <div class="fragment"><pre>00167 {
803 00168         <span class="keywordflow">if</span> (IncludeSender)
804 00169         {
805 00170                 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
806 00171         }
807 00172         <span class="keywordflow">else</span>
808 00173         {
809 00174                 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
810 00175         }
811 00176 }
812 </pre></div>    </td>
813   </tr>
814 </table>
815 <a name="a6" doxytag="Server::SendFrom"></a><p>
816 <table width="100%" cellpadding="2" cellspacing="0" border="0">
817   <tr>
818     <td class="md">
819       <table cellpadding="0" cellspacing="0" border="0">
820         <tr>
821           <td class="md" nowrap valign="top"> void Server::SendFrom </td>
822           <td class="md" valign="top">(&nbsp;</td>
823           <td class="md" nowrap valign="top">int&nbsp;</td>
824           <td class="mdname" nowrap>&nbsp; <em>Socket</em>, </td>
825         </tr>
826         <tr>
827           <td></td>
828           <td></td>
829           <td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
830           <td class="mdname" nowrap>&nbsp; <em>User</em>, </td>
831         </tr>
832         <tr>
833           <td></td>
834           <td></td>
835           <td class="md" nowrap>std::string&nbsp;</td>
836           <td class="mdname" nowrap>&nbsp; <em>s</em></td>
837         </tr>
838         <tr>
839           <td></td>
840           <td class="md">)&nbsp;</td>
841           <td class="md" colspan="2"><code> [virtual]</code></td>
842         </tr>
843
844       </table>
845     </td>
846   </tr>
847 </table>
848 <table cellspacing=5 cellpadding=0 border=0>
849   <tr>
850     <td>
851       &nbsp;
852     </td>
853     <td>
854
855 <p>
856 Sends text from a user to a socket.
857 <p>
858 This method writes a line of text to an established socket, with the given user's nick/ident /host combination prepended, as used in PRIVSG etc commands (see RFC 1459)
859 <p>
860 Definition at line <a class="el" href="modules_8cpp-source.html#l00139">139</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
861 <p>
862 <div class="fragment"><pre>00140 {
863 00141         WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
864 00142 }
865 </pre></div>    </td>
866   </tr>
867 </table>
868 <a name="a2" doxytag="Server::SendOpers"></a><p>
869 <table width="100%" cellpadding="2" cellspacing="0" border="0">
870   <tr>
871     <td class="md">
872       <table cellpadding="0" cellspacing="0" border="0">
873         <tr>
874           <td class="md" nowrap valign="top"> void Server::SendOpers </td>
875           <td class="md" valign="top">(&nbsp;</td>
876           <td class="md" nowrap valign="top">std::string&nbsp;</td>
877           <td class="mdname1" valign="top" nowrap>&nbsp; <em>s</em>          </td>
878           <td class="md" valign="top">)&nbsp;</td>
879           <td class="md" nowrap><code> [virtual]</code></td>
880         </tr>
881
882       </table>
883     </td>
884   </tr>
885 </table>
886 <table cellspacing=5 cellpadding=0 border=0>
887   <tr>
888     <td>
889       &nbsp;
890     </td>
891     <td>
892
893 <p>
894 Sends text to all opers.
895 <p>
896 This method sends a server notice to all opers with the usermode +s.
897 <p>
898 Definition at line <a class="el" href="modules_8cpp-source.html#l00113">113</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
899 <p>
900 <div class="fragment"><pre>00114 {
901 00115         WriteOpers(<span class="stringliteral">"%s"</span>,s.c_str());
902 00116 }
903 </pre></div>    </td>
904   </tr>
905 </table>
906 <a name="a5" doxytag="Server::SendServ"></a><p>
907 <table width="100%" cellpadding="2" cellspacing="0" border="0">
908   <tr>
909     <td class="md">
910       <table cellpadding="0" cellspacing="0" border="0">
911         <tr>
912           <td class="md" nowrap valign="top"> void Server::SendServ </td>
913           <td class="md" valign="top">(&nbsp;</td>
914           <td class="md" nowrap valign="top">int&nbsp;</td>
915           <td class="mdname" nowrap>&nbsp; <em>Socket</em>, </td>
916         </tr>
917         <tr>
918           <td></td>
919           <td></td>
920           <td class="md" nowrap>std::string&nbsp;</td>
921           <td class="mdname" nowrap>&nbsp; <em>s</em></td>
922         </tr>
923         <tr>
924           <td></td>
925           <td class="md">)&nbsp;</td>
926           <td class="md" colspan="2"><code> [virtual]</code></td>
927         </tr>
928
929       </table>
930     </td>
931   </tr>
932 </table>
933 <table cellspacing=5 cellpadding=0 border=0>
934   <tr>
935     <td>
936       &nbsp;
937     </td>
938     <td>
939
940 <p>
941 Sends text from the server to a socket.
942 <p>
943 This method writes a line of text to an established socket, with the servername prepended as used by numerics (see RFC 1459)
944 <p>
945 Definition at line <a class="el" href="modules_8cpp-source.html#l00134">134</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
946 <p>
947 <div class="fragment"><pre>00135 {
948 00136         WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
949 00137 }
950 </pre></div>    </td>
951   </tr>
952 </table>
953 <a name="a7" doxytag="Server::SendTo"></a><p>
954 <table width="100%" cellpadding="2" cellspacing="0" border="0">
955   <tr>
956     <td class="md">
957       <table cellpadding="0" cellspacing="0" border="0">
958         <tr>
959           <td class="md" nowrap valign="top"> void Server::SendTo </td>
960           <td class="md" valign="top">(&nbsp;</td>
961           <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
962           <td class="mdname" nowrap>&nbsp; <em>Source</em>, </td>
963         </tr>
964         <tr>
965           <td></td>
966           <td></td>
967           <td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
968           <td class="mdname" nowrap>&nbsp; <em>Dest</em>, </td>
969         </tr>
970         <tr>
971           <td></td>
972           <td></td>
973           <td class="md" nowrap>std::string&nbsp;</td>
974           <td class="mdname" nowrap>&nbsp; <em>s</em></td>
975         </tr>
976         <tr>
977           <td></td>
978           <td class="md">)&nbsp;</td>
979           <td class="md" colspan="2"><code> [virtual]</code></td>
980         </tr>
981
982       </table>
983     </td>
984   </tr>
985 </table>
986 <table cellspacing=5 cellpadding=0 border=0>
987   <tr>
988     <td>
989       &nbsp;
990     </td>
991     <td>
992
993 <p>
994 Sends text from a user to another user.
995 <p>
996 This method writes a line of text to a user, with a user's nick/ident /host combination prepended, as used in PRIVMSG etc commands (see RFC 1459)
997 <p>
998 Definition at line <a class="el" href="modules_8cpp-source.html#l00144">144</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
999 <p>
1000 <div class="fragment"><pre>00145 {
1001 00146         WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
1002 00147 }
1003 </pre></div>    </td>
1004   </tr>
1005 </table>
1006 <a name="a11" doxytag="Server::SendWallops"></a><p>
1007 <table width="100%" cellpadding="2" cellspacing="0" border="0">
1008   <tr>
1009     <td class="md">
1010       <table cellpadding="0" cellspacing="0" border="0">
1011         <tr>
1012           <td class="md" nowrap valign="top"> void Server::SendWallops </td>
1013           <td class="md" valign="top">(&nbsp;</td>
1014           <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
1015           <td class="mdname" nowrap>&nbsp; <em>User</em>, </td>
1016         </tr>
1017         <tr>
1018           <td></td>
1019           <td></td>
1020           <td class="md" nowrap>std::string&nbsp;</td>
1021           <td class="mdname" nowrap>&nbsp; <em>text</em></td>
1022         </tr>
1023         <tr>
1024           <td></td>
1025           <td class="md">)&nbsp;</td>
1026           <td class="md" colspan="2"><code> [virtual]</code></td>
1027         </tr>
1028
1029       </table>
1030     </td>
1031   </tr>
1032 </table>
1033 <table cellspacing=5 cellpadding=0 border=0>
1034   <tr>
1035     <td>
1036       &nbsp;
1037     </td>
1038     <td>
1039
1040 <p>
1041 Sends a WALLOPS message.
1042 <p>
1043 This method writes a WALLOPS message to all users with the +w flag, originating from the specified user.
1044 <p>
1045 Definition at line <a class="el" href="modules_8cpp-source.html#l00178">178</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
1046 <p>
1047 <div class="fragment"><pre>00179 {
1048 00180         WriteWallOps(User,<span class="stringliteral">"%s"</span>,text.c_str());
1049 00181 }
1050 </pre></div>    </td>
1051   </tr>
1052 </table>
1053 <hr>The documentation for this class was generated from the following files:<ul>
1054 <li><a class="el" href="modules_8h-source.html">modules.h</a><li><a class="el" href="modules_8cpp-source.html">modules.cpp</a></ul>
1055 <hr><address style="align: right;"><small>Generated on Fri Apr 2 13:37:43 2004 for InspIRCd by
1056 <a href="http://www.doxygen.org/index.html">
1057 <img src="doxygen.png" alt="doxygen" align="middle" border=0 
1058 width=110 height=53></a>1.3-rc3 </small></address>
1059 </body>
1060 </html>