summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/module-doc/annotated.html5
-rw-r--r--docs/module-doc/base_8h-source.html2
-rw-r--r--docs/module-doc/base_8h.html2
-rw-r--r--docs/module-doc/channels_8cpp-source.html2
-rw-r--r--docs/module-doc/channels_8cpp.html2
-rw-r--r--docs/module-doc/channels_8h-source.html2
-rw-r--r--docs/module-doc/channels_8h.html2
-rw-r--r--docs/module-doc/classAdmin-members.html2
-rw-r--r--docs/module-doc/classAdmin.html10
-rw-r--r--docs/module-doc/classBanItem-members.html2
-rw-r--r--docs/module-doc/classBanItem.html2
-rw-r--r--docs/module-doc/classConfigReader-members.html2
-rw-r--r--docs/module-doc/classConfigReader.html86
-rw-r--r--docs/module-doc/classConnectClass-members.html7
-rw-r--r--docs/module-doc/classConnectClass.html71
-rw-r--r--docs/module-doc/classConnectClass__coll__graph.gifbin7484 -> 8061 bytes
-rw-r--r--docs/module-doc/classExemptItem-members.html2
-rw-r--r--docs/module-doc/classExemptItem.html2
-rw-r--r--docs/module-doc/classExtMode-members.html2
-rw-r--r--docs/module-doc/classExtMode.html2
-rw-r--r--docs/module-doc/classFileReader-members.html2
-rw-r--r--docs/module-doc/classFileReader.html96
-rw-r--r--docs/module-doc/classHostItem-members.html2
-rw-r--r--docs/module-doc/classHostItem.html2
-rw-r--r--docs/module-doc/classInviteItem-members.html2
-rw-r--r--docs/module-doc/classInviteItem.html2
-rw-r--r--docs/module-doc/classInvited-members.html2
-rw-r--r--docs/module-doc/classInvited.html4
-rw-r--r--docs/module-doc/classModeParameter-members.html2
-rw-r--r--docs/module-doc/classModeParameter.html2
-rw-r--r--docs/module-doc/classModule-members.html2
-rw-r--r--docs/module-doc/classModule.html4
-rw-r--r--docs/module-doc/classModuleFactory-members.html2
-rw-r--r--docs/module-doc/classModuleFactory.html12
-rw-r--r--docs/module-doc/classServer-members.html5
-rw-r--r--docs/module-doc/classServer.html413
-rw-r--r--docs/module-doc/classVersion-members.html2
-rw-r--r--docs/module-doc/classVersion.html12
-rw-r--r--docs/module-doc/classchanrec-members.html2
-rw-r--r--docs/module-doc/classchanrec.html2
-rw-r--r--docs/module-doc/classclassbase-members.html2
-rw-r--r--docs/module-doc/classclassbase.html10
-rw-r--r--docs/module-doc/classclassbase__inherit__graph.gifbin24976 -> 25098 bytes
-rw-r--r--docs/module-doc/classcommand__t-members.html2
-rw-r--r--docs/module-doc/classcommand__t.html2
-rw-r--r--docs/module-doc/classconnection-members.html43
-rw-r--r--docs/module-doc/classconnection.html419
-rw-r--r--docs/module-doc/classconnection__coll__graph.gifbin18868 -> 26326 bytes
-rw-r--r--docs/module-doc/classes.html22
-rw-r--r--docs/module-doc/classircd__connector-members.html41
-rw-r--r--docs/module-doc/classircd__connector.html784
-rw-r--r--docs/module-doc/classircd__connector__coll__graph.gifbin0 -> 12986 bytes
-rw-r--r--docs/module-doc/classircd__connector__inherit__graph.gifbin0 -> 1871 bytes
-rw-r--r--docs/module-doc/classpacket.html174
-rw-r--r--docs/module-doc/classserverrec-members.html45
-rw-r--r--docs/module-doc/classserverrec.html101
-rw-r--r--docs/module-doc/classserverrec__coll__graph.gifbin20871 -> 21684 bytes
-rw-r--r--docs/module-doc/classucrec-members.html2
-rw-r--r--docs/module-doc/classucrec.html6
-rw-r--r--docs/module-doc/classuserrec-members.html45
-rw-r--r--docs/module-doc/classuserrec.html201
-rw-r--r--docs/module-doc/classuserrec__coll__graph.gifbin16225 -> 19648 bytes
-rw-r--r--docs/module-doc/connection_8h-source.html195
-rw-r--r--docs/module-doc/connection_8h.html64
-rw-r--r--docs/module-doc/connection_8h__incl.gifbin18700 -> 22270 bytes
-rw-r--r--docs/module-doc/ctables_8h-source.html2
-rw-r--r--docs/module-doc/ctables_8h.html2
-rw-r--r--docs/module-doc/files.html2
-rw-r--r--docs/module-doc/functions.html133
-rw-r--r--docs/module-doc/globals.html18
-rw-r--r--docs/module-doc/graph_legend.html2
-rw-r--r--docs/module-doc/hierarchy.html5
-rw-r--r--docs/module-doc/inherit__graph__0.gifbin31116 -> 31226 bytes
-rw-r--r--docs/module-doc/inherit__graph__2.gifbin0 -> 558 bytes
-rw-r--r--docs/module-doc/inherits.html14
-rw-r--r--docs/module-doc/main.html2
-rw-r--r--docs/module-doc/modules_8cpp-source.html405
-rw-r--r--docs/module-doc/modules_8cpp.html6
-rw-r--r--docs/module-doc/modules_8h-source.html365
-rw-r--r--docs/module-doc/modules_8h.html18
-rw-r--r--docs/module-doc/namespaces.html2
-rw-r--r--docs/module-doc/namespacestd.html2
-rw-r--r--docs/module-doc/servers_8cpp-source.html44
-rw-r--r--docs/module-doc/servers_8cpp.html2
-rw-r--r--docs/module-doc/servers_8h-source.html27
-rw-r--r--docs/module-doc/servers_8h.html2
-rw-r--r--docs/module-doc/tree.html6
-rw-r--r--docs/module-doc/users_8cpp-source.html127
-rw-r--r--docs/module-doc/users_8cpp.html8
-rw-r--r--docs/module-doc/users_8cpp__incl.gifbin18857 -> 19114 bytes
-rw-r--r--docs/module-doc/users_8h-source.html130
-rw-r--r--docs/module-doc/users_8h.html6
92 files changed, 2781 insertions, 1486 deletions
diff --git a/docs/module-doc/annotated.html b/docs/module-doc/annotated.html
index 7cd5f9dfe..c8c46392c 100644
--- a/docs/module-doc/annotated.html
+++ b/docs/module-doc/annotated.html
@@ -14,13 +14,14 @@
<tr><td class="indexkey"><a class="el" href="classcommand__t.html">command_t</a></td><td class="indexvalue">A structure that defines a command</td></tr>
<tr><td class="indexkey"><a class="el" href="classConfigReader.html">ConfigReader</a></td><td class="indexvalue">Allows reading of values from configuration files This class allows a module to read from either the main configuration file (inspircd.conf) or from a module-specified configuration file</td></tr>
<tr><td class="indexkey"><a class="el" href="classConnectClass.html">ConnectClass</a></td><td class="indexvalue">Holds information relevent to &lt;connect allow&gt; and &lt;connect deny&gt; tags in the config file</td></tr>
- <tr><td class="indexkey"><a class="el" href="classconnection.html">connection</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="classconnection.html">connection</a></td><td class="indexvalue">Please note: classes serverrec and userrec both inherit from class connection</td></tr>
<tr><td class="indexkey"><a class="el" href="classExemptItem.html">ExemptItem</a></td><td class="indexvalue">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel exempts (+e)</td></tr>
<tr><td class="indexkey"><a class="el" href="classExtMode.html">ExtMode</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classFileReader.html">FileReader</a></td><td class="indexvalue">Caches a text file into memory and can be used to retrieve lines from it</td></tr>
<tr><td class="indexkey"><a class="el" href="classHostItem.html">HostItem</a></td><td class="indexvalue">Holds an entry for a ban list, exemption list, or invite list</td></tr>
<tr><td class="indexkey"><a class="el" href="classInvited.html">Invited</a></td><td class="indexvalue">Holds a channel name to which a user has been invited</td></tr>
<tr><td class="indexkey"><a class="el" href="classInviteItem.html">InviteItem</a></td><td class="indexvalue">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel invites (+I)</td></tr>
+ <tr><td class="indexkey"><a class="el" href="classircd__connector.html">ircd_connector</a></td><td class="indexvalue">Each connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds</td></tr>
<tr><td class="indexkey"><a class="el" href="classModeParameter.html">ModeParameter</a></td><td class="indexvalue">Holds a custom parameter to a module-defined channel mode e.g</td></tr>
<tr><td class="indexkey"><a class="el" href="classModule.html">Module</a></td><td class="indexvalue">Base class for all InspIRCd modules This class is the base class for InspIRCd modules</td></tr>
<tr><td class="indexkey"><a class="el" href="classModuleFactory.html">ModuleFactory</a></td><td class="indexvalue">Instantiates classes inherited from <a class="el" href="classModule.html">Module</a> This class creates a class inherited from type <a class="el" href="classModule.html">Module</a>, using new</td></tr>
@@ -31,7 +32,7 @@
<tr><td class="indexkey"><a class="el" href="classuserrec.html">userrec</a></td><td class="indexvalue">Holds all information about a user This class stores all information about a user connected to the irc server</td></tr>
<tr><td class="indexkey"><a class="el" href="classVersion.html">Version</a></td><td class="indexvalue">Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module</td></tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:45 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:44 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>
diff --git a/docs/module-doc/base_8h-source.html b/docs/module-doc/base_8h-source.html
index 2882d8332..badf7cc53 100644
--- a/docs/module-doc/base_8h-source.html
+++ b/docs/module-doc/base_8h-source.html
@@ -29,7 +29,7 @@
00028
00029 <span class="preprocessor">#endif</span>
00030 <span class="preprocessor"></span>
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/base_8h.html b/docs/module-doc/base_8h.html
index 72086d48b..42822db73 100644
--- a/docs/module-doc/base_8h.html
+++ b/docs/module-doc/base_8h.html
@@ -34,7 +34,7 @@ This graph shows which files directly or indirectly include this file:<p><center
<tr><td nowrap align=right valign=top>class &nbsp;</td><td valign=bottom><a class="el" href="classclassbase.html">classbase</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The base class for all inspircd classes.</em> <a href="classclassbase.html#_details">More...</a><em></em></font><br><br></td></tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:30 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:39 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>
diff --git a/docs/module-doc/channels_8cpp-source.html b/docs/module-doc/channels_8cpp-source.html
index f7a03c83d..859e2c155 100644
--- a/docs/module-doc/channels_8cpp-source.html
+++ b/docs/module-doc/channels_8cpp-source.html
@@ -106,7 +106,7 @@
00098 }
00099 <span class="keywordflow">return</span> std::string(<span class="stringliteral">""</span>);
00100 }
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/channels_8cpp.html b/docs/module-doc/channels_8cpp.html
index b2d498596..e799c1699 100644
--- a/docs/module-doc/channels_8cpp.html
+++ b/docs/module-doc/channels_8cpp.html
@@ -55,7 +55,7 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00010">10</a>
Referenced by <a class="el" href="channels_8cpp-source.html#l00087">chanrec::GetModeParameter()</a>, and <a class="el" href="channels_8cpp-source.html#l00050">chanrec::SetCustomModeParam()</a>. </td>
</tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:31 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:40 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>
diff --git a/docs/module-doc/channels_8h-source.html b/docs/module-doc/channels_8h-source.html
index 410460a1c..c3439e0ef 100644
--- a/docs/module-doc/channels_8h-source.html
+++ b/docs/module-doc/channels_8h-source.html
@@ -129,7 +129,7 @@
00207
00208 <span class="preprocessor">#endif</span>
00209 <span class="preprocessor"></span>
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/channels_8h.html b/docs/module-doc/channels_8h.html
index 29ba57854..dbc51aa27 100644
--- a/docs/module-doc/channels_8h.html
+++ b/docs/module-doc/channels_8h.html
@@ -258,7 +258,7 @@ Holds a complete invite list.
Definition at line <a class="el" href="channels_8h-source.html#l00077">77</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:33 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:40 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>
diff --git a/docs/module-doc/classAdmin-members.html b/docs/module-doc/classAdmin-members.html
index 7851b955e..118f4020d 100644
--- a/docs/module-doc/classAdmin-members.html
+++ b/docs/module-doc/classAdmin-members.html
@@ -14,7 +14,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classAdmin.html#m0">Name</a></td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classAdmin.html#m2">Nick</a></td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:46 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:44 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>
diff --git a/docs/module-doc/classAdmin.html b/docs/module-doc/classAdmin.html
index 4f132b26a..a1a8f35d3 100644
--- a/docs/module-doc/classAdmin.html
+++ b/docs/module-doc/classAdmin.html
@@ -35,7 +35,7 @@ It is constructed by class <a class="el" href="classServer.html">Server</a>, and
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00079">79</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#l00080">80</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="Admin::Admin"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -107,7 +107,7 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00106">106</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00082">82</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00083">83</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<a name="m0" doxytag="Admin::Name"></a><p>
@@ -131,7 +131,7 @@ Definition at line <a class="el" href="modules_8h-source.html#l00082">82</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00082">82</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00083">83</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<a name="m2" doxytag="Admin::Nick"></a><p>
@@ -155,12 +155,12 @@ Definition at line <a class="el" href="modules_8h-source.html#l00082">82</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00082">82</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00083">83</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </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 Thu Apr 8 19:12:46 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:44 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>
diff --git a/docs/module-doc/classBanItem-members.html b/docs/module-doc/classBanItem-members.html
index c7f0d3375..cd873c8b4 100644
--- a/docs/module-doc/classBanItem-members.html
+++ b/docs/module-doc/classBanItem-members.html
@@ -15,7 +15,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classHostItem.html#m0">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classHostItem.html#a1">~HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline, virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:48 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:45 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>
diff --git a/docs/module-doc/classBanItem.html b/docs/module-doc/classBanItem.html
index 16fa46ad7..7336d4410 100644
--- a/docs/module-doc/classBanItem.html
+++ b/docs/module-doc/classBanItem.html
@@ -31,7 +31,7 @@ A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to h
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00034">34</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="channels_8h-source.html">channels.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:48 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:45 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>
diff --git a/docs/module-doc/classConfigReader-members.html b/docs/module-doc/classConfigReader-members.html
index 0c808632f..e9493bd32 100644
--- a/docs/module-doc/classConfigReader-members.html
+++ b/docs/module-doc/classConfigReader-members.html
@@ -19,7 +19,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classConfigReader.html#a5">Verify</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classConfigReader.html#a2">~ConfigReader</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:55 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:47 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>
diff --git a/docs/module-doc/classConfigReader.html b/docs/module-doc/classConfigReader.html
index 663a59fe3..91aa3ef65 100644
--- a/docs/module-doc/classConfigReader.html
+++ b/docs/module-doc/classConfigReader.html
@@ -49,7 +49,7 @@ It may either be instantiated with one parameter or none. Constructing the class
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00469">469</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#l00497">497</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="ConfigReader::ConfigReader"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -79,14 +79,14 @@ Default constructor.
<p>
This constructor initialises the ConfigReader class to read the inspircd.conf file as specified when running ./configure.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00319">319</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#l00334">334</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00477">cache</a>, and <a class="el" href="modules_8h-source.html#l00480">error</a>.
+References <a class="el" href="modules_8h-source.html#l00505">cache</a>, and <a class="el" href="modules_8h-source.html#l00508">error</a>.
<p>
-<div class="fragment"><pre>00320 {
-00321 this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00322 this-&gt;<a class="code" href="classConfigReader.html#n1">error</a> = LoadConf(CONFIG_FILE,this-&gt;cache);
-00323 }
+<div class="fragment"><pre>00335 {
+00336 this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+00337 this-&gt;<a class="code" href="classConfigReader.html#n1">error</a> = LoadConf(CONFIG_FILE,this-&gt;cache);
+00338 }
</pre></div> </td>
</tr>
</table>
@@ -120,14 +120,14 @@ Overloaded constructor.
<p>
This constructor initialises the ConfigReader class to read a user-specified config file
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00333">333</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#l00348">348</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00477">cache</a>, and <a class="el" href="modules_8h-source.html#l00480">error</a>.
+References <a class="el" href="modules_8h-source.html#l00505">cache</a>, and <a class="el" href="modules_8h-source.html#l00508">error</a>.
<p>
-<div class="fragment"><pre>00334 {
-00335 this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00336 this-&gt;<a class="code" href="classConfigReader.html#n1">error</a> = LoadConf(filename.c_str(),this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>);
-00337 };
+<div class="fragment"><pre>00349 {
+00350 this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+00351 this-&gt;<a class="code" href="classConfigReader.html#n1">error</a> = LoadConf(filename.c_str(),this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>);
+00352 };
</pre></div> </td>
</tr>
</table>
@@ -160,14 +160,14 @@ Default destructor.
<p>
This method destroys the ConfigReader class.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00326">326</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#l00341">341</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00477">cache</a>.
+References <a class="el" href="modules_8h-source.html#l00505">cache</a>.
<p>
-<div class="fragment"><pre>00327 {
-00328 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>)
-00329 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>;
-00330 }
+<div class="fragment"><pre>00342 {
+00343 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>)
+00344 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>;
+00345 }
</pre></div> </td>
</tr>
</table>
@@ -202,11 +202,11 @@ Counts the number of times a given tag appears in the config file.
<p>
This method counts the number of times a tag appears in a config file, for use where there are several tags of the same kind, e.g. with opers and connect types. It can be used with the index value of <a class="el" href="classConfigReader.html#a3">ConfigReader::ReadValue</a> to loop through all copies of a multiple instance tag.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00347">347</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#l00362">362</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00348 {
-00349 <span class="keywordflow">return</span> EnumConf(cache,tag.c_str());
-00350 }
+<div class="fragment"><pre>00363 {
+00364 <span class="keywordflow">return</span> EnumConf(cache,tag.c_str());
+00365 }
</pre></div> </td>
</tr>
</table>
@@ -249,11 +249,11 @@ Returns the number of items within a tag.
<p>
For example if the tag was &lt;test tag="blah" data="foo"&gt; then this function would return 2. Spaces and newlines both qualify as valid seperators between values.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00352">352</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#l00367">367</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00353 {
-00354 <span class="keywordflow">return</span> EnumValues(cache, tag.c_str(), index);
-00355 }
+<div class="fragment"><pre>00368 {
+00369 <span class="keywordflow">return</span> EnumValues(cache, tag.c_str(), index);
+00370 }
</pre></div> </td>
</tr>
</table>
@@ -302,13 +302,13 @@ Retrieves a value from the config file.
<p>
This method retrieves a value from the config file. Where multiple copies of the tag exist in the config file, index indicates which of the values to retrieve.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00339">339</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#l00354">354</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00340 {
-00341 <span class="keywordtype">char</span> val[MAXBUF];
-00342 ReadConf(cache,tag.c_str(),name.c_str(),index,val);
-00343 <span class="keywordflow">return</span> val;
-00344 }
+<div class="fragment"><pre>00355 {
+00356 <span class="keywordtype">char</span> val[MAXBUF];
+00357 ReadConf(cache,tag.c_str(),name.c_str(),index,val);
+00358 <span class="keywordflow">return</span> val;
+00359 }
</pre></div> </td>
</tr>
</table>
@@ -341,13 +341,13 @@ Returns true if a config file is valid.
<p>
This method is partially implemented and will only return false if the config file does not exist or could not be opened.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00357">357</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#l00372">372</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00480">error</a>.
+References <a class="el" href="modules_8h-source.html#l00508">error</a>.
<p>
-<div class="fragment"><pre>00358 {
-00359 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classConfigReader.html#n1">error</a>;
-00360 }
+<div class="fragment"><pre>00373 {
+00374 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classConfigReader.html#n1">error</a>;
+00375 }
</pre></div> </td>
</tr>
</table>
@@ -375,9 +375,9 @@ The contents of the configuration file This protected member should never be acc
<p>
It will contain a pointer to the configuration file data with unneeded data (such as comments) stripped from it.
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00477">477</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
+Definition at line <a class="el" href="modules_8h-source.html#l00505">505</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00319">ConfigReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00326">~ConfigReader()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00334">ConfigReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00341">~ConfigReader()</a>. </td>
</tr>
</table>
<a name="n1" doxytag="ConfigReader::error"></a><p>
@@ -403,14 +403,14 @@ Used to store errors.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00480">480</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
+Definition at line <a class="el" href="modules_8h-source.html#l00508">508</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00319">ConfigReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00357">Verify()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00334">ConfigReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00372">Verify()</a>. </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 Thu Apr 8 19:12:55 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:47 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>
diff --git a/docs/module-doc/classConnectClass-members.html b/docs/module-doc/classConnectClass-members.html
index 25608a747..25335a2db 100644
--- a/docs/module-doc/classConnectClass-members.html
+++ b/docs/module-doc/classConnectClass-members.html
@@ -10,12 +10,13 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#m0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a0">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classConnectClass.html#a0">ConnectClass</a>()</td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td><code> [inline]</code></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classConnectClass.html#m2">host</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classConnectClass.html#m3">pass</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classConnectClass.html#m2">flood</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classConnectClass.html#m3">host</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classConnectClass.html#m4">pass</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classConnectClass.html#m1">registration_timeout</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classConnectClass.html#m0">type</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:57 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:48 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>
diff --git a/docs/module-doc/classConnectClass.html b/docs/module-doc/classConnectClass.html
index 412d670b5..fd3af8430 100644
--- a/docs/module-doc/classConnectClass.html
+++ b/docs/module-doc/classConnectClass.html
@@ -25,9 +25,15 @@ Inheritance diagram for ConnectClass:<p><center><img src="classConnectClass__inh
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classConnectClass.html#a0">ConnectClass</a> ()</td></tr>
<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classConnectClass.html#m0">type</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Type of line, either CC_ALLOW or CC_DENY.</em> <a href="#m0"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classConnectClass.html#m1">registration_timeout</a></td></tr>
-<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classConnectClass.html#m2">host</a> [MAXBUF]</td></tr>
-<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classConnectClass.html#m3">pass</a> [MAXBUF]</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Max time to register the connection in seconds.</em> <a href="#m1"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classConnectClass.html#m2">flood</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Number of lines in buffer before excess flood is triggered.</em> <a href="#m2"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classConnectClass.html#m3">host</a> [MAXBUF]</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Host mask for this line.</em> <a href="#m3"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classConnectClass.html#m4">pass</a> [MAXBUF]</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>(Optional) Password for this line</em> <a href="#m4"></a><em></em></font><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds information relevent to &lt;connect allow&gt; and &lt;connect deny&gt; tags in the config file.
@@ -62,18 +68,45 @@ Definition at line <a class="el" href="users_8h-source.html#l00034">34</a> of fi
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00042">42</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
+Definition at line <a class="el" href="users_8h-source.html#l00053">53</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
<p>
-<div class="fragment"><pre>00043 {
-00044 <a class="code" href="classConnectClass.html#m1">registration_timeout</a> = 0;
-00045 strcpy(host,<span class="stringliteral">""</span>);
-00046 strcpy(pass,<span class="stringliteral">""</span>);
-00047 }
+<div class="fragment"><pre>00054 {
+00055 <a class="code" href="classConnectClass.html#m1">registration_timeout</a> = 0;
+00056 <a class="code" href="classConnectClass.html#m2">flood</a> = 0;
+00057 strcpy(host,<span class="stringliteral">""</span>);
+00058 strcpy(pass,<span class="stringliteral">""</span>);
+00059 }
</pre></div> </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="m2" doxytag="ConnectClass::host"></a><p>
+<a name="m2" doxytag="ConnectClass::flood"></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"> int ConnectClass::flood
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Number of lines in buffer before excess flood is triggered.
+<p>
+
+<p>
+Definition at line <a class="el" href="users_8h-source.html#l00045">45</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+ </tr>
+</table>
+<a name="m3" doxytag="ConnectClass::host"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -92,12 +125,14 @@ Definition at line <a class="el" href="users_8h-source.html#l00042">42</a> of fi
<td>
<p>
+Host mask for this line.
+<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00039">39</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00048">48</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="m3" doxytag="ConnectClass::pass"></a><p>
+<a name="m4" doxytag="ConnectClass::pass"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -116,9 +151,11 @@ Definition at line <a class="el" href="users_8h-source.html#l00039">39</a> of fi
<td>
<p>
+(Optional) Password for this line
+<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00040">40</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00051">51</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
<a name="m1" doxytag="ConnectClass::registration_timeout"></a><p>
@@ -140,9 +177,11 @@ Definition at line <a class="el" href="users_8h-source.html#l00040">40</a> of fi
<td>
<p>
+Max time to register the connection in seconds.
+<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00038">38</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00042">42</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
<a name="m0" doxytag="ConnectClass::type"></a><p>
@@ -164,14 +203,16 @@ Definition at line <a class="el" href="users_8h-source.html#l00038">38</a> of fi
<td>
<p>
+Type of line, either CC_ALLOW or CC_DENY.
+<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00037">37</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00039">39</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="users_8h-source.html">users.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:57 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:48 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>
diff --git a/docs/module-doc/classConnectClass__coll__graph.gif b/docs/module-doc/classConnectClass__coll__graph.gif
index 14f3c91f4..17653635d 100644
--- a/docs/module-doc/classConnectClass__coll__graph.gif
+++ b/docs/module-doc/classConnectClass__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classExemptItem-members.html b/docs/module-doc/classExemptItem-members.html
index 1e0c85696..4a533e883 100644
--- a/docs/module-doc/classExemptItem-members.html
+++ b/docs/module-doc/classExemptItem-members.html
@@ -15,7 +15,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classHostItem.html#m0">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classHostItem.html#a1">~HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline, virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:01 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:49 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>
diff --git a/docs/module-doc/classExemptItem.html b/docs/module-doc/classExemptItem.html
index b9dbfde32..be330da9b 100644
--- a/docs/module-doc/classExemptItem.html
+++ b/docs/module-doc/classExemptItem.html
@@ -31,7 +31,7 @@ A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to h
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00042">42</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="channels_8h-source.html">channels.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:01 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:49 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>
diff --git a/docs/module-doc/classExtMode-members.html b/docs/module-doc/classExtMode-members.html
index ef603e0b4..15f06f3cf 100644
--- a/docs/module-doc/classExtMode-members.html
+++ b/docs/module-doc/classExtMode-members.html
@@ -13,7 +13,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classExtMode.html#m3">params_when_off</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classExtMode.html#m2">params_when_on</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classExtMode.html#m1">type</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:02 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:49 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>
diff --git a/docs/module-doc/classExtMode.html b/docs/module-doc/classExtMode.html
index b0251dfb4..0278970cd 100644
--- a/docs/module-doc/classExtMode.html
+++ b/docs/module-doc/classExtMode.html
@@ -203,7 +203,7 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00022">22</a> o
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="modules_8cpp-source.html">modules.cpp</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:02 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:49 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>
diff --git a/docs/module-doc/classFileReader-members.html b/docs/module-doc/classFileReader-members.html
index d6a050771..f7e358b15 100644
--- a/docs/module-doc/classFileReader-members.html
+++ b/docs/module-doc/classFileReader-members.html
@@ -18,7 +18,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classFileReader.html#a3">LoadFile</a>(std::string filename)</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classFileReader.html#a2">~FileReader</a>()</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:03 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:50 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>
diff --git a/docs/module-doc/classFileReader.html b/docs/module-doc/classFileReader.html
index 3ca670a48..ed114b8d9 100644
--- a/docs/module-doc/classFileReader.html
+++ b/docs/module-doc/classFileReader.html
@@ -46,7 +46,7 @@ This class contains methods for read-only manipulation of a text file in memory.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00529">529</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#l00557">557</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="FileReader::FileReader"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -76,10 +76,10 @@ Default constructor.
<p>
This method does not load any file into memory, you must use the LoadFile method after constructing the class this way.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00370">370</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#l00385">385</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00371 {
-00372 }
+<div class="fragment"><pre>00386 {
+00387 }
</pre></div> </td>
</tr>
</table>
@@ -113,15 +113,15 @@ Secondary constructor.
<p>
This method initialises the class with a file loaded into it ready for GetLine and and other methods to be called. If the file could not be loaded, <a class="el" href="classFileReader.html#a6">FileReader::FileSize</a> returns 0.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00363">363</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#l00378">378</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00531">fc</a>, and <a class="el" href="modules_8h-source.html#l00030">file_cache</a>.
+References <a class="el" href="modules_8h-source.html#l00559">fc</a>, and <a class="el" href="modules_8h-source.html#l00030">file_cache</a>.
<p>
-<div class="fragment"><pre>00364 {
-00365 <a class="code" href="modules_8h.html#a10">file_cache</a> c;
-00366 readfile(c,filename.c_str());
-00367 this-&gt;<a class="code" href="classFileReader.html#o0">fc</a> = c;
-00368 }
+<div class="fragment"><pre>00379 {
+00380 <a class="code" href="modules_8h.html#a10">file_cache</a> c;
+00381 readfile(c,filename.c_str());
+00382 this-&gt;<a class="code" href="classFileReader.html#o0">fc</a> = c;
+00383 }
</pre></div> </td>
</tr>
</table>
@@ -154,10 +154,10 @@ Default destructor.
<p>
This deletes the memory allocated to the file.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00382">382</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#l00397">397</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00383 {
-00384 }
+<div class="fragment"><pre>00398 {
+00399 }
</pre></div> </td>
</tr>
</table>
@@ -191,20 +191,20 @@ Returns true if the file exists This function will return false if the file coul
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00386">386</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#l00401">401</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00531">fc</a>.
+References <a class="el" href="modules_8h-source.html#l00559">fc</a>.
<p>
-<div class="fragment"><pre>00387 {
-00388 <span class="keywordflow">if</span> (<a class="code" href="classFileReader.html#o0">fc</a>.size() == 0)
-00389 {
-00390 <span class="keywordflow">return</span>(false);
-00391 }
-00392 <span class="keywordflow">else</span>
-00393 {
-00394 <span class="keywordflow">return</span>(true);
-00395 }
-00396 }
+<div class="fragment"><pre>00402 {
+00403 <span class="keywordflow">if</span> (<a class="code" href="classFileReader.html#o0">fc</a>.size() == 0)
+00404 {
+00405 <span class="keywordflow">return</span>(false);
+00406 }
+00407 <span class="keywordflow">else</span>
+00408 {
+00409 <span class="keywordflow">return</span>(true);
+00410 }
+00411 }
</pre></div> </td>
</tr>
</table>
@@ -237,13 +237,13 @@ Returns the size of the file in lines.
<p>
This method returns the number of lines in the read file. If it is 0, no lines have been read into memory, either because the file is empty or it does not exist, or cannot be opened due to permission problems.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00405">405</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#l00420">420</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00531">fc</a>.
+References <a class="el" href="modules_8h-source.html#l00559">fc</a>.
<p>
-<div class="fragment"><pre>00406 {
-00407 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#o0">fc</a>.size();
-00408 }
+<div class="fragment"><pre>00421 {
+00422 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#o0">fc</a>.size();
+00423 }
</pre></div> </td>
</tr>
</table>
@@ -277,15 +277,15 @@ Retrieve one line from the file.
<p>
This method retrieves one line from the text file. If an empty non-NULL string is returned, the index was out of bounds, or the line had no data on it.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00398">398</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#l00413">413</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00531">fc</a>.
+References <a class="el" href="modules_8h-source.html#l00559">fc</a>.
<p>
-<div class="fragment"><pre>00399 {
-00400 <span class="keywordflow">if</span> ((x&lt;0) || (x&gt;<a class="code" href="classFileReader.html#o0">fc</a>.size()))
-00401 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-00402 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#o0">fc</a>[x];
-00403 }
+<div class="fragment"><pre>00414 {
+00415 <span class="keywordflow">if</span> ((x&lt;0) || (x&gt;<a class="code" href="classFileReader.html#o0">fc</a>.size()))
+00416 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+00417 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#o0">fc</a>[x];
+00418 }
</pre></div> </td>
</tr>
</table>
@@ -319,15 +319,15 @@ Used to load a file.
<p>
This method loads a file into the class ready for GetLine and and other methods to be called. If the file could not be loaded, <a class="el" href="classFileReader.html#a6">FileReader::FileSize</a> returns 0.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00374">374</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#l00389">389</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00531">fc</a>, and <a class="el" href="modules_8h-source.html#l00030">file_cache</a>.
+References <a class="el" href="modules_8h-source.html#l00559">fc</a>, and <a class="el" href="modules_8h-source.html#l00030">file_cache</a>.
<p>
-<div class="fragment"><pre>00375 {
-00376 <a class="code" href="modules_8h.html#a10">file_cache</a> c;
-00377 readfile(c,filename.c_str());
-00378 this-&gt;<a class="code" href="classFileReader.html#o0">fc</a> = c;
-00379 }
+<div class="fragment"><pre>00390 {
+00391 <a class="code" href="modules_8h.html#a10">file_cache</a> c;
+00392 readfile(c,filename.c_str());
+00393 this-&gt;<a class="code" href="classFileReader.html#o0">fc</a> = c;
+00394 }
</pre></div> </td>
</tr>
</table>
@@ -353,14 +353,14 @@ References <a class="el" href="modules_8h-source.html#l00531">fc</a>, and <a cla
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00531">531</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
+Definition at line <a class="el" href="modules_8h-source.html#l00559">559</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00386">Exists()</a>, <a class="el" href="modules_8cpp-source.html#l00363">FileReader()</a>, <a class="el" href="modules_8cpp-source.html#l00405">FileSize()</a>, <a class="el" href="modules_8cpp-source.html#l00398">GetLine()</a>, and <a class="el" href="modules_8cpp-source.html#l00374">LoadFile()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00401">Exists()</a>, <a class="el" href="modules_8cpp-source.html#l00378">FileReader()</a>, <a class="el" href="modules_8cpp-source.html#l00420">FileSize()</a>, <a class="el" href="modules_8cpp-source.html#l00413">GetLine()</a>, and <a class="el" href="modules_8cpp-source.html#l00389">LoadFile()</a>. </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 Thu Apr 8 19:13:03 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:50 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>
diff --git a/docs/module-doc/classHostItem-members.html b/docs/module-doc/classHostItem-members.html
index 26918e97d..7163a0817 100644
--- a/docs/module-doc/classHostItem-members.html
+++ b/docs/module-doc/classHostItem-members.html
@@ -15,7 +15,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classHostItem.html#m0">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classHostItem.html#a1">~HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline, virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:05 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:50 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>
diff --git a/docs/module-doc/classHostItem.html b/docs/module-doc/classHostItem.html
index 391400b89..b944ab14e 100644
--- a/docs/module-doc/classHostItem.html
+++ b/docs/module-doc/classHostItem.html
@@ -181,7 +181,7 @@ Definition at line <a class="el" href="channels_8h-source.html#l00021">21</a> of
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="channels_8h-source.html">channels.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:05 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:50 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>
diff --git a/docs/module-doc/classInviteItem-members.html b/docs/module-doc/classInviteItem-members.html
index 3732f219d..828c331ce 100644
--- a/docs/module-doc/classInviteItem-members.html
+++ b/docs/module-doc/classInviteItem-members.html
@@ -15,7 +15,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classHostItem.html#m0">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classHostItem.html#a1">~HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline, virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:08 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:51 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>
diff --git a/docs/module-doc/classInviteItem.html b/docs/module-doc/classInviteItem.html
index c3f02830d..958a982ec 100644
--- a/docs/module-doc/classInviteItem.html
+++ b/docs/module-doc/classInviteItem.html
@@ -31,7 +31,7 @@ A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to h
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00050">50</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="channels_8h-source.html">channels.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:08 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:51 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>
diff --git a/docs/module-doc/classInvited-members.html b/docs/module-doc/classInvited-members.html
index 61d4a85cb..889ac69cc 100644
--- a/docs/module-doc/classInvited-members.html
+++ b/docs/module-doc/classInvited-members.html
@@ -11,7 +11,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classInvited.html#m0">channel</a></td><td><a class="el" href="classInvited.html">Invited</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a0">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:07 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:51 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>
diff --git a/docs/module-doc/classInvited.html b/docs/module-doc/classInvited.html
index c59b9a439..979671438 100644
--- a/docs/module-doc/classInvited.html
+++ b/docs/module-doc/classInvited.html
@@ -53,12 +53,12 @@ Definition at line <a class="el" href="users_8h-source.html#l00025">25</a> of fi
<p>
Definition at line <a class="el" href="users_8h-source.html#l00028">28</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00065">userrec::InviteTo()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00066">userrec::InviteTo()</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="users_8h-source.html">users.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:07 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:51 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>
diff --git a/docs/module-doc/classModeParameter-members.html b/docs/module-doc/classModeParameter-members.html
index 1e77da1ea..32c621820 100644
--- a/docs/module-doc/classModeParameter-members.html
+++ b/docs/module-doc/classModeParameter-members.html
@@ -13,7 +13,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classModeParameter.html#m0">mode</a></td><td><a class="el" href="classModeParameter.html">ModeParameter</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classModeParameter.html#m1">parameter</a></td><td><a class="el" href="classModeParameter.html">ModeParameter</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:10 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:53 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>
diff --git a/docs/module-doc/classModeParameter.html b/docs/module-doc/classModeParameter.html
index cbfc69822..4eb72346e 100644
--- a/docs/module-doc/classModeParameter.html
+++ b/docs/module-doc/classModeParameter.html
@@ -114,7 +114,7 @@ Referenced by <a class="el" href="channels_8cpp-source.html#l00050">chanrec::Set
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="channels_8h-source.html">channels.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:10 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:53 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>
diff --git a/docs/module-doc/classModule-members.html b/docs/module-doc/classModule-members.html
index a0695a3fe..386134f6e 100644
--- a/docs/module-doc/classModule-members.html
+++ b/docs/module-doc/classModule-members.html
@@ -28,7 +28,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classModule.html#a15">OnWhois</a>(userrec *source, userrec *dest)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classModule.html#a1">~Module</a>()</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:11 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:53 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>
diff --git a/docs/module-doc/classModule.html b/docs/module-doc/classModule.html
index 9f61cb706..2c7277c74 100644
--- a/docs/module-doc/classModule.html
+++ b/docs/module-doc/classModule.html
@@ -66,7 +66,7 @@ All modules must inherit from this class, its methods will be called when irc se
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00091">91</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#l00092">92</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="Module::Module"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -843,7 +843,7 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00123">123</a>
</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 Thu Apr 8 19:13:11 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:53 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>
diff --git a/docs/module-doc/classModuleFactory-members.html b/docs/module-doc/classModuleFactory-members.html
index e821ae67a..85f704a92 100644
--- a/docs/module-doc/classModuleFactory-members.html
+++ b/docs/module-doc/classModuleFactory-members.html
@@ -13,7 +13,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classModuleFactory.html#a0">ModuleFactory</a>()</td><td><a class="el" href="classModuleFactory.html">ModuleFactory</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classModuleFactory.html#a1">~ModuleFactory</a>()</td><td><a class="el" href="classModuleFactory.html">ModuleFactory</a></td><td><code> [inline, virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:13 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:54 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>
diff --git a/docs/module-doc/classModuleFactory.html b/docs/module-doc/classModuleFactory.html
index 427fe5328..b6cf2e068 100644
--- a/docs/module-doc/classModuleFactory.html
+++ b/docs/module-doc/classModuleFactory.html
@@ -34,7 +34,7 @@ This is to allow for modules to create many different variants of <a class="el"
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00584">584</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#l00612">612</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="ModuleFactory::ModuleFactory"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -62,9 +62,9 @@ Definition at line <a class="el" href="modules_8h-source.html#l00584">584</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00587">587</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
+Definition at line <a class="el" href="modules_8h-source.html#l00615">615</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-<div class="fragment"><pre>00587 { }
+<div class="fragment"><pre>00615 { }
</pre></div> </td>
</tr>
</table>
@@ -95,9 +95,9 @@ Definition at line <a class="el" href="modules_8h-source.html#l00587">587</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00588">588</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
+Definition at line <a class="el" href="modules_8h-source.html#l00616">616</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-<div class="fragment"><pre>00588 { }
+<div class="fragment"><pre>00616 { }
</pre></div> </td>
</tr>
</table>
@@ -134,7 +134,7 @@ Your inherited class of ModuleFactory must return a pointer to your <a class="el
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="modules_8h-source.html">modules.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:13 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:54 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>
diff --git a/docs/module-doc/classServer-members.html b/docs/module-doc/classServer-members.html
index 9aa8cf46f..da295972d 100644
--- a/docs/module-doc/classServer-members.html
+++ b/docs/module-doc/classServer-members.html
@@ -10,6 +10,9 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a21">AddCommand</a>(char *cmd, handlerfunc f, char flags, int minparams)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a20">AddExtendedMode</a>(char modechar, int type, bool requires_oper, int params_when_on, int params_when_off)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#m0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a29">CallCommandHandler</a>(std::string commandname, char **parameters, int pcnt, userrec *user)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a31">ChangeGECOS</a>(userrec *user, std::string gecos)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a30">ChangeHost</a>(userrec *user, std::string host)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a26">ChangeUserNick</a>(userrec *user, std::string nickname)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a16">ChanMode</a>(userrec *User, chanrec *Chan)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a0">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
@@ -39,7 +42,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a0">Server</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classServer.html#a1">~Server</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:16 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:54 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>
diff --git a/docs/module-doc/classServer.html b/docs/module-doc/classServer.html
index c882ab073..9022d36dc 100644
--- a/docs/module-doc/classServer.html
+++ b/docs/module-doc/classServer.html
@@ -80,6 +80,12 @@ Inheritance diagram for Server:<p><center><img src="classServer__inherit__graph.
<tr><td>&nbsp;</td><td><font size=-1><em>Forces a user to quit with the specified reason.</em> <a href="#a27"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>virtual bool&nbsp;</td><td valign=bottom><a class="el" href="classServer.html#a28">MatchText</a> (std::string sliteral, std::string spattern)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Matches text against a glob pattern.</em> <a href="#a28"></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#a29">CallCommandHandler</a> (std::string commandname, char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Calls the handler for a command, either implemented by the core or by another module.</em> <a href="#a29"></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#a30">ChangeHost</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string host)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Change displayed hostname of a user.</em> <a href="#a30"></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#a31">ChangeGECOS</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string gecos)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Change GECOS (fullname) of a user.</em> <a href="#a31"></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.
@@ -88,7 +94,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#l00240">240</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#l00241">241</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>
@@ -215,13 +221,13 @@ This allows modules to add extra commands into the command table. You must place
typedef void (handlerfunc) (char**, int, userrec*); ... void handle_kill(char **parameters, int pcnt, userrec *user)<p>
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'.
<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#l00188">188</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
References <a class="el" href="modules_8h.html#a13">createcommand()</a>.
<p>
-<div class="fragment"><pre>00184 {
-00185 <a class="code" href="modules_8h.html#a13">createcommand</a>(cmd,f,flags,minparams);
-00186 }
+<div class="fragment"><pre>00189 {
+00190 <a class="code" href="modules_8h.html#a13">createcommand</a>(cmd,f,flags,minparams);
+00191 }
</pre></div> </td>
</tr>
</table>
@@ -282,28 +288,182 @@ 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. requires_oper is used with MT_CLIENT type modes only to indicate the mode can only be set or unset by an oper. If this is used for MT_CHANNEL type modes it is ignored. 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 +k, 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#l00293">293</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#l00308">308</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
References <a class="el" href="modules_8cpp-source.html#l00090">DoAddExtendedMode()</a>, <a class="el" href="modules_8h-source.html#l00018">MT_CLIENT</a>, and <a class="el" href="modules_8h-source.html#l00019">MT_SERVER</a>.
<p>
-<div class="fragment"><pre>00294 {
-00295 <span class="keywordflow">if</span> (type == <a class="code" href="modules_8h.html#a7">MT_SERVER</a>)
-00296 {
-00297 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion"</span>);
-00298 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00299 }
-00300 <span class="keywordflow">if</span> (((params_when_on&gt;0) || (params_when_off&gt;0)) &amp;&amp; (type == <a class="code" href="modules_8h.html#a6">MT_CLIENT</a>))
-00301 {
-00302 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Parameters on MT_CLIENT modes are not supported"</span>);
-00303 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00304 }
-00305 <span class="keywordflow">if</span> ((params_when_on&gt;1) || (params_when_off&gt;1))
-00306 {
-00307 log(DEBUG,<span class="stringliteral">"*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported"</span>);
-00308 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00309 }
-00310 <span class="keywordflow">return</span> <a class="code" href="modules_8cpp.html#a8">DoAddExtendedMode</a>(modechar,type,requires_oper,params_when_on,params_when_off);
-00311 }
+<div class="fragment"><pre>00309 {
+00310 <span class="keywordflow">if</span> (type == <a class="code" href="modules_8h.html#a7">MT_SERVER</a>)
+00311 {
+00312 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion"</span>);
+00313 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00314 }
+00315 <span class="keywordflow">if</span> (((params_when_on&gt;0) || (params_when_off&gt;0)) &amp;&amp; (type == <a class="code" href="modules_8h.html#a6">MT_CLIENT</a>))
+00316 {
+00317 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Parameters on MT_CLIENT modes are not supported"</span>);
+00318 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00319 }
+00320 <span class="keywordflow">if</span> ((params_when_on&gt;1) || (params_when_off&gt;1))
+00321 {
+00322 log(DEBUG,<span class="stringliteral">"*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported"</span>);
+00323 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00324 }
+00325 <span class="keywordflow">return</span> <a class="code" href="modules_8cpp.html#a8">DoAddExtendedMode</a>(modechar,type,requires_oper,params_when_on,params_when_off);
+00326 }
+</pre></div> </td>
+ </tr>
+</table>
+<a name="a29" doxytag="Server::CallCommandHandler"></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::CallCommandHandler </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>commandname</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>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>
+Calls the handler for a command, either implemented by the core or by another module.
+<p>
+You can use this function to trigger other commands in the ircd, such as PRIVMSG, JOIN, KICK etc, or even as a method of callback. By defining command names that are untypeable for users on irc (e.g. those which contain a or <br>
+) you may use them as callback identifiers. The first parameter to this method is the name of the command handler you wish to call, e.g. PRIVMSG. This will be a command handler previously registered by the core or wih <a class="el" href="classServer.html#a21">AddCommand()</a>. The second parameter is an array of parameters, and the third parameter is a count of parameters in the array. If you do not pass enough parameters to meet the minimum needed by the handler, the functiom will silently ignore it. The final parameter is the user executing the command handler, used for privilage checks, etc.
+<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>.
+<p>
+<div class="fragment"><pre>00179 {
+00180 call_handler(commandname.c_str(),parameters,pcnt,user);
+00181 }
+</pre></div> </td>
+ </tr>
+</table>
+<a name="a31" doxytag="Server::ChangeGECOS"></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::ChangeGECOS </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>user</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>gecos</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>
+Change GECOS (fullname) of a user.
+<p>
+You should always call this method to change a user's GECOS rather than writing directly to the fullname member of userrec, as any change applied via this method will be propogated to any linked servers.
+<p>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00266">266</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+<div class="fragment"><pre>00267 {
+00268 ChangeName(user,gecos.c_str());
+00269 }
+</pre></div> </td>
+ </tr>
+</table>
+<a name="a30" doxytag="Server::ChangeHost"></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::ChangeHost </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>user</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>host</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>
+Change displayed hostname of a user.
+<p>
+You should always call this method to change a user's host rather than writing directly to the dhost member of userrec, as any change applied via this method will be propogated to any linked servers.
+<p>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00261">261</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+<div class="fragment"><pre>00262 {
+00263 ChangeDisplayedHost(user,host.c_str());
+00264 }
</pre></div> </td>
</tr>
</table>
@@ -393,11 +553,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#l00271">271</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#l00286">286</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00272 {
-00273 <span class="keywordflow">return</span> cmode(User,Chan);
-00274 }
+<div class="fragment"><pre>00287 {
+00288 <span class="keywordflow">return</span> cmode(User,Chan);
+00289 }
</pre></div> </td>
</tr>
</table>
@@ -440,11 +600,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#l00234">234</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#l00239">239</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00235 {
-00236 <span class="keywordflow">return</span> (common_channels(u1,u2) != 0);
-00237 }
+<div class="fragment"><pre>00240 {
+00241 <span class="keywordflow">return</span> (common_channels(u1,u2) != 0);
+00242 }
</pre></div> </td>
</tr>
</table>
@@ -478,11 +638,11 @@ Returns a count of the number of users on a channel.
<p>
This will NEVER be 0, as if the chanrec exists, it will have at least one user in the channel.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00313">313</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#l00328">328</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00314 {
-00315 <span class="keywordflow">return</span> usercount(c);
-00316 }
+<div class="fragment"><pre>00329 {
+00330 <span class="keywordflow">return</span> usercount(c);
+00331 }
</pre></div> </td>
</tr>
</table>
@@ -516,11 +676,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#l00266">266</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#l00281">281</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00267 {
-00268 <span class="keywordflow">return</span> FindChan(channel.c_str());
-00269 }
+<div class="fragment"><pre>00282 {
+00283 <span class="keywordflow">return</span> FindChan(channel.c_str());
+00284 }
</pre></div> </td>
</tr>
</table>
@@ -554,11 +714,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#l00261">261</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#l00276">276</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00262 {
-00263 <span class="keywordflow">return</span> Find(nick);
-00264 }
+<div class="fragment"><pre>00277 {
+00278 <span class="keywordflow">return</span> Find(nick);
+00279 }
</pre></div> </td>
</tr>
</table>
@@ -591,11 +751,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#l00286">286</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#l00301">301</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00287 {
-00288 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
-00289 }
+<div class="fragment"><pre>00302 {
+00303 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
+00304 }
</pre></div> </td>
</tr>
</table>
@@ -628,11 +788,11 @@ Returns the network name, global to all linked servers.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00281">281</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#l00296">296</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00282 {
-00283 <span class="keywordflow">return</span> getnetworkname();
-00284 }
+<div class="fragment"><pre>00297 {
+00298 <span class="keywordflow">return</span> getnetworkname();
+00299 }
</pre></div> </td>
</tr>
</table>
@@ -665,11 +825,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#l00276">276</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#l00291">291</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00277 {
-00278 <span class="keywordflow">return</span> getservername();
-00279 }
+<div class="fragment"><pre>00292 {
+00293 <span class="keywordflow">return</span> getservername();
+00294 }
</pre></div> </td>
</tr>
</table>
@@ -703,11 +863,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#l00256">256</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#l00271">271</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00257 {
-00258 <span class="keywordflow">return</span> (isnick(nick.c_str()) != 0);
-00259 }
+<div class="fragment"><pre>00272 {
+00273 <span class="keywordflow">return</span> (isnick(nick.c_str()) != 0);
+00274 }
</pre></div> </td>
</tr>
</table>
@@ -759,7 +919,7 @@ This is similar to svsjoin and can be used to implement redirection, etc. On suc
Definition at line <a class="el" href="modules_8cpp-source.html#l00157">157</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
<div class="fragment"><pre>00158 {
-00159 <span class="keywordflow">return</span> add_channel(user,cname.c_str(),key.c_str());
+00159 <span class="keywordflow">return</span> add_channel(user,cname.c_str(),key.c_str(),<span class="keyword">true</span>);
00160 }
</pre></div> </td>
</tr>
@@ -803,11 +963,11 @@ Writes a log string.
<p>
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.
<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#l00183">183</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00179 {
-00180 log(level,<span class="stringliteral">"%s"</span>,s.c_str());
-00181 }
+<div class="fragment"><pre>00184 {
+00185 log(level,<span class="stringliteral">"%s"</span>,s.c_str());
+00186 }
</pre></div> </td>
</tr>
</table>
@@ -909,7 +1069,7 @@ This is similar to svspart and can be used to implement redirection, etc. Althou
Definition at line <a class="el" href="modules_8cpp-source.html#l00162">162</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
<div class="fragment"><pre>00163 {
-00164 <span class="keywordflow">return</span> del_channel(user,cname.c_str(),reason.c_str());
+00164 <span class="keywordflow">return</span> del_channel(user,cname.c_str(),reason.c_str(),<span class="keyword">false</span>);
00165 }
</pre></div> </td>
</tr>
@@ -957,9 +1117,12 @@ Once you call this function, userrec* user will immediately become INVALID. You
<p>
Definition at line <a class="el" href="modules_8cpp-source.html#l00172">172</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
+References <a class="el" href="users_8h-source.html#l00091">userrec::nick</a>.
+<p>
<div class="fragment"><pre>00173 {
-00174 kill_link(user,reason.c_str());
-00175 }
+00174 send_network_quit(user-&gt;<a class="code" href="classuserrec.html#m0">nick</a>,reason.c_str());
+00175 kill_link(user,reason.c_str());
+00176 }
</pre></div> </td>
</tr>
</table>
@@ -1002,11 +1165,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#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#l00198">198</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00194 {
-00195 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
-00196 }
+<div class="fragment"><pre>00199 {
+00200 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+00201 }
</pre></div> </td>
</tr>
</table>
@@ -1061,18 +1224,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#l00222">222</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00223 {
-00224 <span class="keywordflow">if</span> (IncludeSender)
-00225 {
-00226 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00227 }
-00228 <span class="keywordflow">else</span>
-00229 {
-00230 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00231 }
-00232 }
+Definition at line <a class="el" href="modules_8cpp-source.html#l00227">227</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+<div class="fragment"><pre>00228 {
+00229 <span class="keywordflow">if</span> (IncludeSender)
+00230 {
+00231 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00232 }
+00233 <span class="keywordflow">else</span>
+00234 {
+00235 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00236 }
+00237 }
</pre></div> </td>
</tr>
</table>
@@ -1121,18 +1284,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#l00239">239</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00240 {
-00241 <span class="keywordflow">if</span> (IncludeSender)
-00242 {
-00243 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00244 }
-00245 <span class="keywordflow">else</span>
-00246 {
-00247 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00248 }
-00249 }
+Definition at line <a class="el" href="modules_8cpp-source.html#l00244">244</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+<div class="fragment"><pre>00245 {
+00246 <span class="keywordflow">if</span> (IncludeSender)
+00247 {
+00248 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
+00249 }
+00250 <span class="keywordflow">else</span>
+00251 {
+00252 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
+00253 }
+00254 }
</pre></div> </td>
</tr>
</table>
@@ -1181,11 +1344,11 @@ 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#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#l00208">208</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00204 {
-00205 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00206 }
+<div class="fragment"><pre>00209 {
+00210 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00211 }
</pre></div> </td>
</tr>
</table>
@@ -1241,13 +1404,13 @@ modes[2] = user-&gt;nick;<p>
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#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#l00193">193</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
References <a class="el" href="modules_8h.html#a14">server_mode()</a>.
<p>
-<div class="fragment"><pre>00189 {
-00190 <a class="code" href="modules_8h.html#a14">server_mode</a>(parameters,pcnt,user);
-00191 }
+<div class="fragment"><pre>00194 {
+00195 <a class="code" href="modules_8h.html#a14">server_mode</a>(parameters,pcnt,user);
+00196 }
</pre></div> </td>
</tr>
</table>
@@ -1328,11 +1491,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#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#l00203">203</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00199 {
-00200 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
-00201 }
+<div class="fragment"><pre>00204 {
+00205 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+00206 }
</pre></div> </td>
</tr>
</table>
@@ -1385,22 +1548,22 @@ The format will become:<p>
:localserver TEXT<p>
Which is useful for numerics and server notices to single users, etc.
<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#l00213">213</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="connection_8h-source.html#l00043">connection::fd</a>.
+References <a class="el" href="connection_8h-source.html#l00165">connection::fd</a>.
<p>
-<div class="fragment"><pre>00209 {
-00210 <span class="keywordflow">if</span> (!Source)
-00211 {
-00212 <span class="comment">// if source is NULL, then the message originates from the local server</span>
-00213 Write(Dest-&gt;<a class="code" href="classconnection.html#m1">fd</a>,<span class="stringliteral">":%s %s"</span>,this-&gt;GetServerName().c_str(),s.c_str());
-00214 }
-00215 <span class="keywordflow">else</span>
+<div class="fragment"><pre>00214 {
+00215 <span class="keywordflow">if</span> (!Source)
00216 {
-00217 <span class="comment">// otherwise it comes from the user specified</span>
-00218 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
+00217 <span class="comment">// if source is NULL, then the message originates from the local server</span>
+00218 Write(Dest-&gt;<a class="code" href="classconnection.html#m0">fd</a>,<span class="stringliteral">":%s %s"</span>,this-&gt;GetServerName().c_str(),s.c_str());
00219 }
-00220 }
+00220 <span class="keywordflow">else</span>
+00221 {
+00222 <span class="comment">// otherwise it comes from the user specified</span>
+00223 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
+00224 }
+00225 }
</pre></div> </td>
</tr>
</table>
@@ -1498,17 +1661,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#l00251">251</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#l00256">256</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-<div class="fragment"><pre>00252 {
-00253 WriteWallOps(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00254 }
+<div class="fragment"><pre>00257 {
+00258 WriteWallOps(User,<span class="keyword">false</span>,<span class="stringliteral">"%s"</span>,text.c_str());
+00259 }
</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 Thu Apr 8 19:13:16 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:54 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>
diff --git a/docs/module-doc/classVersion-members.html b/docs/module-doc/classVersion-members.html
index f3954c819..d2ab2ba68 100644
--- a/docs/module-doc/classVersion-members.html
+++ b/docs/module-doc/classVersion-members.html
@@ -15,7 +15,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classVersion.html#m2">Revision</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classVersion.html#a0">Version</a>(int major, int minor, int revision, int build)</td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:25 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:57 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>
diff --git a/docs/module-doc/classVersion.html b/docs/module-doc/classVersion.html
index 52032b4fd..2f06ef003 100644
--- a/docs/module-doc/classVersion.html
+++ b/docs/module-doc/classVersion.html
@@ -36,7 +36,7 @@ A class of type Version is returned by the GetVersion method of the <a class="el
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00067">67</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#l00068">68</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="Version::Version"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -114,7 +114,7 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00102">102</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00070">70</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00071">71</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<a name="m0" doxytag="Version::Major"></a><p>
@@ -138,7 +138,7 @@ Definition at line <a class="el" href="modules_8h-source.html#l00070">70</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00070">70</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00071">71</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<a name="m1" doxytag="Version::Minor"></a><p>
@@ -162,7 +162,7 @@ Definition at line <a class="el" href="modules_8h-source.html#l00070">70</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00070">70</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00071">71</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<a name="m2" doxytag="Version::Revision"></a><p>
@@ -186,12 +186,12 @@ Definition at line <a class="el" href="modules_8h-source.html#l00070">70</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00070">70</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00071">71</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </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 Thu Apr 8 19:13:25 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:57 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>
diff --git a/docs/module-doc/classchanrec-members.html b/docs/module-doc/classchanrec-members.html
index 9779336c5..98a3de5b1 100644
--- a/docs/module-doc/classchanrec-members.html
+++ b/docs/module-doc/classchanrec-members.html
@@ -31,7 +31,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classchanrec.html#m4">topicset</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classchanrec.html#a5">~chanrec</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td><code> [inline, virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:50 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:46 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>
diff --git a/docs/module-doc/classchanrec.html b/docs/module-doc/classchanrec.html
index c4a358426..5c7f2e635 100644
--- a/docs/module-doc/classchanrec.html
+++ b/docs/module-doc/classchanrec.html
@@ -808,7 +808,7 @@ Referenced by <a class="el" href="channels_8cpp-source.html#l00012">chanrec()</a
</table>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="channels_8h-source.html">channels.h</a><li><a class="el" href="channels_8cpp-source.html">channels.cpp</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:50 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:46 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>
diff --git a/docs/module-doc/classclassbase-members.html b/docs/module-doc/classclassbase-members.html
index cec3359be..809f293a9 100644
--- a/docs/module-doc/classclassbase-members.html
+++ b/docs/module-doc/classclassbase-members.html
@@ -10,7 +10,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#m0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a0">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:52 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:46 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>
diff --git a/docs/module-doc/classclassbase.html b/docs/module-doc/classclassbase.html
index 4e358f69d..4bd5a9ffb 100644
--- a/docs/module-doc/classclassbase.html
+++ b/docs/module-doc/classclassbase.html
@@ -22,10 +22,10 @@ Inheritance diagram for classbase:<p><center><img src="classclassbase__inherit__
<area href="classFileReader.html" shape="rect" coords="149,277,224,298" alt="">
<area href="classHostItem.html" shape="rect" coords="157,322,216,344" alt="">
<area href="classInvited.html" shape="rect" coords="164,368,209,389" alt="">
-<area href="classModeParameter.html" shape="rect" coords="135,413,239,434" alt="">
-<area href="classModule.html" shape="rect" coords="161,458,212,480" alt="">
-<area href="classModuleFactory.html" shape="rect" coords="140,504,233,525" alt="">
-<area href="classpacket.html" shape="rect" coords="161,549,212,570" alt="">
+<area href="classircd__connector.html" shape="rect" coords="139,413,235,434" alt="">
+<area href="classModeParameter.html" shape="rect" coords="135,458,239,480" alt="">
+<area href="classModule.html" shape="rect" coords="161,504,212,525" alt="">
+<area href="classModuleFactory.html" shape="rect" coords="140,549,233,570" alt="">
<area href="classServer.html" shape="rect" coords="161,594,212,616" alt="">
<area href="classucrec.html" shape="rect" coords="164,640,209,661" alt="">
<area href="classVersion.html" shape="rect" coords="160,685,213,706" alt="">
@@ -144,7 +144,7 @@ Definition at line <a class="el" href="base_8h-source.html#l00020">20</a> of fil
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="base_8h-source.html">base.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:52 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:46 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>
diff --git a/docs/module-doc/classclassbase__inherit__graph.gif b/docs/module-doc/classclassbase__inherit__graph.gif
index cabc2c0f2..c9e92ed9f 100644
--- a/docs/module-doc/classclassbase__inherit__graph.gif
+++ b/docs/module-doc/classclassbase__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classcommand__t-members.html b/docs/module-doc/classcommand__t-members.html
index 7e3c94fd0..43ab0ed8d 100644
--- a/docs/module-doc/classcommand__t-members.html
+++ b/docs/module-doc/classcommand__t-members.html
@@ -16,7 +16,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classcommand__t.html#m5">total_bytes</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classcommand__t.html#m4">use_count</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:54 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:47 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>
diff --git a/docs/module-doc/classcommand__t.html b/docs/module-doc/classcommand__t.html
index cc0b01062..00199dc2e 100644
--- a/docs/module-doc/classcommand__t.html
+++ b/docs/module-doc/classcommand__t.html
@@ -199,7 +199,7 @@ Definition at line <a class="el" href="ctables_8h-source.html#l00044">44</a> of
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="ctables_8h-source.html">ctables.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:54 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:47 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>
diff --git a/docs/module-doc/classconnection-members.html b/docs/module-doc/classconnection-members.html
index 6e5472b03..07506b20f 100644
--- a/docs/module-doc/classconnection-members.html
+++ b/docs/module-doc/classconnection-members.html
@@ -7,36 +7,39 @@
<center>
<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
<hr><h1>connection Member List</h1>This is the complete list of members for <a class="el" href="classconnection.html">connection</a>, including all inherited members.<table>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a8">AddIncoming</a>(int fd, char *targethost, int sourceport)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#m0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a2">BeginLink</a>(char *targethost, int port, char *password)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m5">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m6">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a2">BeginLink</a>(char *targethost, int port, char *password, char *servername, int myport)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m4">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m5">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a0">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m7">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m8">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m6">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m7">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a0">connection</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m18">connectors</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a1">CreateListener</a>(char *host, int p)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m1">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a8">GenKey</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m9">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m2">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m0">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a7">FindHost</a>(std::string host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a9">GenKey</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m8">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m1">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m14">idle_lastmsg</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m4">inbuf</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m3">inbuf</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m16">internal_addr</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m3">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m0">key</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m17">internal_port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m2">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m12">lastping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a3">MeshCookie</a>(char *targethost, int port, long cookie, char *servername)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m15">nping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m10">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a5">RecvPacket</a>(char *message, char *host, int &amp;prt, long &amp;theirkey)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m11">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a7">SendACK</a>(char *host, int port, int reply_id)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a4">SendPacket</a>(char *message, char *host, int port, long ourkey)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a6">SendSYN</a>(char *host, int port)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m9">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a6">RecvPacket</a>(std::deque&lt; std::string &gt; &amp;messages, char *host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m10">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a5">SendPacket</a>(char *message, const char *host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m13">signon</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a3">TerminateLink</a>(char *targethost)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m11">state</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a4">TerminateLink</a>(char *targethost)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:59 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:49 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>
diff --git a/docs/module-doc/classconnection.html b/docs/module-doc/classconnection.html
index 8c133be35..1a6962cb8 100644
--- a/docs/module-doc/classconnection.html
+++ b/docs/module-doc/classconnection.html
@@ -6,7 +6,10 @@
<!-- Generated by Doxygen 1.3-rc3 -->
<center>
<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
-<hr><h1>connection Class Reference</h1><code>#include &lt;<a class="el" href="connection_8h-source.html">connection.h</a>&gt;</code>
+<hr><h1>connection Class Reference</h1>Please note: classes serverrec and userrec both inherit from class connection.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="connection_8h-source.html">connection.h</a>&gt;</code>
<p>
Inheritance diagram for connection:<p><center><img src="classconnection__inherit__graph.gif" border="0" usemap="#connection__inherit__map" alt="Inheritance graph"></center>
<map name="connection__inherit__map">
@@ -16,40 +19,77 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for connection:<p><center><img src="classconnection__coll__graph.gif" border="0" usemap="#connection__coll__map" alt="Collaboration graph"></center>
<map name="connection__coll__map">
-<area href="classclassbase.html" shape="rect" coords="156,123,223,144" alt="">
+<area href="classclassbase.html" shape="rect" coords="192,122,259,144" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classconnection-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a0">connection</a> ()</td></tr>
-<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a1">CreateListener</a> (char *<a class="el" href="classconnection.html#m2">host</a>, int p)</td></tr>
-<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a2">BeginLink</a> (char *targethost, int <a class="el" href="classconnection.html#m10">port</a>, char *password)</td></tr>
-<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a3">TerminateLink</a> (char *targethost)</td></tr>
-<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a4">SendPacket</a> (char *message, char *<a class="el" href="classconnection.html#m2">host</a>, int <a class="el" href="classconnection.html#m10">port</a>, long ourkey)</td></tr>
-<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a5">RecvPacket</a> (char *message, char *<a class="el" href="classconnection.html#m2">host</a>, int &amp;prt, long &amp;theirkey)</td></tr>
-<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a6">SendSYN</a> (char *<a class="el" href="classconnection.html#m2">host</a>, int <a class="el" href="classconnection.html#m10">port</a>)</td></tr>
-<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a7">SendACK</a> (char *<a class="el" href="classconnection.html#m2">host</a>, int <a class="el" href="classconnection.html#m10">port</a>, int reply_id)</td></tr>
-<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a8">GenKey</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Default constructor.</em> <a href="#a0"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a1">CreateListener</a> (char *<a class="el" href="classconnection.html#m1">host</a>, int p)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Create a listening socket on 'host' using port number 'p'.</em> <a href="#a1"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a2">BeginLink</a> (char *targethost, int <a class="el" href="classconnection.html#m9">port</a>, char *password, char *servername, int myport)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Begin an outbound link to another ircd at targethost.</em> <a href="#a2"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a3">MeshCookie</a> (char *targethost, int <a class="el" href="classconnection.html#m9">port</a>, long cookie, char *servername)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Begin an outbound mesh link to another ircd on a network you are already an authenticated member of.</em> <a href="#a3"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a4">TerminateLink</a> (char *targethost)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Terminate a link to 'targethost' by calling the <a class="el" href="classircd__connector.html#a13">ircd_connector::CloseConnection</a> method.</em> <a href="#a4"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a5">SendPacket</a> (char *message, const char *<a class="el" href="classconnection.html#m1">host</a>)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Send a message to a server by name, if the server is unavailable directly route the packet via another server If the server still cannot be reached after attempting to route the message remotely, returns false.</em> <a href="#a5"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a6">RecvPacket</a> (std::deque&lt; std::string &gt; &amp;messages, char *<a class="el" href="classconnection.html#m1">host</a>)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Returns the next available packet and returns true if data is available.</em> <a href="#a6"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classircd__connector.html">ircd_connector</a> *&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a7">FindHost</a> (std::string <a class="el" href="classconnection.html#m1">host</a>)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Find the <a class="el" href="classircd__connector.html">ircd_connector</a> oject related to a certain servername given in 'host'.</em> <a href="#a7"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a8">AddIncoming</a> (int <a class="el" href="classconnection.html#m0">fd</a>, char *targethost, int sourceport)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Add an incoming connection to the connection pool.</em> <a href="#a8"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a9">GenKey</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>This function is deprecated and may be removed in a later alpha/beta.</em> <a href="#a9"></a><em></em></font><br><br></td></tr>
<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m0">key</a></td></tr>
-<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m1">fd</a></td></tr>
-<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m2">host</a> [256]</td></tr>
-<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m3">ip</a></td></tr>
-<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m4">inbuf</a> [MAXBUF]</td></tr>
-<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m5">bytes_in</a></td></tr>
-<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m6">bytes_out</a></td></tr>
-<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m7">cmds_in</a></td></tr>
-<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m8">cmds_out</a></td></tr>
-<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m9">haspassed</a></td></tr>
-<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m10">port</a></td></tr>
-<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m11">registered</a></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m0">fd</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>File descriptor of the connection.</em> <a href="#m0"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m1">host</a> [256]</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Hostname of connection.</em> <a href="#m1"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m2">ip</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>IP of connection.</em> <a href="#m2"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m3">inbuf</a> [MAXBUF]</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Inbuf of connection.</em> <a href="#m3"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m4">bytes_in</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Stats counter for bytes inbound.</em> <a href="#m4"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m5">bytes_out</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Stats counter for bytes outbound.</em> <a href="#m5"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m6">cmds_in</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Stats counter for commands inbound.</em> <a href="#m6"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m7">cmds_out</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Stats counter for commands outbound.</em> <a href="#m7"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m8">haspassed</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>True if server/user has authenticated, false if otherwise.</em> <a href="#m8"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m9">port</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Port number For a userrec, this is the port they connected to the network on.</em> <a href="#m9"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m10">registered</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Used by userrec to indicate the registration status of the connection.</em> <a href="#m10"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>short int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m11">state</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Reserved for future use.</em> <a href="#m11"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>time_t&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m12">lastping</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Time the connection was last pinged.</em> <a href="#m12"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>time_t&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m13">signon</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Time the connection was created, set in the constructor.</em> <a href="#m13"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>time_t&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m14">idle_lastmsg</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Time that the connection last sent data, used to calculate idle time.</em> <a href="#m14"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>time_t&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m15">nping</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Used by PING checks with clients.</em> <a href="#m15"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m16">internal_addr</a> [1024]</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Unused, will be removed in a future alpha/beta.</em> <a href="#m16"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m17">internal_port</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Unused, will be removed in a future alpha/beta.</em> <a href="#m17"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>std::vector&lt; <a class="el" href="classircd__connector.html">ircd_connector</a> &gt;&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m18">connectors</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>With a serverrec, this is a list of all established server connections.</em> <a href="#m18"></a><em></em></font><br><br></td></tr>
</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Please note: classes serverrec and userrec both inherit from class connection.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00160">160</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="connection::connection"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -75,10 +115,58 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+Default constructor.
+<p>
</td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
+<a name="a8" doxytag="connection::AddIncoming"></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"> bool connection::AddIncoming </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">int&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>char *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>targethost</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>int&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>sourceport</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Add an incoming connection to the connection pool.
+<p>
+(reserved for core use) </td>
+ </tr>
+</table>
<a name="a2" doxytag="connection::BeginLink"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -100,7 +188,19 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td></td>
<td></td>
<td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>password</em></td>
+ <td class="mdname" nowrap>&nbsp; <em>password</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>char *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>servername</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>int&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>myport</em></td>
</tr>
<tr>
<td></td>
@@ -120,6 +220,8 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+Begin an outbound link to another ircd at targethost.
+<p>
</td>
</tr>
</table>
@@ -158,18 +260,21 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+Create a listening socket on 'host' using port number 'p'.
+<p>
</td>
</tr>
</table>
-<a name="a8" doxytag="connection::GenKey"></a><p>
+<a name="a7" doxytag="connection::FindHost"></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"> long connection::GenKey </td>
+ <td class="md" nowrap valign="top"> <a class="el" href="classircd__connector.html">ircd_connector</a>* connection::FindHost </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>host</em> </td>
<td class="md" valign="top">)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
@@ -186,42 +291,22 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+Find the <a class="el" href="classircd__connector.html">ircd_connector</a> oject related to a certain servername given in 'host'.
+<p>
</td>
</tr>
</table>
-<a name="a5" doxytag="connection::RecvPacket"></a><p>
+<a name="a9" doxytag="connection::GenKey"></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"> bool connection::RecvPacket </td>
+ <td class="md" nowrap valign="top"> long connection::GenKey </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char *&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>message</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>int &amp;&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>prt</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>long &amp;&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>theirkey</em></td>
- </tr>
- <tr>
- <td></td>
- <td class="md">)&nbsp;</td>
- <td class="md" colspan="2"></td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
</tr>
</table>
@@ -236,19 +321,21 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+This function is deprecated and may be removed in a later alpha/beta.
+<p>
</td>
</tr>
</table>
-<a name="a7" doxytag="connection::SendACK"></a><p>
+<a name="a3" doxytag="connection::MeshCookie"></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"> bool connection::SendACK </td>
+ <td class="md" nowrap valign="top"> bool connection::MeshCookie </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>host</em>, </td>
+ <td class="mdname" nowrap>&nbsp; <em>targethost</em>, </td>
</tr>
<tr>
<td></td>
@@ -259,8 +346,14 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<tr>
<td></td>
<td></td>
- <td class="md" nowrap>int&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>reply_id</em></td>
+ <td class="md" nowrap>long&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>cookie</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>char *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>servername</em></td>
</tr>
<tr>
<td></td>
@@ -280,37 +373,27 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+Begin an outbound mesh link to another ircd on a network you are already an authenticated member of.
+<p>
</td>
</tr>
</table>
-<a name="a4" doxytag="connection::SendPacket"></a><p>
+<a name="a6" doxytag="connection::RecvPacket"></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"> bool connection::SendPacket </td>
+ <td class="md" nowrap valign="top"> bool connection::RecvPacket </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char *&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>message</em>, </td>
+ <td class="md" nowrap valign="top">std::deque&lt; std::string &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>messages</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>int&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>port</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>long&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>ourkey</em></td>
+ <td class="mdname" nowrap>&nbsp; <em>host</em></td>
</tr>
<tr>
<td></td>
@@ -330,25 +413,27 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
- </td>
+Returns the next available packet and returns true if data is available.
+<p>
+Writes the servername the data came from to 'host'. If no data is available this function returns false. This function will automatically close broken links and reroute pathways, generating split messages on the network. </td>
</tr>
</table>
-<a name="a6" doxytag="connection::SendSYN"></a><p>
+<a name="a5" doxytag="connection::SendPacket"></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"> bool connection::SendSYN </td>
+ <td class="md" nowrap valign="top"> bool connection::SendPacket </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>host</em>, </td>
+ <td class="mdname" nowrap>&nbsp; <em>message</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
- <td class="md" nowrap>int&nbsp;</td>
- <td class="mdname" nowrap>&nbsp; <em>port</em></td>
+ <td class="md" nowrap>const char *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>host</em></td>
</tr>
<tr>
<td></td>
@@ -368,10 +453,12 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+Send a message to a server by name, if the server is unavailable directly route the packet via another server If the server still cannot be reached after attempting to route the message remotely, returns false.
+<p>
</td>
</tr>
</table>
-<a name="a3" doxytag="connection::TerminateLink"></a><p>
+<a name="a4" doxytag="connection::TerminateLink"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -397,11 +484,13 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+Terminate a link to 'targethost' by calling the <a class="el" href="classircd__connector.html#a13">ircd_connector::CloseConnection</a> method.
+<p>
</td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="m5" doxytag="connection::bytes_in"></a><p>
+<a name="m4" doxytag="connection::bytes_in"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -420,14 +509,16 @@ Inheritance diagram for connection:<p><center><img src="classconnection__inherit
<td>
<p>
+Stats counter for bytes inbound.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00047">47</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00181">181</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m6" doxytag="connection::bytes_out"></a><p>
+<a name="m5" doxytag="connection::bytes_out"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -446,14 +537,16 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
+Stats counter for bytes outbound.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00048">48</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00185">185</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m7" doxytag="connection::cmds_in"></a><p>
+<a name="m6" doxytag="connection::cmds_in"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -472,14 +565,16 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
+Stats counter for commands inbound.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00049">49</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00189">189</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m8" doxytag="connection::cmds_out"></a><p>
+<a name="m7" doxytag="connection::cmds_out"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -498,14 +593,42 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
+Stats counter for commands outbound.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00050">50</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00193">193</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m1" doxytag="connection::fd"></a><p>
+<a name="m18" doxytag="connection::connectors"></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"> std::vector&lt;<a class="el" href="classircd__connector.html">ircd_connector</a>&gt; connection::connectors
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+With a serverrec, this is a list of all established server connections.
+<p>
+With a userrec this is unused.
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00240">240</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="m0" doxytag="connection::fd"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -524,14 +647,16 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
+File descriptor of the connection.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00043">43</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00165">165</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00208">Server::SendTo()</a>, <a class="el" href="servers_8cpp-source.html#l00012">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00213">Server::SendTo()</a>, <a class="el" href="servers_8cpp-source.html#l00012">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m9" doxytag="connection::haspassed"></a><p>
+<a name="m8" doxytag="connection::haspassed"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -550,14 +675,16 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00208">Server::SendT
<td>
<p>
+True if server/user has authenticated, false if otherwise.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00051">51</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00197">197</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m2" doxytag="connection::host"></a><p>
+<a name="m1" doxytag="connection::host"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -576,9 +703,11 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
-
+Hostname of connection.
+<p>
+Not used if this is a serverrec
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00044">44</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+Definition at line <a class="el" href="connection_8h-source.html#l00169">169</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
</tr>
</table>
<a name="m14" doxytag="connection::idle_lastmsg"></a><p>
@@ -600,14 +729,16 @@ Definition at line <a class="el" href="connection_8h-source.html#l00044">44</a>
<td>
<p>
+Time that the connection last sent data, used to calculate idle time.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00056">56</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00223">223</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m4" doxytag="connection::inbuf"></a><p>
+<a name="m3" doxytag="connection::inbuf"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -626,9 +757,11 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
-
+Inbuf of connection.
+<p>
+Only used for userrec
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00046">46</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+Definition at line <a class="el" href="connection_8h-source.html#l00177">177</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
</tr>
</table>
<a name="m16" doxytag="connection::internal_addr"></a><p>
@@ -650,18 +783,20 @@ Definition at line <a class="el" href="connection_8h-source.html#l00046">46</a>
<td>
<p>
+Unused, will be removed in a future alpha/beta.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00058">58</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+Definition at line <a class="el" href="connection_8h-source.html#l00231">231</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
</tr>
</table>
-<a name="m3" doxytag="connection::ip"></a><p>
+<a name="m17" doxytag="connection::internal_port"></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"> long connection::ip
+ <td class="md" nowrap valign="top"> int connection::internal_port
</table>
</td>
</tr>
@@ -674,20 +809,20 @@ Definition at line <a class="el" href="connection_8h-source.html#l00058">58</a>
<td>
<p>
-
+Unused, will be removed in a future alpha/beta.
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00045">45</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
+Definition at line <a class="el" href="connection_8h-source.html#l00235">235</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
</tr>
</table>
-<a name="m0" doxytag="connection::key"></a><p>
+<a name="m2" doxytag="connection::ip"></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"> long connection::key
+ <td class="md" nowrap valign="top"> long connection::ip
</table>
</td>
</tr>
@@ -700,9 +835,13 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
-
+IP of connection.
+<p>
+Reserved for future use.
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00173">173</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00042">42</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
<a name="m12" doxytag="connection::lastping"></a><p>
@@ -724,9 +863,11 @@ Definition at line <a class="el" href="connection_8h-source.html#l00042">42</a>
<td>
<p>
+Time the connection was last pinged.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00054">54</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00215">215</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="servers_8cpp-source.html#l00012">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
@@ -750,14 +891,16 @@ Referenced by <a class="el" href="servers_8cpp-source.html#l00012">serverrec::se
<td>
<p>
+Used by PING checks with clients.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00057">57</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00227">227</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m10" doxytag="connection::port"></a><p>
+<a name="m9" doxytag="connection::port"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -776,14 +919,16 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
-
+Port number For a userrec, this is the port they connected to the network on.
+<p>
+For a serverrec this is the current listening port of the serverrec object.
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00052">52</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00203">203</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="m11" doxytag="connection::registered"></a><p>
+<a name="m10" doxytag="connection::registered"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
@@ -802,9 +947,11 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
+Used by userrec to indicate the registration status of the connection.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00053">53</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00207">207</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
@@ -828,16 +975,44 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userre
<td>
<p>
+Time the connection was created, set in the constructor.
+<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00055">55</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+Definition at line <a class="el" href="connection_8h-source.html#l00219">219</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
<p>
Referenced by <a class="el" href="servers_8cpp-source.html#l00012">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
+<a name="m11" doxytag="connection::state"></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"> short int connection::state
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Reserved for future use.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00211">211</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="connection_8h-source.html">connection.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:59 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:48 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>
diff --git a/docs/module-doc/classconnection__coll__graph.gif b/docs/module-doc/classconnection__coll__graph.gif
index c3e247008..97c4c8ec3 100644
--- a/docs/module-doc/classconnection__coll__graph.gif
+++ b/docs/module-doc/classconnection__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classes.html b/docs/module-doc/classes.html
index 9842e9d97..e54f4d8eb 100644
--- a/docs/module-doc/classes.html
+++ b/docs/module-doc/classes.html
@@ -8,18 +8,18 @@
<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
<hr><h1>InspIRCd Compound Index</h1><table align=center width="95%" border="0" cellspacing="0" cellpadding="0">
<tr><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;A&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classcommand__t.html">command_t</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;F&nbsp;&nbsp;</div></td></tr></table>
-</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;M&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classServer.html">Server</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classAdmin.html">Admin</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classConfigReader.html">ConfigReader</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFileReader.html">FileReader</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classModeParameter.html">ModeParameter</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classserverrec.html">serverrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;B&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classConnectClass.html">ConnectClass</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;H&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classModule.html">Module</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;U&nbsp;&nbsp;</div></td></tr></table>
-</td></tr><tr><td><a class="el" href="classBanItem.html">BanItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classconnection.html">connection</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classHostItem.html">HostItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classModuleFactory.html">ModuleFactory</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classucrec.html">ucrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;C&nbsp;&nbsp;</div></td></tr></table>
-</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;E&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classConfigReader.html">ConfigReader</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classFileReader.html">FileReader</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;M&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classServer.html">Server</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classAdmin.html">Admin</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classConnectClass.html">ConnectClass</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;H&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classModeParameter.html">ModeParameter</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classserverrec.html">serverrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;B&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classconnection.html">connection</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classHostItem.html">HostItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classModule.html">Module</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;U&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classBanItem.html">BanItem</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;E&nbsp;&nbsp;</div></td></tr></table>
</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;I&nbsp;&nbsp;</div></td></tr></table>
-</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;P&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classuserrec.html">userrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classchanrec.html">chanrec</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classExemptItem.html">ExemptItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classInvited.html">Invited</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classpacket.html">packet</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;V&nbsp;&nbsp;</div></td></tr></table>
-</td></tr><tr><td><a class="el" href="classclassbase.html">classbase</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classExtMode.html">ExtMode</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classInviteItem.html">InviteItem</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;S&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classVersion.html">Version</a>&nbsp;&nbsp;&nbsp;</td></tr></table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:45 2004 for InspIRCd by
+</td><td><a class="el" href="classModuleFactory.html">ModuleFactory</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classucrec.html">ucrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;C&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classExemptItem.html">ExemptItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classInvited.html">Invited</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;P&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classuserrec.html">userrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classchanrec.html">chanrec</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classExtMode.html">ExtMode</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classInviteItem.html">InviteItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classpacket.html">packet</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;V&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classclassbase.html">classbase</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;F&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classircd__connector.html">ircd_connector</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;S&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classVersion.html">Version</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classcommand__t.html">command_t</a>&nbsp;&nbsp;&nbsp;</td></tr></table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:44 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>
diff --git a/docs/module-doc/classircd__connector-members.html b/docs/module-doc/classircd__connector-members.html
new file mode 100644
index 000000000..c7163bde6
--- /dev/null
+++ b/docs/module-doc/classircd__connector-members.html
@@ -0,0 +1,41 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>Member List</title>
+<link href="inspircd.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3-rc3 -->
+<center>
+<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
+<hr><h1>ircd_connector Member List</h1>This is the complete list of members for <a class="el" href="classircd__connector.html">ircd_connector</a>, including all inherited members.<table>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#o0">addr</a></td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td><code> [private]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#m0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a0">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a13">CloseConnection</a>()</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#o3">description</a></td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td><code> [private]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#o1">fd</a></td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td><code> [private]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a8">GetDescription</a>()</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a3">GetDescriptor</a>()</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a7">GetServerIP</a>()</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a1">GetServerName</a>()</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a10">GetServerPort</a>()</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a5">GetState</a>()</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#m0">host</a></td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a0">MakeOutboundConnection</a>(char *host, int port)</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#m1">port</a></td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#m2">routes</a></td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#o2">servername</a></td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td><code> [private]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a9">SetDescription</a>(std::string desc)</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a4">SetDescriptor</a>(int fd)</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#c0">SetHostAddress</a>(char *host, int port)</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td><code> [private]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a12">SetHostAndPort</a>(char *host, int port)</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a2">SetServerName</a>(std::string serv)</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a11">SetServerPort</a>(int p)</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#a6">SetState</a>(int state)</td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classircd__connector.html#o4">state</a></td><td><a class="el" href="classircd__connector.html">ircd_connector</a></td><td><code> [private]</code></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:52 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>
+</body>
+</html>
diff --git a/docs/module-doc/classircd__connector.html b/docs/module-doc/classircd__connector.html
new file mode 100644
index 000000000..15ac75abc
--- /dev/null
+++ b/docs/module-doc/classircd__connector.html
@@ -0,0 +1,784 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>ircd_connector class Reference</title>
+<link href="inspircd.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3-rc3 -->
+<center>
+<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
+<hr><h1>ircd_connector Class Reference</h1>Each connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="connection_8h-source.html">connection.h</a>&gt;</code>
+<p>
+Inheritance diagram for ircd_connector:<p><center><img src="classircd__connector__inherit__graph.gif" border="0" usemap="#ircd__connector__inherit__map" alt="Inheritance graph"></center>
+<map name="ircd__connector__inherit__map">
+<area href="classclassbase.html" shape="rect" coords="21,16,88,37" alt="">
+</map>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ircd_connector:<p><center><img src="classircd__connector__coll__graph.gif" border="0" usemap="#ircd__connector__coll__map" alt="Collaboration graph"></center>
+<map name="ircd__connector__coll__map">
+<area href="classclassbase.html" shape="rect" coords="7,107,73,128" alt="">
+</map>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classircd__connector-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a0">MakeOutboundConnection</a> (char *<a class="el" href="classircd__connector.html#m0">host</a>, int <a class="el" href="classircd__connector.html#m1">port</a>)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Create an outbound connection to a listening socket.</em> <a href="#a0"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>std::string&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a1">GetServerName</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Return the servername on this established connection.</em> <a href="#a1"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a2">SetServerName</a> (std::string serv)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Set the server name of this connection.</em> <a href="#a2"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a3">GetDescriptor</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Get the file descriptor associated with this connection.</em> <a href="#a3"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a4">SetDescriptor</a> (int <a class="el" href="classircd__connector.html#o1">fd</a>)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Set the file descriptor for this connection.</em> <a href="#a4"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a5">GetState</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Get the state flags for this connection.</em> <a href="#a5"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a6">SetState</a> (int <a class="el" href="classircd__connector.html#o4">state</a>)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Set the state flags for this connection.</em> <a href="#a6"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>char *&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a7">GetServerIP</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Get the ip address (not servername) associated with this connection.</em> <a href="#a7"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>std::string&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a8">GetDescription</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Get the server description of this connection.</em> <a href="#a8"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a9">SetDescription</a> (std::string desc)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Set the server description of this connection.</em> <a href="#a9"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a10">GetServerPort</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Get the port number being used for this connection If the connection is outbound this will be the remote port otherwise it will be the local port, so it can always be gautanteed as open at the address given in <a class="el" href="classircd__connector.html#a7">GetServerIP()</a>.</em> <a href="#a10"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a11">SetServerPort</a> (int p)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Set the port used by this connection.</em> <a href="#a11"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a12">SetHostAndPort</a> (char *<a class="el" href="classircd__connector.html#m0">host</a>, int <a class="el" href="classircd__connector.html#m1">port</a>)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Set both the host and the port in one operation for this connection.</em> <a href="#a12"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#a13">CloseConnection</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Close the connection by calling close() on its file descriptor This function call updates no other data.</em> <a href="#a13"></a><em></em></font><br><br></td></tr>
+<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
+<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#m0">host</a> [MAXBUF]</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference.</em> <a href="#m0"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#m1">port</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference.</em> <a href="#m1"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>std::vector&lt; std::string &gt;&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#m2">routes</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em><a class="el" href="classServer.html">Server</a> names of servers that this server is linked to So for A-&gt;B-&gt;C, if this was the record for B it would contain A and C whilever both servers are connected to B.</em> <a href="#m2"></a><em></em></font><br><br></td></tr>
+<tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#c0">SetHostAddress</a> (char *<a class="el" href="classircd__connector.html#m0">host</a>, int <a class="el" href="classircd__connector.html#m1">port</a>)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>PRIVATE function to set the host address and port to connect to.</em> <a href="#c0"></a><em></em></font><br><br></td></tr>
+<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
+<tr><td nowrap align=right valign=top>sockaddr_in&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#o0">addr</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Sockaddr of the outbound ip and port.</em> <a href="#o0"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#o1">fd</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>File descriptor of the connection.</em> <a href="#o1"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>std::string&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#o2">servername</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em><a class="el" href="classServer.html">Server</a> name.</em> <a href="#o2"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>std::string&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#o3">description</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em><a class="el" href="classServer.html">Server</a> 'GECOS'.</em> <a href="#o3"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html#o4">state</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>State.</em> <a href="#o4"></a><em></em></font><br><br></td></tr>
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+Each connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds.
+<p>
+A listening socket that accepts server type connections is represented by one class serverrec. Class serverrec will instantiate several objects of type ircd_connector to represent each established connection, inbound or outbound. So, to determine all linked servers you must walk through all the serverrecs that the core defines, and in each one iterate through until you find connection(s) relating to the server you want information on. The core and module API provide functions for this.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00040">40</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.<hr><h2>Member Function Documentation</h2>
+<a name="a13" doxytag="ircd_connector::CloseConnection"></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 ircd_connector::CloseConnection </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Close the connection by calling close() on its file descriptor This function call updates no other data.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a8" doxytag="ircd_connector::GetDescription"></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"> std::string ircd_connector::GetDescription </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the server description of this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a3" doxytag="ircd_connector::GetDescriptor"></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"> int ircd_connector::GetDescriptor </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the file descriptor associated with this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a7" doxytag="ircd_connector::GetServerIP"></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"> char* ircd_connector::GetServerIP </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the ip address (not servername) associated with this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a1" doxytag="ircd_connector::GetServerName"></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"> std::string ircd_connector::GetServerName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Return the servername on this established connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a10" doxytag="ircd_connector::GetServerPort"></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"> int ircd_connector::GetServerPort </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the port number being used for this connection If the connection is outbound this will be the remote port otherwise it will be the local port, so it can always be gautanteed as open at the address given in <a class="el" href="classircd__connector.html#a7">GetServerIP()</a>.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a5" doxytag="ircd_connector::GetState"></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"> int ircd_connector::GetState </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the state flags for this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a0" doxytag="ircd_connector::MakeOutboundConnection"></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"> bool ircd_connector::MakeOutboundConnection </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">char *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>host</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>int&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>port</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Create an outbound connection to a listening socket.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a9" doxytag="ircd_connector::SetDescription"></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 ircd_connector::SetDescription </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>desc</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the server description of this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a4" doxytag="ircd_connector::SetDescriptor"></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 ircd_connector::SetDescriptor </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">int&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>fd</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the file descriptor for this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="c0" doxytag="ircd_connector::SetHostAddress"></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"> bool ircd_connector::SetHostAddress </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">char *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>host</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>int&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>port</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+PRIVATE function to set the host address and port to connect to.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a12" doxytag="ircd_connector::SetHostAndPort"></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"> bool ircd_connector::SetHostAndPort </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">char *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>host</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>int&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>port</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set both the host and the port in one operation for this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a2" doxytag="ircd_connector::SetServerName"></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 ircd_connector::SetServerName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>serv</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the server name of this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a11" doxytag="ircd_connector::SetServerPort"></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 ircd_connector::SetServerPort </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">int&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>p</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the port used by this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<a name="a6" doxytag="ircd_connector::SetState"></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 ircd_connector::SetState </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">int&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>state</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the state flags for this connection.
+<p>
+ </td>
+ </tr>
+</table>
+<hr><h2>Member Data Documentation</h2>
+<a name="o0" doxytag="ircd_connector::addr"></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"> sockaddr_in ircd_connector::addr<code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Sockaddr of the outbound ip and port.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00045">45</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="o3" doxytag="ircd_connector::description"></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"> std::string ircd_connector::description<code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="classServer.html">Server</a> 'GECOS'.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00057">57</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="o1" doxytag="ircd_connector::fd"></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"> int ircd_connector::fd<code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+File descriptor of the connection.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00049">49</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="m0" doxytag="ircd_connector::host"></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"> char ircd_connector::host[MAXBUF]
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00074">74</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="m1" doxytag="ircd_connector::port"></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"> int ircd_connector::port
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00080">80</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="m2" doxytag="ircd_connector::routes"></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"> std::vector&lt;std::string&gt; ircd_connector::routes
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="classServer.html">Server</a> names of servers that this server is linked to So for A-&gt;B-&gt;C, if this was the record for B it would contain A and C whilever both servers are connected to B.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00086">86</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="o2" doxytag="ircd_connector::servername"></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"> std::string ircd_connector::servername<code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="classServer.html">Server</a> name.
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00053">53</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="o4" doxytag="ircd_connector::state"></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"> int ircd_connector::state<code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+State.
+<p>
+STATE_NOAUTH_INBOUND, STATE_NOAUTH_OUTBOUND STATE_SYNC, STATE_DISCONNECTED, STATE_CONNECTED
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00062">62</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="connection_8h-source.html">connection.h</a></ul>
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:52 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>
+</body>
+</html>
diff --git a/docs/module-doc/classircd__connector__coll__graph.gif b/docs/module-doc/classircd__connector__coll__graph.gif
new file mode 100644
index 000000000..09f1acfba
--- /dev/null
+++ b/docs/module-doc/classircd__connector__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classircd__connector__inherit__graph.gif b/docs/module-doc/classircd__connector__inherit__graph.gif
new file mode 100644
index 000000000..00c05386b
--- /dev/null
+++ b/docs/module-doc/classircd__connector__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classpacket.html b/docs/module-doc/classpacket.html
index 2c7e909b4..cb4cafee7 100644
--- a/docs/module-doc/classpacket.html
+++ b/docs/module-doc/classpacket.html
@@ -8,182 +8,12 @@
<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
<hr><h1>packet Class Reference</h1><code>#include &lt;<a class="el" href="connection_8h-source.html">connection.h</a>&gt;</code>
<p>
-Inheritance diagram for packet:<p><center><img src="classpacket__inherit__graph.gif" border="0" usemap="#packet__inherit__map" alt="Inheritance graph"></center>
-<map name="packet__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="7,16,73,37" alt="">
-</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for packet:<p><center><img src="classpacket__coll__graph.gif" border="0" usemap="#packet__coll__map" alt="Collaboration graph"></center>
-<map name="packet__coll__map">
-<area href="classclassbase.html" shape="rect" coords="7,107,73,128" alt="">
-</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classpacket-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
-<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classpacket.html#a0">packet</a> ()</td></tr>
-<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classpacket.html#a1">~packet</a> ()</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classpacket.html#m0">key</a></td></tr>
-<tr><td nowrap align=right valign=top>short int&nbsp;</td><td valign=bottom><a class="el" href="classpacket.html#m1">id</a></td></tr>
-<tr><td nowrap align=right valign=top>short int&nbsp;</td><td valign=bottom><a class="el" href="classpacket.html#m2">type</a></td></tr>
-<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classpacket.html#m3">data</a> [MAXBUF]</td></tr>
-</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a0" doxytag="packet::packet"></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"> packet::packet </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="mdname1" valign="top" nowrap>&nbsp; </td>
- <td class="md" valign="top">)&nbsp;</td>
- <td class="md" nowrap></td>
- </tr>
-
- </table>
- </td>
- </tr>
-</table>
-<table cellspacing=5 cellpadding=0 border=0>
- <tr>
- <td>
- &nbsp;
- </td>
- <td>
-
-<p>
- </td>
- </tr>
-</table>
-<a name="a1" doxytag="packet::~packet"></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"> packet::~packet </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="mdname1" valign="top" nowrap>&nbsp; </td>
- <td class="md" valign="top">)&nbsp;</td>
- <td class="md" nowrap></td>
- </tr>
-
- </table>
- </td>
- </tr>
-</table>
-<table cellspacing=5 cellpadding=0 border=0>
- <tr>
- <td>
- &nbsp;
- </td>
- <td>
-
-<p>
- </td>
- </tr>
-</table>
-<hr><h2>Member Data Documentation</h2>
-<a name="m3" doxytag="packet::data"></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"> char packet::data[MAXBUF]
- </table>
- </td>
- </tr>
-</table>
-<table cellspacing=5 cellpadding=0 border=0>
- <tr>
- <td>
- &nbsp;
- </td>
- <td>
-
-<p>
-
-<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00032">32</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
- </tr>
-</table>
-<a name="m1" doxytag="packet::id"></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"> short int packet::id
- </table>
- </td>
- </tr>
-</table>
-<table cellspacing=5 cellpadding=0 border=0>
- <tr>
- <td>
- &nbsp;
- </td>
- <td>
-
-<p>
-
-<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00030">30</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
- </tr>
-</table>
-<a name="m0" doxytag="packet::key"></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"> long packet::key
- </table>
- </td>
- </tr>
-</table>
-<table cellspacing=5 cellpadding=0 border=0>
- <tr>
- <td>
- &nbsp;
- </td>
- <td>
-
-<p>
-
-<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00029">29</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
- </tr>
-</table>
-<a name="m2" doxytag="packet::type"></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"> short int packet::type
- </table>
- </td>
- </tr>
-</table>
-<table cellspacing=5 cellpadding=0 border=0>
- <tr>
- <td>
- &nbsp;
- </td>
- <td>
-
-<p>
-
-<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00031">31</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
- </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="connection_8h-source.html">connection.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:14 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:54 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>
diff --git a/docs/module-doc/classserverrec-members.html b/docs/module-doc/classserverrec-members.html
index ddafd30b9..7a6a83bca 100644
--- a/docs/module-doc/classserverrec-members.html
+++ b/docs/module-doc/classserverrec-members.html
@@ -7,47 +7,52 @@
<center>
<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
<hr><h1>serverrec Member List</h1>This is the complete list of members for <a class="el" href="classserverrec.html">serverrec</a>, including all inherited members.<table>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a8">AddIncoming</a>(int fd, char *targethost, int sourceport)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#m0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a2">BeginLink</a>(char *targethost, int port, char *password)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m5">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m6">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a2">BeginLink</a>(char *targethost, int port, char *password, char *servername, int myport)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m4">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m5">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a0">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m7">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m8">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m6">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m7">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a0">connection</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m18">connectors</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a1">CreateListener</a>(char *host, int p)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m1">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a8">GenKey</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m9">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m8">description</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m0">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a7">FindHost</a>(std::string host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a9">GenKey</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m8">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m5">hops_away</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m2">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m1">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m14">idle_lastmsg</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m4">inbuf</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m3">inbuf</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m16">internal_addr</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m3">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m17">internal_port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m2">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m7">jupiter</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m0">key</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m12">lastping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a3">MeshCookie</a>(char *targethost, int port, long cookie, char *servername)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m0">name</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m15">nping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m4">opercount</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m1">pingtime</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m10">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a5">RecvPacket</a>(char *message, char *host, int &amp;prt, long &amp;theirkey)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m11">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a7">SendACK</a>(char *host, int port, int reply_id)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a4">SendPacket</a>(char *message, char *host, int port, long ourkey)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a6">SendSYN</a>(char *host, int port)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m9">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a6">RecvPacket</a>(std::deque&lt; std::string &gt; &amp;messages, char *host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m10">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a5">SendPacket</a>(char *message, const char *host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#a0">serverrec</a>()</td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#a1">serverrec</a>(char *n, long ver, bool jupe)</td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m13">signon</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a3">TerminateLink</a>(char *targethost)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m11">state</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m9">sync_soon</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a4">TerminateLink</a>(char *targethost)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m3">usercount</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m2">usercount_i</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#m6">version</a></td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classserverrec.html#a2">~serverrec</a>()</td><td><a class="el" href="classserverrec.html">serverrec</a></td><td></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:19 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:55 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>
diff --git a/docs/module-doc/classserverrec.html b/docs/module-doc/classserverrec.html
index fbae629e7..5555cf74b 100644
--- a/docs/module-doc/classserverrec.html
+++ b/docs/module-doc/classserverrec.html
@@ -18,7 +18,7 @@ Inheritance diagram for serverrec:<p><center><img src="classserverrec__inherit__
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for serverrec:<p><center><img src="classserverrec__coll__graph.gif" border="0" usemap="#serverrec__coll__map" alt="Collaboration graph"></center>
<map name="serverrec__coll__map">
-<area href="classconnection.html" shape="rect" coords="197,304,267,326" alt="">
+<area href="classconnection.html" shape="rect" coords="197,312,267,334" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classserverrec-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
@@ -46,6 +46,9 @@ Inheritance diagram for serverrec:<p><center><img src="classserverrec__inherit__
<tr><td>&nbsp;</td><td><font size=-1><em>ircd version</em> <a href="#m6"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classserverrec.html#m7">jupiter</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>is a JUPE server (faked to enforce a server ban)</em> <a href="#m7"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classserverrec.html#m8">description</a> [MAXBUF]</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Description of the server.</em> <a href="#m8"></a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classserverrec.html#m9">sync_soon</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A class that defines the local server or a remote server.
@@ -84,7 +87,7 @@ Constructor.
<p>
Definition at line <a class="el" href="servers_8cpp-source.html#l00012">12</a> of file <a class="el" href="servers_8cpp-source.html">servers.cpp</a>.
<p>
-References <a class="el" href="connection_8h-source.html#l00043">connection::fd</a>, <a class="el" href="servers_8h-source.html#l00040">hops_away</a>, <a class="el" href="servers_8h-source.html#l00046">jupiter</a>, <a class="el" href="connection_8h-source.html#l00054">connection::lastping</a>, <a class="el" href="servers_8h-source.html#l00037">opercount</a>, <a class="el" href="servers_8h-source.html#l00028">pingtime</a>, <a class="el" href="connection_8h-source.html#l00055">connection::signon</a>, <a class="el" href="servers_8h-source.html#l00034">usercount</a>, <a class="el" href="servers_8h-source.html#l00031">usercount_i</a>, and <a class="el" href="servers_8h-source.html#l00043">version</a>.
+References <a class="el" href="connection_8h-source.html#l00165">connection::fd</a>, <a class="el" href="servers_8h-source.html#l00040">hops_away</a>, <a class="el" href="servers_8h-source.html#l00046">jupiter</a>, <a class="el" href="connection_8h-source.html#l00215">connection::lastping</a>, <a class="el" href="servers_8h-source.html#l00037">opercount</a>, <a class="el" href="servers_8h-source.html#l00028">pingtime</a>, <a class="el" href="connection_8h-source.html#l00219">connection::signon</a>, <a class="el" href="servers_8h-source.html#l00052">sync_soon</a>, <a class="el" href="servers_8h-source.html#l00034">usercount</a>, <a class="el" href="servers_8h-source.html#l00031">usercount_i</a>, and <a class="el" href="servers_8h-source.html#l00043">version</a>.
<p>
<div class="fragment"><pre>00013 {
00014 strcpy(name,<span class="stringliteral">""</span>);
@@ -94,8 +97,9 @@ References <a class="el" href="connection_8h-source.html#l00043">connection::fd<
00018 <a class="code" href="classserverrec.html#m5">hops_away</a> = 1;
00019 <a class="code" href="classconnection.html#m13">signon</a> = time(NULL);
00020 <a class="code" href="classserverrec.html#m7">jupiter</a> = <span class="keyword">false</span>;
-00021 <a class="code" href="classconnection.html#m1">fd</a> = 0;
-00022 }
+00021 <a class="code" href="classconnection.html#m0">fd</a> = 0;
+00022 <a class="code" href="classserverrec.html#m9">sync_soon</a> = <span class="keyword">false</span>;
+00023 }
</pre></div> </td>
</tr>
</table>
@@ -144,20 +148,21 @@ Constructor which initialises some of the main variables.
<p>
<p>
-Definition at line <a class="el" href="servers_8cpp-source.html#l00029">29</a> of file <a class="el" href="servers_8cpp-source.html">servers.cpp</a>.
-<p>
-References <a class="el" href="connection_8h-source.html#l00043">connection::fd</a>, <a class="el" href="servers_8h-source.html#l00040">hops_away</a>, <a class="el" href="servers_8h-source.html#l00046">jupiter</a>, <a class="el" href="connection_8h-source.html#l00054">connection::lastping</a>, <a class="el" href="servers_8h-source.html#l00037">opercount</a>, <a class="el" href="connection_8h-source.html#l00055">connection::signon</a>, <a class="el" href="servers_8h-source.html#l00034">usercount</a>, <a class="el" href="servers_8h-source.html#l00031">usercount_i</a>, and <a class="el" href="servers_8h-source.html#l00043">version</a>.
-<p>
-<div class="fragment"><pre>00030 {
-00031 strcpy(name,n);
-00032 <a class="code" href="classconnection.html#m12">lastping</a> = time(NULL);
-00033 <a class="code" href="classserverrec.html#m2">usercount_i</a> = <a class="code" href="classserverrec.html#m3">usercount</a> = <a class="code" href="classserverrec.html#m4">opercount</a> = 0;
-00034 <a class="code" href="classserverrec.html#m6">version</a> = ver;
-00035 <a class="code" href="classserverrec.html#m5">hops_away</a> = 1;
-00036 <a class="code" href="classconnection.html#m13">signon</a> = time(NULL);
-00037 <a class="code" href="classserverrec.html#m7">jupiter</a> = jupe;
-00038 <a class="code" href="classconnection.html#m1">fd</a> = 0;
-00039 }
+Definition at line <a class="el" href="servers_8cpp-source.html#l00030">30</a> of file <a class="el" href="servers_8cpp-source.html">servers.cpp</a>.
+<p>
+References <a class="el" href="connection_8h-source.html#l00165">connection::fd</a>, <a class="el" href="servers_8h-source.html#l00040">hops_away</a>, <a class="el" href="servers_8h-source.html#l00046">jupiter</a>, <a class="el" href="connection_8h-source.html#l00215">connection::lastping</a>, <a class="el" href="servers_8h-source.html#l00037">opercount</a>, <a class="el" href="connection_8h-source.html#l00219">connection::signon</a>, <a class="el" href="servers_8h-source.html#l00052">sync_soon</a>, <a class="el" href="servers_8h-source.html#l00034">usercount</a>, <a class="el" href="servers_8h-source.html#l00031">usercount_i</a>, and <a class="el" href="servers_8h-source.html#l00043">version</a>.
+<p>
+<div class="fragment"><pre>00031 {
+00032 strcpy(name,n);
+00033 <a class="code" href="classconnection.html#m12">lastping</a> = time(NULL);
+00034 <a class="code" href="classserverrec.html#m2">usercount_i</a> = <a class="code" href="classserverrec.html#m3">usercount</a> = <a class="code" href="classserverrec.html#m4">opercount</a> = 0;
+00035 <a class="code" href="classserverrec.html#m6">version</a> = ver;
+00036 <a class="code" href="classserverrec.html#m5">hops_away</a> = 1;
+00037 <a class="code" href="classconnection.html#m13">signon</a> = time(NULL);
+00038 <a class="code" href="classserverrec.html#m7">jupiter</a> = jupe;
+00039 <a class="code" href="classconnection.html#m0">fd</a> = 0;
+00040 <a class="code" href="classserverrec.html#m9">sync_soon</a> = <span class="keyword">false</span>;
+00041 }
</pre></div> </td>
</tr>
</table>
@@ -190,14 +195,40 @@ Destructor.
<p>
<p>
-Definition at line <a class="el" href="servers_8cpp-source.html#l00025">25</a> of file <a class="el" href="servers_8cpp-source.html">servers.cpp</a>.
+Definition at line <a class="el" href="servers_8cpp-source.html#l00026">26</a> of file <a class="el" href="servers_8cpp-source.html">servers.cpp</a>.
<p>
-<div class="fragment"><pre>00026 {
-00027 }
+<div class="fragment"><pre>00027 {
+00028 }
</pre></div> </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
+<a name="m8" doxytag="serverrec::description"></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"> char serverrec::description[MAXBUF]
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Description of the server.
+<p>
+
+<p>
+Definition at line <a class="el" href="servers_8h-source.html#l00050">50</a> of file <a class="el" href="servers_8h-source.html">servers.h</a>. </td>
+ </tr>
+</table>
<a name="m5" doxytag="serverrec::hops_away"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -336,6 +367,32 @@ Definition at line <a class="el" href="servers_8h-source.html#l00028">28</a> of
Referenced by <a class="el" href="servers_8cpp-source.html#l00012">serverrec()</a>. </td>
</tr>
</table>
+<a name="m9" doxytag="serverrec::sync_soon"></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"> bool serverrec::sync_soon
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="servers_8h-source.html#l00052">52</a> of file <a class="el" href="servers_8h-source.html">servers.h</a>.
+<p>
+Referenced by <a class="el" href="servers_8cpp-source.html#l00012">serverrec()</a>. </td>
+ </tr>
+</table>
<a name="m3" doxytag="serverrec::usercount"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -422,7 +479,7 @@ Referenced by <a class="el" href="servers_8cpp-source.html#l00012">serverrec()</
</table>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="servers_8h-source.html">servers.h</a><li><a class="el" href="servers_8cpp-source.html">servers.cpp</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:19 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:55 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>
diff --git a/docs/module-doc/classserverrec__coll__graph.gif b/docs/module-doc/classserverrec__coll__graph.gif
index e00af729c..1f5d00b4a 100644
--- a/docs/module-doc/classserverrec__coll__graph.gif
+++ b/docs/module-doc/classserverrec__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classucrec-members.html b/docs/module-doc/classucrec-members.html
index cb1eeb7f2..02591bacc 100644
--- a/docs/module-doc/classucrec-members.html
+++ b/docs/module-doc/classucrec-members.html
@@ -14,7 +14,7 @@
<tr bgcolor="#f0f0f0"><td><a class="el" href="classucrec.html#a0">ucrec</a>()</td><td><a class="el" href="classucrec.html">ucrec</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classucrec.html#a1">~ucrec</a>()</td><td><a class="el" href="classucrec.html">ucrec</a></td><td><code> [inline, virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:21 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:56 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>
diff --git a/docs/module-doc/classucrec.html b/docs/module-doc/classucrec.html
index 2376f8459..f8d794497 100644
--- a/docs/module-doc/classucrec.html
+++ b/docs/module-doc/classucrec.html
@@ -157,12 +157,14 @@ Contains a bitmask of the UCMODE_OP ...
<p>
UCMODE_FOUNDER values. If this value is zero, the user has no privilages upon the channel.
<p>
-Definition at line <a class="el" href="channels_8h-source.html#l00197">197</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
+Definition at line <a class="el" href="channels_8h-source.html#l00197">197</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
+<p>
+Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="channels_8h-source.html">channels.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:21 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:56 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>
diff --git a/docs/module-doc/classuserrec-members.html b/docs/module-doc/classuserrec-members.html
index f4a75fb0e..3790c668a 100644
--- a/docs/module-doc/classuserrec-members.html
+++ b/docs/module-doc/classuserrec-members.html
@@ -7,55 +7,58 @@
<center>
<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
<hr><h1>userrec Member List</h1>This is the complete list of members for <a class="el" href="classuserrec.html">userrec</a>, including all inherited members.<table>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a8">AddIncoming</a>(int fd, char *targethost, int sourceport)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#m0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m7">awaymsg</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a2">BeginLink</a>(char *targethost, int port, char *password)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m5">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m6">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m9">carryover</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a2">BeginLink</a>(char *targethost, int port, char *password, char *servername, int myport)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m4">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m5">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m5">chans</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a0">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m7">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m8">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m6">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m7">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a0">connection</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m18">connectors</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a1">CreateListener</a>(char *host, int p)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m2">dhost</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m1">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m0">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a7">FindHost</a>(std::string host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m9">flood</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m3">fullname</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a8">GenKey</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a9">GenKey</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#a2">GetFullHost</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#a3">GetFullRealHost</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m9">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m2">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m8">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m1">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m1">ident</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m14">idle_lastmsg</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m4">inbuf</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m3">inbuf</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m16">internal_addr</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m17">internal_port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#o0">invites</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [private]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#a5">InviteTo</a>(char *channel)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m3">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m2">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#a4">IsInvited</a>(char *channel)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m0">key</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m12">lastping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a3">MeshCookie</a>(char *targethost, int port, long cookie, char *servername)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m4">modes</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m0">nick</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m15">nping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m10">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a5">RecvPacket</a>(char *message, char *host, int &amp;prt, long &amp;theirkey)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m11">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m9">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a6">RecvPacket</a>(std::deque&lt; std::string &gt; &amp;messages, char *host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m10">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#a6">RemoveInvite</a>(char *channel)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m8">result</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a7">SendACK</a>(char *host, int port, int reply_id)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a4">SendPacket</a>(char *message, char *host, int port, long ourkey)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a6">SendSYN</a>(char *host, int port)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a5">SendPacket</a>(char *message, const char *host)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m6">server</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m13">signon</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a3">TerminateLink</a>(char *targethost)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#m11">state</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr bgcolor="#f0f0f0"><td><a class="el" href="classconnection.html#a4">TerminateLink</a>(char *targethost)</td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#m10">timeout</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#a0">userrec</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classclassbase.html#a1">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
<tr bgcolor="#f0f0f0"><td><a class="el" href="classuserrec.html#a1">~userrec</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [inline, virtual]</code></td></tr>
-</table><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:23 2004 for InspIRCd by
+</table><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:56 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>
diff --git a/docs/module-doc/classuserrec.html b/docs/module-doc/classuserrec.html
index 5270e6a4e..f85539459 100644
--- a/docs/module-doc/classuserrec.html
+++ b/docs/module-doc/classuserrec.html
@@ -18,8 +18,8 @@ Inheritance diagram for userrec:<p><center><img src="classuserrec__inherit__grap
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for userrec:<p><center><img src="classuserrec__coll__graph.gif" border="0" usemap="#userrec__coll__map" alt="Collaboration graph"></center>
<map name="userrec__coll__map">
-<area href="classconnection.html" shape="rect" coords="136,203,205,224" alt="">
-<area href="classucrec.html" shape="rect" coords="447,203,492,224" alt="">
+<area href="classconnection.html" shape="rect" coords="204,336,273,357" alt="">
+<area href="classucrec.html" shape="rect" coords="216,595,261,616" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classuserrec-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
@@ -54,8 +54,10 @@ Inheritance diagram for userrec:<p><center><img src="classuserrec__inherit__grap
<tr><td>&nbsp;</td><td><font size=-1><em>The user's away message.</em> <a href="#m7"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classuserrec.html#m8">result</a> [256]</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Stores the result of the last GetFullHost or GetRealHost call.</em> <a href="#m8"></a><em></em></font><br><br></td></tr>
-<tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classuserrec.html#m9">carryover</a> [MAXBUF]</td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classuserrec.html#m9">flood</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Number of lines the user can place into the buffer (up to the global NetBufferSize bytes) before they are disconnected for excess flood.</em> <a href="#m9"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>unsigned long&nbsp;</td><td valign=bottom><a class="el" href="classuserrec.html#m10">timeout</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Number of seconds this user is given to send USER/NICK If they do not send their details in this time limit they will be disconnected.</em> <a href="#m10"></a><em></em></font><br><br></td></tr>
<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="users_8h.html#a6">InvitedList</a>&nbsp;</td><td valign=bottom><a class="el" href="classuserrec.html#o0">invites</a></td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>A list of channels the user has a pending invite to.</em> <a href="#o0"></a><em></em></font><br><br></td></tr>
@@ -67,7 +69,7 @@ Everything about a connection is stored here primarily, from the user's socket I
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00066">66</a> of file <a class="el" href="users_8h-source.html">users.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+Definition at line <a class="el" href="users_8h-source.html#l00078">78</a> of file <a class="el" href="users_8h-source.html">users.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="userrec::userrec"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
@@ -97,12 +99,12 @@ Definition at line <a class="el" href="users_8h-source.html#l00066">66</a> of fi
<p>
Definition at line <a class="el" href="users_8cpp-source.html#l00011">11</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="connection_8h-source.html#l00047">connection::bytes_in</a>, <a class="el" href="connection_8h-source.html#l00048">connection::bytes_out</a>, <a class="el" href="channels_8h-source.html#l00202">ucrec::channel</a>, <a class="el" href="users_8h-source.html#l00100">chans</a>, <a class="el" href="connection_8h-source.html#l00049">connection::cmds_in</a>, <a class="el" href="connection_8h-source.html#l00050">connection::cmds_out</a>, <a class="el" href="connection_8h-source.html#l00043">connection::fd</a>, <a class="el" href="connection_8h-source.html#l00051">connection::haspassed</a>, <a class="el" href="connection_8h-source.html#l00056">connection::idle_lastmsg</a>, <a class="el" href="users_8h-source.html#l00072">invites</a>, <a class="el" href="connection_8h-source.html#l00045">connection::ip</a>, <a class="el" href="connection_8h-source.html#l00054">connection::lastping</a>, <a class="el" href="connection_8h-source.html#l00057">connection::nping</a>, <a class="el" href="connection_8h-source.html#l00052">connection::port</a>, <a class="el" href="connection_8h-source.html#l00053">connection::registered</a>, <a class="el" href="connection_8h-source.html#l00055">connection::signon</a>, and <a class="el" href="users_8h-source.html#l00118">timeout</a>.
+References <a class="el" href="connection_8h-source.html#l00181">connection::bytes_in</a>, <a class="el" href="connection_8h-source.html#l00185">connection::bytes_out</a>, <a class="el" href="channels_8h-source.html#l00202">ucrec::channel</a>, <a class="el" href="users_8h-source.html#l00112">chans</a>, <a class="el" href="connection_8h-source.html#l00189">connection::cmds_in</a>, <a class="el" href="connection_8h-source.html#l00193">connection::cmds_out</a>, <a class="el" href="connection_8h-source.html#l00165">connection::fd</a>, <a class="el" href="users_8h-source.html#l00132">flood</a>, <a class="el" href="connection_8h-source.html#l00197">connection::haspassed</a>, <a class="el" href="connection_8h-source.html#l00223">connection::idle_lastmsg</a>, <a class="el" href="users_8h-source.html#l00084">invites</a>, <a class="el" href="connection_8h-source.html#l00173">connection::ip</a>, <a class="el" href="connection_8h-source.html#l00215">connection::lastping</a>, <a class="el" href="connection_8h-source.html#l00227">connection::nping</a>, <a class="el" href="connection_8h-source.html#l00203">connection::port</a>, <a class="el" href="connection_8h-source.html#l00207">connection::registered</a>, <a class="el" href="connection_8h-source.html#l00219">connection::signon</a>, <a class="el" href="users_8h-source.html#l00138">timeout</a>, and <a class="el" href="channels_8h-source.html#l00197">ucrec::uc_modes</a>.
<p>
<div class="fragment"><pre>00012 {
00013 <span class="comment">// the PROPER way to do it, AVOID bzero at *ALL* costs</span>
00014 strcpy(nick,<span class="stringliteral">""</span>);
-00015 <a class="code" href="classconnection.html#m3">ip</a> = 0;
+00015 <a class="code" href="classconnection.html#m2">ip</a> = 0;
00016 <a class="code" href="classuserrec.html#m10">timeout</a> = 0;
00017 strcpy(ident,<span class="stringliteral">""</span>);
00018 strcpy(host,<span class="stringliteral">""</span>);
@@ -112,16 +114,17 @@ References <a class="el" href="connection_8h-source.html#l00047">connection::byt
00022 strcpy(inbuf,<span class="stringliteral">""</span>);
00023 strcpy(server,<span class="stringliteral">""</span>);
00024 strcpy(awaymsg,<span class="stringliteral">""</span>);
-00025 <a class="code" href="classconnection.html#m1">fd</a> = <a class="code" href="classconnection.html#m12">lastping</a> = <a class="code" href="classconnection.html#m13">signon</a> = <a class="code" href="classconnection.html#m14">idle_lastmsg</a> = <a class="code" href="classconnection.html#m15">nping</a> = <a class="code" href="classconnection.html#m11">registered</a> = 0;
-00026 <a class="code" href="classconnection.html#m10">port</a> = <a class="code" href="classconnection.html#m5">bytes_in</a> = <a class="code" href="classconnection.html#m6">bytes_out</a> = <a class="code" href="classconnection.html#m7">cmds_in</a> = <a class="code" href="classconnection.html#m8">cmds_out</a> = 0;
-00027 <a class="code" href="classconnection.html#m9">haspassed</a> = <span class="keyword">false</span>;
+00025 <a class="code" href="classconnection.html#m0">fd</a> = <a class="code" href="classconnection.html#m12">lastping</a> = <a class="code" href="classconnection.html#m13">signon</a> = <a class="code" href="classconnection.html#m14">idle_lastmsg</a> = <a class="code" href="classconnection.html#m15">nping</a> = <a class="code" href="classconnection.html#m10">registered</a> = 0;
+00026 <a class="code" href="classuserrec.html#m9">flood</a> = <a class="code" href="classconnection.html#m9">port</a> = <a class="code" href="classconnection.html#m4">bytes_in</a> = <a class="code" href="classconnection.html#m5">bytes_out</a> = <a class="code" href="classconnection.html#m6">cmds_in</a> = <a class="code" href="classconnection.html#m7">cmds_out</a> = 0;
+00027 <a class="code" href="classconnection.html#m8">haspassed</a> = <span class="keyword">false</span>;
00028 strcpy(result,<span class="stringliteral">""</span>);
00029 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; MAXCHANS; i++)
00030 {
-00031 <a class="code" href="classuserrec.html#m5">chans</a>[i].<a class="code" href="classucrec.html#m1">channel</a> = NULL;
-00032 }
-00033 <a class="code" href="classuserrec.html#o0">invites</a>.clear();
-00034 }
+00031 this-&gt;<a class="code" href="classuserrec.html#m5">chans</a>[i].<a class="code" href="classucrec.html#m1">channel</a> = NULL;
+00032 this-&gt;<a class="code" href="classuserrec.html#m5">chans</a>[i].<a class="code" href="classucrec.html#m0">uc_modes</a> = 0;
+00033 }
+00034 <a class="code" href="classuserrec.html#o0">invites</a>.clear();
+00035 }
</pre></div> </td>
</tr>
</table>
@@ -152,9 +155,9 @@ References <a class="el" href="connection_8h-source.html#l00047">connection::byt
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00122">122</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
+Definition at line <a class="el" href="users_8h-source.html#l00142">142</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
<p>
-<div class="fragment"><pre>00122 { }
+<div class="fragment"><pre>00142 { }
</pre></div> </td>
</tr>
</table>
@@ -188,14 +191,14 @@ Returns the full displayed host of the user This member function returns the hos
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00038">38</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+Definition at line <a class="el" href="users_8cpp-source.html#l00039">39</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00114">result</a>.
+References <a class="el" href="users_8h-source.html#l00126">result</a>.
<p>
-<div class="fragment"><pre>00039 {
-00040 sprintf(result,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,dhost);
-00041 <span class="keywordflow">return</span> <a class="code" href="classuserrec.html#m8">result</a>;
-00042 }
+<div class="fragment"><pre>00040 {
+00041 sprintf(result,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,dhost);
+00042 <span class="keywordflow">return</span> <a class="code" href="classuserrec.html#m8">result</a>;
+00043 }
</pre></div> </td>
</tr>
</table>
@@ -228,14 +231,14 @@ Returns the full real host of the user This member function returns the hostname
<p>
If any form of hostname cloaking is in operation, e.g. through a module, then this method will ignore it and return the true hostname.
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00045">45</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+Definition at line <a class="el" href="users_8cpp-source.html#l00046">46</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00114">result</a>.
+References <a class="el" href="users_8h-source.html#l00126">result</a>.
<p>
-<div class="fragment"><pre>00046 {
-00047 sprintf(result,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,host);
-00048 <span class="keywordflow">return</span> <a class="code" href="classuserrec.html#m8">result</a>;
-00049 }
+<div class="fragment"><pre>00047 {
+00048 sprintf(result,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,host);
+00049 <span class="keywordflow">return</span> <a class="code" href="classuserrec.html#m8">result</a>;
+00050 }
</pre></div> </td>
</tr>
</table>
@@ -269,15 +272,15 @@ Adds a channel to a users invite list (invites them to a channel).
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00065">65</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+Definition at line <a class="el" href="users_8cpp-source.html#l00066">66</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00028">Invited::channel</a>, and <a class="el" href="users_8h-source.html#l00072">invites</a>.
+References <a class="el" href="users_8h-source.html#l00028">Invited::channel</a>, and <a class="el" href="users_8h-source.html#l00084">invites</a>.
<p>
-<div class="fragment"><pre>00066 {
-00067 <a class="code" href="classInvited.html">Invited</a> i;
-00068 strcpy(i.<a class="code" href="classInvited.html#m0">channel</a>,channel);
-00069 <a class="code" href="classuserrec.html#o0">invites</a>.push_back(i);
-00070 }
+<div class="fragment"><pre>00067 {
+00068 <a class="code" href="classInvited.html">Invited</a> i;
+00069 strcpy(i.<a class="code" href="classInvited.html#m0">channel</a>,channel);
+00070 <a class="code" href="classuserrec.html#o0">invites</a>.push_back(i);
+00071 }
</pre></div> </td>
</tr>
</table>
@@ -311,22 +314,22 @@ Returns true if a user is invited to a channel.
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00051">51</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+Definition at line <a class="el" href="users_8cpp-source.html#l00052">52</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00072">invites</a>.
+References <a class="el" href="users_8h-source.html#l00084">invites</a>.
<p>
-<div class="fragment"><pre>00052 {
-00053 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#o0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#o0">invites</a>.end(); i++)
-00054 {
-00055 <span class="keywordflow">if</span> (i-&gt;channel) {
-00056 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
-00057 {
-00058 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00059 }
-00060 }
-00061 }
-00062 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00063 }
+<div class="fragment"><pre>00053 {
+00054 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#o0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#o0">invites</a>.end(); i++)
+00055 {
+00056 <span class="keywordflow">if</span> (i-&gt;channel) {
+00057 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
+00058 {
+00059 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00060 }
+00061 }
+00062 }
+00063 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00064 }
</pre></div> </td>
</tr>
</table>
@@ -360,26 +363,30 @@ Removes a channel from a users invite list.
<p>
This member function is called on successfully joining an invite only channel to which the user has previously been invited, to clear the invitation.
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00072">72</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
-<p>
-References <a class="el" href="users_8h-source.html#l00072">invites</a>.
-<p>
-<div class="fragment"><pre>00073 {
-00074 log(DEBUG,<span class="stringliteral">"Removing invites"</span>);
-00075 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o0">invites</a>.size())
-00076 {
-00077 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#o0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#o0">invites</a>.end(); i++)
-00078 {
-00079 <span class="keywordflow">if</span> (i-&gt;channel) {
-00080 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
-00081 {
-00082 <a class="code" href="classuserrec.html#o0">invites</a>.erase(i);
-00083 <span class="keywordflow">return</span>;
-00084 }
-00085 }
-00086 }
-00087 }
-00088 }
+Definition at line <a class="el" href="users_8cpp-source.html#l00073">73</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+<p>
+References <a class="el" href="users_8h-source.html#l00084">invites</a>.
+<p>
+<div class="fragment"><pre>00074 {
+00075 log(DEBUG,<span class="stringliteral">"Removing invites"</span>);
+00076 <span class="keywordflow">if</span> (channel)
+00077 {
+00078 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o0">invites</a>.size())
+00079 {
+00080 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#o0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#o0">invites</a>.end(); i++)
+00081 {
+00082 <span class="keywordflow">if</span> (i-&gt;channel)
+00083 {
+00084 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
+00085 {
+00086 <a class="code" href="classuserrec.html#o0">invites</a>.erase(i);
+00087 <span class="keywordflow">return</span>;
+00088 }
+00089 }
+00090 }
+00091 }
+00092 }
+00093 }
</pre></div> </td>
</tr>
</table>
@@ -407,16 +414,16 @@ The user's away message.
<p>
If this string is empty, the user is not marked as away.
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00109">109</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00121">121</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="m9" doxytag="userrec::carryover"></a><p>
+<a name="m5" doxytag="userrec::chans"></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"> char userrec::carryover[MAXBUF]
+ <td class="md" nowrap valign="top"> <a class="el" href="classucrec.html">ucrec</a> userrec::chans[MAXCHANS]
</table>
</td>
</tr>
@@ -431,16 +438,18 @@ Definition at line <a class="el" href="users_8h-source.html#l00109">109</a> of f
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00116">116</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00112">112</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
+<p>
+Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec()</a>. </td>
</tr>
</table>
-<a name="m5" doxytag="userrec::chans"></a><p>
+<a name="m2" doxytag="userrec::dhost"></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"> <a class="el" href="classucrec.html">ucrec</a> userrec::chans[MAXCHANS]
+ <td class="md" nowrap valign="top"> char userrec::dhost[256]
</table>
</td>
</tr>
@@ -453,20 +462,20 @@ Definition at line <a class="el" href="users_8h-source.html#l00116">116</a> of f
<td>
<p>
-
+The host displayed to non-opers (used for cloaking etc).
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00100">100</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
+This usually matches the value of <a class="el" href="classconnection.html#m1">userrec::host</a>.
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec()</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00100">100</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="m2" doxytag="userrec::dhost"></a><p>
+<a name="m9" doxytag="userrec::flood"></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"> char userrec::dhost[256]
+ <td class="md" nowrap valign="top"> int userrec::flood
</table>
</td>
</tr>
@@ -479,11 +488,13 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec()</a>.
<td>
<p>
-The host displayed to non-opers (used for cloaking etc).
+Number of lines the user can place into the buffer (up to the global NetBufferSize bytes) before they are disconnected for excess flood.
<p>
-This usually matches the value of <a class="el" href="classconnection.html#m2">userrec::host</a>.
+
+<p>
+Definition at line <a class="el" href="users_8h-source.html#l00132">132</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00088">88</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec()</a>. </td>
</tr>
</table>
<a name="m3" doxytag="userrec::fullname"></a><p>
@@ -509,7 +520,7 @@ The users full name.
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00092">92</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00104">104</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
<a name="m1" doxytag="userrec::ident"></a><p>
@@ -535,7 +546,7 @@ The users ident reply.
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00083">83</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00095">95</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
<a name="o0" doxytag="userrec::invites"></a><p>
@@ -561,9 +572,9 @@ A list of channels the user has a pending invite to.
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00072">72</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
+Definition at line <a class="el" href="users_8h-source.html#l00084">84</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00065">InviteTo()</a>, <a class="el" href="users_8cpp-source.html#l00051">IsInvited()</a>, <a class="el" href="users_8cpp-source.html#l00072">RemoveInvite()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00066">InviteTo()</a>, <a class="el" href="users_8cpp-source.html#l00052">IsInvited()</a>, <a class="el" href="users_8cpp-source.html#l00073">RemoveInvite()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec()</a>. </td>
</tr>
</table>
<a name="m4" doxytag="userrec::modes"></a><p>
@@ -589,7 +600,7 @@ The user's mode string.
<p>
This may contain any of the following RFC characters: o, w, s, i Your module may define other mode characters as it sees fit.
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00098">98</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00110">110</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
<a name="m0" doxytag="userrec::nick"></a><p>
@@ -615,7 +626,9 @@ The users nickname.
<p>
An invalid nickname indicates an unregistered connection prior to the NICK command.
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00079">79</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00091">91</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
+<p>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00172">Server::QuitUser()</a>. </td>
</tr>
</table>
<a name="m8" doxytag="userrec::result"></a><p>
@@ -641,9 +654,9 @@ Stores the result of the last GetFullHost or GetRealHost call.
<p>
You may use this to increase the speed of use of this class.
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00114">114</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
+Definition at line <a class="el" href="users_8h-source.html#l00126">126</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00038">GetFullHost()</a>, and <a class="el" href="users_8cpp-source.html#l00045">GetFullRealHost()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00039">GetFullHost()</a>, and <a class="el" href="users_8cpp-source.html#l00046">GetFullRealHost()</a>. </td>
</tr>
</table>
<a name="m6" doxytag="userrec::server"></a><p>
@@ -669,7 +682,7 @@ The server the user is connected to.
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00104">104</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00116">116</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
<a name="m10" doxytag="userrec::timeout"></a><p>
@@ -691,16 +704,18 @@ Definition at line <a class="el" href="users_8h-source.html#l00104">104</a> of f
<td>
<p>
+Number of seconds this user is given to send USER/NICK If they do not send their details in this time limit they will be disconnected.
+<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00118">118</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
+Definition at line <a class="el" href="users_8h-source.html#l00138">138</a> of file <a class="el" href="users_8h-source.html">users.h</a>.
<p>
Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec()</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="users_8h-source.html">users.h</a><li><a class="el" href="users_8cpp-source.html">users.cpp</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:23 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:56 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>
diff --git a/docs/module-doc/classuserrec__coll__graph.gif b/docs/module-doc/classuserrec__coll__graph.gif
index de3b9bb77..3c36e05ec 100644
--- a/docs/module-doc/classuserrec__coll__graph.gif
+++ b/docs/module-doc/classuserrec__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/connection_8h-source.html b/docs/module-doc/connection_8h-source.html
index 13f3b5169..d0c8b9ff6 100644
--- a/docs/module-doc/connection_8h-source.html
+++ b/docs/module-doc/connection_8h-source.html
@@ -21,65 +21,142 @@
00013 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
00014 <span class="preprocessor">#include &lt;errno.h&gt;</span>
00015 <span class="preprocessor">#include &lt;time.h&gt;</span>
-00016
-00017 <span class="preprocessor">#ifndef __CONNECTION_H__</span>
-00018 <span class="preprocessor"></span><span class="preprocessor">#define __CONNECTION_H__</span>
-00019 <span class="preprocessor"></span>
-<a name="l00020"></a><a class="code" href="connection_8h.html#a0">00020</a> <span class="preprocessor">#define PT_SYN_ONLY 0</span>
-<a name="l00021"></a><a class="code" href="connection_8h.html#a1">00021</a> <span class="preprocessor"></span><span class="preprocessor">#define PT_ACK_ONLY 1</span>
-<a name="l00022"></a><a class="code" href="connection_8h.html#a2">00022</a> <span class="preprocessor"></span><span class="preprocessor">#define PT_SYN_WITH_DATA 2</span>
-<a name="l00023"></a><a class="code" href="connection_8h.html#a3">00023</a> <span class="preprocessor"></span><span class="preprocessor">#define PT_KEY_EXCHANGE 3</span>
-00024 <span class="preprocessor"></span>
-00025
-<a name="l00026"></a><a class="code" href="classpacket.html">00026</a> <span class="keyword">class </span><a class="code" href="classpacket.html">packet</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00027 {
-00028 <span class="keyword">public</span>:
-<a name="l00029"></a><a class="code" href="classpacket.html#m0">00029</a> <span class="keywordtype">long</span> <a class="code" href="classpacket.html#m0">key</a>;
-<a name="l00030"></a><a class="code" href="classpacket.html#m1">00030</a> <span class="keywordtype">short</span> <span class="keywordtype">int</span> <a class="code" href="classpacket.html#m1">id</a>;
-<a name="l00031"></a><a class="code" href="classpacket.html#m2">00031</a> <span class="keywordtype">short</span> <span class="keywordtype">int</span> <a class="code" href="classpacket.html#m2">type</a>;
-<a name="l00032"></a><a class="code" href="classpacket.html#m3">00032</a> <span class="keywordtype">char</span> <a class="code" href="classpacket.html#m3">data</a>[MAXBUF];
-00033
-00034 <a class="code" href="classpacket.html#a0">packet</a>();
-00035 <a class="code" href="classpacket.html#a1">~packet</a>();
-00036 };
-00037
-00038
-<a name="l00039"></a><a class="code" href="classconnection.html">00039</a> <span class="keyword">class </span><a class="code" href="classconnection.html">connection</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00040 {
-00041 <span class="keyword">public</span>:
-<a name="l00042"></a><a class="code" href="classconnection.html#m0">00042</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m0">key</a>;
-<a name="l00043"></a><a class="code" href="classconnection.html#m1">00043</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#m1">fd</a>; <span class="comment">// file descriptor</span>
-<a name="l00044"></a><a class="code" href="classconnection.html#m2">00044</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#m2">host</a>[256]; <span class="comment">// hostname</span>
-<a name="l00045"></a><a class="code" href="classconnection.html#m3">00045</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m3">ip</a>; <span class="comment">// ipv4 address</span>
-<a name="l00046"></a><a class="code" href="classconnection.html#m4">00046</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#m4">inbuf</a>[MAXBUF]; <span class="comment">// recvQ</span>
-<a name="l00047"></a><a class="code" href="classconnection.html#m5">00047</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m5">bytes_in</a>;
-<a name="l00048"></a><a class="code" href="classconnection.html#m6">00048</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m6">bytes_out</a>;
-<a name="l00049"></a><a class="code" href="classconnection.html#m7">00049</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m7">cmds_in</a>;
-<a name="l00050"></a><a class="code" href="classconnection.html#m8">00050</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m8">cmds_out</a>;
-<a name="l00051"></a><a class="code" href="classconnection.html#m9">00051</a> <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#m9">haspassed</a>;
-<a name="l00052"></a><a class="code" href="classconnection.html#m10">00052</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#m10">port</a>;
-<a name="l00053"></a><a class="code" href="classconnection.html#m11">00053</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#m11">registered</a>;
-<a name="l00054"></a><a class="code" href="classconnection.html#m12">00054</a> time_t <a class="code" href="classconnection.html#m12">lastping</a>;
-<a name="l00055"></a><a class="code" href="classconnection.html#m13">00055</a> time_t <a class="code" href="classconnection.html#m13">signon</a>;
-<a name="l00056"></a><a class="code" href="classconnection.html#m14">00056</a> time_t <a class="code" href="classconnection.html#m14">idle_lastmsg</a>;
-<a name="l00057"></a><a class="code" href="classconnection.html#m15">00057</a> time_t <a class="code" href="classconnection.html#m15">nping</a>;
-<a name="l00058"></a><a class="code" href="classconnection.html#m16">00058</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#m16">internal_addr</a>[1024];
-00059
-00060 <a class="code" href="classconnection.html#a0">connection</a>();
-00061 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a1">CreateListener</a>(<span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> p);
-00062 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a2">BeginLink</a>(<span class="keywordtype">char</span>* targethost, <span class="keywordtype">int</span> port, <span class="keywordtype">char</span>* password);
-00063 <span class="keywordtype">void</span> <a class="code" href="classconnection.html#a3">TerminateLink</a>(<span class="keywordtype">char</span>* targethost);
-00064 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a4">SendPacket</a>(<span class="keywordtype">char</span> *message, <span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> port, <span class="keywordtype">long</span> ourkey);
-00065 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a5">RecvPacket</a>(<span class="keywordtype">char</span> *message, <span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> &amp;prt, <span class="keywordtype">long</span> &amp;theirkey);
-00066 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a6">SendSYN</a>(<span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> port);
-00067 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a7">SendACK</a>(<span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> port, <span class="keywordtype">int</span> reply_id);
-00068 <span class="keywordtype">long</span> <a class="code" href="classconnection.html#a8">GenKey</a>();
-00069 };
-00070
-00071
-00072 <span class="preprocessor">#endif</span>
-00073 <span class="preprocessor"></span>
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+00016 <span class="preprocessor">#include &lt;vector&gt;</span>
+00017 <span class="preprocessor">#include &lt;deque&gt;</span>
+00018
+00019 <span class="preprocessor">#ifndef __CONNECTION_H__</span>
+00020 <span class="preprocessor"></span><span class="preprocessor">#define __CONNECTION_H__</span>
+00021 <span class="preprocessor"></span>
+<a name="l00022"></a><a class="code" href="connection_8h.html#a0">00022</a> <span class="preprocessor">#define STATE_DISCONNECTED 0</span>
+<a name="l00023"></a><a class="code" href="connection_8h.html#a1">00023</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_CONNECTED 1</span>
+<a name="l00024"></a><a class="code" href="connection_8h.html#a2">00024</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_SYNC 2</span>
+<a name="l00025"></a><a class="code" href="connection_8h.html#a3">00025</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_NOAUTH_INBOUND 3</span>
+<a name="l00026"></a><a class="code" href="connection_8h.html#a4">00026</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_NOAUTH_OUTBOUND 4</span>
+00027 <span class="preprocessor"></span>
+<a name="l00040"></a><a class="code" href="classircd__connector.html">00040</a> <span class="keyword">class </span><a class="code" href="classircd__connector.html">ircd_connector</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00041 {
+00042 <span class="keyword">private</span>:
+<a name="l00045"></a><a class="code" href="classircd__connector.html#o0">00045</a> sockaddr_in <a class="code" href="classircd__connector.html#o0">addr</a>;
+00046
+<a name="l00049"></a><a class="code" href="classircd__connector.html#o1">00049</a> <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#o1">fd</a>;
+00050
+<a name="l00053"></a><a class="code" href="classircd__connector.html#o2">00053</a> std::string <a class="code" href="classircd__connector.html#o2">servername</a>;
+00054
+<a name="l00057"></a><a class="code" href="classircd__connector.html#o3">00057</a> std::string <a class="code" href="classircd__connector.html#o3">description</a>;
+00058
+<a name="l00062"></a><a class="code" href="classircd__connector.html#o4">00062</a> <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#o4">state</a>;
+00063
+00066 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#c0">SetHostAddress</a>(<span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> port);
+00067
+00068 <span class="keyword">public</span>:
+00069
+<a name="l00074"></a><a class="code" href="classircd__connector.html#m0">00074</a> <span class="keywordtype">char</span> <a class="code" href="classircd__connector.html#m0">host</a>[MAXBUF];
+00075
+<a name="l00080"></a><a class="code" href="classircd__connector.html#m1">00080</a> <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#m1">port</a>;
+00081
+<a name="l00086"></a><a class="code" href="classircd__connector.html#m2">00086</a> std::vector&lt;std::string&gt; <a class="code" href="classircd__connector.html#m2">routes</a>;
+00087
+00088
+00091 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a0">MakeOutboundConnection</a>(<span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> port);
+00092
+00095 std::string <a class="code" href="classircd__connector.html#a1">GetServerName</a>();
+00096
+00099 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a2">SetServerName</a>(std::string serv);
+00100
+00103 <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#a3">GetDescriptor</a>();
+00104
+00107 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a4">SetDescriptor</a>(<span class="keywordtype">int</span> fd);
+00108
+00111 <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#a5">GetState</a>();
+00112
+00115 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a6">SetState</a>(<span class="keywordtype">int</span> state);
+00116
+00119 <span class="keywordtype">char</span>* <a class="code" href="classircd__connector.html#a7">GetServerIP</a>();
+00120
+00123 std::string <a class="code" href="classircd__connector.html#a8">GetDescription</a>();
+00124
+00127 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a9">SetDescription</a>(std::string desc);
+00128
+00134 <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#a10">GetServerPort</a>();
+00135
+00138 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a11">SetServerPort</a>(<span class="keywordtype">int</span> p);
+00139
+00142 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a12">SetHostAndPort</a>(<span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> port);
+00143
+00147 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a13">CloseConnection</a>();
+00148 };
+00149
+00150
+<a name="l00151"></a><a class="code" href="classpacket.html">00151</a> <span class="keyword">class </span><a class="code" href="classpacket.html">packet</a>
+00152 {
+00156 };
+00157
+<a name="l00160"></a><a class="code" href="classconnection.html">00160</a> <span class="keyword">class </span><a class="code" href="classconnection.html">connection</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00161 {
+00162 <span class="keyword">public</span>:
+<a name="l00165"></a><a class="code" href="classconnection.html#m0">00165</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#m0">fd</a>;
+00166
+<a name="l00169"></a><a class="code" href="classconnection.html#m1">00169</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#m1">host</a>[256];
+00170
+<a name="l00173"></a><a class="code" href="classconnection.html#m2">00173</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m2">ip</a>;
+00174
+<a name="l00177"></a><a class="code" href="classconnection.html#m3">00177</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#m3">inbuf</a>[MAXBUF];
+00178
+<a name="l00181"></a><a class="code" href="classconnection.html#m4">00181</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m4">bytes_in</a>;
+00182
+<a name="l00185"></a><a class="code" href="classconnection.html#m5">00185</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m5">bytes_out</a>;
+00186
+<a name="l00189"></a><a class="code" href="classconnection.html#m6">00189</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m6">cmds_in</a>;
+00190
+<a name="l00193"></a><a class="code" href="classconnection.html#m7">00193</a> <span class="keywordtype">long</span> <a class="code" href="classconnection.html#m7">cmds_out</a>;
+00194
+<a name="l00197"></a><a class="code" href="classconnection.html#m8">00197</a> <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#m8">haspassed</a>;
+00198
+<a name="l00203"></a><a class="code" href="classconnection.html#m9">00203</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#m9">port</a>;
+00204
+<a name="l00207"></a><a class="code" href="classconnection.html#m10">00207</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#m10">registered</a>;
+00208
+<a name="l00211"></a><a class="code" href="classconnection.html#m11">00211</a> <span class="keywordtype">short</span> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#m11">state</a>;
+00212
+<a name="l00215"></a><a class="code" href="classconnection.html#m12">00215</a> time_t <a class="code" href="classconnection.html#m12">lastping</a>;
+00216
+<a name="l00219"></a><a class="code" href="classconnection.html#m13">00219</a> time_t <a class="code" href="classconnection.html#m13">signon</a>;
+00220
+<a name="l00223"></a><a class="code" href="classconnection.html#m14">00223</a> time_t <a class="code" href="classconnection.html#m14">idle_lastmsg</a>;
+00224
+<a name="l00227"></a><a class="code" href="classconnection.html#m15">00227</a> time_t <a class="code" href="classconnection.html#m15">nping</a>;
+00228
+<a name="l00231"></a><a class="code" href="classconnection.html#m16">00231</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#m16">internal_addr</a>[1024];
+00232
+<a name="l00235"></a><a class="code" href="classconnection.html#m17">00235</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#m17">internal_port</a>;
+00236
+<a name="l00240"></a><a class="code" href="classconnection.html#m18">00240</a> std::vector&lt;ircd_connector&gt; <a class="code" href="classconnection.html#m18">connectors</a>;
+00241
+00244 <a class="code" href="classconnection.html#a0">connection</a>();
+00245
+00248 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a1">CreateListener</a>(<span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> p);
+00249
+00252 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a2">BeginLink</a>(<span class="keywordtype">char</span>* targethost, <span class="keywordtype">int</span> port, <span class="keywordtype">char</span>* password, <span class="keywordtype">char</span>* servername, <span class="keywordtype">int</span> myport);
+00253
+00256 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a3">MeshCookie</a>(<span class="keywordtype">char</span>* targethost, <span class="keywordtype">int</span> port, <span class="keywordtype">long</span> cookie, <span class="keywordtype">char</span>* servername);
+00257
+00260 <span class="keywordtype">void</span> <a class="code" href="classconnection.html#a4">TerminateLink</a>(<span class="keywordtype">char</span>* targethost);
+00261
+00265 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a5">SendPacket</a>(<span class="keywordtype">char</span> *message, <span class="keyword">const</span> <span class="keywordtype">char</span>* host);
+00266
+00271 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a6">RecvPacket</a>(std::deque&lt;std::string&gt; &amp;messages, <span class="keywordtype">char</span>* host);
+00272
+00275 <a class="code" href="classircd__connector.html">ircd_connector</a>* <a class="code" href="classconnection.html#a7">FindHost</a>(std::string host);
+00276
+00280 <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#a8">AddIncoming</a>(<span class="keywordtype">int</span> fd,<span class="keywordtype">char</span>* targethost, <span class="keywordtype">int</span> sourceport);
+00281
+00284 <span class="keywordtype">long</span> <a class="code" href="classconnection.html#a9">GenKey</a>();
+00285 };
+00286
+00287
+00288 <span class="preprocessor">#endif</span>
+00289 <span class="preprocessor"></span>
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/connection_8h.html b/docs/module-doc/connection_8h.html
index c476a99b5..e15b987c6 100644
--- a/docs/module-doc/connection_8h.html
+++ b/docs/module-doc/connection_8h.html
@@ -17,6 +17,8 @@
<code>#include &lt;unistd.h&gt;</code><br>
<code>#include &lt;errno.h&gt;</code><br>
<code>#include &lt;time.h&gt;</code><br>
+<code>#include &lt;vector&gt;</code><br>
+<code>#include &lt;deque&gt;</code><br>
<p>
Include dependency graph for connection.h:<p><center><img src="connection_8h__incl.gif" border="0" usemap="#connection.h_map" alt="Include dependency graph"></center>
@@ -38,21 +40,25 @@ This graph shows which files directly or indirectly include this file:<p><center
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
<tr><td nowrap align=right valign=top>class &nbsp;</td><td valign=bottom><a class="el" href="classconnection.html">connection</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Please note: classes serverrec and userrec both inherit from class connection.</em> <a href="classconnection.html#_details">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>class &nbsp;</td><td valign=bottom><a class="el" href="classircd__connector.html">ircd_connector</a></td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Each connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds.</em> <a href="classircd__connector.html#_details">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>class &nbsp;</td><td valign=bottom><a class="el" href="classpacket.html">packet</a></td></tr>
<tr><td colspan=2><br><h2>Defines</h2></td></tr>
-<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a0">PT_SYN_ONLY</a>&nbsp;&nbsp;&nbsp;0</td></tr>
-<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a1">PT_ACK_ONLY</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a2">PT_SYN_WITH_DATA</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a3">PT_KEY_EXCHANGE</a>&nbsp;&nbsp;&nbsp;3</td></tr>
+<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a0">STATE_DISCONNECTED</a>&nbsp;&nbsp;&nbsp;0</td></tr>
+<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a1">STATE_CONNECTED</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a2">STATE_SYNC</a>&nbsp;&nbsp;&nbsp;2</td></tr>
+<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a3">STATE_NOAUTH_INBOUND</a>&nbsp;&nbsp;&nbsp;3</td></tr>
+<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="connection_8h.html#a4">STATE_NOAUTH_OUTBOUND</a>&nbsp;&nbsp;&nbsp;4</td></tr>
</table>
<hr><h2>Define Documentation</h2>
-<a name="a1" doxytag="connection.h::PT_ACK_ONLY"></a><p>
+<a name="a1" doxytag="connection.h::STATE_CONNECTED"></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"> #define PT_ACK_ONLY&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top"> #define STATE_CONNECTED&nbsp;&nbsp;&nbsp;1
</table>
</td>
</tr>
@@ -67,16 +73,16 @@ This graph shows which files directly or indirectly include this file:<p><center
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00021">21</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+Definition at line <a class="el" href="connection_8h-source.html#l00023">23</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
</tr>
</table>
-<a name="a3" doxytag="connection.h::PT_KEY_EXCHANGE"></a><p>
+<a name="a0" doxytag="connection.h::STATE_DISCONNECTED"></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"> #define PT_KEY_EXCHANGE&nbsp;&nbsp;&nbsp;3
+ <td class="md" nowrap valign="top"> #define STATE_DISCONNECTED&nbsp;&nbsp;&nbsp;0
</table>
</td>
</tr>
@@ -91,16 +97,16 @@ Definition at line <a class="el" href="connection_8h-source.html#l00021">21</a>
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00023">23</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+Definition at line <a class="el" href="connection_8h-source.html#l00022">22</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
</tr>
</table>
-<a name="a0" doxytag="connection.h::PT_SYN_ONLY"></a><p>
+<a name="a3" doxytag="connection.h::STATE_NOAUTH_INBOUND"></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"> #define PT_SYN_ONLY&nbsp;&nbsp;&nbsp;0
+ <td class="md" nowrap valign="top"> #define STATE_NOAUTH_INBOUND&nbsp;&nbsp;&nbsp;3
</table>
</td>
</tr>
@@ -115,16 +121,16 @@ Definition at line <a class="el" href="connection_8h-source.html#l00023">23</a>
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00020">20</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+Definition at line <a class="el" href="connection_8h-source.html#l00025">25</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
</tr>
</table>
-<a name="a2" doxytag="connection.h::PT_SYN_WITH_DATA"></a><p>
+<a name="a4" doxytag="connection.h::STATE_NOAUTH_OUTBOUND"></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"> #define PT_SYN_WITH_DATA&nbsp;&nbsp;&nbsp;2
+ <td class="md" nowrap valign="top"> #define STATE_NOAUTH_OUTBOUND&nbsp;&nbsp;&nbsp;4
</table>
</td>
</tr>
@@ -139,10 +145,34 @@ Definition at line <a class="el" href="connection_8h-source.html#l00020">20</a>
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00022">22</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+Definition at line <a class="el" href="connection_8h-source.html#l00026">26</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
+ </tr>
+</table>
+<a name="a2" doxytag="connection.h::STATE_SYNC"></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"> #define STATE_SYNC&nbsp;&nbsp;&nbsp;2
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00024">24</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
</tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:35 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:41 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>
diff --git a/docs/module-doc/connection_8h__incl.gif b/docs/module-doc/connection_8h__incl.gif
index b297abff2..04859471c 100644
--- a/docs/module-doc/connection_8h__incl.gif
+++ b/docs/module-doc/connection_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/ctables_8h-source.html b/docs/module-doc/ctables_8h-source.html
index b0fe3dd81..d3809fdce 100644
--- a/docs/module-doc/ctables_8h-source.html
+++ b/docs/module-doc/ctables_8h-source.html
@@ -43,7 +43,7 @@
00049
00050 <span class="preprocessor">#endif</span>
00051 <span class="preprocessor"></span>
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/ctables_8h.html b/docs/module-doc/ctables_8h.html
index c71511fb6..fa61df484 100644
--- a/docs/module-doc/ctables_8h.html
+++ b/docs/module-doc/ctables_8h.html
@@ -57,7 +57,7 @@ This graph shows which files directly or indirectly include this file:<p><center
Definition at line <a class="el" href="ctables_8h-source.html#l00023">23</a> of file <a class="el" href="ctables_8h-source.html">ctables.h</a>. </td>
</tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:36 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:41 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>
diff --git a/docs/module-doc/files.html b/docs/module-doc/files.html
index aa5bf9c38..beee50cba 100644
--- a/docs/module-doc/files.html
+++ b/docs/module-doc/files.html
@@ -19,7 +19,7 @@
<tr><td class="indexkey"><a class="el" href="users_8cpp.html">users.cpp</a> <a href="users_8cpp-source.html">[code]</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="users_8h.html">users.h</a> <a href="users_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/functions.html b/docs/module-doc/functions.html
index 578a1298c..620e6e5df 100644
--- a/docs/module-doc/functions.html
+++ b/docs/module-doc/functions.html
@@ -14,7 +14,9 @@ Here is a list of all class members with links to the classes they belong to:<h3
</h3><ul>
<li>AddCommand()
: <a class="el" href="classServer.html#a21">Server</a><li>AddExtendedMode()
-: <a class="el" href="classServer.html#a20">Server</a><li>Admin()
+: <a class="el" href="classServer.html#a20">Server</a><li>AddIncoming()
+: <a class="el" href="classconnection.html#a8">connection</a><li>addr
+: <a class="el" href="classircd__connector.html#o0">ircd_connector</a><li>Admin()
: <a class="el" href="classAdmin.html#a0">Admin</a><li>age
: <a class="el" href="classclassbase.html#m0">classbase</a><li>awaymsg
: <a class="el" href="classuserrec.html#m7">userrec</a></ul>
@@ -24,27 +26,31 @@ Here is a list of all class members with links to the classes they belong to:<h3
: <a class="el" href="classchanrec.html#m14">chanrec</a><li>BeginLink()
: <a class="el" href="classconnection.html#a2">connection</a><li>Build
: <a class="el" href="classVersion.html#m3">Version</a><li>bytes_in
-: <a class="el" href="classconnection.html#m5">connection</a><li>bytes_out
-: <a class="el" href="classconnection.html#m6">connection</a></ul>
+: <a class="el" href="classconnection.html#m4">connection</a><li>bytes_out
+: <a class="el" href="classconnection.html#m5">connection</a></ul>
<h3><a name="index_c">- c -</a>
</h3><ul>
<li>c_private
: <a class="el" href="classchanrec.html#m13">chanrec</a><li>cache
-: <a class="el" href="classConfigReader.html#n0">ConfigReader</a><li>carryover
-: <a class="el" href="classuserrec.html#m9">userrec</a><li>ChangeUserNick()
+: <a class="el" href="classConfigReader.html#n0">ConfigReader</a><li>CallCommandHandler()
+: <a class="el" href="classServer.html#a29">Server</a><li>ChangeGECOS()
+: <a class="el" href="classServer.html#a31">Server</a><li>ChangeHost()
+: <a class="el" href="classServer.html#a30">Server</a><li>ChangeUserNick()
: <a class="el" href="classServer.html#a26">Server</a><li>ChanMode()
: <a class="el" href="classServer.html#a16">Server</a><li>channel
: <a class="el" href="classInvited.html#m0">Invited</a>, <a class="el" href="classucrec.html#m1">ucrec</a>, <a class="el" href="classModeParameter.html#m2">ModeParameter</a><li>chanrec()
: <a class="el" href="classchanrec.html#a4">chanrec</a><li>chans
: <a class="el" href="classuserrec.html#m5">userrec</a><li>classbase()
-: <a class="el" href="classclassbase.html#a0">classbase</a><li>cmds_in
-: <a class="el" href="classconnection.html#m7">connection</a><li>cmds_out
-: <a class="el" href="classconnection.html#m8">connection</a><li>command
+: <a class="el" href="classclassbase.html#a0">classbase</a><li>CloseConnection()
+: <a class="el" href="classircd__connector.html#a13">ircd_connector</a><li>cmds_in
+: <a class="el" href="classconnection.html#m6">connection</a><li>cmds_out
+: <a class="el" href="classconnection.html#m7">connection</a><li>command
: <a class="el" href="classcommand__t.html#m0">command_t</a><li>CommonChannels()
: <a class="el" href="classServer.html#a9">Server</a><li>ConfigReader()
: <a class="el" href="classConfigReader.html#a1">ConfigReader</a><li>ConnectClass()
: <a class="el" href="classConnectClass.html#a0">ConnectClass</a><li>connection()
-: <a class="el" href="classconnection.html#a0">connection</a><li>CountUsers()
+: <a class="el" href="classconnection.html#a0">connection</a><li>connectors
+: <a class="el" href="classconnection.html#m18">connection</a><li>CountUsers()
: <a class="el" href="classServer.html#a13">Server</a><li>created
: <a class="el" href="classchanrec.html#m3">chanrec</a><li>CreateListener()
: <a class="el" href="classconnection.html#a1">connection</a><li>CreateModule()
@@ -53,7 +59,8 @@ Here is a list of all class members with links to the classes they belong to:<h3
<h3><a name="index_d">- d -</a>
</h3><ul>
<li>data
-: <a class="el" href="classpacket.html#m3">packet</a>, <a class="el" href="classHostItem.html#m2">HostItem</a><li>dhost
+: <a class="el" href="classHostItem.html#m2">HostItem</a><li>description
+: <a class="el" href="classserverrec.html#m8">serverrec</a>, <a class="el" href="classircd__connector.html#o3">ircd_connector</a><li>dhost
: <a class="el" href="classuserrec.html#m2">userrec</a></ul>
<h3><a name="index_e">- e -</a>
</h3><ul>
@@ -68,45 +75,52 @@ Here is a list of all class members with links to the classes they belong to:<h3
</h3><ul>
<li>fc
: <a class="el" href="classFileReader.html#o0">FileReader</a><li>fd
-: <a class="el" href="classconnection.html#m1">connection</a><li>FileReader()
+: <a class="el" href="classconnection.html#m0">connection</a>, <a class="el" href="classircd__connector.html#o1">ircd_connector</a><li>FileReader()
: <a class="el" href="classFileReader.html#a1">FileReader</a><li>FileSize()
: <a class="el" href="classFileReader.html#a6">FileReader</a><li>FindChannel()
-: <a class="el" href="classServer.html#a15">Server</a><li>FindNick()
+: <a class="el" href="classServer.html#a15">Server</a><li>FindHost()
+: <a class="el" href="classconnection.html#a7">connection</a><li>FindNick()
: <a class="el" href="classServer.html#a14">Server</a><li>flags_needed
-: <a class="el" href="classcommand__t.html#m2">command_t</a><li>fullname
+: <a class="el" href="classcommand__t.html#m2">command_t</a><li>flood
+: <a class="el" href="classuserrec.html#m9">userrec</a>, <a class="el" href="classConnectClass.html#m2">ConnectClass</a><li>fullname
: <a class="el" href="classuserrec.html#m3">userrec</a></ul>
<h3><a name="index_g">- g -</a>
</h3><ul>
<li>GenKey()
-: <a class="el" href="classconnection.html#a8">connection</a><li>GetAdmin()
-: <a class="el" href="classServer.html#a19">Server</a><li>GetFullHost()
+: <a class="el" href="classconnection.html#a9">connection</a><li>GetAdmin()
+: <a class="el" href="classServer.html#a19">Server</a><li>GetDescription()
+: <a class="el" href="classircd__connector.html#a8">ircd_connector</a><li>GetDescriptor()
+: <a class="el" href="classircd__connector.html#a3">ircd_connector</a><li>GetFullHost()
: <a class="el" href="classuserrec.html#a2">userrec</a><li>GetFullRealHost()
: <a class="el" href="classuserrec.html#a3">userrec</a><li>GetLine()
: <a class="el" href="classFileReader.html#a5">FileReader</a><li>GetModeParameter()
: <a class="el" href="classchanrec.html#a3">chanrec</a><li>GetNetworkName()
-: <a class="el" href="classServer.html#a18">Server</a><li>GetServerName()
-: <a class="el" href="classServer.html#a17">Server</a><li>GetVersion()
+: <a class="el" href="classServer.html#a18">Server</a><li>GetServerIP()
+: <a class="el" href="classircd__connector.html#a7">ircd_connector</a><li>GetServerName()
+: <a class="el" href="classServer.html#a17">Server</a>, <a class="el" href="classircd__connector.html#a1">ircd_connector</a><li>GetServerPort()
+: <a class="el" href="classircd__connector.html#a10">ircd_connector</a><li>GetState()
+: <a class="el" href="classircd__connector.html#a5">ircd_connector</a><li>GetVersion()
: <a class="el" href="classModule.html#a2">Module</a></ul>
<h3><a name="index_h">- h -</a>
</h3><ul>
<li>handler_function
: <a class="el" href="classcommand__t.html#m1">command_t</a><li>haspassed
-: <a class="el" href="classconnection.html#m9">connection</a><li>hops_away
+: <a class="el" href="classconnection.html#m8">connection</a><li>hops_away
: <a class="el" href="classserverrec.html#m5">serverrec</a><li>host
-: <a class="el" href="classConnectClass.html#m2">ConnectClass</a>, <a class="el" href="classconnection.html#m2">connection</a><li>HostItem()
+: <a class="el" href="classConnectClass.html#m3">ConnectClass</a>, <a class="el" href="classconnection.html#m1">connection</a>, <a class="el" href="classircd__connector.html#m0">ircd_connector</a><li>HostItem()
: <a class="el" href="classHostItem.html#a0">HostItem</a></ul>
<h3><a name="index_i">- i -</a>
</h3><ul>
-<li>id
-: <a class="el" href="classpacket.html#m1">packet</a><li>ident
+<li>ident
: <a class="el" href="classuserrec.html#m1">userrec</a><li>idle_lastmsg
: <a class="el" href="classconnection.html#m14">connection</a><li>inbuf
-: <a class="el" href="classconnection.html#m4">connection</a><li>internal_addr
-: <a class="el" href="classconnection.html#m16">connection</a><li>inviteonly
+: <a class="el" href="classconnection.html#m3">connection</a><li>internal_addr
+: <a class="el" href="classconnection.html#m16">connection</a><li>internal_port
+: <a class="el" href="classconnection.html#m17">connection</a><li>inviteonly
: <a class="el" href="classchanrec.html#m10">chanrec</a><li>invites
: <a class="el" href="classuserrec.html#o0">userrec</a><li>InviteTo()
: <a class="el" href="classuserrec.html#a5">userrec</a><li>ip
-: <a class="el" href="classconnection.html#m3">connection</a><li>IsCustomModeSet()
+: <a class="el" href="classconnection.html#m2">connection</a><li>IsCustomModeSet()
: <a class="el" href="classchanrec.html#a2">chanrec</a><li>IsInvited()
: <a class="el" href="classuserrec.html#a4">userrec</a><li>IsNick()
: <a class="el" href="classServer.html#a12">Server</a></ul>
@@ -118,7 +132,7 @@ Here is a list of all class members with links to the classes they belong to:<h3
<h3><a name="index_k">- k -</a>
</h3><ul>
<li>key
-: <a class="el" href="classconnection.html#m0">connection</a>, <a class="el" href="classpacket.html#m0">packet</a>, <a class="el" href="classchanrec.html#m7">chanrec</a></ul>
+: <a class="el" href="classchanrec.html#m7">chanrec</a></ul>
<h3><a name="index_l">- l -</a>
</h3><ul>
<li>lastping
@@ -129,8 +143,10 @@ Here is a list of all class members with links to the classes they belong to:<h3
<h3><a name="index_m">- m -</a>
</h3><ul>
<li>Major
-: <a class="el" href="classVersion.html#m0">Version</a><li>MatchText()
-: <a class="el" href="classServer.html#a28">Server</a><li>min_params
+: <a class="el" href="classVersion.html#m0">Version</a><li>MakeOutboundConnection()
+: <a class="el" href="classircd__connector.html#a0">ircd_connector</a><li>MatchText()
+: <a class="el" href="classServer.html#a28">Server</a><li>MeshCookie()
+: <a class="el" href="classconnection.html#a3">connection</a><li>min_params
: <a class="el" href="classcommand__t.html#m3">command_t</a><li>Minor
: <a class="el" href="classVersion.html#m1">Version</a><li>mode
: <a class="el" href="classModeParameter.html#m0">ModeParameter</a><li>modechar
@@ -144,9 +160,9 @@ Here is a list of all class members with links to the classes they belong to:<h3
<li>name
: <a class="el" href="classserverrec.html#m0">serverrec</a>, <a class="el" href="classchanrec.html#m0">chanrec</a><li>Name
: <a class="el" href="classAdmin.html#m0">Admin</a><li>needsoper
-: <a class="el" href="classExtMode.html#m4">ExtMode</a><li>nick
-: <a class="el" href="classuserrec.html#m0">userrec</a><li>Nick
-: <a class="el" href="classAdmin.html#m2">Admin</a><li>noexternal
+: <a class="el" href="classExtMode.html#m4">ExtMode</a><li>Nick
+: <a class="el" href="classAdmin.html#m2">Admin</a><li>nick
+: <a class="el" href="classuserrec.html#m0">userrec</a><li>noexternal
: <a class="el" href="classchanrec.html#m9">chanrec</a><li>nping
: <a class="el" href="classconnection.html#m15">connection</a></ul>
<h3><a name="index_o">- o -</a>
@@ -170,15 +186,14 @@ Here is a list of all class members with links to the classes they belong to:<h3
: <a class="el" href="classserverrec.html#m4">serverrec</a></ul>
<h3><a name="index_p">- p -</a>
</h3><ul>
-<li>packet()
-: <a class="el" href="classpacket.html#a0">packet</a><li>parameter
+<li>parameter
: <a class="el" href="classModeParameter.html#m1">ModeParameter</a><li>params_when_off
: <a class="el" href="classExtMode.html#m3">ExtMode</a><li>params_when_on
: <a class="el" href="classExtMode.html#m2">ExtMode</a><li>PartUserFromChannel()
: <a class="el" href="classServer.html#a25">Server</a><li>pass
-: <a class="el" href="classConnectClass.html#m3">ConnectClass</a><li>pingtime
+: <a class="el" href="classConnectClass.html#m4">ConnectClass</a><li>pingtime
: <a class="el" href="classserverrec.html#m1">serverrec</a><li>port
-: <a class="el" href="classconnection.html#m10">connection</a></ul>
+: <a class="el" href="classconnection.html#m9">connection</a>, <a class="el" href="classircd__connector.html#m1">ircd_connector</a></ul>
<h3><a name="index_q">- q -</a>
</h3><ul>
<li>QuitUser()
@@ -187,48 +202,57 @@ Here is a list of all class members with links to the classes they belong to:<h3
</h3><ul>
<li>ReadValue()
: <a class="el" href="classConfigReader.html#a3">ConfigReader</a><li>RecvPacket()
-: <a class="el" href="classconnection.html#a5">connection</a><li>registered
-: <a class="el" href="classconnection.html#m11">connection</a><li>registration_timeout
+: <a class="el" href="classconnection.html#a6">connection</a><li>registered
+: <a class="el" href="classconnection.html#m10">connection</a><li>registration_timeout
: <a class="el" href="classConnectClass.html#m1">ConnectClass</a><li>RemoveInvite()
: <a class="el" href="classuserrec.html#a6">userrec</a><li>result
: <a class="el" href="classuserrec.html#m8">userrec</a><li>Revision
-: <a class="el" href="classVersion.html#m2">Version</a></ul>
+: <a class="el" href="classVersion.html#m2">Version</a><li>routes
+: <a class="el" href="classircd__connector.html#m2">ircd_connector</a></ul>
<h3><a name="index_s">- s -</a>
</h3><ul>
<li>secret
: <a class="el" href="classchanrec.html#m12">chanrec</a><li>Send()
-: <a class="el" href="classServer.html#a4">Server</a><li>SendACK()
-: <a class="el" href="classconnection.html#a7">connection</a><li>SendChannel()
+: <a class="el" href="classServer.html#a4">Server</a><li>SendChannel()
: <a class="el" href="classServer.html#a8">Server</a><li>SendCommon()
: <a class="el" href="classServer.html#a10">Server</a><li>SendFrom()
: <a class="el" href="classServer.html#a6">Server</a><li>SendMode()
: <a class="el" href="classServer.html#a22">Server</a><li>SendOpers()
: <a class="el" href="classServer.html#a2">Server</a><li>SendPacket()
-: <a class="el" href="classconnection.html#a4">connection</a><li>SendServ()
-: <a class="el" href="classServer.html#a5">Server</a><li>SendSYN()
-: <a class="el" href="classconnection.html#a6">connection</a><li>SendTo()
+: <a class="el" href="classconnection.html#a5">connection</a><li>SendServ()
+: <a class="el" href="classServer.html#a5">Server</a><li>SendTo()
: <a class="el" href="classServer.html#a7">Server</a><li>SendToModeMask()
: <a class="el" href="classServer.html#a23">Server</a><li>SendWallops()
-: <a class="el" href="classServer.html#a11">Server</a><li>Server()
-: <a class="el" href="classServer.html#a0">Server</a><li>server
-: <a class="el" href="classuserrec.html#m6">userrec</a><li>serverrec()
+: <a class="el" href="classServer.html#a11">Server</a><li>server
+: <a class="el" href="classuserrec.html#m6">userrec</a><li>Server()
+: <a class="el" href="classServer.html#a0">Server</a><li>servername
+: <a class="el" href="classircd__connector.html#o2">ircd_connector</a><li>serverrec()
: <a class="el" href="classserverrec.html#a1">serverrec</a><li>set_by
: <a class="el" href="classHostItem.html#m1">HostItem</a><li>set_time
: <a class="el" href="classHostItem.html#m0">HostItem</a><li>setby
: <a class="el" href="classchanrec.html#m5">chanrec</a><li>SetCustomMode()
: <a class="el" href="classchanrec.html#a0">chanrec</a><li>SetCustomModeParam()
-: <a class="el" href="classchanrec.html#a1">chanrec</a><li>signon
-: <a class="el" href="classconnection.html#m13">connection</a></ul>
+: <a class="el" href="classchanrec.html#a1">chanrec</a><li>SetDescription()
+: <a class="el" href="classircd__connector.html#a9">ircd_connector</a><li>SetDescriptor()
+: <a class="el" href="classircd__connector.html#a4">ircd_connector</a><li>SetHostAddress()
+: <a class="el" href="classircd__connector.html#c0">ircd_connector</a><li>SetHostAndPort()
+: <a class="el" href="classircd__connector.html#a12">ircd_connector</a><li>SetServerName()
+: <a class="el" href="classircd__connector.html#a2">ircd_connector</a><li>SetServerPort()
+: <a class="el" href="classircd__connector.html#a11">ircd_connector</a><li>SetState()
+: <a class="el" href="classircd__connector.html#a6">ircd_connector</a><li>signon
+: <a class="el" href="classconnection.html#m13">connection</a><li>state
+: <a class="el" href="classconnection.html#m11">connection</a>, <a class="el" href="classircd__connector.html#o4">ircd_connector</a><li>sync_soon
+: <a class="el" href="classserverrec.html#m9">serverrec</a></ul>
<h3><a name="index_t">- t -</a>
</h3><ul>
<li>TerminateLink()
-: <a class="el" href="classconnection.html#a3">connection</a><li>timeout
+: <a class="el" href="classconnection.html#a4">connection</a><li>timeout
: <a class="el" href="classuserrec.html#m10">userrec</a><li>topic
: <a class="el" href="classchanrec.html#m2">chanrec</a><li>topiclock
: <a class="el" href="classchanrec.html#m8">chanrec</a><li>topicset
: <a class="el" href="classchanrec.html#m4">chanrec</a><li>total_bytes
: <a class="el" href="classcommand__t.html#m5">command_t</a><li>type
-: <a class="el" href="classConnectClass.html#m0">ConnectClass</a>, <a class="el" href="classpacket.html#m2">packet</a>, <a class="el" href="classExtMode.html#m1">ExtMode</a></ul>
+: <a class="el" href="classConnectClass.html#m0">ConnectClass</a>, <a class="el" href="classExtMode.html#m1">ExtMode</a></ul>
<h3><a name="index_u">- u -</a>
</h3><ul>
<li>uc_modes
@@ -241,9 +265,9 @@ Here is a list of all class members with links to the classes they belong to:<h3
<h3><a name="index_v">- v -</a>
</h3><ul>
<li>Verify()
-: <a class="el" href="classConfigReader.html#a5">ConfigReader</a><li>version
-: <a class="el" href="classserverrec.html#m6">serverrec</a><li>Version()
-: <a class="el" href="classVersion.html#a0">Version</a></ul>
+: <a class="el" href="classConfigReader.html#a5">ConfigReader</a><li>Version()
+: <a class="el" href="classVersion.html#a0">Version</a><li>version
+: <a class="el" href="classserverrec.html#m6">serverrec</a></ul>
<h3><a name="index_~">- ~ -</a>
</h3><ul>
<li>~chanrec()
@@ -253,13 +277,12 @@ Here is a list of all class members with links to the classes they belong to:<h3
: <a class="el" href="classFileReader.html#a2">FileReader</a><li>~HostItem()
: <a class="el" href="classHostItem.html#a1">HostItem</a><li>~Module()
: <a class="el" href="classModule.html#a1">Module</a><li>~ModuleFactory()
-: <a class="el" href="classModuleFactory.html#a1">ModuleFactory</a><li>~packet()
-: <a class="el" href="classpacket.html#a1">packet</a><li>~Server()
+: <a class="el" href="classModuleFactory.html#a1">ModuleFactory</a><li>~Server()
: <a class="el" href="classServer.html#a1">Server</a><li>~serverrec()
: <a class="el" href="classserverrec.html#a2">serverrec</a><li>~ucrec()
: <a class="el" href="classucrec.html#a1">ucrec</a><li>~userrec()
: <a class="el" href="classuserrec.html#a1">userrec</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:45 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:44 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>
diff --git a/docs/module-doc/globals.html b/docs/module-doc/globals.html
index f8c37422c..194bbd162 100644
--- a/docs/module-doc/globals.html
+++ b/docs/module-doc/globals.html
@@ -7,7 +7,7 @@
<center>
<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
<hr><h1>InspIRCd File Members</h1><center>
-<a href="#index_b">b</a>&nbsp;|&nbsp;<a href="#index_c">c</a>&nbsp;|&nbsp;<a href="#index_d">d</a>&nbsp;|&nbsp;<a href="#index_e">e</a>&nbsp;|&nbsp;<a href="#index_f">f</a>&nbsp;|&nbsp;<a href="#index_h">h</a>&nbsp;|&nbsp;<a href="#index_i">i</a>&nbsp;|&nbsp;<a href="#index_l">l</a>&nbsp;|&nbsp;<a href="#index_m">m</a>&nbsp;|&nbsp;<a href="#index_n">n</a>&nbsp;|&nbsp;<a href="#index_p">p</a>&nbsp;|&nbsp;<a href="#index_s">s</a>&nbsp;|&nbsp;<a href="#index_u">u</a>&nbsp;|&nbsp;<a href="#index_v">v</a></center>
+<a href="#index_b">b</a>&nbsp;|&nbsp;<a href="#index_c">c</a>&nbsp;|&nbsp;<a href="#index_d">d</a>&nbsp;|&nbsp;<a href="#index_e">e</a>&nbsp;|&nbsp;<a href="#index_f">f</a>&nbsp;|&nbsp;<a href="#index_h">h</a>&nbsp;|&nbsp;<a href="#index_i">i</a>&nbsp;|&nbsp;<a href="#index_l">l</a>&nbsp;|&nbsp;<a href="#index_m">m</a>&nbsp;|&nbsp;<a href="#index_n">n</a>&nbsp;|&nbsp;<a href="#index_s">s</a>&nbsp;|&nbsp;<a href="#index_u">u</a>&nbsp;|&nbsp;<a href="#index_v">v</a></center>
<p>
Here is a list of all file members with links to the files they belong to:<h3><a name="index_b">- b -</a>
@@ -73,18 +73,16 @@ Here is a list of all file members with links to the files they belong to:<h3><a
</h3><ul>
<li>NONE
: <a class="el" href="modules_8h.html#a4">modules.h</a></ul>
-<h3><a name="index_p">- p -</a>
-</h3><ul>
-<li>PT_ACK_ONLY
-: <a class="el" href="connection_8h.html#a1">connection.h</a><li>PT_KEY_EXCHANGE
-: <a class="el" href="connection_8h.html#a3">connection.h</a><li>PT_SYN_ONLY
-: <a class="el" href="connection_8h.html#a0">connection.h</a><li>PT_SYN_WITH_DATA
-: <a class="el" href="connection_8h.html#a2">connection.h</a></ul>
<h3><a name="index_s">- s -</a>
</h3><ul>
<li>server_mode()
: <a class="el" href="modules_8h.html#a14">modules.h</a><li>SPARSE
-: <a class="el" href="modules_8h.html#a3">modules.h</a><li>STATUS_HOP
+: <a class="el" href="modules_8h.html#a3">modules.h</a><li>STATE_CONNECTED
+: <a class="el" href="connection_8h.html#a1">connection.h</a><li>STATE_DISCONNECTED
+: <a class="el" href="connection_8h.html#a0">connection.h</a><li>STATE_NOAUTH_INBOUND
+: <a class="el" href="connection_8h.html#a3">connection.h</a><li>STATE_NOAUTH_OUTBOUND
+: <a class="el" href="connection_8h.html#a4">connection.h</a><li>STATE_SYNC
+: <a class="el" href="connection_8h.html#a2">connection.h</a><li>STATUS_HOP
: <a class="el" href="users_8h.html#a1">users.h</a><li>STATUS_NORMAL
: <a class="el" href="users_8h.html#a3">users.h</a><li>STATUS_OP
: <a class="el" href="users_8h.html#a0">users.h</a><li>STATUS_VOICE
@@ -102,7 +100,7 @@ Here is a list of all file members with links to the files they belong to:<h3><a
</h3><ul>
<li>VERBOSE
: <a class="el" href="modules_8h.html#a1">modules.h</a></ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:25 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:57 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>
diff --git a/docs/module-doc/graph_legend.html b/docs/module-doc/graph_legend.html
index ca986b29f..4a0af6498 100644
--- a/docs/module-doc/graph_legend.html
+++ b/docs/module-doc/graph_legend.html
@@ -69,7 +69,7 @@ A purple dashed arrow is used if a class is contained or used by another class.
<li>
A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance. </li>
</ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:25 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:57 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>
diff --git a/docs/module-doc/hierarchy.html b/docs/module-doc/hierarchy.html
index e83db36f0..3b4de127e 100644
--- a/docs/module-doc/hierarchy.html
+++ b/docs/module-doc/hierarchy.html
@@ -29,17 +29,18 @@ This inheritance list is sorted roughly, but not completely, alphabetically:<ul>
<li><a class="el" href="classInviteItem.html">InviteItem</a>
</ul>
<li><a class="el" href="classInvited.html">Invited</a>
+<li><a class="el" href="classircd__connector.html">ircd_connector</a>
<li><a class="el" href="classModeParameter.html">ModeParameter</a>
<li><a class="el" href="classModule.html">Module</a>
<li><a class="el" href="classModuleFactory.html">ModuleFactory</a>
-<li><a class="el" href="classpacket.html">packet</a>
<li><a class="el" href="classServer.html">Server</a>
<li><a class="el" href="classucrec.html">ucrec</a>
<li><a class="el" href="classVersion.html">Version</a>
</ul>
<li><a class="el" href="classExtMode.html">ExtMode</a>
+<li><a class="el" href="classpacket.html">packet</a>
</ul>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:45 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:44 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>
diff --git a/docs/module-doc/inherit__graph__0.gif b/docs/module-doc/inherit__graph__0.gif
index e6ee4dda3..8c092afca 100644
--- a/docs/module-doc/inherit__graph__0.gif
+++ b/docs/module-doc/inherit__graph__0.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__2.gif b/docs/module-doc/inherit__graph__2.gif
new file mode 100644
index 000000000..fbe411c4d
--- /dev/null
+++ b/docs/module-doc/inherit__graph__2.gif
Binary files differ
diff --git a/docs/module-doc/inherits.html b/docs/module-doc/inherits.html
index 896ab60aa..dddb024b6 100644
--- a/docs/module-doc/inherits.html
+++ b/docs/module-doc/inherits.html
@@ -21,10 +21,10 @@
<area href="classFileReader.html" shape="rect" coords="149,277,224,298" alt="">
<area href="classHostItem.html" shape="rect" coords="157,322,216,344" alt="">
<area href="classInvited.html" shape="rect" coords="164,368,209,389" alt="">
-<area href="classModeParameter.html" shape="rect" coords="135,413,239,434" alt="">
-<area href="classModule.html" shape="rect" coords="161,458,212,480" alt="">
-<area href="classModuleFactory.html" shape="rect" coords="140,504,233,525" alt="">
-<area href="classpacket.html" shape="rect" coords="161,549,212,570" alt="">
+<area href="classircd__connector.html" shape="rect" coords="139,413,235,434" alt="">
+<area href="classModeParameter.html" shape="rect" coords="135,458,239,480" alt="">
+<area href="classModule.html" shape="rect" coords="161,504,212,525" alt="">
+<area href="classModuleFactory.html" shape="rect" coords="140,549,233,570" alt="">
<area href="classServer.html" shape="rect" coords="161,594,212,616" alt="">
<area href="classucrec.html" shape="rect" coords="164,640,209,661" alt="">
<area href="classVersion.html" shape="rect" coords="160,685,213,706" alt="">
@@ -38,8 +38,12 @@
<map name="ExtMode_map">
<area href="classExtMode.html" shape="rect" coords="19,5,77,26" alt="">
</map></td></tr>
+<tr><td><img src="inherit__graph__2.gif" border="0" alt="" usemap="#packet_map">
+<map name="packet_map">
+<area href="classpacket.html" shape="rect" coords="17,5,68,26" alt="">
+</map></td></tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:27 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:58 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>
diff --git a/docs/module-doc/main.html b/docs/module-doc/main.html
index d15246941..2267d9975 100644
--- a/docs/module-doc/main.html
+++ b/docs/module-doc/main.html
@@ -8,7 +8,7 @@
<a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</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>
<hr><h1>InspIRCd Documentation</h1>
<p>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/modules_8cpp-source.html b/docs/module-doc/modules_8cpp-source.html
index 8281865c1..9f8bf98d1 100644
--- a/docs/module-doc/modules_8cpp-source.html
+++ b/docs/module-doc/modules_8cpp-source.html
@@ -164,12 +164,12 @@
00156
<a name="l00157"></a><a class="code" href="classServer.html#a24">00157</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a24">Server::JoinUserToChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string key)
00158 {
-00159 <span class="keywordflow">return</span> add_channel(user,cname.c_str(),key.c_str());
+00159 <span class="keywordflow">return</span> add_channel(user,cname.c_str(),key.c_str(),<span class="keyword">true</span>);
00160 }
00161
<a name="l00162"></a><a class="code" href="classServer.html#a25">00162</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a25">Server::PartUserFromChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string reason)
00163 {
-00164 <span class="keywordflow">return</span> del_channel(user,cname.c_str(),reason.c_str());
+00164 <span class="keywordflow">return</span> del_channel(user,cname.c_str(),reason.c_str(),<span class="keyword">false</span>);
00165 }
00166
<a name="l00167"></a><a class="code" href="classServer.html#a26">00167</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a26">Server::ChangeUserNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string nickname)
@@ -179,250 +179,265 @@
00171
<a name="l00172"></a><a class="code" href="classServer.html#a27">00172</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a27">Server::QuitUser</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string reason)
00173 {
-00174 kill_link(user,reason.c_str());
-00175 }
-00176
+00174 send_network_quit(user-&gt;<a class="code" href="classuserrec.html#m0">nick</a>,reason.c_str());
+00175 kill_link(user,reason.c_str());
+00176 }
00177
-<a name="l00178"></a><a class="code" href="classServer.html#a3">00178</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a3">Server::Log</a>(<span class="keywordtype">int</span> level, std::string s)
+<a name="l00178"></a><a class="code" href="classServer.html#a29">00178</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a29">Server::CallCommandHandler</a>(std::string commandname, <span class="keywordtype">char</span>** parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a>* user)
00179 {
-00180 log(level,<span class="stringliteral">"%s"</span>,s.c_str());
+00180 call_handler(commandname.c_str(),parameters,pcnt,user);
00181 }
00182
-<a name="l00183"></a><a class="code" href="classServer.html#a21">00183</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a21">Server::AddCommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams)
+<a name="l00183"></a><a class="code" href="classServer.html#a3">00183</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a3">Server::Log</a>(<span class="keywordtype">int</span> level, std::string s)
00184 {
-00185 <a class="code" href="modules_8h.html#a13">createcommand</a>(cmd,f,flags,minparams);
+00185 log(level,<span class="stringliteral">"%s"</span>,s.c_str());
00186 }
00187
-<a name="l00188"></a><a class="code" href="classServer.html#a22">00188</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a22">Server::SendMode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user)
+<a name="l00188"></a><a class="code" href="classServer.html#a21">00188</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a21">Server::AddCommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams)
00189 {
-00190 <a class="code" href="modules_8h.html#a14">server_mode</a>(parameters,pcnt,user);
+00190 <a class="code" href="modules_8h.html#a13">createcommand</a>(cmd,f,flags,minparams);
00191 }
00192
-<a name="l00193"></a><a class="code" href="classServer.html#a4">00193</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a4">Server::Send</a>(<span class="keywordtype">int</span> Socket, std::string s)
+<a name="l00193"></a><a class="code" href="classServer.html#a22">00193</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a22">Server::SendMode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user)
00194 {
-00195 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+00195 <a class="code" href="modules_8h.html#a14">server_mode</a>(parameters,pcnt,user);
00196 }
00197
-<a name="l00198"></a><a class="code" href="classServer.html#a5">00198</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a5">Server::SendServ</a>(<span class="keywordtype">int</span> Socket, std::string s)
+<a name="l00198"></a><a class="code" href="classServer.html#a4">00198</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a4">Server::Send</a>(<span class="keywordtype">int</span> Socket, std::string s)
00199 {
-00200 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+00200 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
00201 }
00202
-<a name="l00203"></a><a class="code" href="classServer.html#a6">00203</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a6">Server::SendFrom</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="classuserrec.html">userrec</a>* User, std::string s)
+<a name="l00203"></a><a class="code" href="classServer.html#a5">00203</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a5">Server::SendServ</a>(<span class="keywordtype">int</span> Socket, std::string s)
00204 {
-00205 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00205 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
00206 }
00207
-<a name="l00208"></a><a class="code" href="classServer.html#a7">00208</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a7">Server::SendTo</a>(<a class="code" href="classuserrec.html">userrec</a>* Source, <a class="code" href="classuserrec.html">userrec</a>* Dest, std::string s)
+<a name="l00208"></a><a class="code" href="classServer.html#a6">00208</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a6">Server::SendFrom</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="classuserrec.html">userrec</a>* User, std::string s)
00209 {
-00210 <span class="keywordflow">if</span> (!Source)
-00211 {
-00212 <span class="comment">// if source is NULL, then the message originates from the local server</span>
-00213 Write(Dest-&gt;<a class="code" href="classconnection.html#m1">fd</a>,<span class="stringliteral">":%s %s"</span>,this-&gt;GetServerName().c_str(),s.c_str());
-00214 }
-00215 <span class="keywordflow">else</span>
+00210 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00211 }
+00212
+<a name="l00213"></a><a class="code" href="classServer.html#a7">00213</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a7">Server::SendTo</a>(<a class="code" href="classuserrec.html">userrec</a>* Source, <a class="code" href="classuserrec.html">userrec</a>* Dest, std::string s)
+00214 {
+00215 <span class="keywordflow">if</span> (!Source)
00216 {
-00217 <span class="comment">// otherwise it comes from the user specified</span>
-00218 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
+00217 <span class="comment">// if source is NULL, then the message originates from the local server</span>
+00218 Write(Dest-&gt;<a class="code" href="classconnection.html#m0">fd</a>,<span class="stringliteral">":%s %s"</span>,this-&gt;GetServerName().c_str(),s.c_str());
00219 }
-00220 }
-00221
-<a name="l00222"></a><a class="code" href="classServer.html#a8">00222</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a8">Server::SendChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Channel, std::string s,<span class="keywordtype">bool</span> IncludeSender)
-00223 {
-00224 <span class="keywordflow">if</span> (IncludeSender)
-00225 {
-00226 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00227 }
-00228 <span class="keywordflow">else</span>
-00229 {
-00230 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00231 }
-00232 }
-00233
-<a name="l00234"></a><a class="code" href="classServer.html#a9">00234</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a9">Server::CommonChannels</a>(<a class="code" href="classuserrec.html">userrec</a>* u1, <a class="code" href="classuserrec.html">userrec</a>* u2)
-00235 {
-00236 <span class="keywordflow">return</span> (common_channels(u1,u2) != 0);
+00220 <span class="keywordflow">else</span>
+00221 {
+00222 <span class="comment">// otherwise it comes from the user specified</span>
+00223 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
+00224 }
+00225 }
+00226
+<a name="l00227"></a><a class="code" href="classServer.html#a8">00227</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a8">Server::SendChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Channel, std::string s,<span class="keywordtype">bool</span> IncludeSender)
+00228 {
+00229 <span class="keywordflow">if</span> (IncludeSender)
+00230 {
+00231 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00232 }
+00233 <span class="keywordflow">else</span>
+00234 {
+00235 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+00236 }
00237 }
00238
-<a name="l00239"></a><a class="code" href="classServer.html#a10">00239</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a10">Server::SendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text,<span class="keywordtype">bool</span> IncludeSender)
+<a name="l00239"></a><a class="code" href="classServer.html#a9">00239</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a9">Server::CommonChannels</a>(<a class="code" href="classuserrec.html">userrec</a>* u1, <a class="code" href="classuserrec.html">userrec</a>* u2)
00240 {
-00241 <span class="keywordflow">if</span> (IncludeSender)
-00242 {
-00243 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00244 }
-00245 <span class="keywordflow">else</span>
-00246 {
-00247 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00248 }
-00249 }
-00250
-<a name="l00251"></a><a class="code" href="classServer.html#a11">00251</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a11">Server::SendWallops</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text)
-00252 {
-00253 WriteWallOps(User,<span class="stringliteral">"%s"</span>,text.c_str());
+00241 <span class="keywordflow">return</span> (common_channels(u1,u2) != 0);
+00242 }
+00243
+<a name="l00244"></a><a class="code" href="classServer.html#a10">00244</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a10">Server::SendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text,<span class="keywordtype">bool</span> IncludeSender)
+00245 {
+00246 <span class="keywordflow">if</span> (IncludeSender)
+00247 {
+00248 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
+00249 }
+00250 <span class="keywordflow">else</span>
+00251 {
+00252 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
+00253 }
00254 }
00255
-<a name="l00256"></a><a class="code" href="classServer.html#a12">00256</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a12">Server::IsNick</a>(std::string nick)
+<a name="l00256"></a><a class="code" href="classServer.html#a11">00256</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a11">Server::SendWallops</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text)
00257 {
-00258 <span class="keywordflow">return</span> (isnick(nick.c_str()) != 0);
+00258 WriteWallOps(User,<span class="keyword">false</span>,<span class="stringliteral">"%s"</span>,text.c_str());
00259 }
00260
-<a name="l00261"></a><a class="code" href="classServer.html#a14">00261</a> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#a14">Server::FindNick</a>(std::string nick)
+<a name="l00261"></a><a class="code" href="classServer.html#a30">00261</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a30">Server::ChangeHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string host)
00262 {
-00263 <span class="keywordflow">return</span> Find(nick);
+00263 ChangeDisplayedHost(user,host.c_str());
00264 }
00265
-<a name="l00266"></a><a class="code" href="classServer.html#a15">00266</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a15">Server::FindChannel</a>(std::string channel)
+<a name="l00266"></a><a class="code" href="classServer.html#a31">00266</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a31">Server::ChangeGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string gecos)
00267 {
-00268 <span class="keywordflow">return</span> FindChan(channel.c_str());
+00268 ChangeName(user,gecos.c_str());
00269 }
00270
-<a name="l00271"></a><a class="code" href="classServer.html#a16">00271</a> std::string <a class="code" href="classServer.html#a16">Server::ChanMode</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan)
+<a name="l00271"></a><a class="code" href="classServer.html#a12">00271</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a12">Server::IsNick</a>(std::string nick)
00272 {
-00273 <span class="keywordflow">return</span> cmode(User,Chan);
+00273 <span class="keywordflow">return</span> (isnick(nick.c_str()) != 0);
00274 }
00275
-<a name="l00276"></a><a class="code" href="classServer.html#a17">00276</a> std::string <a class="code" href="classServer.html#a17">Server::GetServerName</a>()
+<a name="l00276"></a><a class="code" href="classServer.html#a14">00276</a> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#a14">Server::FindNick</a>(std::string nick)
00277 {
-00278 <span class="keywordflow">return</span> getservername();
+00278 <span class="keywordflow">return</span> Find(nick);
00279 }
00280
-<a name="l00281"></a><a class="code" href="classServer.html#a18">00281</a> std::string <a class="code" href="classServer.html#a18">Server::GetNetworkName</a>()
+<a name="l00281"></a><a class="code" href="classServer.html#a15">00281</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a15">Server::FindChannel</a>(std::string channel)
00282 {
-00283 <span class="keywordflow">return</span> getnetworkname();
+00283 <span class="keywordflow">return</span> FindChan(channel.c_str());
00284 }
00285
-<a name="l00286"></a><a class="code" href="classServer.html#a19">00286</a> <a class="code" href="classAdmin.html">Admin</a> <a class="code" href="classServer.html#a19">Server::GetAdmin</a>()
+<a name="l00286"></a><a class="code" href="classServer.html#a16">00286</a> std::string <a class="code" href="classServer.html#a16">Server::ChanMode</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan)
00287 {
-00288 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
+00288 <span class="keywordflow">return</span> cmode(User,Chan);
00289 }
00290
-00291
-00292
-<a name="l00293"></a><a class="code" href="classServer.html#a20">00293</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a20">Server::AddExtendedMode</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type, <span class="keywordtype">bool</span> requires_oper, <span class="keywordtype">int</span> params_when_on, <span class="keywordtype">int</span> params_when_off)
-00294 {
-00295 <span class="keywordflow">if</span> (type == <a class="code" href="modules_8h.html#a7">MT_SERVER</a>)
-00296 {
-00297 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion"</span>);
-00298 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00299 }
-00300 <span class="keywordflow">if</span> (((params_when_on&gt;0) || (params_when_off&gt;0)) &amp;&amp; (type == <a class="code" href="modules_8h.html#a6">MT_CLIENT</a>))
-00301 {
-00302 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Parameters on MT_CLIENT modes are not supported"</span>);
-00303 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00304 }
-00305 <span class="keywordflow">if</span> ((params_when_on&gt;1) || (params_when_off&gt;1))
-00306 {
-00307 log(DEBUG,<span class="stringliteral">"*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported"</span>);
-00308 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00309 }
-00310 <span class="keywordflow">return</span> <a class="code" href="modules_8cpp.html#a8">DoAddExtendedMode</a>(modechar,type,requires_oper,params_when_on,params_when_off);
-00311 }
-00312
-<a name="l00313"></a><a class="code" href="classServer.html#a13">00313</a> <span class="keywordtype">int</span> <a class="code" href="classServer.html#a13">Server::CountUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* c)
-00314 {
-00315 <span class="keywordflow">return</span> usercount(c);
-00316 }
-00317
-00318
-<a name="l00319"></a><a class="code" href="classConfigReader.html#a0">00319</a> <a class="code" href="classConfigReader.html#a0">ConfigReader::ConfigReader</a>()
-00320 {
-00321 this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00322 this-&gt;<a class="code" href="classConfigReader.html#n1">error</a> = LoadConf(CONFIG_FILE,this-&gt;cache);
-00323 }
-00324
-00325
-<a name="l00326"></a><a class="code" href="classConfigReader.html#a2">00326</a> <a class="code" href="classConfigReader.html#a2">ConfigReader::~ConfigReader</a>()
-00327 {
-00328 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>)
-00329 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>;
-00330 }
-00331
+<a name="l00291"></a><a class="code" href="classServer.html#a17">00291</a> std::string <a class="code" href="classServer.html#a17">Server::GetServerName</a>()
+00292 {
+00293 <span class="keywordflow">return</span> getservername();
+00294 }
+00295
+<a name="l00296"></a><a class="code" href="classServer.html#a18">00296</a> std::string <a class="code" href="classServer.html#a18">Server::GetNetworkName</a>()
+00297 {
+00298 <span class="keywordflow">return</span> getnetworkname();
+00299 }
+00300
+<a name="l00301"></a><a class="code" href="classServer.html#a19">00301</a> <a class="code" href="classAdmin.html">Admin</a> <a class="code" href="classServer.html#a19">Server::GetAdmin</a>()
+00302 {
+00303 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
+00304 }
+00305
+00306
+00307
+<a name="l00308"></a><a class="code" href="classServer.html#a20">00308</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a20">Server::AddExtendedMode</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type, <span class="keywordtype">bool</span> requires_oper, <span class="keywordtype">int</span> params_when_on, <span class="keywordtype">int</span> params_when_off)
+00309 {
+00310 <span class="keywordflow">if</span> (type == <a class="code" href="modules_8h.html#a7">MT_SERVER</a>)
+00311 {
+00312 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion"</span>);
+00313 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00314 }
+00315 <span class="keywordflow">if</span> (((params_when_on&gt;0) || (params_when_off&gt;0)) &amp;&amp; (type == <a class="code" href="modules_8h.html#a6">MT_CLIENT</a>))
+00316 {
+00317 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Parameters on MT_CLIENT modes are not supported"</span>);
+00318 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00319 }
+00320 <span class="keywordflow">if</span> ((params_when_on&gt;1) || (params_when_off&gt;1))
+00321 {
+00322 log(DEBUG,<span class="stringliteral">"*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported"</span>);
+00323 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00324 }
+00325 <span class="keywordflow">return</span> <a class="code" href="modules_8cpp.html#a8">DoAddExtendedMode</a>(modechar,type,requires_oper,params_when_on,params_when_off);
+00326 }
+00327
+<a name="l00328"></a><a class="code" href="classServer.html#a13">00328</a> <span class="keywordtype">int</span> <a class="code" href="classServer.html#a13">Server::CountUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* c)
+00329 {
+00330 <span class="keywordflow">return</span> usercount(c);
+00331 }
00332
-<a name="l00333"></a><a class="code" href="classConfigReader.html#a1">00333</a> <a class="code" href="classConfigReader.html#a0">ConfigReader::ConfigReader</a>(std::string filename)
-00334 {
-00335 this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00336 this-&gt;<a class="code" href="classConfigReader.html#n1">error</a> = LoadConf(filename.c_str(),this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>);
-00337 };
-00338
-<a name="l00339"></a><a class="code" href="classConfigReader.html#a3">00339</a> std::string <a class="code" href="classConfigReader.html#a3">ConfigReader::ReadValue</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index)
-00340 {
-00341 <span class="keywordtype">char</span> val[MAXBUF];
-00342 ReadConf(cache,tag.c_str(),name.c_str(),index,val);
-00343 <span class="keywordflow">return</span> val;
-00344 }
-00345
+00333
+<a name="l00334"></a><a class="code" href="classConfigReader.html#a0">00334</a> <a class="code" href="classConfigReader.html#a0">ConfigReader::ConfigReader</a>()
+00335 {
+00336 this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+00337 this-&gt;<a class="code" href="classConfigReader.html#n1">error</a> = LoadConf(CONFIG_FILE,this-&gt;cache);
+00338 }
+00339
+00340
+<a name="l00341"></a><a class="code" href="classConfigReader.html#a2">00341</a> <a class="code" href="classConfigReader.html#a2">ConfigReader::~ConfigReader</a>()
+00342 {
+00343 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>)
+00344 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>;
+00345 }
00346
-<a name="l00347"></a><a class="code" href="classConfigReader.html#a4">00347</a> <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a4">ConfigReader::Enumerate</a>(std::string tag)
-00348 {
-00349 <span class="keywordflow">return</span> EnumConf(cache,tag.c_str());
-00350 }
-00351
-<a name="l00352"></a><a class="code" href="classConfigReader.html#a6">00352</a> <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a6">ConfigReader::EnumerateValues</a>(std::string tag, <span class="keywordtype">int</span> index)
-00353 {
-00354 <span class="keywordflow">return</span> EnumValues(cache, tag.c_str(), index);
-00355 }
-00356
-<a name="l00357"></a><a class="code" href="classConfigReader.html#a5">00357</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#a5">ConfigReader::Verify</a>()
-00358 {
-00359 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classConfigReader.html#n1">error</a>;
-00360 }
+00347
+<a name="l00348"></a><a class="code" href="classConfigReader.html#a1">00348</a> <a class="code" href="classConfigReader.html#a0">ConfigReader::ConfigReader</a>(std::string filename)
+00349 {
+00350 this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+00351 this-&gt;<a class="code" href="classConfigReader.html#n1">error</a> = LoadConf(filename.c_str(),this-&gt;<a class="code" href="classConfigReader.html#n0">cache</a>);
+00352 };
+00353
+<a name="l00354"></a><a class="code" href="classConfigReader.html#a3">00354</a> std::string <a class="code" href="classConfigReader.html#a3">ConfigReader::ReadValue</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index)
+00355 {
+00356 <span class="keywordtype">char</span> val[MAXBUF];
+00357 ReadConf(cache,tag.c_str(),name.c_str(),index,val);
+00358 <span class="keywordflow">return</span> val;
+00359 }
+00360
00361
-00362
-<a name="l00363"></a><a class="code" href="classFileReader.html#a1">00363</a> <a class="code" href="classFileReader.html#a0">FileReader::FileReader</a>(std::string filename)
-00364 {
-00365 <a class="code" href="modules_8h.html#a10">file_cache</a> c;
-00366 readfile(c,filename.c_str());
-00367 this-&gt;<a class="code" href="classFileReader.html#o0">fc</a> = c;
-00368 }
-00369
-<a name="l00370"></a><a class="code" href="classFileReader.html#a0">00370</a> <a class="code" href="classFileReader.html#a0">FileReader::FileReader</a>()
-00371 {
-00372 }
-00373
-<a name="l00374"></a><a class="code" href="classFileReader.html#a3">00374</a> <span class="keywordtype">void</span> <a class="code" href="classFileReader.html#a3">FileReader::LoadFile</a>(std::string filename)
-00375 {
-00376 <a class="code" href="modules_8h.html#a10">file_cache</a> c;
-00377 readfile(c,filename.c_str());
-00378 this-&gt;<a class="code" href="classFileReader.html#o0">fc</a> = c;
-00379 }
-00380
-00381
-<a name="l00382"></a><a class="code" href="classFileReader.html#a2">00382</a> <a class="code" href="classFileReader.html#a2">FileReader::~FileReader</a>()
-00383 {
-00384 }
-00385
-<a name="l00386"></a><a class="code" href="classFileReader.html#a4">00386</a> <span class="keywordtype">bool</span> <a class="code" href="classFileReader.html#a4">FileReader::Exists</a>()
-00387 {
-00388 <span class="keywordflow">if</span> (<a class="code" href="classFileReader.html#o0">fc</a>.size() == 0)
-00389 {
-00390 <span class="keywordflow">return</span>(false);
-00391 }
-00392 <span class="keywordflow">else</span>
-00393 {
-00394 <span class="keywordflow">return</span>(true);
-00395 }
-00396 }
-00397
-<a name="l00398"></a><a class="code" href="classFileReader.html#a5">00398</a> std::string <a class="code" href="classFileReader.html#a5">FileReader::GetLine</a>(<span class="keywordtype">int</span> x)
-00399 {
-00400 <span class="keywordflow">if</span> ((x&lt;0) || (x&gt;<a class="code" href="classFileReader.html#o0">fc</a>.size()))
-00401 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-00402 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#o0">fc</a>[x];
-00403 }
-00404
-<a name="l00405"></a><a class="code" href="classFileReader.html#a6">00405</a> <span class="keywordtype">int</span> <a class="code" href="classFileReader.html#a6">FileReader::FileSize</a>()
-00406 {
-00407 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#o0">fc</a>.size();
-00408 }
-00409
-00410
-00411 std::vector&lt;Module*&gt; <a class="code" href="modules_8cpp.html#a9">modules</a>(255);
-00412 std::vector&lt;ircd_module*&gt; <a class="code" href="modules_8cpp.html#a10">factory</a>(255);
-00413
-<a name="l00414"></a><a class="code" href="modules_8cpp.html#a3">00414</a> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#a3">MODCOUNT</a> = -1;
-00415
-00416
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+<a name="l00362"></a><a class="code" href="classConfigReader.html#a4">00362</a> <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a4">ConfigReader::Enumerate</a>(std::string tag)
+00363 {
+00364 <span class="keywordflow">return</span> EnumConf(cache,tag.c_str());
+00365 }
+00366
+<a name="l00367"></a><a class="code" href="classConfigReader.html#a6">00367</a> <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a6">ConfigReader::EnumerateValues</a>(std::string tag, <span class="keywordtype">int</span> index)
+00368 {
+00369 <span class="keywordflow">return</span> EnumValues(cache, tag.c_str(), index);
+00370 }
+00371
+<a name="l00372"></a><a class="code" href="classConfigReader.html#a5">00372</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#a5">ConfigReader::Verify</a>()
+00373 {
+00374 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classConfigReader.html#n1">error</a>;
+00375 }
+00376
+00377
+<a name="l00378"></a><a class="code" href="classFileReader.html#a1">00378</a> <a class="code" href="classFileReader.html#a0">FileReader::FileReader</a>(std::string filename)
+00379 {
+00380 <a class="code" href="modules_8h.html#a10">file_cache</a> c;
+00381 readfile(c,filename.c_str());
+00382 this-&gt;<a class="code" href="classFileReader.html#o0">fc</a> = c;
+00383 }
+00384
+<a name="l00385"></a><a class="code" href="classFileReader.html#a0">00385</a> <a class="code" href="classFileReader.html#a0">FileReader::FileReader</a>()
+00386 {
+00387 }
+00388
+<a name="l00389"></a><a class="code" href="classFileReader.html#a3">00389</a> <span class="keywordtype">void</span> <a class="code" href="classFileReader.html#a3">FileReader::LoadFile</a>(std::string filename)
+00390 {
+00391 <a class="code" href="modules_8h.html#a10">file_cache</a> c;
+00392 readfile(c,filename.c_str());
+00393 this-&gt;<a class="code" href="classFileReader.html#o0">fc</a> = c;
+00394 }
+00395
+00396
+<a name="l00397"></a><a class="code" href="classFileReader.html#a2">00397</a> <a class="code" href="classFileReader.html#a2">FileReader::~FileReader</a>()
+00398 {
+00399 }
+00400
+<a name="l00401"></a><a class="code" href="classFileReader.html#a4">00401</a> <span class="keywordtype">bool</span> <a class="code" href="classFileReader.html#a4">FileReader::Exists</a>()
+00402 {
+00403 <span class="keywordflow">if</span> (<a class="code" href="classFileReader.html#o0">fc</a>.size() == 0)
+00404 {
+00405 <span class="keywordflow">return</span>(false);
+00406 }
+00407 <span class="keywordflow">else</span>
+00408 {
+00409 <span class="keywordflow">return</span>(true);
+00410 }
+00411 }
+00412
+<a name="l00413"></a><a class="code" href="classFileReader.html#a5">00413</a> std::string <a class="code" href="classFileReader.html#a5">FileReader::GetLine</a>(<span class="keywordtype">int</span> x)
+00414 {
+00415 <span class="keywordflow">if</span> ((x&lt;0) || (x&gt;<a class="code" href="classFileReader.html#o0">fc</a>.size()))
+00416 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+00417 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#o0">fc</a>[x];
+00418 }
+00419
+<a name="l00420"></a><a class="code" href="classFileReader.html#a6">00420</a> <span class="keywordtype">int</span> <a class="code" href="classFileReader.html#a6">FileReader::FileSize</a>()
+00421 {
+00422 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#o0">fc</a>.size();
+00423 }
+00424
+00425
+00426 std::vector&lt;Module*&gt; <a class="code" href="modules_8cpp.html#a9">modules</a>(255);
+00427 std::vector&lt;ircd_module*&gt; <a class="code" href="modules_8cpp.html#a10">factory</a>(255);
+00428
+<a name="l00429"></a><a class="code" href="modules_8cpp.html#a3">00429</a> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#a3">MODCOUNT</a> = -1;
+00430
+00431
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/modules_8cpp.html b/docs/module-doc/modules_8cpp.html
index d45304586..efefb31cc 100644
--- a/docs/module-doc/modules_8cpp.html
+++ b/docs/module-doc/modules_8cpp.html
@@ -153,7 +153,7 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00090">90</a> o
<p>
References <a class="el" href="modules_8cpp-source.html#l00032">EMode</a>, and <a class="el" href="modules_8cpp-source.html#l00035">ModeDefined()</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00293">Server::AddExtendedMode()</a>.
+Referenced by <a class="el" href="modules_8cpp-source.html#l00308">Server::AddExtendedMode()</a>.
<p>
<div class="fragment"><pre>00091 {
00092 <span class="keywordflow">if</span> (<a class="code" href="modules_8cpp.html#a4">ModeDefined</a>(modechar,type)) {
@@ -493,10 +493,10 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00090">DoAddExtended
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00414">414</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00429">429</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:38 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:41 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>
diff --git a/docs/module-doc/modules_8h-source.html b/docs/module-doc/modules_8h-source.html
index 7b6666e5c..32ecb0af4 100644
--- a/docs/module-doc/modules_8h-source.html
+++ b/docs/module-doc/modules_8h-source.html
@@ -36,189 +36,196 @@
<a name="l00030"></a><a class="code" href="modules_8h.html#a10">00030</a> <span class="keyword">typedef</span> std::deque&lt;std::string&gt; <a class="code" href="modules_8h.html#a10">file_cache</a>;
<a name="l00031"></a><a class="code" href="modules_8h.html#a11">00031</a> <span class="keyword">typedef</span> <a class="code" href="modules_8h.html#a10">file_cache</a> <a class="code" href="modules_8h.html#a11">string_list</a>;
00032
-00033 <span class="comment">// This #define allows us to call a method in all</span>
-00034 <span class="comment">// loaded modules in a readable simple way, e.g.:</span>
-00035 <span class="comment">// 'FOREACH_MOD OnConnect(user);'</span>
-00036
-<a name="l00037"></a><a class="code" href="modules_8h.html#a8">00037</a> <span class="preprocessor">#define FOREACH_MOD for (int i = 0; i &lt;= MODCOUNT; i++) modules[i]-&gt;</span>
-00038 <span class="preprocessor"></span>
-00039 <span class="comment">// This define is similar to the one above but returns a result in MOD_RESULT.</span>
-00040 <span class="comment">// The first module to return a nonzero result is the value to be accepted,</span>
-00041 <span class="comment">// and any modules after are ignored.</span>
-00042
-00043 <span class="comment">// *********************************************************************************************</span>
-00044
-<a name="l00045"></a><a class="code" href="modules_8h.html#a9">00045</a> <span class="preprocessor">#define FOREACH_RESULT(x) { MOD_RESULT = 0; \</span>
-00046 <span class="preprocessor"> for (int i = 0; i &lt;= MODCOUNT; i++) { \</span>
-00047 <span class="preprocessor"> int res = modules[i]-&gt;x ; \</span>
-00048 <span class="preprocessor"> if (res) { \</span>
-00049 <span class="preprocessor"> MOD_RESULT = res; \</span>
-00050 <span class="preprocessor"> break; \</span>
-00051 <span class="preprocessor"> } \</span>
-00052 <span class="preprocessor"> } \</span>
-00053 <span class="preprocessor"> } </span>
-00054 <span class="preprocessor"></span>
-00055 <span class="comment">// *********************************************************************************************</span>
-00056
-00057 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="modules_8h.html#a13">createcommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams);
-00058 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="modules_8h.html#a14">server_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00059
-00060 <span class="comment">// class Version holds the version information of a Module, returned</span>
-00061 <span class="comment">// by Module::GetVersion (thanks RD)</span>
-00062
-<a name="l00067"></a><a class="code" href="classVersion.html">00067</a> <span class="keyword">class </span><a class="code" href="classVersion.html">Version</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00068 {
-00069 <span class="keyword">public</span>:
-<a name="l00070"></a><a class="code" href="classVersion.html#m2">00070</a> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classVersion.html#m0">Major</a>, <a class="code" href="classVersion.html#m1">Minor</a>, <a class="code" href="classVersion.html#m2">Revision</a>, <a class="code" href="classVersion.html#m3">Build</a>;
-00071 <a class="code" href="classVersion.html#a0">Version</a>(<span class="keywordtype">int</span> major, <span class="keywordtype">int</span> minor, <span class="keywordtype">int</span> revision, <span class="keywordtype">int</span> build);
-00072 };
-00073
-<a name="l00079"></a><a class="code" href="classAdmin.html">00079</a> <span class="keyword">class </span><a class="code" href="classAdmin.html">Admin</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00080 {
-00081 <span class="keyword">public</span>:
-<a name="l00082"></a><a class="code" href="classAdmin.html#m2">00082</a> <span class="keyword">const</span> std::string <a class="code" href="classAdmin.html#m0">Name</a>, <a class="code" href="classAdmin.html#m1">Email</a>, <a class="code" href="classAdmin.html#m2">Nick</a>;
-00083 <a class="code" href="classAdmin.html#a0">Admin</a>(std::string name, std::string email, std::string nick);
-00084 };
-00085
-<a name="l00091"></a><a class="code" href="classModule.html">00091</a> <span class="keyword">class </span><a class="code" href="classModule.html">Module</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00092 {
-00093 <span class="keyword">public</span>:
-00094
-00098 <a class="code" href="classModule.html#a0">Module</a>();
-00099
-00103 <span class="keyword">virtual</span> <a class="code" href="classModule.html#a1">~Module</a>();
-00104
-00109 <span class="keyword">virtual</span> <a class="code" href="classVersion.html">Version</a> <a class="code" href="classModule.html#a2">GetVersion</a>();
-00110
-00114 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a3">OnUserConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00115
-00119 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a4">OnUserQuit</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00120
-00125 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a5">OnUserJoin</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel);
-00126
-00131 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a6">OnUserPart</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel);
-00132
-00139 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a7">OnPacketTransmit</a>(<span class="keywordtype">char</span> *p);
-00140
-00148 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a8">OnPacketReceive</a>(<span class="keywordtype">char</span> *p);
-00149
-00155 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a9">OnRehash</a>();
-00156
-00163 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a10">OnServerRaw</a>(std::string &amp;raw, <span class="keywordtype">bool</span> inbound);
-00164
-00174 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classModule.html#a11">OnExtendedMode</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <span class="keywordtype">void</span>* target, <span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type, <span class="keywordtype">bool</span> mode_on, string_list &amp;params);
-00175
-00188 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a12">OnUserPreJoin</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <span class="keyword">const</span> <span class="keywordtype">char</span>* cname);
-00189
+00033
+00034 <span class="comment">// This #define allows us to call a method in all</span>
+00035 <span class="comment">// loaded modules in a readable simple way, e.g.:</span>
+00036 <span class="comment">// 'FOREACH_MOD OnConnect(user);'</span>
+00037
+<a name="l00038"></a><a class="code" href="modules_8h.html#a8">00038</a> <span class="preprocessor">#define FOREACH_MOD for (int i = 0; i &lt;= MODCOUNT; i++) modules[i]-&gt;</span>
+00039 <span class="preprocessor"></span>
+00040 <span class="comment">// This define is similar to the one above but returns a result in MOD_RESULT.</span>
+00041 <span class="comment">// The first module to return a nonzero result is the value to be accepted,</span>
+00042 <span class="comment">// and any modules after are ignored.</span>
+00043
+00044 <span class="comment">// *********************************************************************************************</span>
+00045
+<a name="l00046"></a><a class="code" href="modules_8h.html#a9">00046</a> <span class="preprocessor">#define FOREACH_RESULT(x) { MOD_RESULT = 0; \</span>
+00047 <span class="preprocessor"> for (int i = 0; i &lt;= MODCOUNT; i++) { \</span>
+00048 <span class="preprocessor"> int res = modules[i]-&gt;x ; \</span>
+00049 <span class="preprocessor"> if (res) { \</span>
+00050 <span class="preprocessor"> MOD_RESULT = res; \</span>
+00051 <span class="preprocessor"> break; \</span>
+00052 <span class="preprocessor"> } \</span>
+00053 <span class="preprocessor"> } \</span>
+00054 <span class="preprocessor"> } </span>
+00055 <span class="preprocessor"></span>
+00056 <span class="comment">// *********************************************************************************************</span>
+00057
+00058 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="modules_8h.html#a13">createcommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams);
+00059 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="modules_8h.html#a14">server_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+00060
+00061 <span class="comment">// class Version holds the version information of a Module, returned</span>
+00062 <span class="comment">// by Module::GetVersion (thanks RD)</span>
+00063
+<a name="l00068"></a><a class="code" href="classVersion.html">00068</a> <span class="keyword">class </span><a class="code" href="classVersion.html">Version</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00069 {
+00070 <span class="keyword">public</span>:
+<a name="l00071"></a><a class="code" href="classVersion.html#m2">00071</a> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classVersion.html#m0">Major</a>, <a class="code" href="classVersion.html#m1">Minor</a>, <a class="code" href="classVersion.html#m2">Revision</a>, <a class="code" href="classVersion.html#m3">Build</a>;
+00072 <a class="code" href="classVersion.html#a0">Version</a>(<span class="keywordtype">int</span> major, <span class="keywordtype">int</span> minor, <span class="keywordtype">int</span> revision, <span class="keywordtype">int</span> build);
+00073 };
+00074
+<a name="l00080"></a><a class="code" href="classAdmin.html">00080</a> <span class="keyword">class </span><a class="code" href="classAdmin.html">Admin</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00081 {
+00082 <span class="keyword">public</span>:
+<a name="l00083"></a><a class="code" href="classAdmin.html#m2">00083</a> <span class="keyword">const</span> std::string <a class="code" href="classAdmin.html#m0">Name</a>, <a class="code" href="classAdmin.html#m1">Email</a>, <a class="code" href="classAdmin.html#m2">Nick</a>;
+00084 <a class="code" href="classAdmin.html#a0">Admin</a>(std::string name, std::string email, std::string nick);
+00085 };
+00086
+<a name="l00092"></a><a class="code" href="classModule.html">00092</a> <span class="keyword">class </span><a class="code" href="classModule.html">Module</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00093 {
+00094 <span class="keyword">public</span>:
+00095
+00099 <a class="code" href="classModule.html#a0">Module</a>();
+00100
+00104 <span class="keyword">virtual</span> <a class="code" href="classModule.html#a1">~Module</a>();
+00105
+00110 <span class="keyword">virtual</span> <a class="code" href="classVersion.html">Version</a> <a class="code" href="classModule.html#a2">GetVersion</a>();
+00111
+00115 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a3">OnUserConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+00116
+00120 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a4">OnUserQuit</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+00121
+00126 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a5">OnUserJoin</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel);
+00127
+00132 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a6">OnUserPart</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel);
+00133
+00140 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a7">OnPacketTransmit</a>(<span class="keywordtype">char</span> *p);
+00141
+00149 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a8">OnPacketReceive</a>(<span class="keywordtype">char</span> *p);
+00150
+00156 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a9">OnRehash</a>();
+00157
+00164 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a10">OnServerRaw</a>(std::string &amp;raw, <span class="keywordtype">bool</span> inbound);
+00165
+00175 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classModule.html#a11">OnExtendedMode</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <span class="keywordtype">void</span>* target, <span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type, <span class="keywordtype">bool</span> mode_on, string_list &amp;params);
+00176
+00189 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a12">OnUserPreJoin</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <span class="keyword">const</span> <span class="keywordtype">char</span>* cname);
00190
-00195 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a13">OnOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00196
-00205 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a14">OnInfo</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00206
-00211 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a15">OnWhois</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest);
-00212
-00221 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a16">OnUserPreMessage</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<span class="keywordtype">void</span>* dest,<span class="keywordtype">int</span> target_type, std::string text);
-00222
-00231 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a17">OnUserPreNotice</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<span class="keywordtype">void</span>* dest,<span class="keywordtype">int</span> target_type, std::string text);
-00232 };
-00233
+00191
+00196 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a13">OnOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+00197
+00206 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a14">OnInfo</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+00207
+00212 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a15">OnWhois</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest);
+00213
+00222 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a16">OnUserPreMessage</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<span class="keywordtype">void</span>* dest,<span class="keywordtype">int</span> target_type, std::string text);
+00223
+00232 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a17">OnUserPreNotice</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<span class="keywordtype">void</span>* dest,<span class="keywordtype">int</span> target_type, std::string text);
+00233 };
00234
-<a name="l00240"></a><a class="code" href="classServer.html">00240</a> <span class="keyword">class </span><a class="code" href="classServer.html">Server</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00241 {
-00242 <span class="keyword">public</span>:
-00246 <a class="code" href="classServer.html#a0">Server</a>();
-00250 <span class="keyword">virtual</span> <a class="code" href="classServer.html#a1">~Server</a>();
-00251
-00255 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a2">SendOpers</a>(std::string s);
-00260 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a3">Log</a>(<span class="keywordtype">int</span> level, std::string s);
-00265 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a4">Send</a>(<span class="keywordtype">int</span> Socket, std::string s);
-00270 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a5">SendServ</a>(<span class="keywordtype">int</span> Socket, std::string s);
-00275 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a6">SendFrom</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="classuserrec.html">userrec</a>* User, std::string s);
-00290 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a7">SendTo</a>(<a class="code" href="classuserrec.html">userrec</a>* Source, <a class="code" href="classuserrec.html">userrec</a>* Dest, std::string s);
-00297 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a8">SendChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Channel, std::string s,<span class="keywordtype">bool</span> IncludeSender);
-00302 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a9">CommonChannels</a>(<a class="code" href="classuserrec.html">userrec</a>* u1, <a class="code" href="classuserrec.html">userrec</a>* u2);
-00310 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a10">SendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text,<span class="keywordtype">bool</span> IncludeSender);
-00315 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a11">SendWallops</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text);
-00316
-00320 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a12">IsNick</a>(std::string nick);
-00324 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classServer.html#a13">CountUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* c);
-00328 <span class="keyword">virtual</span> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#a14">FindNick</a>(std::string nick);
-00332 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a15">FindChannel</a>(std::string channel);
-00337 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a16">ChanMode</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan);
-00340 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a17">GetServerName</a>();
-00343 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a18">GetNetworkName</a>();
-00349 <span class="keyword">virtual</span> <a class="code" href="classAdmin.html">Admin</a> <a class="code" href="classServer.html#a19">GetAdmin</a>();
-00368 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a20">AddExtendedMode</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type, <span class="keywordtype">bool</span> requires_oper, <span class="keywordtype">int</span> params_when_on, <span class="keywordtype">int</span> params_when_off);
-00369
-00384 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a21">AddCommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams);
-00385
-00407 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a22">SendMode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00408
-00421 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a23">SendToModeMask</a>(std::string modes, <span class="keywordtype">int</span> flags, std::string text);
-00422
-00428 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a24">JoinUserToChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string key);
-00429
-00435 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a25">PartUserFromChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string reason);
-00436
-00442 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a26">ChangeUserNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string nickname);
-00443
-00454 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a27">QuitUser</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string reason);
-00455
-00460 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a28">MatchText</a>(std::string sliteral, std::string spattern);
-00461 };
-00462
-<a name="l00469"></a><a class="code" href="classConfigReader.html">00469</a> <span class="keyword">class </span><a class="code" href="classConfigReader.html">ConfigReader</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00470 {
-00471 <span class="keyword">protected</span>:
-<a name="l00477"></a><a class="code" href="classConfigReader.html#n0">00477</a> std::stringstream *<a class="code" href="classConfigReader.html#n0">cache</a>;
-<a name="l00480"></a><a class="code" href="classConfigReader.html#n1">00480</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#n1">error</a>;
-00481
-00482 <span class="keyword">public</span>:
-00487 <a class="code" href="classConfigReader.html#a0">ConfigReader</a>(); <span class="comment">// default constructor reads ircd.conf</span>
-00491 <span class="comment"></span> <a class="code" href="classConfigReader.html#a0">ConfigReader</a>(std::string filename); <span class="comment">// read a module-specific config</span>
-00495 <span class="comment"></span> <a class="code" href="classConfigReader.html#a2">~ConfigReader</a>();
-00500 std::string <a class="code" href="classConfigReader.html#a3">ReadValue</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index);
-00507 <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a4">Enumerate</a>(std::string tag);
-00512 <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#a5">Verify</a>();
-00513
-00519 <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a6">EnumerateValues</a>(std::string tag, <span class="keywordtype">int</span> index);
-00520 };
-00521
-00522
-00523
-<a name="l00529"></a><a class="code" href="classFileReader.html">00529</a> <span class="keyword">class </span><a class="code" href="classFileReader.html">FileReader</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00530 {
-<a name="l00531"></a><a class="code" href="classFileReader.html#o0">00531</a> <a class="code" href="modules_8h.html#a10">file_cache</a> <a class="code" href="classFileReader.html#o0">fc</a>;
-00532 <span class="keyword">public</span>:
-00537 <a class="code" href="classFileReader.html#a0">FileReader</a>();
-00538
-00544 <a class="code" href="classFileReader.html#a0">FileReader</a>(std::string filename);
-00545
-00549 <a class="code" href="classFileReader.html#a2">~FileReader</a>();
+00235
+<a name="l00241"></a><a class="code" href="classServer.html">00241</a> <span class="keyword">class </span><a class="code" href="classServer.html">Server</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00242 {
+00243 <span class="keyword">public</span>:
+00247 <a class="code" href="classServer.html#a0">Server</a>();
+00251 <span class="keyword">virtual</span> <a class="code" href="classServer.html#a1">~Server</a>();
+00252
+00256 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a2">SendOpers</a>(std::string s);
+00261 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a3">Log</a>(<span class="keywordtype">int</span> level, std::string s);
+00266 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a4">Send</a>(<span class="keywordtype">int</span> Socket, std::string s);
+00271 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a5">SendServ</a>(<span class="keywordtype">int</span> Socket, std::string s);
+00276 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a6">SendFrom</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="classuserrec.html">userrec</a>* User, std::string s);
+00291 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a7">SendTo</a>(<a class="code" href="classuserrec.html">userrec</a>* Source, <a class="code" href="classuserrec.html">userrec</a>* Dest, std::string s);
+00298 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a8">SendChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Channel, std::string s,<span class="keywordtype">bool</span> IncludeSender);
+00303 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a9">CommonChannels</a>(<a class="code" href="classuserrec.html">userrec</a>* u1, <a class="code" href="classuserrec.html">userrec</a>* u2);
+00311 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a10">SendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text,<span class="keywordtype">bool</span> IncludeSender);
+00316 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a11">SendWallops</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text);
+00317
+00321 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a12">IsNick</a>(std::string nick);
+00325 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classServer.html#a13">CountUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* c);
+00329 <span class="keyword">virtual</span> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#a14">FindNick</a>(std::string nick);
+00333 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a15">FindChannel</a>(std::string channel);
+00338 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a16">ChanMode</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan);
+00341 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a17">GetServerName</a>();
+00344 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a18">GetNetworkName</a>();
+00350 <span class="keyword">virtual</span> <a class="code" href="classAdmin.html">Admin</a> <a class="code" href="classServer.html#a19">GetAdmin</a>();
+00369 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a20">AddExtendedMode</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type, <span class="keywordtype">bool</span> requires_oper, <span class="keywordtype">int</span> params_when_on, <span class="keywordtype">int</span> params_when_off);
+00370
+00385 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a21">AddCommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams);
+00386
+00408 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a22">SendMode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+00409
+00422 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a23">SendToModeMask</a>(std::string modes, <span class="keywordtype">int</span> flags, std::string text);
+00423
+00429 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a24">JoinUserToChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string key);
+00430
+00436 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a25">PartUserFromChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string reason);
+00437
+00443 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a26">ChangeUserNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string nickname);
+00444
+00455 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a27">QuitUser</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string reason);
+00456
+00461 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a28">MatchText</a>(std::string sliteral, std::string spattern);
+00462
+00474 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a29">CallCommandHandler</a>(std::string commandname, <span class="keywordtype">char</span>** parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a>* user);
+00475
+00481 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a30">ChangeHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string host);
+00482
+00488 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a31">ChangeGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string gecos);
+00489 };
+00490
+<a name="l00497"></a><a class="code" href="classConfigReader.html">00497</a> <span class="keyword">class </span><a class="code" href="classConfigReader.html">ConfigReader</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00498 {
+00499 <span class="keyword">protected</span>:
+<a name="l00505"></a><a class="code" href="classConfigReader.html#n0">00505</a> std::stringstream *<a class="code" href="classConfigReader.html#n0">cache</a>;
+<a name="l00508"></a><a class="code" href="classConfigReader.html#n1">00508</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#n1">error</a>;
+00509
+00510 <span class="keyword">public</span>:
+00515 <a class="code" href="classConfigReader.html#a0">ConfigReader</a>(); <span class="comment">// default constructor reads ircd.conf</span>
+00519 <span class="comment"></span> <a class="code" href="classConfigReader.html#a0">ConfigReader</a>(std::string filename); <span class="comment">// read a module-specific config</span>
+00523 <span class="comment"></span> <a class="code" href="classConfigReader.html#a2">~ConfigReader</a>();
+00528 std::string <a class="code" href="classConfigReader.html#a3">ReadValue</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index);
+00535 <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a4">Enumerate</a>(std::string tag);
+00540 <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#a5">Verify</a>();
+00541
+00547 <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a6">EnumerateValues</a>(std::string tag, <span class="keywordtype">int</span> index);
+00548 };
+00549
00550
-00556 <span class="keywordtype">void</span> <a class="code" href="classFileReader.html#a3">LoadFile</a>(std::string filename);
-00557
-00561 <span class="keywordtype">bool</span> <a class="code" href="classFileReader.html#a4">Exists</a>();
-00562
-00567 std::string <a class="code" href="classFileReader.html#a5">GetLine</a>(<span class="keywordtype">int</span> x);
-00568
-00574 <span class="keywordtype">int</span> <a class="code" href="classFileReader.html#a6">FileSize</a>();
-00575 };
-00576
-00577
-<a name="l00584"></a><a class="code" href="classModuleFactory.html">00584</a> <span class="keyword">class </span><a class="code" href="classModuleFactory.html">ModuleFactory</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00585 {
-00586 <span class="keyword">public</span>:
-<a name="l00587"></a><a class="code" href="classModuleFactory.html#a0">00587</a> <a class="code" href="classModuleFactory.html#a0">ModuleFactory</a>() { }
-<a name="l00588"></a><a class="code" href="classModuleFactory.html#a1">00588</a> <span class="keyword">virtual</span> <a class="code" href="classModuleFactory.html#a1">~ModuleFactory</a>() { }
-00593 <span class="keyword">virtual</span> <a class="code" href="classModule.html">Module</a> * <a class="code" href="classModuleFactory.html#a2">CreateModule</a>() = 0;
-00594 };
-00595
+00551
+<a name="l00557"></a><a class="code" href="classFileReader.html">00557</a> <span class="keyword">class </span><a class="code" href="classFileReader.html">FileReader</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00558 {
+<a name="l00559"></a><a class="code" href="classFileReader.html#o0">00559</a> <a class="code" href="modules_8h.html#a10">file_cache</a> <a class="code" href="classFileReader.html#o0">fc</a>;
+00560 <span class="keyword">public</span>:
+00565 <a class="code" href="classFileReader.html#a0">FileReader</a>();
+00566
+00572 <a class="code" href="classFileReader.html#a0">FileReader</a>(std::string filename);
+00573
+00577 <a class="code" href="classFileReader.html#a2">~FileReader</a>();
+00578
+00584 <span class="keywordtype">void</span> <a class="code" href="classFileReader.html#a3">LoadFile</a>(std::string filename);
+00585
+00589 <span class="keywordtype">bool</span> <a class="code" href="classFileReader.html#a4">Exists</a>();
+00590
+00595 std::string <a class="code" href="classFileReader.html#a5">GetLine</a>(<span class="keywordtype">int</span> x);
00596
-<a name="l00597"></a><a class="code" href="modules_8h.html#a12">00597</a> <span class="keyword">typedef</span> DLLFactory&lt;ModuleFactory&gt; <a class="code" href="modules_8h.html#a12">ircd_module</a>;
-00598
-00599 <span class="preprocessor">#endif</span>
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+00602 <span class="keywordtype">int</span> <a class="code" href="classFileReader.html#a6">FileSize</a>();
+00603 };
+00604
+00605
+<a name="l00612"></a><a class="code" href="classModuleFactory.html">00612</a> <span class="keyword">class </span><a class="code" href="classModuleFactory.html">ModuleFactory</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+00613 {
+00614 <span class="keyword">public</span>:
+<a name="l00615"></a><a class="code" href="classModuleFactory.html#a0">00615</a> <a class="code" href="classModuleFactory.html#a0">ModuleFactory</a>() { }
+<a name="l00616"></a><a class="code" href="classModuleFactory.html#a1">00616</a> <span class="keyword">virtual</span> <a class="code" href="classModuleFactory.html#a1">~ModuleFactory</a>() { }
+00621 <span class="keyword">virtual</span> <a class="code" href="classModule.html">Module</a> * <a class="code" href="classModuleFactory.html#a2">CreateModule</a>() = 0;
+00622 };
+00623
+00624
+<a name="l00625"></a><a class="code" href="modules_8h.html#a12">00625</a> <span class="keyword">typedef</span> DLLFactory&lt;ModuleFactory&gt; <a class="code" href="modules_8h.html#a12">ircd_module</a>;
+00626
+00627 <span class="preprocessor">#endif</span>
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/modules_8h.html b/docs/module-doc/modules_8h.html
index 905e2c000..163116633 100644
--- a/docs/module-doc/modules_8h.html
+++ b/docs/module-doc/modules_8h.html
@@ -134,7 +134,7 @@ Definition at line <a class="el" href="modules_8h-source.html#l00013">13</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00037">37</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00038">38</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<a name="a9" doxytag="modules.h::FOREACH_RESULT"></a><p>
@@ -172,7 +172,7 @@ Definition at line <a class="el" href="modules_8h-source.html#l00037">37</a> of
}
</pre></div>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00045">45</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00046">46</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<a name="a5" doxytag="modules.h::MT_CHANNEL"></a><p>
@@ -222,7 +222,7 @@ Definition at line <a class="el" href="modules_8h-source.html#l00017">17</a> of
<p>
Definition at line <a class="el" href="modules_8h-source.html#l00018">18</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00293">Server::AddExtendedMode()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00308">Server::AddExtendedMode()</a>. </td>
</tr>
</table>
<a name="a7" doxytag="modules.h::MT_SERVER"></a><p>
@@ -248,7 +248,7 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00293">Server::AddEx
<p>
Definition at line <a class="el" href="modules_8h-source.html#l00019">19</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00293">Server::AddExtendedMode()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00308">Server::AddExtendedMode()</a>. </td>
</tr>
</table>
<a name="a4" doxytag="modules.h::NONE"></a><p>
@@ -349,7 +349,7 @@ Low level definition of a <a class="el" href="classFileReader.html">FileReader</
<p>
Definition at line <a class="el" href="modules_8h-source.html#l00030">30</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00363">FileReader::FileReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00374">FileReader::LoadFile()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00378">FileReader::FileReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00389">FileReader::LoadFile()</a>. </td>
</tr>
</table>
<a name="a12" doxytag="modules.h::ircd_module"></a><p>
@@ -373,7 +373,7 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00363">FileReader::F
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00597">597</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00625">625</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<a name="a11" doxytag="modules.h::string_list"></a><p>
@@ -450,7 +450,7 @@ Definition at line <a class="el" href="modules_8h-source.html#l00031">31</a> of
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00183">Server::AddCommand()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00188">Server::AddCommand()</a>. </td>
</tr>
</table>
<a name="a14" doxytag="modules.h::server_mode"></a><p>
@@ -496,10 +496,10 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00183">Server::AddCo
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00188">Server::SendMode()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00193">Server::SendMode()</a>. </td>
</tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:39 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:42 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>
diff --git a/docs/module-doc/namespaces.html b/docs/module-doc/namespaces.html
index 6ab7ce4cc..7537f6f9a 100644
--- a/docs/module-doc/namespaces.html
+++ b/docs/module-doc/namespaces.html
@@ -9,7 +9,7 @@
<hr><h1>InspIRCd Namespace List</h1>Here is a list of all namespaces with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="namespacestd.html">std</a></td><td class="indexvalue"></td></tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:25 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:57 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>
diff --git a/docs/module-doc/namespacestd.html b/docs/module-doc/namespacestd.html
index f75cb72d4..44561f09e 100644
--- a/docs/module-doc/namespacestd.html
+++ b/docs/module-doc/namespacestd.html
@@ -11,7 +11,7 @@
<table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:13:25 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:57 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>
diff --git a/docs/module-doc/servers_8cpp-source.html b/docs/module-doc/servers_8cpp-source.html
index 760fa2b8d..5317f8a95 100644
--- a/docs/module-doc/servers_8cpp-source.html
+++ b/docs/module-doc/servers_8cpp-source.html
@@ -26,27 +26,29 @@
00018 <a class="code" href="classserverrec.html#m5">hops_away</a> = 1;
00019 <a class="code" href="classconnection.html#m13">signon</a> = time(NULL);
00020 <a class="code" href="classserverrec.html#m7">jupiter</a> = <span class="keyword">false</span>;
-00021 <a class="code" href="classconnection.html#m1">fd</a> = 0;
-00022 }
-00023
-00024
-<a name="l00025"></a><a class="code" href="classserverrec.html#a2">00025</a> <a class="code" href="classserverrec.html#a2">serverrec::~serverrec</a>()
-00026 {
-00027 }
-00028
-<a name="l00029"></a><a class="code" href="classserverrec.html#a1">00029</a> <a class="code" href="classserverrec.html#a0">serverrec::serverrec</a>(<span class="keywordtype">char</span>* n, <span class="keywordtype">long</span> ver, <span class="keywordtype">bool</span> jupe)
-00030 {
-00031 strcpy(name,n);
-00032 <a class="code" href="classconnection.html#m12">lastping</a> = time(NULL);
-00033 <a class="code" href="classserverrec.html#m2">usercount_i</a> = <a class="code" href="classserverrec.html#m3">usercount</a> = <a class="code" href="classserverrec.html#m4">opercount</a> = 0;
-00034 <a class="code" href="classserverrec.html#m6">version</a> = ver;
-00035 <a class="code" href="classserverrec.html#m5">hops_away</a> = 1;
-00036 <a class="code" href="classconnection.html#m13">signon</a> = time(NULL);
-00037 <a class="code" href="classserverrec.html#m7">jupiter</a> = jupe;
-00038 <a class="code" href="classconnection.html#m1">fd</a> = 0;
-00039 }
-00040
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+00021 <a class="code" href="classconnection.html#m0">fd</a> = 0;
+00022 <a class="code" href="classserverrec.html#m9">sync_soon</a> = <span class="keyword">false</span>;
+00023 }
+00024
+00025
+<a name="l00026"></a><a class="code" href="classserverrec.html#a2">00026</a> <a class="code" href="classserverrec.html#a2">serverrec::~serverrec</a>()
+00027 {
+00028 }
+00029
+<a name="l00030"></a><a class="code" href="classserverrec.html#a1">00030</a> <a class="code" href="classserverrec.html#a0">serverrec::serverrec</a>(<span class="keywordtype">char</span>* n, <span class="keywordtype">long</span> ver, <span class="keywordtype">bool</span> jupe)
+00031 {
+00032 strcpy(name,n);
+00033 <a class="code" href="classconnection.html#m12">lastping</a> = time(NULL);
+00034 <a class="code" href="classserverrec.html#m2">usercount_i</a> = <a class="code" href="classserverrec.html#m3">usercount</a> = <a class="code" href="classserverrec.html#m4">opercount</a> = 0;
+00035 <a class="code" href="classserverrec.html#m6">version</a> = ver;
+00036 <a class="code" href="classserverrec.html#m5">hops_away</a> = 1;
+00037 <a class="code" href="classconnection.html#m13">signon</a> = time(NULL);
+00038 <a class="code" href="classserverrec.html#m7">jupiter</a> = jupe;
+00039 <a class="code" href="classconnection.html#m0">fd</a> = 0;
+00040 <a class="code" href="classserverrec.html#m9">sync_soon</a> = <span class="keyword">false</span>;
+00041 }
+00042
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/servers_8cpp.html b/docs/module-doc/servers_8cpp.html
index 8b6391d93..8d9a24e52 100644
--- a/docs/module-doc/servers_8cpp.html
+++ b/docs/module-doc/servers_8cpp.html
@@ -23,7 +23,7 @@ Include dependency graph for servers.cpp:<p><center><img src="servers_8cpp__incl
<a href="servers_8cpp-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:40 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:42 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>
diff --git a/docs/module-doc/servers_8h-source.html b/docs/module-doc/servers_8h-source.html
index 347fc07a4..3a3106189 100644
--- a/docs/module-doc/servers_8h-source.html
+++ b/docs/module-doc/servers_8h-source.html
@@ -34,17 +34,22 @@
<a name="l00040"></a><a class="code" href="classserverrec.html#m5">00040</a> <span class="keywordtype">int</span> <a class="code" href="classserverrec.html#m5">hops_away</a>;
<a name="l00043"></a><a class="code" href="classserverrec.html#m6">00043</a> <span class="keywordtype">long</span> <a class="code" href="classserverrec.html#m6">version</a>;
<a name="l00046"></a><a class="code" href="classserverrec.html#m7">00046</a> <span class="keywordtype">bool</span> <a class="code" href="classserverrec.html#m7">jupiter</a>;
-00047
-00050 <a class="code" href="classserverrec.html#a0">serverrec</a>();
-00053 <a class="code" href="classserverrec.html#a0">serverrec</a>(<span class="keywordtype">char</span>* n, <span class="keywordtype">long</span> ver, <span class="keywordtype">bool</span> jupe);
-00056 <a class="code" href="classserverrec.html#a2">~serverrec</a>();
-00057 };
-00058
-00059
-00060
-00061 <span class="preprocessor">#endif</span>
-00062 <span class="preprocessor"></span>
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:27 2004 for InspIRCd by
+00047
+<a name="l00050"></a><a class="code" href="classserverrec.html#m8">00050</a> <span class="keywordtype">char</span> <a class="code" href="classserverrec.html#m8">description</a>[MAXBUF];
+00051
+<a name="l00052"></a><a class="code" href="classserverrec.html#m9">00052</a> <span class="keywordtype">bool</span> <a class="code" href="classserverrec.html#m9">sync_soon</a>;
+00053
+00056 <a class="code" href="classserverrec.html#a0">serverrec</a>();
+00059 <a class="code" href="classserverrec.html#a0">serverrec</a>(<span class="keywordtype">char</span>* n, <span class="keywordtype">long</span> ver, <span class="keywordtype">bool</span> jupe);
+00062 <a class="code" href="classserverrec.html#a2">~serverrec</a>();
+00063
+00064 };
+00065
+00066
+00067
+00068 <span class="preprocessor">#endif</span>
+00069 <span class="preprocessor"></span>
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/servers_8h.html b/docs/module-doc/servers_8h.html
index c53be807e..e09e59cbb 100644
--- a/docs/module-doc/servers_8h.html
+++ b/docs/module-doc/servers_8h.html
@@ -82,7 +82,7 @@ Definition at line <a class="el" href="servers_8h-source.html#l00014">14</a> of
Definition at line <a class="el" href="servers_8h-source.html#l00015">15</a> of file <a class="el" href="servers_8h-source.html">servers.h</a>. </td>
</tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:42 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:43 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>
diff --git a/docs/module-doc/tree.html b/docs/module-doc/tree.html
index 15ebe779d..e5d887d47 100644
--- a/docs/module-doc/tree.html
+++ b/docs/module-doc/tree.html
@@ -141,6 +141,7 @@
<p><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classHostItem.html" target="basefrm">HostItem</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classInvited.html" target="basefrm">Invited</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classInviteItem.html" target="basefrm">InviteItem</a></p>
+ <p><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classircd__connector.html" target="basefrm">ircd_connector</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classModeParameter.html" target="basefrm">ModeParameter</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classModule.html" target="basefrm">Module</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classModuleFactory.html" target="basefrm">ModuleFactory</a></p>
@@ -173,15 +174,16 @@
<p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2lastnode.png"/><img src="ftv2doc.png"/><a class="el" href="classInviteItem.html" target="basefrm">InviteItem</a></p>
</div>
<p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classInvited.html" target="basefrm">Invited</a></p>
+ <p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classircd__connector.html" target="basefrm">ircd_connector</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classModeParameter.html" target="basefrm">ModeParameter</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classModule.html" target="basefrm">Module</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classModuleFactory.html" target="basefrm">ModuleFactory</a></p>
- <p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classpacket.html" target="basefrm">packet</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classServer.html" target="basefrm">Server</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classucrec.html" target="basefrm">ucrec</a></p>
<p><img src="ftv2vertline.png"/><img src="ftv2vertline.png"/><img src="ftv2lastnode.png"/><img src="ftv2doc.png"/><a class="el" href="classVersion.html" target="basefrm">Version</a></p>
</div>
- <p><img src="ftv2vertline.png"/><img src="ftv2lastnode.png"/><img src="ftv2doc.png"/><a class="el" href="classExtMode.html" target="basefrm">ExtMode</a></p>
+ <p><img src="ftv2vertline.png"/><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="classExtMode.html" target="basefrm">ExtMode</a></p>
+ <p><img src="ftv2vertline.png"/><img src="ftv2lastnode.png"/><img src="ftv2doc.png"/><a class="el" href="classpacket.html" target="basefrm">packet</a></p>
</div>
<p><img src="ftv2node.png"/><img src="ftv2doc.png"/><a class="el" href="functions.html" target="basefrm">Compound Members</a></p>
<p><img src="ftv2pnode.png" onclick="toggleFolder('folder7', this)"/><img src="ftv2folderclosed.png" onclick="toggleFolder('folder7', this)"/><a class="el" href="namespaces.html" target="basefrm">Namespace List</a></p>
diff --git a/docs/module-doc/users_8cpp-source.html b/docs/module-doc/users_8cpp-source.html
index a30869ad5..83057ad04 100644
--- a/docs/module-doc/users_8cpp-source.html
+++ b/docs/module-doc/users_8cpp-source.html
@@ -20,7 +20,7 @@
00012 {
00013 <span class="comment">// the PROPER way to do it, AVOID bzero at *ALL* costs</span>
00014 strcpy(nick,<span class="stringliteral">""</span>);
-00015 <a class="code" href="classconnection.html#m3">ip</a> = 0;
+00015 <a class="code" href="classconnection.html#m2">ip</a> = 0;
00016 <a class="code" href="classuserrec.html#m10">timeout</a> = 0;
00017 strcpy(ident,<span class="stringliteral">""</span>);
00018 strcpy(host,<span class="stringliteral">""</span>);
@@ -30,71 +30,76 @@
00022 strcpy(inbuf,<span class="stringliteral">""</span>);
00023 strcpy(server,<span class="stringliteral">""</span>);
00024 strcpy(awaymsg,<span class="stringliteral">""</span>);
-00025 <a class="code" href="classconnection.html#m1">fd</a> = <a class="code" href="classconnection.html#m12">lastping</a> = <a class="code" href="classconnection.html#m13">signon</a> = <a class="code" href="classconnection.html#m14">idle_lastmsg</a> = <a class="code" href="classconnection.html#m15">nping</a> = <a class="code" href="classconnection.html#m11">registered</a> = 0;
-00026 <a class="code" href="classconnection.html#m10">port</a> = <a class="code" href="classconnection.html#m5">bytes_in</a> = <a class="code" href="classconnection.html#m6">bytes_out</a> = <a class="code" href="classconnection.html#m7">cmds_in</a> = <a class="code" href="classconnection.html#m8">cmds_out</a> = 0;
-00027 <a class="code" href="classconnection.html#m9">haspassed</a> = <span class="keyword">false</span>;
+00025 <a class="code" href="classconnection.html#m0">fd</a> = <a class="code" href="classconnection.html#m12">lastping</a> = <a class="code" href="classconnection.html#m13">signon</a> = <a class="code" href="classconnection.html#m14">idle_lastmsg</a> = <a class="code" href="classconnection.html#m15">nping</a> = <a class="code" href="classconnection.html#m10">registered</a> = 0;
+00026 <a class="code" href="classuserrec.html#m9">flood</a> = <a class="code" href="classconnection.html#m9">port</a> = <a class="code" href="classconnection.html#m4">bytes_in</a> = <a class="code" href="classconnection.html#m5">bytes_out</a> = <a class="code" href="classconnection.html#m6">cmds_in</a> = <a class="code" href="classconnection.html#m7">cmds_out</a> = 0;
+00027 <a class="code" href="classconnection.html#m8">haspassed</a> = <span class="keyword">false</span>;
00028 strcpy(result,<span class="stringliteral">""</span>);
00029 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; MAXCHANS; i++)
00030 {
-00031 <a class="code" href="classuserrec.html#m5">chans</a>[i].<a class="code" href="classucrec.html#m1">channel</a> = NULL;
-00032 }
-00033 <a class="code" href="classuserrec.html#o0">invites</a>.clear();
-00034 }
-00035
+00031 this-&gt;<a class="code" href="classuserrec.html#m5">chans</a>[i].<a class="code" href="classucrec.html#m1">channel</a> = NULL;
+00032 this-&gt;<a class="code" href="classuserrec.html#m5">chans</a>[i].<a class="code" href="classucrec.html#m0">uc_modes</a> = 0;
+00033 }
+00034 <a class="code" href="classuserrec.html#o0">invites</a>.clear();
+00035 }
00036
-00037
-<a name="l00038"></a><a class="code" href="classuserrec.html#a2">00038</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a2">userrec::GetFullHost</a>()
-00039 {
-00040 sprintf(result,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,dhost);
-00041 <span class="keywordflow">return</span> <a class="code" href="classuserrec.html#m8">result</a>;
-00042 }
-00043
+00037
+00038
+<a name="l00039"></a><a class="code" href="classuserrec.html#a2">00039</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a2">userrec::GetFullHost</a>()
+00040 {
+00041 sprintf(result,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,dhost);
+00042 <span class="keywordflow">return</span> <a class="code" href="classuserrec.html#m8">result</a>;
+00043 }
00044
-<a name="l00045"></a><a class="code" href="classuserrec.html#a3">00045</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a3">userrec::GetFullRealHost</a>()
-00046 {
-00047 sprintf(result,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,host);
-00048 <span class="keywordflow">return</span> <a class="code" href="classuserrec.html#m8">result</a>;
-00049 }
-00050
-<a name="l00051"></a><a class="code" href="classuserrec.html#a4">00051</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a4">userrec::IsInvited</a>(<span class="keywordtype">char</span>* channel)
-00052 {
-00053 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#o0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#o0">invites</a>.end(); i++)
-00054 {
-00055 <span class="keywordflow">if</span> (i-&gt;channel) {
-00056 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
-00057 {
-00058 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00059 }
-00060 }
-00061 }
-00062 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00063 }
-00064
-<a name="l00065"></a><a class="code" href="classuserrec.html#a5">00065</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a5">userrec::InviteTo</a>(<span class="keywordtype">char</span>* channel)
-00066 {
-00067 <a class="code" href="classInvited.html">Invited</a> i;
-00068 strcpy(i.<a class="code" href="classInvited.html#m0">channel</a>,channel);
-00069 <a class="code" href="classuserrec.html#o0">invites</a>.push_back(i);
-00070 }
-00071
-<a name="l00072"></a><a class="code" href="classuserrec.html#a6">00072</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a6">userrec::RemoveInvite</a>(<span class="keywordtype">char</span>* channel)
-00073 {
-00074 log(DEBUG,<span class="stringliteral">"Removing invites"</span>);
-00075 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o0">invites</a>.size())
-00076 {
-00077 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#o0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#o0">invites</a>.end(); i++)
-00078 {
-00079 <span class="keywordflow">if</span> (i-&gt;channel) {
-00080 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
-00081 {
-00082 <a class="code" href="classuserrec.html#o0">invites</a>.erase(i);
-00083 <span class="keywordflow">return</span>;
-00084 }
-00085 }
-00086 }
-00087 }
-00088 }
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:28 2004 for InspIRCd by
+00045
+<a name="l00046"></a><a class="code" href="classuserrec.html#a3">00046</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a3">userrec::GetFullRealHost</a>()
+00047 {
+00048 sprintf(result,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,host);
+00049 <span class="keywordflow">return</span> <a class="code" href="classuserrec.html#m8">result</a>;
+00050 }
+00051
+<a name="l00052"></a><a class="code" href="classuserrec.html#a4">00052</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a4">userrec::IsInvited</a>(<span class="keywordtype">char</span>* channel)
+00053 {
+00054 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#o0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#o0">invites</a>.end(); i++)
+00055 {
+00056 <span class="keywordflow">if</span> (i-&gt;channel) {
+00057 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
+00058 {
+00059 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00060 }
+00061 }
+00062 }
+00063 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00064 }
+00065
+<a name="l00066"></a><a class="code" href="classuserrec.html#a5">00066</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a5">userrec::InviteTo</a>(<span class="keywordtype">char</span>* channel)
+00067 {
+00068 <a class="code" href="classInvited.html">Invited</a> i;
+00069 strcpy(i.<a class="code" href="classInvited.html#m0">channel</a>,channel);
+00070 <a class="code" href="classuserrec.html#o0">invites</a>.push_back(i);
+00071 }
+00072
+<a name="l00073"></a><a class="code" href="classuserrec.html#a6">00073</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a6">userrec::RemoveInvite</a>(<span class="keywordtype">char</span>* channel)
+00074 {
+00075 log(DEBUG,<span class="stringliteral">"Removing invites"</span>);
+00076 <span class="keywordflow">if</span> (channel)
+00077 {
+00078 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o0">invites</a>.size())
+00079 {
+00080 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#o0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#o0">invites</a>.end(); i++)
+00081 {
+00082 <span class="keywordflow">if</span> (i-&gt;channel)
+00083 {
+00084 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
+00085 {
+00086 <a class="code" href="classuserrec.html#o0">invites</a>.erase(i);
+00087 <span class="keywordflow">return</span>;
+00088 }
+00089 }
+00090 }
+00091 }
+00092 }
+00093 }
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/users_8cpp.html b/docs/module-doc/users_8cpp.html
index 1db0c02cd..4ba16ebe5 100644
--- a/docs/module-doc/users_8cpp.html
+++ b/docs/module-doc/users_8cpp.html
@@ -15,17 +15,17 @@
<p>
Include dependency graph for users.cpp:<p><center><img src="users_8cpp__incl.gif" border="0" usemap="#users.cpp_map" alt="Include dependency graph"></center>
<map name="users.cpp_map">
-<area href="channels_8h.html" shape="rect" coords="277,155,349,176" alt="">
+<area href="channels_8h.html" shape="rect" coords="271,155,343,176" alt="">
<area href="base_8h.html" shape="rect" coords="276,85,324,107" alt="">
-<area href="users_8h.html" shape="rect" coords="176,224,227,245" alt="">
-<area href="connection_8h.html" shape="rect" coords="123,155,203,176" alt="">
+<area href="users_8h.html" shape="rect" coords="143,224,193,245" alt="">
+<area href="connection_8h.html" shape="rect" coords="167,155,247,176" alt="">
</map>
<p>
<a href="users_8cpp-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:43 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:43 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>
diff --git a/docs/module-doc/users_8cpp__incl.gif b/docs/module-doc/users_8cpp__incl.gif
index 8b2adf33d..d0b671c94 100644
--- a/docs/module-doc/users_8cpp__incl.gif
+++ b/docs/module-doc/users_8cpp__incl.gif
Binary files differ
diff --git a/docs/module-doc/users_8h-source.html b/docs/module-doc/users_8h-source.html
index 05c0fb657..666c0a7c5 100644
--- a/docs/module-doc/users_8h-source.html
+++ b/docs/module-doc/users_8h-source.html
@@ -38,73 +38,75 @@
<a name="l00034"></a><a class="code" href="classConnectClass.html">00034</a> <span class="keyword">class </span><a class="code" href="classConnectClass.html">ConnectClass</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
00035 {
00036 <span class="keyword">public</span>:
-<a name="l00037"></a><a class="code" href="classConnectClass.html#m0">00037</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#m0">type</a>;
-<a name="l00038"></a><a class="code" href="classConnectClass.html#m1">00038</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#m1">registration_timeout</a>;
-<a name="l00039"></a><a class="code" href="classConnectClass.html#m2">00039</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#m2">host</a>[MAXBUF];
-<a name="l00040"></a><a class="code" href="classConnectClass.html#m3">00040</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#m3">pass</a>[MAXBUF];
-00041
-<a name="l00042"></a><a class="code" href="classConnectClass.html#a0">00042</a> <a class="code" href="classConnectClass.html#a0">ConnectClass</a>()
-00043 {
-00044 registration_timeout = 0;
-00045 strcpy(host,<span class="stringliteral">""</span>);
-00046 strcpy(pass,<span class="stringliteral">""</span>);
-00047 }
-00048 };
-00049
-<a name="l00052"></a><a class="code" href="users_8h.html#a6">00052</a> <span class="keyword">typedef</span> std::vector&lt;Invited&gt; <a class="code" href="users_8h.html#a6">InvitedList</a>;
-00053
-00054
-00055
-<a name="l00058"></a><a class="code" href="users_8h.html#a7">00058</a> <span class="keyword">typedef</span> std::vector&lt;ConnectClass&gt; <a class="code" href="users_8h.html#a7">ClassVector</a>;
-00059
-<a name="l00066"></a><a class="code" href="classuserrec.html">00066</a> <span class="keyword">class </span><a class="code" href="classuserrec.html">userrec</a> : <span class="keyword">public</span> <a class="code" href="classconnection.html">connection</a>
-00067 {
-00068 <span class="keyword">private</span>:
-00069
-<a name="l00072"></a><a class="code" href="classuserrec.html#o0">00072</a> <a class="code" href="users_8h.html#a6">InvitedList</a> <a class="code" href="classuserrec.html#o0">invites</a>;
-00073 <span class="keyword">public</span>:
-00074
-<a name="l00079"></a><a class="code" href="classuserrec.html#m0">00079</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m0">nick</a>[NICKMAX];
-00080
-<a name="l00083"></a><a class="code" href="classuserrec.html#m1">00083</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m1">ident</a>[64];
-00084
-<a name="l00088"></a><a class="code" href="classuserrec.html#m2">00088</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m2">dhost</a>[256];
-00089
-<a name="l00092"></a><a class="code" href="classuserrec.html#m3">00092</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m3">fullname</a>[128];
-00093
-<a name="l00098"></a><a class="code" href="classuserrec.html#m4">00098</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m4">modes</a>[MAXBUF];
-00099
-<a name="l00100"></a><a class="code" href="classuserrec.html#m5">00100</a> <a class="code" href="classucrec.html">ucrec</a> <a class="code" href="classuserrec.html#m5">chans</a>[MAXCHANS];
+<a name="l00039"></a><a class="code" href="classConnectClass.html#m0">00039</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#m0">type</a>;
+<a name="l00042"></a><a class="code" href="classConnectClass.html#m1">00042</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#m1">registration_timeout</a>;
+<a name="l00045"></a><a class="code" href="classConnectClass.html#m2">00045</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#m2">flood</a>;
+<a name="l00048"></a><a class="code" href="classConnectClass.html#m3">00048</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#m3">host</a>[MAXBUF];
+<a name="l00051"></a><a class="code" href="classConnectClass.html#m4">00051</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#m4">pass</a>[MAXBUF];
+00052
+<a name="l00053"></a><a class="code" href="classConnectClass.html#a0">00053</a> <a class="code" href="classConnectClass.html#a0">ConnectClass</a>()
+00054 {
+00055 registration_timeout = 0;
+00056 flood = 0;
+00057 strcpy(host,<span class="stringliteral">""</span>);
+00058 strcpy(pass,<span class="stringliteral">""</span>);
+00059 }
+00060 };
+00061
+<a name="l00064"></a><a class="code" href="users_8h.html#a6">00064</a> <span class="keyword">typedef</span> std::vector&lt;Invited&gt; <a class="code" href="users_8h.html#a6">InvitedList</a>;
+00065
+00066
+00067
+<a name="l00070"></a><a class="code" href="users_8h.html#a7">00070</a> <span class="keyword">typedef</span> std::vector&lt;ConnectClass&gt; <a class="code" href="users_8h.html#a7">ClassVector</a>;
+00071
+<a name="l00078"></a><a class="code" href="classuserrec.html">00078</a> <span class="keyword">class </span><a class="code" href="classuserrec.html">userrec</a> : <span class="keyword">public</span> <a class="code" href="classconnection.html">connection</a>
+00079 {
+00080 <span class="keyword">private</span>:
+00081
+<a name="l00084"></a><a class="code" href="classuserrec.html#o0">00084</a> <a class="code" href="users_8h.html#a6">InvitedList</a> <a class="code" href="classuserrec.html#o0">invites</a>;
+00085 <span class="keyword">public</span>:
+00086
+<a name="l00091"></a><a class="code" href="classuserrec.html#m0">00091</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m0">nick</a>[NICKMAX];
+00092
+<a name="l00095"></a><a class="code" href="classuserrec.html#m1">00095</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m1">ident</a>[64];
+00096
+<a name="l00100"></a><a class="code" href="classuserrec.html#m2">00100</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m2">dhost</a>[256];
00101
-<a name="l00104"></a><a class="code" href="classuserrec.html#m6">00104</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m6">server</a>[256];
+<a name="l00104"></a><a class="code" href="classuserrec.html#m3">00104</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m3">fullname</a>[128];
00105
-<a name="l00109"></a><a class="code" href="classuserrec.html#m7">00109</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m7">awaymsg</a>[512];
-00110
-<a name="l00114"></a><a class="code" href="classuserrec.html#m8">00114</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m8">result</a>[256];
-00115
-<a name="l00116"></a><a class="code" href="classuserrec.html#m9">00116</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m9">carryover</a>[MAXBUF];
+<a name="l00110"></a><a class="code" href="classuserrec.html#m4">00110</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m4">modes</a>[MAXBUF];
+00111
+<a name="l00112"></a><a class="code" href="classuserrec.html#m5">00112</a> <a class="code" href="classucrec.html">ucrec</a> <a class="code" href="classuserrec.html#m5">chans</a>[MAXCHANS];
+00113
+<a name="l00116"></a><a class="code" href="classuserrec.html#m6">00116</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m6">server</a>[256];
00117
-<a name="l00118"></a><a class="code" href="classuserrec.html#m10">00118</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classuserrec.html#m10">timeout</a>;
-00119
-00120 <a class="code" href="classuserrec.html#a0">userrec</a>();
-00121
-<a name="l00122"></a><a class="code" href="classuserrec.html#a1">00122</a> <span class="keyword">virtual</span> <a class="code" href="classuserrec.html#a1">~userrec</a>() { }
-00123
-00128 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a2">GetFullHost</a>();
-00129
-00135 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a3">GetFullRealHost</a>();
-00136
-00139 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a4">IsInvited</a>(<span class="keywordtype">char</span>* channel);
-00140
-00143 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a5">InviteTo</a>(<span class="keywordtype">char</span>* channel);
-00144
-00149 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a6">RemoveInvite</a>(<span class="keywordtype">char</span>* channel);
-00150
-00151 };
-00152
-00153
-00154 <span class="preprocessor">#endif</span>
-</pre></div><hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:28 2004 for InspIRCd by
+<a name="l00121"></a><a class="code" href="classuserrec.html#m7">00121</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m7">awaymsg</a>[512];
+00122
+<a name="l00126"></a><a class="code" href="classuserrec.html#m8">00126</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#m8">result</a>[256];
+00127
+<a name="l00132"></a><a class="code" href="classuserrec.html#m9">00132</a> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#m9">flood</a>;
+00133
+<a name="l00138"></a><a class="code" href="classuserrec.html#m10">00138</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classuserrec.html#m10">timeout</a>;
+00139
+00140 <a class="code" href="classuserrec.html#a0">userrec</a>();
+00141
+<a name="l00142"></a><a class="code" href="classuserrec.html#a1">00142</a> <span class="keyword">virtual</span> <a class="code" href="classuserrec.html#a1">~userrec</a>() { }
+00143
+00148 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a2">GetFullHost</a>();
+00149
+00155 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a3">GetFullRealHost</a>();
+00156
+00159 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a4">IsInvited</a>(<span class="keywordtype">char</span>* channel);
+00160
+00163 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a5">InviteTo</a>(<span class="keywordtype">char</span>* channel);
+00164
+00169 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a6">RemoveInvite</a>(<span class="keywordtype">char</span>* channel);
+00170
+00171 };
+00172
+00173
+00174 <span class="preprocessor">#endif</span>
+</pre></div><hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:38 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>
diff --git a/docs/module-doc/users_8h.html b/docs/module-doc/users_8h.html
index 5285e2246..fff121f55 100644
--- a/docs/module-doc/users_8h.html
+++ b/docs/module-doc/users_8h.html
@@ -216,7 +216,7 @@ Holds a complete list of all allow and deny tags from the configuration file (co
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00058">58</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00070">70</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
<a name="a6" doxytag="users.h::InvitedList"></a><p>
@@ -242,10 +242,10 @@ Holds a complete list of all channels to which a user has been invited and has n
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00052">52</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00064">64</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<hr><address style="align: right;"><small>Generated on Thu Apr 8 19:12:45 2004 for InspIRCd by
+<hr><address style="align: right;"><small>Generated on Sat Apr 17 13:31:44 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>