summaryrefslogtreecommitdiff
path: root/docs/module-doc/classServer.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/module-doc/classServer.html')
-rw-r--r--docs/module-doc/classServer.html210
1 files changed, 135 insertions, 75 deletions
diff --git a/docs/module-doc/classServer.html b/docs/module-doc/classServer.html
index c7b08f426..1565c1d30 100644
--- a/docs/module-doc/classServer.html
+++ b/docs/module-doc/classServer.html
@@ -64,6 +64,8 @@ Inheritance diagram for Server:<p><center><img src="classServer__inherit__graph.
<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>
<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>
<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>
+<tr><td nowrap align=right valign=top>virtual void&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a21">SendMode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Sends a servermode.</em> <a href="#a21"></a><em></em></font><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
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.
@@ -72,7 +74,7 @@ All modules should instantiate at least one copy of this class, and use its memb
<p>
<p>
-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>
+Definition at line <a class="el" href="modules_8h-source.html#l00165">165</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="Server::Server"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -266,10 +268,10 @@ Adds an extended mode letter which is parsed by a module This allows modules to
<p>
+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.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00224">224</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00221 {
-00222 }
+<div class="fragment"><pre>00225 {
+00226 }
</pre></div> </td>
</tr>
</table>
@@ -312,11 +314,11 @@ Attempts to look up a user's privilages on a channel.
<p>
This function will return a string containing either @, , +, or an empty string, representing the user's privilages upon the channel you specify.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00202">202</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00199 {
-00200 <span class="keywordflow">return</span> cmode(User,Chan);
-00201 }
+<div class="fragment"><pre>00203 {
+00204 <span class="keywordflow">return</span> cmode(User,Chan);
+00205 }
</pre></div> </td>
</tr>
</table>
@@ -359,11 +361,11 @@ Returns true if two users share a common channel.
<p>
This method is used internally by the NICK and QUIT commands, and the <a class="el" href="classServer.html#a10">Server::SendCommon</a> method.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00165">165</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00162 {
-00163 <span class="keywordflow">return</span> (common_channels(u1,u2) != 0);
-00164 }
+<div class="fragment"><pre>00166 {
+00167 <span class="keywordflow">return</span> (common_channels(u1,u2) != 0);
+00168 }
</pre></div> </td>
</tr>
</table>
@@ -397,11 +399,11 @@ Attempts to look up a channel and return a pointer to it.
<p>
This function will return NULL if the channel does not exist.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00197">197</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00194 {
-00195 <span class="keywordflow">return</span> FindChan(channel.c_str());
-00196 }
+<div class="fragment"><pre>00198 {
+00199 <span class="keywordflow">return</span> FindChan(channel.c_str());
+00200 }
</pre></div> </td>
</tr>
</table>
@@ -435,11 +437,11 @@ Attempts to look up a nick and return a pointer to it.
<p>
This function will return NULL if the nick does not exist.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00192">192</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00189 {
-00190 <span class="keywordflow">return</span> Find(nick);
-00191 }
+<div class="fragment"><pre>00193 {
+00194 <span class="keywordflow">return</span> Find(nick);
+00195 }
</pre></div> </td>
</tr>
</table>
@@ -472,11 +474,11 @@ Returns the information of the server as returned by the /ADMIN command.
<p>
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.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00217">217</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00214 {
-00215 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
-00216 }
+<div class="fragment"><pre>00218 {
+00219 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
+00220 }
</pre></div> </td>
</tr>
</table>
@@ -509,11 +511,11 @@ Returns the network name, global to all linked servers.
<p>
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00212">212</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00209 {
-00210 <span class="keywordflow">return</span> getnetworkname();
-00211 }
+<div class="fragment"><pre>00213 {
+00214 <span class="keywordflow">return</span> getnetworkname();
+00215 }
</pre></div> </td>
</tr>
</table>
@@ -546,11 +548,11 @@ Returns the server name of the server where the module is loaded.
<p>
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00207">207</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00204 {
-00205 <span class="keywordflow">return</span> getservername();
-00206 }
+<div class="fragment"><pre>00208 {
+00209 <span class="keywordflow">return</span> getservername();
+00210 }
</pre></div> </td>
</tr>
</table>
@@ -584,11 +586,11 @@ Returns true if a nick is valid.
<p>
Nicks for unregistered connections will return false.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00187">187</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00184 {
-00185 <span class="keywordflow">return</span> (isnick(nick.c_str()) != 0);
-00186 }
+<div class="fragment"><pre>00188 {
+00189 <span class="keywordflow">return</span> (isnick(nick.c_str()) != 0);
+00190 }
</pre></div> </td>
</tr>
</table>
@@ -678,11 +680,11 @@ Sends a line of text down a TCP/IP socket.
<p>
This method writes a line of text to an established socket, cutting it to 510 characters plus a carriage return and linefeed if required.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00133">133</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00130 {
-00131 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
-00132 }
+<div class="fragment"><pre>00134 {
+00135 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+00136 }
</pre></div> </td>
</tr>
</table>
@@ -737,18 +739,18 @@ Sends text from a user to a channel (mulicast).
<p>
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).
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00153">153</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00150 {
-00151 <span class="keywordflow">if</span> (IncludeSender)
-00152 {
-00153 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00154 }
-00155 <span class="keywordflow">else</span>
+<div class="fragment"><pre>00154 {
+00155 <span class="keywordflow">if</span> (IncludeSender)
00156 {
-00157 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00157 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
00158 }
-00159 }
+00159 <span class="keywordflow">else</span>
+00160 {
+00161 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00162 }
+00163 }
</pre></div> </td>
</tr>
</table>
@@ -797,18 +799,18 @@ Sends text from a user to one or more channels (mulicast).
<p>
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.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00170">170</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00167 {
-00168 <span class="keywordflow">if</span> (IncludeSender)
-00169 {
-00170 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00171 }
-00172 <span class="keywordflow">else</span>
+<div class="fragment"><pre>00171 {
+00172 <span class="keywordflow">if</span> (IncludeSender)
00173 {
-00174 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
+00174 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
00175 }
-00176 }
+00176 <span class="keywordflow">else</span>
+00177 {
+00178 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
+00179 }
+00180 }
</pre></div> </td>
</tr>
</table>
@@ -857,11 +859,69 @@ Sends text from a user to a socket.
<p>
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)
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00143">143</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00140 {
-00141 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00142 }
+<div class="fragment"><pre>00144 {
+00145 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00146 }
+</pre></div> </td>
+ </tr>
+</table>
+<a name="a21" doxytag="Server::SendMode"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void Server::SendMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">char **&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>parameters</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>int&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>pcnt</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>user</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Sends a servermode.
+<p>
+you must format the parameters array with the target, modes and parameters for those modes.<p>
+For example:<p>
+char modes[3][MAXBUF]; modes[0] = ChannelName; modes[1] = "+o"; modes[2] = user-&gt;nick; Srv-&gt;SendMode(modes,3,user);<p>
+The modes will originate from the server where the command was issued, however responses (e.g. numerics) will be sent to the user you provide as the third parameter. You must be sure to get the number of parameters correct in the pcnt parameter otherwise you could leave your server in an unstable state!
+<p>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00128">128</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="modules_8h.html#a13">server_mode()</a>.
+<p>
+<div class="fragment"><pre>00129 {
+00130 <a class="code" href="modules_8h.html#a13">server_mode</a>(parameters,pcnt,user);
+00131 }
</pre></div> </td>
</tr>
</table>
@@ -942,11 +1002,11 @@ Sends text from the server to a socket.
<p>
This method writes a line of text to an established socket, with the servername prepended as used by numerics (see RFC 1459)
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00138">138</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00135 {
-00136 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
-00137 }
+<div class="fragment"><pre>00139 {
+00140 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+00141 }
</pre></div> </td>
</tr>
</table>
@@ -995,11 +1055,11 @@ Sends text from a user to another user.
<p>
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)
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00148">148</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00145 {
-00146 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
-00147 }
+<div class="fragment"><pre>00149 {
+00150 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
+00151 }
</pre></div> </td>
</tr>
</table>
@@ -1042,17 +1102,17 @@ Sends a WALLOPS message.
<p>
This method writes a WALLOPS message to all users with the +w flag, originating from the specified user.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00182">182</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00179 {
-00180 WriteWallOps(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00181 }
+<div class="fragment"><pre>00183 {
+00184 WriteWallOps(User,<span class="stringliteral">"%s"</span>,text.c_str());
+00185 }
</pre></div> </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following files:<ul>
<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>
-<hr><address style="align: right;"><small>Generated on Fri Apr 2 13:37:43 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Fri Apr 2 14:46:19 2004 for InspIRCd by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0
width=110 height=53></a>1.3-rc3 </small></address>