summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/man/man3/Admin.333
-rw-r--r--docs/man/man3/BanItem.36
-rw-r--r--docs/man/man3/BoolSet.330
-rw-r--r--docs/man/man3/ConfigReader.3365
-rw-r--r--docs/man/man3/ConnectClass.343
-rw-r--r--docs/man/man3/DNS.376
-rw-r--r--docs/man/man3/ELine.39
-rw-r--r--docs/man/man3/Event.391
-rw-r--r--docs/man/man3/ExemptItem.36
-rw-r--r--docs/man/man3/ExtMode.340
-rw-r--r--docs/man/man3/Extensible.338
-rw-r--r--docs/man/man3/FileReader.3137
-rw-r--r--docs/man/man3/GLine.310
-rw-r--r--docs/man/man3/HostItem.38
-rw-r--r--docs/man/man3/InviteItem.36
-rw-r--r--docs/man/man3/Invited.36
-rw-r--r--docs/man/man3/KLine.310
-rw-r--r--docs/man/man3/ModeParameter.34
-rw-r--r--docs/man/man3/Module.3618
-rw-r--r--docs/man/man3/ModuleFactory.322
-rw-r--r--docs/man/man3/ModuleMessage.323
-rw-r--r--docs/man/man3/QLine.318
-rw-r--r--docs/man/man3/Request.387
-rw-r--r--docs/man/man3/Server.31278
-rw-r--r--docs/man/man3/Version.321
-rw-r--r--docs/man/man3/WhoWasUser.36
-rw-r--r--docs/man/man3/XLine.328
-rw-r--r--docs/man/man3/ZLine.316
-rw-r--r--docs/man/man3/base.h.330
-rw-r--r--docs/man/man3/channels.cpp.382
-rw-r--r--docs/man/man3/channels.h.332
-rw-r--r--docs/man/man3/chanrec.3348
-rw-r--r--docs/man/man3/classbase.318
-rw-r--r--docs/man/man3/command_t.334
-rw-r--r--docs/man/man3/commands.h.3136
-rw-r--r--docs/man/man3/connection.389
-rw-r--r--docs/man/man3/connection.h.367
-rw-r--r--docs/man/man3/ctables.h.34
-rw-r--r--docs/man/man3/dns.h.310
-rw-r--r--docs/man/man3/dns_ip4list.35
-rw-r--r--docs/man/man3/hashcomp.h.334
-rw-r--r--docs/man/man3/irc.317
-rw-r--r--docs/man/man3/irc_InAddr_HashComp.36
-rw-r--r--docs/man/man3/irc_StrHashComp.38
-rw-r--r--docs/man/man3/irc_irc_char_traits.328
-rw-r--r--docs/man/man3/message.h.32
-rw-r--r--docs/man/man3/mode.h.33
-rw-r--r--docs/man/man3/modules.cpp.3297
-rw-r--r--docs/man/man3/modules.h.381
-rw-r--r--docs/man/man3/nspace.38
-rw-r--r--docs/man/man3/std.32
-rw-r--r--docs/man/man3/std_char_traits.32
-rw-r--r--docs/man/man3/ucrec.322
-rw-r--r--docs/man/man3/userrec.3704
-rw-r--r--docs/man/man3/users.cpp.37
-rw-r--r--docs/man/man3/users.h.324
-rw-r--r--docs/man/man3/xline.h.327
-rw-r--r--docs/module-doc/annotated.html22
-rw-r--r--docs/module-doc/base_8h-source.html168
-rw-r--r--docs/module-doc/base_8h.html118
-rw-r--r--docs/module-doc/base_8h__dep__incl.gifbin2311 -> 8561 bytes
-rw-r--r--docs/module-doc/base_8h__dep__incl.map13
-rw-r--r--docs/module-doc/base_8h__dep__incl.md51
-rw-r--r--docs/module-doc/base_8h__incl.gifbin1809 -> 1795 bytes
-rw-r--r--docs/module-doc/base_8h__incl.map1
-rw-r--r--docs/module-doc/base_8h__incl.md51
-rw-r--r--docs/module-doc/channels_8cpp-source.html455
-rw-r--r--docs/module-doc/channels_8cpp.html679
-rw-r--r--docs/module-doc/channels_8cpp__incl.gifbin37780 -> 23588 bytes
-rw-r--r--docs/module-doc/channels_8cpp__incl.map7
-rw-r--r--docs/module-doc/channels_8cpp__incl.md51
-rw-r--r--docs/module-doc/channels_8h-source.html281
-rw-r--r--docs/module-doc/channels_8h.html235
-rw-r--r--docs/module-doc/channels_8h__dep__incl.gifbin5287 -> 5188 bytes
-rw-r--r--docs/module-doc/channels_8h__dep__incl.map9
-rw-r--r--docs/module-doc/channels_8h__dep__incl.md51
-rw-r--r--docs/module-doc/channels_8h__incl.gifbin3121 -> 2912 bytes
-rw-r--r--docs/module-doc/channels_8h__incl.map2
-rw-r--r--docs/module-doc/channels_8h__incl.md51
-rw-r--r--docs/module-doc/classAdmin-members.html27
-rw-r--r--docs/module-doc/classAdmin.html101
-rw-r--r--docs/module-doc/classAdmin__coll__graph.gifbin2019 -> 2022 bytes
-rw-r--r--docs/module-doc/classAdmin__coll__graph.map2
-rw-r--r--docs/module-doc/classAdmin__coll__graph.md51
-rw-r--r--docs/module-doc/classAdmin__inherit__graph.gifbin776 -> 766 bytes
-rw-r--r--docs/module-doc/classAdmin__inherit__graph.map2
-rw-r--r--docs/module-doc/classAdmin__inherit__graph.md51
-rw-r--r--docs/module-doc/classBanItem-members.html29
-rw-r--r--docs/module-doc/classBanItem.html25
-rw-r--r--docs/module-doc/classBanItem__coll__graph.gifbin2874 -> 2871 bytes
-rw-r--r--docs/module-doc/classBanItem__coll__graph.map3
-rw-r--r--docs/module-doc/classBanItem__coll__graph.md51
-rw-r--r--docs/module-doc/classBanItem__inherit__graph.gifbin1133 -> 1125 bytes
-rw-r--r--docs/module-doc/classBanItem__inherit__graph.map3
-rw-r--r--docs/module-doc/classBanItem__inherit__graph.md51
-rw-r--r--docs/module-doc/classBoolSet-members.html35
-rw-r--r--docs/module-doc/classBoolSet.html176
-rw-r--r--docs/module-doc/classBoolSet__coll__graph.gifbin818 -> 815 bytes
-rw-r--r--docs/module-doc/classBoolSet__coll__graph.map1
-rw-r--r--docs/module-doc/classBoolSet__coll__graph.md51
-rw-r--r--docs/module-doc/classConfigReader-members.html49
-rw-r--r--docs/module-doc/classConfigReader.html632
-rw-r--r--docs/module-doc/classConfigReader__coll__graph.gifbin3224 -> 3200 bytes
-rw-r--r--docs/module-doc/classConfigReader__coll__graph.map2
-rw-r--r--docs/module-doc/classConfigReader__coll__graph.md51
-rw-r--r--docs/module-doc/classConfigReader__inherit__graph.gifbin949 -> 950 bytes
-rw-r--r--docs/module-doc/classConfigReader__inherit__graph.map2
-rw-r--r--docs/module-doc/classConfigReader__inherit__graph.md51
-rw-r--r--docs/module-doc/classConnectClass-members.html39
-rw-r--r--docs/module-doc/classConnectClass.html179
-rw-r--r--docs/module-doc/classConnectClass__coll__graph.gifbin3998 -> 4037 bytes
-rw-r--r--docs/module-doc/classConnectClass__coll__graph.map2
-rw-r--r--docs/module-doc/classConnectClass__coll__graph.md51
-rw-r--r--docs/module-doc/classConnectClass__inherit__graph.gifbin944 -> 941 bytes
-rw-r--r--docs/module-doc/classConnectClass__inherit__graph.map2
-rw-r--r--docs/module-doc/classConnectClass__inherit__graph.md51
-rw-r--r--docs/module-doc/classDNS-members.html67
-rw-r--r--docs/module-doc/classDNS.html390
-rw-r--r--docs/module-doc/classDNS__coll__graph.gifbin2064 -> 1691 bytes
-rw-r--r--docs/module-doc/classDNS__coll__graph.map1
-rw-r--r--docs/module-doc/classDNS__coll__graph.md51
-rw-r--r--docs/module-doc/classELine-members.html31
-rw-r--r--docs/module-doc/classELine.html47
-rw-r--r--docs/module-doc/classELine__coll__graph.gifbin3920 -> 3915 bytes
-rw-r--r--docs/module-doc/classELine__coll__graph.map3
-rw-r--r--docs/module-doc/classELine__coll__graph.md51
-rw-r--r--docs/module-doc/classELine__inherit__graph.gifbin1036 -> 1022 bytes
-rw-r--r--docs/module-doc/classELine__inherit__graph.map3
-rw-r--r--docs/module-doc/classELine__inherit__graph.md51
-rw-r--r--docs/module-doc/classEvent-members.html36
-rw-r--r--docs/module-doc/classEvent.html227
-rw-r--r--docs/module-doc/classEvent__coll__graph.gifbin3377 -> 3362 bytes
-rw-r--r--docs/module-doc/classEvent__coll__graph.map4
-rw-r--r--docs/module-doc/classEvent__coll__graph.md51
-rw-r--r--docs/module-doc/classEvent__inherit__graph.gifbin1306 -> 1310 bytes
-rw-r--r--docs/module-doc/classEvent__inherit__graph.map3
-rw-r--r--docs/module-doc/classEvent__inherit__graph.md51
-rw-r--r--docs/module-doc/classExemptItem-members.html29
-rw-r--r--docs/module-doc/classExemptItem.html25
-rw-r--r--docs/module-doc/classExemptItem__coll__graph.gifbin2939 -> 2936 bytes
-rw-r--r--docs/module-doc/classExemptItem__coll__graph.map3
-rw-r--r--docs/module-doc/classExemptItem__coll__graph.md51
-rw-r--r--docs/module-doc/classExemptItem__inherit__graph.gifbin1217 -> 1211 bytes
-rw-r--r--docs/module-doc/classExemptItem__inherit__graph.map3
-rw-r--r--docs/module-doc/classExemptItem__inherit__graph.md51
-rw-r--r--docs/module-doc/classExtMode-members.html33
-rw-r--r--docs/module-doc/classExtMode.html157
-rw-r--r--docs/module-doc/classExtMode__coll__graph.gifbin3625 -> 3634 bytes
-rw-r--r--docs/module-doc/classExtMode__coll__graph.map2
-rw-r--r--docs/module-doc/classExtMode__coll__graph.md51
-rw-r--r--docs/module-doc/classExtMode__inherit__graph.gifbin830 -> 826 bytes
-rw-r--r--docs/module-doc/classExtMode__inherit__graph.map2
-rw-r--r--docs/module-doc/classExtMode__inherit__graph.md51
-rw-r--r--docs/module-doc/classExtensible-members.html27
-rw-r--r--docs/module-doc/classExtensible.html111
-rw-r--r--docs/module-doc/classExtensible__coll__graph.gifbin2336 -> 2331 bytes
-rw-r--r--docs/module-doc/classExtensible__coll__graph.map2
-rw-r--r--docs/module-doc/classExtensible__coll__graph.md51
-rw-r--r--docs/module-doc/classExtensible__inherit__graph.gifbin3140 -> 2359 bytes
-rw-r--r--docs/module-doc/classExtensible__inherit__graph.map6
-rw-r--r--docs/module-doc/classExtensible__inherit__graph.md51
-rw-r--r--docs/module-doc/classFileReader-members.html35
-rw-r--r--docs/module-doc/classFileReader.html249
-rw-r--r--docs/module-doc/classFileReader__coll__graph.gifbin1825 -> 1817 bytes
-rw-r--r--docs/module-doc/classFileReader__coll__graph.map2
-rw-r--r--docs/module-doc/classFileReader__coll__graph.md51
-rw-r--r--docs/module-doc/classFileReader__inherit__graph.gifbin865 -> 855 bytes
-rw-r--r--docs/module-doc/classFileReader__inherit__graph.map2
-rw-r--r--docs/module-doc/classFileReader__inherit__graph.md51
-rw-r--r--docs/module-doc/classGLine-members.html31
-rw-r--r--docs/module-doc/classGLine.html40
-rw-r--r--docs/module-doc/classGLine__coll__graph.gifbin3945 -> 3945 bytes
-rw-r--r--docs/module-doc/classGLine__coll__graph.map3
-rw-r--r--docs/module-doc/classGLine__coll__graph.md51
-rw-r--r--docs/module-doc/classGLine__inherit__graph.gifbin1055 -> 1047 bytes
-rw-r--r--docs/module-doc/classGLine__inherit__graph.map3
-rw-r--r--docs/module-doc/classGLine__inherit__graph.md51
-rw-r--r--docs/module-doc/classHostItem-members.html29
-rw-r--r--docs/module-doc/classHostItem.html100
-rw-r--r--docs/module-doc/classHostItem__coll__graph.gifbin2476 -> 2469 bytes
-rw-r--r--docs/module-doc/classHostItem__coll__graph.map2
-rw-r--r--docs/module-doc/classHostItem__coll__graph.md51
-rw-r--r--docs/module-doc/classHostItem__inherit__graph.gifbin2023 -> 2030 bytes
-rw-r--r--docs/module-doc/classHostItem__inherit__graph.map5
-rw-r--r--docs/module-doc/classHostItem__inherit__graph.md51
-rw-r--r--docs/module-doc/classInspSocket-members.html43
-rw-r--r--docs/module-doc/classInspSocket.html1212
-rw-r--r--docs/module-doc/classInspSocket__coll__graph.gifbin0 -> 6744 bytes
-rw-r--r--docs/module-doc/classInspSocket__coll__graph.map1
-rw-r--r--docs/module-doc/classInspSocket__coll__graph.md51
-rw-r--r--docs/module-doc/classInviteItem-members.html29
-rw-r--r--docs/module-doc/classInviteItem.html25
-rw-r--r--docs/module-doc/classInviteItem__coll__graph.gifbin2893 -> 2893 bytes
-rw-r--r--docs/module-doc/classInviteItem__coll__graph.map3
-rw-r--r--docs/module-doc/classInviteItem__coll__graph.md51
-rw-r--r--docs/module-doc/classInviteItem__inherit__graph.gifbin1147 -> 1138 bytes
-rw-r--r--docs/module-doc/classInviteItem__inherit__graph.map3
-rw-r--r--docs/module-doc/classInviteItem__inherit__graph.md51
-rw-r--r--docs/module-doc/classInvited-members.html21
-rw-r--r--docs/module-doc/classInvited.html36
-rw-r--r--docs/module-doc/classInvited__coll__graph.gifbin1757 -> 1752 bytes
-rw-r--r--docs/module-doc/classInvited__coll__graph.map2
-rw-r--r--docs/module-doc/classInvited__coll__graph.md51
-rw-r--r--docs/module-doc/classInvited__inherit__graph.gifbin788 -> 775 bytes
-rw-r--r--docs/module-doc/classInvited__inherit__graph.map2
-rw-r--r--docs/module-doc/classInvited__inherit__graph.md51
-rw-r--r--docs/module-doc/classKLine-members.html31
-rw-r--r--docs/module-doc/classKLine.html40
-rw-r--r--docs/module-doc/classKLine__coll__graph.gifbin3944 -> 3938 bytes
-rw-r--r--docs/module-doc/classKLine__coll__graph.map3
-rw-r--r--docs/module-doc/classKLine__coll__graph.md51
-rw-r--r--docs/module-doc/classKLine__inherit__graph.gifbin1055 -> 1049 bytes
-rw-r--r--docs/module-doc/classKLine__inherit__graph.map3
-rw-r--r--docs/module-doc/classKLine__inherit__graph.md51
-rw-r--r--docs/module-doc/classModeParameter-members.html25
-rw-r--r--docs/module-doc/classModeParameter.html62
-rw-r--r--docs/module-doc/classModeParameter__coll__graph.gifbin2319 -> 2309 bytes
-rw-r--r--docs/module-doc/classModeParameter__coll__graph.map2
-rw-r--r--docs/module-doc/classModeParameter__coll__graph.md51
-rw-r--r--docs/module-doc/classModeParameter__inherit__graph.gifbin1004 -> 1000 bytes
-rw-r--r--docs/module-doc/classModeParameter__inherit__graph.map2
-rw-r--r--docs/module-doc/classModeParameter__inherit__graph.md51
-rw-r--r--docs/module-doc/classModule-members.html131
-rw-r--r--docs/module-doc/classModule.html1618
-rw-r--r--docs/module-doc/classModuleFactory-members.html25
-rw-r--r--docs/module-doc/classModuleFactory.html72
-rw-r--r--docs/module-doc/classModuleFactory__coll__graph.gifbin1463 -> 1439 bytes
-rw-r--r--docs/module-doc/classModuleFactory__coll__graph.map2
-rw-r--r--docs/module-doc/classModuleFactory__coll__graph.md51
-rw-r--r--docs/module-doc/classModuleFactory__inherit__graph.gifbin977 -> 980 bytes
-rw-r--r--docs/module-doc/classModuleFactory__inherit__graph.map2
-rw-r--r--docs/module-doc/classModuleFactory__inherit__graph.md51
-rw-r--r--docs/module-doc/classModuleMessage-members.html22
-rw-r--r--docs/module-doc/classModuleMessage.html79
-rw-r--r--docs/module-doc/classModuleMessage__coll__graph.gifbin1525 -> 1512 bytes
-rw-r--r--docs/module-doc/classModuleMessage__coll__graph.map2
-rw-r--r--docs/module-doc/classModuleMessage__coll__graph.md51
-rw-r--r--docs/module-doc/classModuleMessage__inherit__graph.gifbin1662 -> 1660 bytes
-rw-r--r--docs/module-doc/classModuleMessage__inherit__graph.map4
-rw-r--r--docs/module-doc/classModuleMessage__inherit__graph.md51
-rw-r--r--docs/module-doc/classModule__coll__graph.gifbin1231 -> 1226 bytes
-rw-r--r--docs/module-doc/classModule__coll__graph.map2
-rw-r--r--docs/module-doc/classModule__coll__graph.md51
-rw-r--r--docs/module-doc/classModule__inherit__graph.gifbin805 -> 795 bytes
-rw-r--r--docs/module-doc/classModule__inherit__graph.map2
-rw-r--r--docs/module-doc/classModule__inherit__graph.md51
-rw-r--r--docs/module-doc/classQLine-members.html33
-rw-r--r--docs/module-doc/classQLine.html53
-rw-r--r--docs/module-doc/classQLine__coll__graph.gifbin4154 -> 4165 bytes
-rw-r--r--docs/module-doc/classQLine__coll__graph.map3
-rw-r--r--docs/module-doc/classQLine__coll__graph.md51
-rw-r--r--docs/module-doc/classQLine__inherit__graph.gifbin1071 -> 1062 bytes
-rw-r--r--docs/module-doc/classQLine__inherit__graph.map3
-rw-r--r--docs/module-doc/classQLine__inherit__graph.md51
-rw-r--r--docs/module-doc/classRequest-members.html36
-rw-r--r--docs/module-doc/classRequest.html233
-rw-r--r--docs/module-doc/classRequest__coll__graph.gifbin3142 -> 3124 bytes
-rw-r--r--docs/module-doc/classRequest__coll__graph.map4
-rw-r--r--docs/module-doc/classRequest__coll__graph.md51
-rw-r--r--docs/module-doc/classRequest__inherit__graph.gifbin1371 -> 1372 bytes
-rw-r--r--docs/module-doc/classRequest__inherit__graph.map3
-rw-r--r--docs/module-doc/classRequest__inherit__graph.md51
-rw-r--r--docs/module-doc/classServer-members.html136
-rw-r--r--docs/module-doc/classServer.html2484
-rw-r--r--docs/module-doc/classServer__coll__graph.gifbin1212 -> 1208 bytes
-rw-r--r--docs/module-doc/classServer__coll__graph.map2
-rw-r--r--docs/module-doc/classServer__coll__graph.md51
-rw-r--r--docs/module-doc/classServer__inherit__graph.gifbin788 -> 783 bytes
-rw-r--r--docs/module-doc/classServer__inherit__graph.map2
-rw-r--r--docs/module-doc/classServer__inherit__graph.md51
-rw-r--r--docs/module-doc/classVersion-members.html31
-rw-r--r--docs/module-doc/classVersion.html129
-rw-r--r--docs/module-doc/classVersion__coll__graph.gifbin2465 -> 2448 bytes
-rw-r--r--docs/module-doc/classVersion__coll__graph.map2
-rw-r--r--docs/module-doc/classVersion__coll__graph.md51
-rw-r--r--docs/module-doc/classVersion__inherit__graph.gifbin796 -> 785 bytes
-rw-r--r--docs/module-doc/classVersion__inherit__graph.map2
-rw-r--r--docs/module-doc/classVersion__inherit__graph.md51
-rw-r--r--docs/module-doc/classWhoWasUser-members.html27
-rw-r--r--docs/module-doc/classWhoWasUser.html96
-rw-r--r--docs/module-doc/classWhoWasUser__coll__graph.gifbin2168 -> 2150 bytes
-rw-r--r--docs/module-doc/classWhoWasUser__coll__graph.map1
-rw-r--r--docs/module-doc/classWhoWasUser__coll__graph.md51
-rw-r--r--docs/module-doc/classXLine-members.html29
-rw-r--r--docs/module-doc/classXLine.html98
-rw-r--r--docs/module-doc/classXLine__coll__graph.gifbin3094 -> 3056 bytes
-rw-r--r--docs/module-doc/classXLine__coll__graph.map2
-rw-r--r--docs/module-doc/classXLine__coll__graph.md51
-rw-r--r--docs/module-doc/classXLine__inherit__graph.gifbin2317 -> 2315 bytes
-rw-r--r--docs/module-doc/classXLine__inherit__graph.map7
-rw-r--r--docs/module-doc/classXLine__inherit__graph.md51
-rw-r--r--docs/module-doc/classZLine-members.html33
-rw-r--r--docs/module-doc/classZLine.html53
-rw-r--r--docs/module-doc/classZLine__coll__graph.gifbin4183 -> 4184 bytes
-rw-r--r--docs/module-doc/classZLine__coll__graph.map3
-rw-r--r--docs/module-doc/classZLine__coll__graph.md51
-rw-r--r--docs/module-doc/classZLine__inherit__graph.gifbin1046 -> 1037 bytes
-rw-r--r--docs/module-doc/classZLine__inherit__graph.map3
-rw-r--r--docs/module-doc/classZLine__inherit__graph.md51
-rw-r--r--docs/module-doc/classchanrec-members.html67
-rw-r--r--docs/module-doc/classchanrec.html638
-rw-r--r--docs/module-doc/classchanrec__coll__graph.gifbin7229 -> 7302 bytes
-rw-r--r--docs/module-doc/classchanrec__coll__graph.map3
-rw-r--r--docs/module-doc/classchanrec__coll__graph.md51
-rw-r--r--docs/module-doc/classchanrec__inherit__graph.gifbin1153 -> 1148 bytes
-rw-r--r--docs/module-doc/classchanrec__inherit__graph.map3
-rw-r--r--docs/module-doc/classchanrec__inherit__graph.md51
-rw-r--r--docs/module-doc/classclassbase-members.html19
-rw-r--r--docs/module-doc/classclassbase.html102
-rw-r--r--docs/module-doc/classclassbase__coll__graph.gifbin886 -> 875 bytes
-rw-r--r--docs/module-doc/classclassbase__coll__graph.map1
-rw-r--r--docs/module-doc/classclassbase__coll__graph.md51
-rw-r--r--docs/module-doc/classclassbase__inherit__graph.gifbin7828 -> 8599 bytes
-rw-r--r--docs/module-doc/classclassbase__inherit__graph.map17
-rw-r--r--docs/module-doc/classclassbase__inherit__graph.md51
-rw-r--r--docs/module-doc/classcommand__t-members.html39
-rw-r--r--docs/module-doc/classcommand__t.html118
-rw-r--r--docs/module-doc/classcommand__t__coll__graph.gifbin5223 -> 5231 bytes
-rw-r--r--docs/module-doc/classcommand__t__coll__graph.map3
-rw-r--r--docs/module-doc/classcommand__t__coll__graph.md51
-rw-r--r--docs/module-doc/classcommand__t__inherit__graph.gifbin1225 -> 1222 bytes
-rw-r--r--docs/module-doc/classcommand__t__inherit__graph.map3
-rw-r--r--docs/module-doc/classcommand__t__inherit__graph.md51
-rw-r--r--docs/module-doc/classconnection-members.html55
-rw-r--r--docs/module-doc/classconnection.html296
-rw-r--r--docs/module-doc/classconnection__coll__graph.gifbin6624 -> 6625 bytes
-rw-r--r--docs/module-doc/classconnection__coll__graph.map3
-rw-r--r--docs/module-doc/classconnection__coll__graph.md51
-rw-r--r--docs/module-doc/classconnection__inherit__graph.gifbin1917 -> 1467 bytes
-rw-r--r--docs/module-doc/classconnection__inherit__graph.map4
-rw-r--r--docs/module-doc/classconnection__inherit__graph.md51
-rw-r--r--docs/module-doc/classes.html56
-rw-r--r--docs/module-doc/classstd_1_1char__traits.html19
-rw-r--r--docs/module-doc/classstd_1_1char__traits__inherit__graph.gifbin1074 -> 1056 bytes
-rw-r--r--docs/module-doc/classstd_1_1char__traits__inherit__graph.map2
-rw-r--r--docs/module-doc/classstd_1_1char__traits__inherit__graph.md51
-rw-r--r--docs/module-doc/classucrec-members.html27
-rw-r--r--docs/module-doc/classucrec.html97
-rw-r--r--docs/module-doc/classucrec__coll__graph.gifbin3342 -> 3333 bytes
-rw-r--r--docs/module-doc/classucrec__coll__graph.map3
-rw-r--r--docs/module-doc/classucrec__coll__graph.md51
-rw-r--r--docs/module-doc/classucrec__inherit__graph.gifbin739 -> 726 bytes
-rw-r--r--docs/module-doc/classucrec__inherit__graph.map2
-rw-r--r--docs/module-doc/classucrec__inherit__graph.md51
-rw-r--r--docs/module-doc/classuserrec-members.html139
-rw-r--r--docs/module-doc/classuserrec.html1244
-rw-r--r--docs/module-doc/classuserrec__coll__graph.gifbin13310 -> 13514 bytes
-rw-r--r--docs/module-doc/classuserrec__coll__graph.map3
-rw-r--r--docs/module-doc/classuserrec__coll__graph.md51
-rw-r--r--docs/module-doc/classuserrec__inherit__graph.gifbin1461 -> 1449 bytes
-rw-r--r--docs/module-doc/classuserrec__inherit__graph.map4
-rw-r--r--docs/module-doc/classuserrec__inherit__graph.md51
-rw-r--r--docs/module-doc/commands_8h-source.html217
-rw-r--r--docs/module-doc/commands_8h.html2720
-rw-r--r--docs/module-doc/commands_8h__dep__incl.gifbin915 -> 808 bytes
-rw-r--r--docs/module-doc/commands_8h__dep__incl.map2
-rw-r--r--docs/module-doc/commands_8h__dep__incl.md51
-rw-r--r--docs/module-doc/commands_8h__incl.gifbin4507 -> 7547 bytes
-rw-r--r--docs/module-doc/commands_8h__incl.map4
-rw-r--r--docs/module-doc/commands_8h__incl.md51
-rw-r--r--docs/module-doc/connection_8h-source.html261
-rw-r--r--docs/module-doc/connection_8h.html243
-rw-r--r--docs/module-doc/connection_8h__dep__incl.gifbin3144 -> 4540 bytes
-rw-r--r--docs/module-doc/connection_8h__dep__incl.map9
-rw-r--r--docs/module-doc/connection_8h__dep__incl.md51
-rw-r--r--docs/module-doc/connection_8h__incl.gifbin7713 -> 8137 bytes
-rw-r--r--docs/module-doc/connection_8h__incl.map2
-rw-r--r--docs/module-doc/connection_8h__incl.md51
-rw-r--r--docs/module-doc/ctables_8h-source.html85
-rw-r--r--docs/module-doc/ctables_8h.html39
-rw-r--r--docs/module-doc/ctables_8h__dep__incl.gifbin2061 -> 1704 bytes
-rw-r--r--docs/module-doc/ctables_8h__dep__incl.map4
-rw-r--r--docs/module-doc/ctables_8h__dep__incl.md51
-rw-r--r--docs/module-doc/ctables_8h__incl.gifbin2730 -> 2535 bytes
-rw-r--r--docs/module-doc/ctables_8h__incl.map2
-rw-r--r--docs/module-doc/ctables_8h__incl.md51
-rw-r--r--docs/module-doc/dir_000000.html27
-rw-r--r--docs/module-doc/dir_000000_dep.gifbin0 -> 826 bytes
-rw-r--r--docs/module-doc/dir_000000_dep.map3
-rw-r--r--docs/module-doc/dir_000001.html28
-rw-r--r--docs/module-doc/dir_000001_dep.gifbin0 -> 1434 bytes
-rw-r--r--docs/module-doc/dir_000001_dep.map4
-rw-r--r--docs/module-doc/dir_000002.html28
-rw-r--r--docs/module-doc/dir_000002_dep.gifbin0 -> 1461 bytes
-rw-r--r--docs/module-doc/dir_000002_dep.map4
-rw-r--r--docs/module-doc/dir_000003.html33
-rw-r--r--docs/module-doc/dir_000003_dep.gifbin0 -> 2115 bytes
-rw-r--r--docs/module-doc/dir_000003_dep.map7
-rw-r--r--docs/module-doc/dir_000004.html51
-rw-r--r--docs/module-doc/dir_000004_dep.gifbin0 -> 1024 bytes
-rw-r--r--docs/module-doc/dir_000004_dep.map3
-rw-r--r--docs/module-doc/dir_000005.html36
-rw-r--r--docs/module-doc/dir_000005_000004.html14
-rw-r--r--docs/module-doc/dir_000005_dep.gifbin0 -> 1343 bytes
-rw-r--r--docs/module-doc/dir_000005_dep.map6
-rw-r--r--docs/module-doc/dirs.html28
-rw-r--r--docs/module-doc/dns_8h-source.html139
-rw-r--r--docs/module-doc/dns_8h.html25
-rw-r--r--docs/module-doc/dns_8h__incl.gifbin1991 -> 1873 bytes
-rw-r--r--docs/module-doc/dns_8h__incl.map1
-rw-r--r--docs/module-doc/dns_8h__incl.md51
-rw-r--r--docs/module-doc/doxygen.pngbin2351 -> 1280 bytes
-rw-r--r--docs/module-doc/files.html15
-rw-r--r--docs/module-doc/functions.html475
-rw-r--r--docs/module-doc/functions_0x62.html29
-rw-r--r--docs/module-doc/functions_0x63.html47
-rw-r--r--docs/module-doc/functions_0x64.html48
-rw-r--r--docs/module-doc/functions_0x65.html31
-rw-r--r--docs/module-doc/functions_0x66.html35
-rw-r--r--docs/module-doc/functions_0x67.html44
-rw-r--r--docs/module-doc/functions_0x68.html27
-rw-r--r--docs/module-doc/functions_0x69.html38
-rw-r--r--docs/module-doc/functions_0x6a.html21
-rw-r--r--docs/module-doc/functions_0x6b.html21
-rw-r--r--docs/module-doc/functions_0x6c.html28
-rw-r--r--docs/module-doc/functions_0x6d.html29
-rw-r--r--docs/module-doc/functions_0x6e.html29
-rw-r--r--docs/module-doc/functions_0x6f.html86
-rw-r--r--docs/module-doc/functions_0x70.html32
-rw-r--r--docs/module-doc/functions_0x71.html21
-rw-r--r--docs/module-doc/functions_0x72.html37
-rw-r--r--docs/module-doc/functions_0x73.html48
-rw-r--r--docs/module-doc/functions_0x74.html28
-rw-r--r--docs/module-doc/functions_0x75.html26
-rw-r--r--docs/module-doc/functions_0x76.html22
-rw-r--r--docs/module-doc/functions_0x77.html22
-rw-r--r--docs/module-doc/functions_0x7e.html33
-rw-r--r--docs/module-doc/functions_func.html347
-rw-r--r--docs/module-doc/functions_func_0x62.html22
-rw-r--r--docs/module-doc/functions_func_0x63.html38
-rw-r--r--docs/module-doc/functions_func_0x64.html43
-rw-r--r--docs/module-doc/functions_func_0x65.html27
-rw-r--r--docs/module-doc/functions_func_0x66.html29
-rw-r--r--docs/module-doc/functions_func_0x67.html44
-rw-r--r--docs/module-doc/functions_func_0x68.html23
-rw-r--r--docs/module-doc/functions_func_0x69.html29
-rw-r--r--docs/module-doc/functions_func_0x6a.html21
-rw-r--r--docs/module-doc/functions_func_0x6c.html23
-rw-r--r--docs/module-doc/functions_func_0x6d.html23
-rw-r--r--docs/module-doc/functions_func_0x6e.html21
-rw-r--r--docs/module-doc/functions_func_0x6f.html85
-rw-r--r--docs/module-doc/functions_func_0x70.html23
-rw-r--r--docs/module-doc/functions_func_0x71.html21
-rw-r--r--docs/module-doc/functions_func_0x72.html28
-rw-r--r--docs/module-doc/functions_func_0x73.html39
-rw-r--r--docs/module-doc/functions_func_0x75.html24
-rw-r--r--docs/module-doc/functions_func_0x76.html22
-rw-r--r--docs/module-doc/functions_func_0x77.html21
-rw-r--r--docs/module-doc/functions_func_0x7e.html33
-rw-r--r--docs/module-doc/functions_vars.html303
-rw-r--r--docs/module-doc/globals.html386
-rw-r--r--docs/module-doc/globals_0x62.html23
-rw-r--r--docs/module-doc/globals_0x63.html51
-rw-r--r--docs/module-doc/globals_0x64.html33
-rw-r--r--docs/module-doc/globals_0x65.html25
-rw-r--r--docs/module-doc/globals_0x66.html26
-rw-r--r--docs/module-doc/globals_0x67.html24
-rw-r--r--docs/module-doc/globals_0x68.html74
-rw-r--r--docs/module-doc/globals_0x69.html39
-rw-r--r--docs/module-doc/globals_0x6c.html23
-rw-r--r--docs/module-doc/globals_0x6d.html44
-rw-r--r--docs/module-doc/globals_0x6e.html26
-rw-r--r--docs/module-doc/globals_0x6f.html21
-rw-r--r--docs/module-doc/globals_0x70.html25
-rw-r--r--docs/module-doc/globals_0x71.html22
-rw-r--r--docs/module-doc/globals_0x72.html24
-rw-r--r--docs/module-doc/globals_0x73.html37
-rw-r--r--docs/module-doc/globals_0x74.html27
-rw-r--r--docs/module-doc/globals_0x75.html27
-rw-r--r--docs/module-doc/globals_0x76.html26
-rw-r--r--docs/module-doc/globals_0x77.html24
-rw-r--r--docs/module-doc/globals_0x7a.html22
-rw-r--r--docs/module-doc/globals_defs.html153
-rw-r--r--docs/module-doc/globals_enum.html19
-rw-r--r--docs/module-doc/globals_eval.html26
-rw-r--r--docs/module-doc/globals_func.html345
-rw-r--r--docs/module-doc/globals_type.html50
-rw-r--r--docs/module-doc/globals_vars.html173
-rw-r--r--docs/module-doc/graph_legend.gifbin4686 -> 4705 bytes
-rw-r--r--docs/module-doc/graph_legend.html15
-rw-r--r--docs/module-doc/hashcomp_8h-source.html211
-rw-r--r--docs/module-doc/hashcomp_8h.html62
-rw-r--r--docs/module-doc/hashcomp_8h__dep__incl.gifbin912 -> 800 bytes
-rw-r--r--docs/module-doc/hashcomp_8h__dep__incl.map2
-rw-r--r--docs/module-doc/hashcomp_8h__dep__incl.md51
-rw-r--r--docs/module-doc/hashcomp_8h__incl.gifbin1512 -> 1375 bytes
-rw-r--r--docs/module-doc/hashcomp_8h__incl.map1
-rw-r--r--docs/module-doc/hashcomp_8h__incl.md51
-rw-r--r--docs/module-doc/hierarchy.html18
-rw-r--r--docs/module-doc/inherit__graph__0.gifbin367 -> 360 bytes
-rw-r--r--docs/module-doc/inherit__graph__0.map2
-rw-r--r--docs/module-doc/inherit__graph__0.md51
-rw-r--r--docs/module-doc/inherit__graph__1.gifbin761 -> 759 bytes
-rw-r--r--docs/module-doc/inherit__graph__1.map3
-rw-r--r--docs/module-doc/inherit__graph__1.md51
-rw-r--r--docs/module-doc/inherit__graph__10.gifbin0 -> 508 bytes
-rw-r--r--docs/module-doc/inherit__graph__10.map2
-rw-r--r--docs/module-doc/inherit__graph__10.md51
-rw-r--r--docs/module-doc/inherit__graph__2.gifbin12716 -> 12906 bytes
-rw-r--r--docs/module-doc/inherit__graph__2.map32
-rw-r--r--docs/module-doc/inherit__graph__2.md51
-rw-r--r--docs/module-doc/inherit__graph__3.gifbin304 -> 304 bytes
-rw-r--r--docs/module-doc/inherit__graph__3.map2
-rw-r--r--docs/module-doc/inherit__graph__3.md51
-rw-r--r--docs/module-doc/inherit__graph__4.gifbin397 -> 395 bytes
-rw-r--r--docs/module-doc/inherit__graph__4.map2
-rw-r--r--docs/module-doc/inherit__graph__4.md51
-rw-r--r--docs/module-doc/inherit__graph__5.gifbin608 -> 434 bytes
-rw-r--r--docs/module-doc/inherit__graph__5.map2
-rw-r--r--docs/module-doc/inherit__graph__5.md51
-rw-r--r--docs/module-doc/inherit__graph__6.gifbin531 -> 600 bytes
-rw-r--r--docs/module-doc/inherit__graph__6.map2
-rw-r--r--docs/module-doc/inherit__graph__6.md51
-rw-r--r--docs/module-doc/inherit__graph__7.gifbin619 -> 526 bytes
-rw-r--r--docs/module-doc/inherit__graph__7.map2
-rw-r--r--docs/module-doc/inherit__graph__7.md51
-rw-r--r--docs/module-doc/inherit__graph__8.gifbin590 -> 608 bytes
-rw-r--r--docs/module-doc/inherit__graph__8.map2
-rw-r--r--docs/module-doc/inherit__graph__8.md51
-rw-r--r--docs/module-doc/inherit__graph__9.gifbin513 -> 587 bytes
-rw-r--r--docs/module-doc/inherit__graph__9.map2
-rw-r--r--docs/module-doc/inherit__graph__9.md51
-rw-r--r--docs/module-doc/inherits.html111
-rw-r--r--docs/module-doc/main.html11
-rw-r--r--docs/module-doc/message_8h-source.html113
-rw-r--r--docs/module-doc/message_8h.html304
-rw-r--r--docs/module-doc/message_8h__dep__incl.gifbin1362 -> 1203 bytes
-rw-r--r--docs/module-doc/message_8h__dep__incl.map3
-rw-r--r--docs/module-doc/message_8h__dep__incl.md51
-rw-r--r--docs/module-doc/message_8h__incl.gifbin4480 -> 7493 bytes
-rw-r--r--docs/module-doc/message_8h__incl.map4
-rw-r--r--docs/module-doc/message_8h__incl.md51
-rw-r--r--docs/module-doc/mode_8h-source.html109
-rw-r--r--docs/module-doc/mode_8h.html405
-rw-r--r--docs/module-doc/mode_8h__dep__incl.gifbin1291 -> 1122 bytes
-rw-r--r--docs/module-doc/mode_8h__dep__incl.map3
-rw-r--r--docs/module-doc/mode_8h__dep__incl.md51
-rw-r--r--docs/module-doc/mode_8h__incl.gifbin4393 -> 7366 bytes
-rw-r--r--docs/module-doc/mode_8h__incl.map4
-rw-r--r--docs/module-doc/mode_8h__incl.md51
-rw-r--r--docs/module-doc/modules_8cpp-source.html2030
-rw-r--r--docs/module-doc/modules_8cpp.html1240
-rw-r--r--docs/module-doc/modules_8cpp__incl.gifbin40959 -> 27645 bytes
-rw-r--r--docs/module-doc/modules_8cpp__incl.map10
-rw-r--r--docs/module-doc/modules_8cpp__incl.md51
-rw-r--r--docs/module-doc/modules_8h-source.html895
-rw-r--r--docs/module-doc/modules_8h.html588
-rw-r--r--docs/module-doc/modules_8h__dep__incl.gifbin1341 -> 1182 bytes
-rw-r--r--docs/module-doc/modules_8h__dep__incl.map3
-rw-r--r--docs/module-doc/modules_8h__dep__incl.md51
-rw-r--r--docs/module-doc/modules_8h__incl.gifbin4700 -> 7658 bytes
-rw-r--r--docs/module-doc/modules_8h__incl.map4
-rw-r--r--docs/module-doc/modules_8h__incl.md51
-rw-r--r--docs/module-doc/namespaceirc.html46
-rw-r--r--docs/module-doc/namespacemembers.html19
-rw-r--r--docs/module-doc/namespacemembers_type.html15
-rw-r--r--docs/module-doc/namespacenspace.html19
-rw-r--r--docs/module-doc/namespaces.html11
-rw-r--r--docs/module-doc/namespacestd.html13
-rw-r--r--docs/module-doc/socket_8cpp-source.html268
-rw-r--r--docs/module-doc/socket_8cpp.html196
-rw-r--r--docs/module-doc/socket_8cpp__incl.gifbin0 -> 12213 bytes
-rw-r--r--docs/module-doc/socket_8cpp__incl.map2
-rw-r--r--docs/module-doc/socket_8cpp__incl.md51
-rw-r--r--docs/module-doc/socket_8h-source.html80
-rw-r--r--docs/module-doc/socket_8h.html140
-rw-r--r--docs/module-doc/socket_8h__dep__incl.gifbin0 -> 1971 bytes
-rw-r--r--docs/module-doc/socket_8h__dep__incl.map5
-rw-r--r--docs/module-doc/socket_8h__dep__incl.md51
-rw-r--r--docs/module-doc/socket_8h__incl.gifbin0 -> 2679 bytes
-rw-r--r--docs/module-doc/socket_8h__incl.map1
-rw-r--r--docs/module-doc/socket_8h__incl.md51
-rw-r--r--docs/module-doc/structdns__ip4list-members.html17
-rw-r--r--docs/module-doc/structdns__ip4list.html48
-rw-r--r--docs/module-doc/structdns__ip4list__coll__graph.gifbin1082 -> 1121 bytes
-rw-r--r--docs/module-doc/structdns__ip4list__coll__graph.map1
-rw-r--r--docs/module-doc/structdns__ip4list__coll__graph.md51
-rw-r--r--docs/module-doc/structirc_1_1InAddr__HashComp-members.html15
-rw-r--r--docs/module-doc/structirc_1_1InAddr__HashComp.html40
-rw-r--r--docs/module-doc/structirc_1_1StrHashComp-members.html15
-rw-r--r--docs/module-doc/structirc_1_1StrHashComp.html44
-rw-r--r--docs/module-doc/structirc_1_1irc__char__traits-members.html23
-rw-r--r--docs/module-doc/structirc_1_1irc__char__traits.html130
-rw-r--r--docs/module-doc/structirc_1_1irc__char__traits__coll__graph.gifbin1111 -> 1107 bytes
-rw-r--r--docs/module-doc/structirc_1_1irc__char__traits__coll__graph.map2
-rw-r--r--docs/module-doc/structirc_1_1irc__char__traits__coll__graph.md51
-rw-r--r--docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.gifbin1111 -> 1107 bytes
-rw-r--r--docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.map2
-rw-r--r--docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.md51
-rw-r--r--docs/module-doc/structnspace_1_1hash_3_01in__addr_01_4-members.html14
-rw-r--r--docs/module-doc/structnspace_1_1hash_3_01in__addr_01_4.html61
-rw-r--r--docs/module-doc/structnspace_1_1hash_3_01string_01_4-members.html14
-rw-r--r--docs/module-doc/structnspace_1_1hash_3_01string_01_4.html61
-rw-r--r--docs/module-doc/tree.html100
-rw-r--r--docs/module-doc/users_8cpp-source.html609
-rw-r--r--docs/module-doc/users_8cpp.html82
-rw-r--r--docs/module-doc/users_8cpp__incl.gifbin4396 -> 5014 bytes
-rw-r--r--docs/module-doc/users_8cpp__incl.map4
-rw-r--r--docs/module-doc/users_8cpp__incl.md51
-rw-r--r--docs/module-doc/users_8h-source.html361
-rw-r--r--docs/module-doc/users_8h.html163
-rw-r--r--docs/module-doc/users_8h__dep__incl.gifbin4071 -> 3938 bytes
-rw-r--r--docs/module-doc/users_8h__dep__incl.map8
-rw-r--r--docs/module-doc/users_8h__dep__incl.md51
-rw-r--r--docs/module-doc/users_8h__incl.gifbin3092 -> 2835 bytes
-rw-r--r--docs/module-doc/users_8h__incl.map3
-rw-r--r--docs/module-doc/users_8h__incl.md51
-rw-r--r--docs/module-doc/xline_8h-source.html235
-rw-r--r--docs/module-doc/xline_8h.html514
-rw-r--r--docs/module-doc/xline_8h__dep__incl.gifbin1276 -> 1100 bytes
-rw-r--r--docs/module-doc/xline_8h__dep__incl.map3
-rw-r--r--docs/module-doc/xline_8h__dep__incl.md51
-rw-r--r--docs/module-doc/xline_8h__incl.gifbin4360 -> 7348 bytes
-rw-r--r--docs/module-doc/xline_8h__incl.map4
-rw-r--r--docs/module-doc/xline_8h__incl.md51
615 files changed, 19999 insertions, 18236 deletions
diff --git a/docs/man/man3/Admin.3 b/docs/man/man3/Admin.3
index be8818954..885903ffb 100644
--- a/docs/man/man3/Admin.3
+++ b/docs/man/man3/Admin.3
@@ -1,4 +1,4 @@
-.TH "Admin" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "Admin" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -16,49 +16,50 @@ Inherits \fBclassbase\fP.
.in +1c
.ti -1c
-.RI "\fBAdmin\fP (std::string name, std::string email, std::string nick)"
+.RI "\fBAdmin\fP (\fBstd::string\fP name, \fBstd::string\fP email, \fBstd::string\fP nick)"
.br
.in -1c
.SS "Public Attributes"
.in +1c
.ti -1c
-.RI "const std::string \fBName\fP"
+.RI "const \fBstd::string\fP \fBName\fP"
.br
.ti -1c
-.RI "const std::string \fBEmail\fP"
+.RI "const \fBstd::string\fP \fBEmail\fP"
.br
.ti -1c
-.RI "const std::string \fBNick\fP"
+.RI "const \fBstd::string\fP \fBNick\fP"
.br
.in -1c
.SH "Detailed Description"
.PP
Holds /ADMIN data This class contains the admin details of the local server.
-It is constructed by class \fBServer\fP, and has three read-only values, Name, Email and Nick that contain the specified values for the server where the module is running.
+It is constructed by class \fBServer\fP, and has three read-only values, Name, Email and Nick that contain the specified values for the server where the module is running.
.PP
-Definition at line 123 of file modules.h.
+Definition at line 124 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
-.SS "Admin::Admin (std::string name, std::string email, std::string nick)"
+.SS "Admin::Admin (\fBstd::string\fP name, \fBstd::string\fP email, \fBstd::string\fP nick)"
.PP
-Definition at line 249 of file modules.cpp.
+Definition at line 250 of file modules.cpp.
.PP
.nf
-249 : Name(name), Email(email), Nick(nick) { };
+250 : Name(name), Email(email), Nick(nick) { };
.fi
+.PP
.SH "Member Data Documentation"
.PP
-.SS "const std::string \fBAdmin::Email\fP"
+.SS "const \fBstd::string\fP \fBAdmin::Email\fP"
.PP
-Definition at line 126 of file modules.h.
-.SS "const std::string \fBAdmin::Name\fP"
+Definition at line 127 of file modules.h.
+.SS "const \fBstd::string\fP \fBAdmin::Name\fP"
.PP
-Definition at line 126 of file modules.h.
-.SS "const std::string \fBAdmin::Nick\fP"
+Definition at line 127 of file modules.h.
+.SS "const \fBstd::string\fP \fBAdmin::Nick\fP"
.PP
-Definition at line 126 of file modules.h.
+Definition at line 127 of file modules.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/BanItem.3 b/docs/man/man3/BanItem.3
index 0fe2819cf..db8e92a23 100644
--- a/docs/man/man3/BanItem.3
+++ b/docs/man/man3/BanItem.3
@@ -1,4 +1,4 @@
-.TH "BanItem" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "BanItem" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -14,7 +14,9 @@ Inherits \fBHostItem\fP.
.PP
.SH "Detailed Description"
.PP
-A subclass of \fBHostItem\fP designed to hold channel bans (+b). Definition at line 52 of file channels.h.
+A subclass of \fBHostItem\fP designed to hold channel bans (+b).
+.PP
+Definition at line 52 of file channels.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/BoolSet.3 b/docs/man/man3/BoolSet.3
index 5089a03bf..56bb4b095 100644
--- a/docs/man/man3/BoolSet.3
+++ b/docs/man/man3/BoolSet.3
@@ -1,4 +1,4 @@
-.TH "BoolSet" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "BoolSet" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -65,22 +65,26 @@ BoolSet \- BoolSet is a utility class designed to hold eight bools in a bitmask.
.PP
BoolSet is a utility class designed to hold eight bools in a bitmask.
-Use \fBBoolSet::Set\fP and \fBBoolSet::Get\fP to set and get bools in the bitmask, and Unset and Invert for special operations upon them.
+Use \fBBoolSet::Set\fP and \fBBoolSet::Get\fP to set and get bools in the bitmask, and Unset and Invert for special operations upon them.
.PP
-Definition at line 98 of file base.h.
+Definition at line 95 of file base.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "BoolSet::BoolSet ()"
.PP
The default constructor initializes the BoolSet to all values unset.
+.PP
.SS "BoolSet::BoolSet (char bitmask)"
.PP
This constructor copies the default bitmask from a char.
+.PP
.SH "Member Function Documentation"
.PP
.SS "bool BoolSet::Get (int number)"
.PP
-The Get method returns the value of one bool in the set. \fBParameters:\fP
+The Get method returns the value of one bool in the set.
+.PP
+\fBParameters:\fP
.RS 4
\fInumber\fP The number of the item to retrieve. This must be between 0 and 7.
.RE
@@ -93,7 +97,9 @@ True if the item is set, false if it is unset.
.SS "void BoolSet::Invert (int number)"
.PP
-The Unset method inverts (flips) one value in the set. \fBParameters:\fP
+The Unset method inverts (flips) one value in the set.
+.PP
+\fBParameters:\fP
.RS 4
\fInumber\fP The number of the item to invert. This must be between 0 and 7.
.RE
@@ -102,18 +108,24 @@ The Unset method inverts (flips) one value in the set. \fBParameters:\fP
.SS "\fBBoolSet\fP BoolSet::operator & (\fBBoolSet\fP other)"
.PP
AND two BoolSets together.
+.PP
.SS "bool BoolSet::operator= (\fBBoolSet\fP other)"
.PP
Assign one BoolSet to another.
+.PP
.SS "bool BoolSet::operator== (\fBBoolSet\fP other)"
.PP
Compare two BoolSets.
+.PP
.SS "\fBBoolSet\fP BoolSet::operator| (\fBBoolSet\fP other)"
.PP
OR two BoolSets together.
+.PP
.SS "void BoolSet::Set (int number)"
.PP
-The Set method sets one bool in the set. \fBParameters:\fP
+The Set method sets one bool in the set.
+.PP
+\fBParameters:\fP
.RS 4
\fInumber\fP The number of the item to set. This must be between 0 and 7.
.RE
@@ -121,7 +133,9 @@ The Set method sets one bool in the set. \fBParameters:\fP
.SS "void BoolSet::Unset (int number)"
.PP
-The Unset method unsets one value in the set. \fBParameters:\fP
+The Unset method unsets one value in the set.
+.PP
+\fBParameters:\fP
.RS 4
\fInumber\fP The number of the item to set. This must be between 0 and 7.
.RE
@@ -131,7 +145,7 @@ The Unset method unsets one value in the set. \fBParameters:\fP
.PP
.SS "char \fBBoolSet::bits\fP\fC [private]\fP"
.PP
-Definition at line 100 of file base.h.
+Definition at line 97 of file base.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/ConfigReader.3 b/docs/man/man3/ConfigReader.3
index 6e9a3bfed..abbec6ef3 100644
--- a/docs/man/man3/ConfigReader.3
+++ b/docs/man/man3/ConfigReader.3
@@ -1,4 +1,4 @@
-.TH "ConfigReader" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ConfigReader" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -20,7 +20,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIDefault constructor. \fP"
.ti -1c
-.RI "\fBConfigReader\fP (std::string filename)"
+.RI "\fBConfigReader\fP (\fBstd::string\fP filename)"
.br
.RI "\fIOverloaded constructor. \fP"
.ti -1c
@@ -28,15 +28,15 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIDefault destructor. \fP"
.ti -1c
-.RI "std::string \fBReadValue\fP (std::string tag, std::string name, int index)"
+.RI "\fBstd::string\fP \fBReadValue\fP (\fBstd::string\fP tag, \fBstd::string\fP name, int index)"
.br
.RI "\fIRetrieves a value from the config file. \fP"
.ti -1c
-.RI "bool \fBReadFlag\fP (std::string tag, std::string name, int index)"
+.RI "bool \fBReadFlag\fP (\fBstd::string\fP tag, \fBstd::string\fP name, int index)"
.br
.RI "\fIRetrieves a boolean value from the config file. \fP"
.ti -1c
-.RI "long \fBReadInteger\fP (std::string tag, std::string name, int index, bool needs_unsigned)"
+.RI "long \fBReadInteger\fP (\fBstd::string\fP tag, \fBstd::string\fP name, int index, bool needs_unsigned)"
.br
.RI "\fIRetrieves an integer value from the config file. \fP"
.ti -1c
@@ -44,7 +44,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIReturns the last error to occur. \fP"
.ti -1c
-.RI "int \fBEnumerate\fP (std::string tag)"
+.RI "int \fBEnumerate\fP (\fBstd::string\fP tag)"
.br
.RI "\fICounts the number of times a given tag appears in the config file. \fP"
.ti -1c
@@ -56,7 +56,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIDumps the list of errors in a config file to an output location. \fP"
.ti -1c
-.RI "int \fBEnumerateValues\fP (std::string tag, int index)"
+.RI "int \fBEnumerateValues\fP (\fBstd::string\fP tag, int index)"
.br
.RI "\fIReturns the number of items within a tag. \fP"
.in -1c
@@ -82,242 +82,303 @@ Inherits \fBclassbase\fP.
.PP
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.
-It may either be instantiated with one parameter or none. Constructing the class using one parameter allows you to specify a path to your own configuration file, otherwise, inspircd.conf is read.
+It may either be instantiated with one parameter or none. Constructing the class using one parameter allows you to specify a path to your own configuration file, otherwise, inspircd.conf is read.
.PP
-Definition at line 1150 of file modules.h.
+Definition at line 1121 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "ConfigReader::ConfigReader ()"
.PP
-Default constructor. This constructor initialises the ConfigReader class to read the inspircd.conf file as specified when running ./configure.Definition at line 821 of file modules.cpp.
+Default constructor.
+.PP
+This constructor initialises the ConfigReader class to read the inspircd.conf file as specified when running ./configure.
+.PP
+Definition at line 796 of file modules.cpp.
.PP
References cache, CONF_FILE_NOT_FOUND, error, errorlog, include_stack, and readerror.
.PP
.nf
-822 {
-823 include_stack.clear();
-824 this->cache = new std::stringstream(std::stringstream::in | std::stringstream::out);
-825 this->errorlog = new std::stringstream(std::stringstream::in | std::stringstream::out);
-826 this->readerror = LoadConf(CONFIG_FILE,this->cache,this->errorlog);
-827 if (!this->readerror)
-828 this->error = CONF_FILE_NOT_FOUND;
-829 }
+797 {
+798 include_stack.clear();
+799 this->cache = new std::stringstream(std::stringstream::in | std::stringstream::out);
+800 this->errorlog = new std::stringstream(std::stringstream::in | std::stringstream::out);
+801 this->readerror = LoadConf(CONFIG_FILE,this->cache,this->errorlog);
+802 if (!this->readerror)
+803 this->error = CONF_FILE_NOT_FOUND;
+804 }
.fi
-.SS "ConfigReader::ConfigReader (std::string filename)"
.PP
-Overloaded constructor. This constructor initialises the ConfigReader class to read a user-specified config fileDefinition at line 841 of file modules.cpp.
+.SS "ConfigReader::ConfigReader (\fBstd::string\fP filename)"
+.PP
+Overloaded constructor.
+.PP
+This constructor initialises the ConfigReader class to read a user-specified config file
+.PP
+Definition at line 816 of file modules.cpp.
.PP
References cache, CONF_FILE_NOT_FOUND, error, errorlog, and readerror.
.PP
.nf
-842 {
-843 this->cache = new std::stringstream(std::stringstream::in | std::stringstream::out);
-844 this->errorlog = new std::stringstream(std::stringstream::in | std::stringstream::out);
-845 this->readerror = LoadConf(filename.c_str(),this->cache,this->errorlog);
-846 if (!this->readerror)
-847 this->error = CONF_FILE_NOT_FOUND;
-848 };
+817 {
+818 this->cache = new std::stringstream(std::stringstream::in | std::stringstream::out);
+819 this->errorlog = new std::stringstream(std::stringstream::in | std::stringstream::out);
+820 this->readerror = LoadConf(filename.c_str(),this->cache,this->errorlog);
+821 if (!this->readerror)
+822 this->error = CONF_FILE_NOT_FOUND;
+823 };
.fi
-.SS "ConfigReader::~\fBConfigReader\fP ()"
.PP
-Default destructor. This method destroys the ConfigReader class.Definition at line 832 of file modules.cpp.
+.SS "ConfigReader::~ConfigReader ()"
+.PP
+Default destructor.
+.PP
+This method destroys the ConfigReader class.
+.PP
+Definition at line 807 of file modules.cpp.
.PP
References cache, and errorlog.
.PP
.nf
-833 {
-834 if (this->cache)
-835 delete this->cache;
-836 if (this->errorlog)
-837 delete this->errorlog;
-838 }
+808 {
+809 if (this->cache)
+810 delete this->cache;
+811 if (this->errorlog)
+812 delete this->errorlog;
+813 }
.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "void ConfigReader::DumpErrors (bool bail, \fBuserrec\fP * user)"
.PP
-Dumps the list of errors in a config file to an output location. If bail is true, then the program will abort. If bail is false and user points to a valid user record, the error report will be spooled to the given user by means of NOTICE. if bool is false AND user is false, the error report will be spooled to all opers by means of a NOTICE to all opers.Definition at line 919 of file modules.cpp.
+Dumps the list of errors in a config file to an output location.
+.PP
+If bail is true, then the program will abort. If bail is false and user points to a valid user record, the error report will be spooled to the given user by means of NOTICE. if bool is false AND user is false, the error report will be spooled to all opers by means of a NOTICE to all opers.
+.PP
+Definition at line 894 of file modules.cpp.
.PP
References errorlog, connection::fd, and userrec::nick.
.PP
.nf
-920 {
-921 if (bail)
-922 {
-923 printf('There were errors in your configuration:\n%s',errorlog->str().c_str());
-924 exit(0);
-925 }
-926 else
-927 {
-928 char dataline[1024];
-929 if (user)
-930 {
-931 WriteServ(user->fd,'NOTICE %s :There were errors in the configuration file:',user->nick);
-932 while (!errorlog->eof())
-933 {
-934 errorlog->getline(dataline,1024);
-935 WriteServ(user->fd,'NOTICE %s :%s',user->nick,dataline);
-936 }
-937 }
-938 else
-939 {
-940 WriteOpers('There were errors in the configuration file:',user->nick);
-941 while (!errorlog->eof())
-942 {
-943 errorlog->getline(dataline,1024);
-944 WriteOpers(dataline);
-945 }
-946 }
-947 return;
-948 }
-949 }
+895 {
+896 if (bail)
+897 {
+898 printf('There were errors in your configuration:\n%s',errorlog->str().c_str());
+899 exit(0);
+900 }
+901 else
+902 {
+903 char dataline[1024];
+904 if (user)
+905 {
+906 WriteServ(user->fd,'NOTICE %s :There were errors in the configuration file:',user->nick);
+907 while (!errorlog->eof())
+908 {
+909 errorlog->getline(dataline,1024);
+910 WriteServ(user->fd,'NOTICE %s :%s',user->nick,dataline);
+911 }
+912 }
+913 else
+914 {
+915 WriteOpers('There were errors in the configuration file:',user->nick);
+916 while (!errorlog->eof())
+917 {
+918 errorlog->getline(dataline,1024);
+919 WriteOpers(dataline);
+920 }
+921 }
+922 return;
+923 }
+924 }
.fi
-.SS "int ConfigReader::Enumerate (std::string tag)"
.PP
-Counts the number of times a given tag appears in the config file. 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 \fBConfigReader::ReadValue\fP to loop through all copies of a multiple instance tag.Definition at line 952 of file modules.cpp.
+.SS "int ConfigReader::Enumerate (\fBstd::string\fP tag)"
+.PP
+Counts the number of times a given tag appears in the config file.
+.PP
+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 \fBConfigReader::ReadValue\fP to loop through all copies of a multiple instance tag.
+.PP
+Definition at line 927 of file modules.cpp.
.PP
References cache.
.PP
.nf
-953 {
-954 return EnumConf(cache,tag.c_str());
-955 }
+928 {
+929 return EnumConf(cache,tag.c_str());
+930 }
.fi
-.SS "int ConfigReader::EnumerateValues (std::string tag, int index)"
.PP
-Returns the number of items within a tag. For example if the tag was <test tag='blah' data='foo'> then this function would return 2. Spaces and newlines both qualify as valid seperators between values.Definition at line 957 of file modules.cpp.
+.SS "int ConfigReader::EnumerateValues (\fBstd::string\fP tag, int index)"
+.PP
+Returns the number of items within a tag.
+.PP
+For example if the tag was <test tag='blah' data='foo'> then this function would return 2. Spaces and newlines both qualify as valid seperators between values.
+.PP
+Definition at line 932 of file modules.cpp.
.PP
References cache.
.PP
.nf
-958 {
-959 return EnumValues(cache, tag.c_str(), index);
-960 }
+933 {
+934 return EnumValues(cache, tag.c_str(), index);
+935 }
.fi
+.PP
.SS "long ConfigReader::GetError ()"
.PP
-Returns the last error to occur. Valid errors can be found by looking in \fBmodules.h\fP. Any nonzero value indicates an error condition. A call to \fBGetError()\fP resets the error flag back to 0.Definition at line 912 of file modules.cpp.
+Returns the last error to occur.
+.PP
+Valid errors can be found by looking in \fBmodules.h\fP. Any nonzero value indicates an error condition. A call to \fBGetError()\fP resets the error flag back to 0.
+.PP
+Definition at line 887 of file modules.cpp.
.PP
References error.
.PP
.nf
-913 {
-914 long olderr = this->error;
-915 this->error = 0;
-916 return olderr;
-917 }
+888 {
+889 long olderr = this->error;
+890 this->error = 0;
+891 return olderr;
+892 }
.fi
-.SS "bool ConfigReader::ReadFlag (std::string tag, std::string name, int index)"
.PP
-Retrieves a boolean value from the config file. This method retrieves a boolean value from the config file. Where multiple copies of the tag exist in the config file, index indicates which of the values to retrieve. The values '1', 'yes' and 'true' in the config file count as true to ReadFlag, and any other value counts as false.Definition at line 866 of file modules.cpp.
+.SS "bool ConfigReader::ReadFlag (\fBstd::string\fP tag, \fBstd::string\fP name, int index)"
+.PP
+Retrieves a boolean value from the config file.
+.PP
+This method retrieves a boolean value from the config file. Where multiple copies of the tag exist in the config file, index indicates which of the values to retrieve. The values '1', 'yes' and 'true' in the config file count as true to ReadFlag, and any other value counts as false.
+.PP
+Definition at line 841 of file modules.cpp.
.PP
References cache, CONF_VALUE_NOT_FOUND, and error.
.PP
.nf
-867 {
-868 char val[MAXBUF];
-869 char t[MAXBUF];
-870 char n[MAXBUF];
-871 strlcpy(t,tag.c_str(),MAXBUF);
-872 strlcpy(n,name.c_str(),MAXBUF);
-873 int res = ReadConf(cache,t,n,index,val);
-874 if (!res)
-875 {
-876 this->error = CONF_VALUE_NOT_FOUND;
-877 return false;
-878 }
-879 std::string s = val;
-880 return ((s == 'yes') || (s == 'YES') || (s == 'true') || (s == 'TRUE') || (s == '1'));
-881 }
+842 {
+843 char val[MAXBUF];
+844 char t[MAXBUF];
+845 char n[MAXBUF];
+846 strlcpy(t,tag.c_str(),MAXBUF);
+847 strlcpy(n,name.c_str(),MAXBUF);
+848 int res = ReadConf(cache,t,n,index,val);
+849 if (!res)
+850 {
+851 this->error = CONF_VALUE_NOT_FOUND;
+852 return false;
+853 }
+854 std::string s = val;
+855 return ((s == 'yes') || (s == 'YES') || (s == 'true') || (s == 'TRUE') || (s == '1'));
+856 }
.fi
-.SS "long ConfigReader::ReadInteger (std::string tag, std::string name, int index, bool needs_unsigned)"
.PP
-Retrieves an integer value from the config file. This method retrieves an integer value from the config file. Where multiple copies of the tag exist in the config file, index indicates which of the values to retrieve. Any invalid integer values in the tag will cause the objects error value to be set, and any call to \fBGetError()\fP will return CONF_INVALID_NUMBER to be returned. needs_unsigned is set if the number must be unsigned. If a signed number is placed into a tag which is specified unsigned, 0 will be returned and \fBGetError()\fP will return CONF_NOT_UNSIGNEDDefinition at line 883 of file modules.cpp.
+.SS "long ConfigReader::ReadInteger (\fBstd::string\fP tag, \fBstd::string\fP name, int index, bool needs_unsigned)"
+.PP
+Retrieves an integer value from the config file.
+.PP
+This method retrieves an integer value from the config file. Where multiple copies of the tag exist in the config file, index indicates which of the values to retrieve. Any invalid integer values in the tag will cause the objects error value to be set, and any call to \fBGetError()\fP will return CONF_INVALID_NUMBER to be returned. needs_unsigned is set if the number must be unsigned. If a signed number is placed into a tag which is specified unsigned, 0 will be returned and \fBGetError()\fP will return CONF_NOT_UNSIGNED
+.PP
+Definition at line 858 of file modules.cpp.
.PP
References cache, CONF_NOT_A_NUMBER, CONF_NOT_UNSIGNED, CONF_VALUE_NOT_FOUND, and error.
.PP
.nf
-884 {
-885 char val[MAXBUF];
-886 char t[MAXBUF];
-887 char n[MAXBUF];
-888 strlcpy(t,tag.c_str(),MAXBUF);
-889 strlcpy(n,name.c_str(),MAXBUF);
-890 int res = ReadConf(cache,t,n,index,val);
-891 if (!res)
-892 {
-893 this->error = CONF_VALUE_NOT_FOUND;
-894 return 0;
-895 }
-896 for (int i = 0; i < strlen(val); i++)
-897 {
-898 if (!isdigit(val[i]))
-899 {
-900 this->error = CONF_NOT_A_NUMBER;
-901 return 0;
-902 }
-903 }
-904 if ((needs_unsigned) && (atoi(val)<0))
-905 {
-906 this->error = CONF_NOT_UNSIGNED;
-907 return 0;
-908 }
-909 return atoi(val);
-910 }
+859 {
+860 char val[MAXBUF];
+861 char t[MAXBUF];
+862 char n[MAXBUF];
+863 strlcpy(t,tag.c_str(),MAXBUF);
+864 strlcpy(n,name.c_str(),MAXBUF);
+865 int res = ReadConf(cache,t,n,index,val);
+866 if (!res)
+867 {
+868 this->error = CONF_VALUE_NOT_FOUND;
+869 return 0;
+870 }
+871 for (unsigned int i = 0; i < strlen(val); i++)
+872 {
+873 if (!isdigit(val[i]))
+874 {
+875 this->error = CONF_NOT_A_NUMBER;
+876 return 0;
+877 }
+878 }
+879 if ((needs_unsigned) && (atoi(val)<0))
+880 {
+881 this->error = CONF_NOT_UNSIGNED;
+882 return 0;
+883 }
+884 return atoi(val);
+885 }
.fi
-.SS "std::string ConfigReader::ReadValue (std::string tag, std::string name, int index)"
.PP
-Retrieves a value from the config file. 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.Definition at line 850 of file modules.cpp.
+.SS "\fBstd::string\fP ConfigReader::ReadValue (\fBstd::string\fP tag, \fBstd::string\fP name, int index)"
+.PP
+Retrieves a value from the config file.
+.PP
+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.
+.PP
+Definition at line 825 of file modules.cpp.
.PP
References cache, CONF_VALUE_NOT_FOUND, and error.
.PP
.nf
-851 {
-852 char val[MAXBUF];
-853 char t[MAXBUF];
-854 char n[MAXBUF];
-855 strlcpy(t,tag.c_str(),MAXBUF);
-856 strlcpy(n,name.c_str(),MAXBUF);
-857 int res = ReadConf(cache,t,n,index,val);
-858 if (!res)
-859 {
-860 this->error = CONF_VALUE_NOT_FOUND;
-861 return '';
-862 }
-863 return val;
-864 }
+826 {
+827 char val[MAXBUF];
+828 char t[MAXBUF];
+829 char n[MAXBUF];
+830 strlcpy(t,tag.c_str(),MAXBUF);
+831 strlcpy(n,name.c_str(),MAXBUF);
+832 int res = ReadConf(cache,t,n,index,val);
+833 if (!res)
+834 {
+835 this->error = CONF_VALUE_NOT_FOUND;
+836 return '';
+837 }
+838 return val;
+839 }
.fi
+.PP
.SS "bool ConfigReader::Verify ()"
.PP
-Returns true if a config file is valid. This method is partially implemented and will only return false if the config file does not exist or could not be opened.Definition at line 962 of file modules.cpp.
+Returns true if a config file is valid.
+.PP
+This method is partially implemented and will only return false if the config file does not exist or could not be opened.
+.PP
+Definition at line 937 of file modules.cpp.
.PP
References readerror.
.PP
.nf
-963 {
-964 return this->readerror;
-965 }
+938 {
+939 return this->readerror;
+940 }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "std::stringstream* \fBConfigReader::cache\fP\fC [protected]\fP"
.PP
-The contents of the configuration file This protected member should never be accessed by a module (and cannot be accessed unless the core is changed). It will contain a pointer to the configuration file data with unneeded data (such as comments) stripped from it.Definition at line 1158 of file modules.h.
+The contents of the configuration file This protected member should never be accessed by a module (and cannot be accessed unless the core is changed).
+.PP
+It will contain a pointer to the configuration file data with unneeded data (such as comments) stripped from it.
+.PP
+Definition at line 1129 of file modules.h.
.PP
Referenced by ConfigReader(), Enumerate(), EnumerateValues(), ReadFlag(), ReadInteger(), ReadValue(), and ~ConfigReader().
.SS "long \fBConfigReader::error\fP\fC [protected]\fP"
.PP
-Definition at line 1163 of file modules.h.
+Definition at line 1134 of file modules.h.
.PP
Referenced by ConfigReader(), GetError(), ReadFlag(), ReadInteger(), and ReadValue().
.SS "std::stringstream* \fBConfigReader::errorlog\fP\fC [protected]\fP"
.PP
-Definition at line 1159 of file modules.h.
+Definition at line 1130 of file modules.h.
.PP
Referenced by ConfigReader(), DumpErrors(), and ~ConfigReader().
.SS "bool \fBConfigReader::readerror\fP\fC [protected]\fP"
.PP
-Used to store errors. Definition at line 1162 of file modules.h.
+Used to store errors.
+.PP
+Definition at line 1133 of file modules.h.
.PP
Referenced by ConfigReader(), and Verify().
diff --git a/docs/man/man3/ConnectClass.3 b/docs/man/man3/ConnectClass.3
index 93be4a4ae..fe523ce7b 100644
--- a/docs/man/man3/ConnectClass.3
+++ b/docs/man/man3/ConnectClass.3
@@ -1,4 +1,4 @@
-.TH "ConnectClass" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ConnectClass" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -61,7 +61,9 @@ Inherits \fBclassbase\fP.
.in -1c
.SH "Detailed Description"
.PP
-Holds information relevent to <connect allow> and <connect deny> tags in the config file. Definition at line 45 of file users.h.
+Holds information relevent to <connect allow> and <connect deny> tags in the config file.
+.PP
+Definition at line 45 of file users.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "ConnectClass::ConnectClass ()\fC [inline]\fP"
@@ -82,51 +84,70 @@ References flood, host, pass, pingtime, recvqmax, registration_timeout, sendqmax
88 strlcpy(pass,'',MAXBUF);
89 }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "int \fBConnectClass::flood\fP"
.PP
-Number of lines in buffer before excess flood is triggered. Definition at line 56 of file users.h.
+Number of lines in buffer before excess flood is triggered.
+.PP
+Definition at line 56 of file users.h.
.PP
Referenced by ConnectClass().
.SS "char \fBConnectClass::host\fP[MAXBUF]"
.PP
-Host mask for this line. Definition at line 59 of file users.h.
+Host mask for this line.
+.PP
+Definition at line 59 of file users.h.
.PP
Referenced by ConnectClass().
.SS "char \fBConnectClass::pass\fP[MAXBUF]"
.PP
-(Optional) Password for this line Definition at line 65 of file users.h.
+(Optional) Password for this line
+.PP
+Definition at line 65 of file users.h.
.PP
Referenced by ConnectClass().
.SS "int \fBConnectClass::pingtime\fP"
.PP
-Number of seconds between pings for this line. Definition at line 62 of file users.h.
+Number of seconds between pings for this line.
+.PP
+Definition at line 62 of file users.h.
.PP
Referenced by ConnectClass().
.SS "long \fBConnectClass::recvqmax\fP"
.PP
-Maximum size of recvq for users in this class (bytes). Definition at line 77 of file users.h.
+Maximum size of recvq for users in this class (bytes).
+.PP
+Definition at line 77 of file users.h.
.PP
Referenced by ConnectClass().
.SS "int \fBConnectClass::registration_timeout\fP"
.PP
-Max time to register the connection in seconds. Definition at line 53 of file users.h.
+Max time to register the connection in seconds.
+.PP
+Definition at line 53 of file users.h.
.PP
Referenced by ConnectClass().
.SS "long \fBConnectClass::sendqmax\fP"
.PP
-Maximum size of sendq for users in this class (bytes). Definition at line 73 of file users.h.
+Maximum size of sendq for users in this class (bytes).
+.PP
+Definition at line 73 of file users.h.
.PP
Referenced by ConnectClass().
.SS "int \fBConnectClass::threshold\fP"
.PP
-Threshold value for flood disconnect. Definition at line 69 of file users.h.
+Threshold value for flood disconnect.
+.PP
+Definition at line 69 of file users.h.
.PP
Referenced by ConnectClass().
.SS "char \fBConnectClass::type\fP"
.PP
-Type of line, either CC_ALLOW or CC_DENY. Definition at line 50 of file users.h.
+Type of line, either CC_ALLOW or CC_DENY.
+.PP
+Definition at line 50 of file users.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/DNS.3 b/docs/man/man3/DNS.3
index 73f88fa81..a88a76ab1 100644
--- a/docs/man/man3/DNS.3
+++ b/docs/man/man3/DNS.3
@@ -1,4 +1,4 @@
-.TH "DNS" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "DNS" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -18,7 +18,7 @@ DNS \- The DNS class allows fast nonblocking resolution of hostnames and ip addr
.br
.RI "\fIThe default constructor uses dns addresses read from /etc/resolv.conf. \fP"
.ti -1c
-.RI "\fBDNS\fP (std::string dnsserver)"
+.RI "\fBDNS\fP (\fBstd::string\fP dnsserver)"
.br
.RI "\fIThis constructor accepts a dns server address. \fP"
.ti -1c
@@ -26,11 +26,11 @@ DNS \- The DNS class allows fast nonblocking resolution of hostnames and ip addr
.br
.RI "\fIThe destructor frees all used structures. \fP"
.ti -1c
-.RI "bool \fBReverseLookup\fP (std::string ip)"
+.RI "bool \fBReverseLookup\fP (\fBstd::string\fP ip)"
.br
.RI "\fIThis method will start the reverse lookup of an ip given in dotted decimal format, e.g. \fP"
.ti -1c
-.RI "bool \fBForwardLookup\fP (std::string host)"
+.RI "bool \fBForwardLookup\fP (\fBstd::string\fP host)"
.br
.RI "\fIThis method will start the forward lookup of a hostname, e.g. \fP"
.ti -1c
@@ -38,7 +38,7 @@ DNS \- The DNS class allows fast nonblocking resolution of hostnames and ip addr
.br
.RI "\fIThis method will return true when the lookup is completed. \fP"
.ti -1c
-.RI "std::string \fBGetResult\fP ()"
+.RI "\fBstd::string\fP \fBGetResult\fP ()"
.br
.RI "\fIThis method returns the result of your query as a string, depending upon wether you called \fBDNS::ReverseLookup()\fP or \fBDNS::ForwardLookup\fP. \fP"
.ti -1c
@@ -46,7 +46,7 @@ DNS \- The DNS class allows fast nonblocking resolution of hostnames and ip addr
.br
.RI "\fIThis method returns the file handle used by the dns query socket or zero if the query is invalid for some reason, e.g. \fP"
.ti -1c
-.RI "void \fBSetNS\fP (std::string dnsserver)"
+.RI "void \fBSetNS\fP (\fBstd::string\fP dnsserver)"
.br
.in -1c
.SS "Private Member Functions"
@@ -108,80 +108,94 @@ DNS \- The DNS class allows fast nonblocking resolution of hostnames and ip addr
.RI "int \fBt\fP"
.br
.ti -1c
-.RI "unsigned int \fBfd\fP"
+.RI "int \fBfd\fP"
.br
.in -1c
.SH "Detailed Description"
.PP
The DNS class allows fast nonblocking resolution of hostnames and ip addresses.
-It is based heavily upon firedns by Ian Gulliver.
+It is based heavily upon firedns by Ian Gulliver.
.PP
Definition at line 35 of file dns.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "DNS::DNS ()"
.PP
-The default constructor uses dns addresses read from /etc/resolv.conf. Please note that it will re-read /etc/resolv.conf for each copy of the class you instantiate, causing disk access and slow lookups if you create a lot of them. Consider passing the constructor a server address as a parameter instead.
-.SS "DNS::DNS (std::string dnsserver)"
+The default constructor uses dns addresses read from /etc/resolv.conf.
.PP
-This constructor accepts a dns server address. The address must be in dotted decimal form, e.g. 1.2.3.4.
-.SS "DNS::~\fBDNS\fP ()"
+Please note that it will re-read /etc/resolv.conf for each copy of the class you instantiate, causing disk access and slow lookups if you create a lot of them. Consider passing the constructor a server address as a parameter instead.
+.SS "DNS::DNS (\fBstd::string\fP dnsserver)"
+.PP
+This constructor accepts a dns server address.
+.PP
+The address must be in dotted decimal form, e.g. 1.2.3.4.
+.SS "DNS::~DNS ()"
.PP
The destructor frees all used structures.
+.PP
.SH "Member Function Documentation"
.PP
-.SS "in_addr* DNS::dns_aton4 (const char *const ipstring)\fC [private]\fP"
+.SS "in_addr* DNS::dns_aton4 (const char *const ipstring)\fC [private]\fP"
.PP
-.SS "in_addr* DNS::dns_aton4_r (const char *const ipstring)\fC [private]\fP"
+.SS "in_addr* DNS::dns_aton4_r (const char *const ipstring)\fC [private]\fP"
.PP
-.SS "in_addr* DNS::dns_aton4_s (const char *const ipstring, in_addr *const ip)\fC [private]\fP"
+.SS "in_addr* DNS::dns_aton4_s (const char *const ipstring, in_addr *const ip)\fC [private]\fP"
.PP
-.SS "int DNS::dns_getip4 (const char *const name)\fC [private]\fP"
+.SS "int DNS::dns_getip4 (const char *const name)\fC [private]\fP"
.PP
-.SS "int DNS::dns_getip4list (const char *const name)\fC [private]\fP"
+.SS "int DNS::dns_getip4list (const char *const name)\fC [private]\fP"
.PP
-.SS "int DNS::dns_getname4 (const in_addr *const ip)\fC [private]\fP"
+.SS "int DNS::dns_getname4 (const in_addr *const ip)\fC [private]\fP"
.PP
.SS "char* DNS::dns_getresult (const int fd)\fC [private]\fP"
.PP
.SS "char* DNS::dns_getresult_r (const int fd)\fC [private]\fP"
.PP
-.SS "char* DNS::dns_getresult_s (const int fd, char *const result)\fC [private]\fP"
+.SS "char* DNS::dns_getresult_s (const int fd, char *const result)\fC [private]\fP"
.PP
.SS "void DNS::dns_init ()\fC [private]\fP"
.PP
.SS "void DNS::dns_init_2 (const char * dnsserver)\fC [private]\fP"
.PP
-.SS "char* DNS::dns_ntoa4 (const in_addr *const ip)\fC [private]\fP"
+.SS "char* DNS::dns_ntoa4 (const in_addr *const ip)\fC [private]\fP"
+.PP
+.SS "char* DNS::dns_ntoa4_r (const in_addr *const ip)\fC [private]\fP"
.PP
-.SS "char* DNS::dns_ntoa4_r (const in_addr *const ip)\fC [private]\fP"
+.SS "char* DNS::dns_ntoa4_s (const in_addr *const ip, char *const result)\fC [private]\fP"
.PP
-.SS "char* DNS::dns_ntoa4_s (const in_addr *const ip, char *const result)\fC [private]\fP"
+.SS "bool DNS::ForwardLookup (\fBstd::string\fP host)"
.PP
-.SS "bool DNS::ForwardLookup (std::string host)"
+This method will start the forward lookup of a hostname, e.g.
.PP
-This method will start the forward lookup of a hostname, e.g. www.inspircd.org, and returns true if the lookup was successfully initiated.
+www.inspircd.org, and returns true if the lookup was successfully initiated.
.SS "int DNS::GetFD ()"
.PP
-This method returns the file handle used by the dns query socket or zero if the query is invalid for some reason, e.g. the dns server not responding.
-.SS "std::string DNS::GetResult ()"
+This method returns the file handle used by the dns query socket or zero if the query is invalid for some reason, e.g.
+.PP
+the dns server not responding.
+.SS "\fBstd::string\fP DNS::GetResult ()"
.PP
This method returns the result of your query as a string, depending upon wether you called \fBDNS::ReverseLookup()\fP or \fBDNS::ForwardLookup\fP.
+.PP
.SS "bool DNS::HasResult ()"
.PP
-This method will return true when the lookup is completed. It uses poll internally to determine the status of the socket.
-.SS "bool DNS::ReverseLookup (std::string ip)"
+This method will return true when the lookup is completed.
+.PP
+It uses poll internally to determine the status of the socket.
+.SS "bool DNS::ReverseLookup (\fBstd::string\fP ip)"
+.PP
+This method will start the reverse lookup of an ip given in dotted decimal format, e.g.
.PP
-This method will start the reverse lookup of an ip given in dotted decimal format, e.g. 1.2.3.4, and returns true if the lookup was successfully initiated.
-.SS "void DNS::SetNS (std::string dnsserver)"
+1.2.3.4, and returns true if the lookup was successfully initiated.
+.SS "void DNS::SetNS (\fBstd::string\fP dnsserver)"
.PP
.SH "Member Data Documentation"
.PP
.SS "in_addr* \fBDNS::binip\fP\fC [private]\fP"
.PP
Definition at line 38 of file dns.h.
-.SS "unsigned int \fBDNS::fd\fP\fC [private]\fP"
+.SS "int \fBDNS::fd\fP\fC [private]\fP"
.PP
Definition at line 42 of file dns.h.
.SS "char* \fBDNS::result\fP\fC [private]\fP"
diff --git a/docs/man/man3/ELine.3 b/docs/man/man3/ELine.3
index 64bded438..f40a92bd3 100644
--- a/docs/man/man3/ELine.3
+++ b/docs/man/man3/ELine.3
@@ -1,4 +1,4 @@
-.TH "ELine" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ELine" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -18,11 +18,16 @@ Inherits \fBXLine\fP.
.br
.RI "\fIHostmask (ident) to match against May contain wildcards. \fP"
.in -1c
+.SH "Detailed Description"
+.PP
+Definition at line 82 of file xline.h.
.SH "Member Data Documentation"
.PP
.SS "char \fBELine::hostmask\fP[200]"
.PP
-Hostmask (ident) to match against May contain wildcards. Definition at line 88 of file xline.h.
+Hostmask (ident) to match against May contain wildcards.
+.PP
+Definition at line 88 of file xline.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/Event.3 b/docs/man/man3/Event.3
index 96754f611..545ed1fdc 100644
--- a/docs/man/man3/Event.3
+++ b/docs/man/man3/Event.3
@@ -1,4 +1,4 @@
-.TH "Event" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "Event" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -16,7 +16,7 @@ Inherits \fBModuleMessage\fP.
.in +1c
.ti -1c
-.RI "\fBEvent\fP (char *anydata, \fBModule\fP *src, std::string eventid)"
+.RI "\fBEvent\fP (char *anydata, \fBModule\fP *src, \fBstd::string\fP eventid)"
.br
.RI "\fICreate a new Event. \fP"
.ti -1c
@@ -28,7 +28,7 @@ Inherits \fBModuleMessage\fP.
.br
.RI "\fIGet the event Source. \fP"
.ti -1c
-.RI "std::string \fBGetEventID\fP ()"
+.RI "\fBstd::string\fP \fBGetEventID\fP ()"
.br
.RI "\fIGet the event ID. \fP"
.ti -1c
@@ -48,7 +48,7 @@ Inherits \fBModuleMessage\fP.
.br
.RI "\fIThis is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply. \fP"
.ti -1c
-.RI "std::string \fBid\fP"
+.RI "\fBstd::string\fP \fBid\fP"
.br
.RI "\fIThe event identifier. \fP"
.in -1c
@@ -56,82 +56,109 @@ Inherits \fBModuleMessage\fP.
.PP
The Event class is a unicast message directed at all modules.
-When the class is properly instantiated it may be sent to all modules using the \fBSend()\fP method, which will trigger the OnEvent method in all modules passing the object as its parameter.
+When the class is properly instantiated it may be sent to all modules using the \fBSend()\fP method, which will trigger the OnEvent method in all modules passing the object as its parameter.
.PP
-Definition at line 194 of file modules.h.
+Definition at line 196 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
-.SS "Event::Event (char * anydata, \fBModule\fP * src, std::string eventid)"
+.SS "Event::Event (char * anydata, \fBModule\fP * src, \fBstd::string\fP eventid)"
.PP
-Create a new Event. Definition at line 280 of file modules.cpp.
+Create a new Event.
+.PP
+Definition at line 281 of file modules.cpp.
.PP
.nf
-280 : data(anydata), source(src), id(eventid) { };
+281 : data(anydata), source(src), id(eventid) { };
.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "char * Event::GetData ()"
.PP
-Get the Event data. Definition at line 282 of file modules.cpp.
+Get the Event data.
+.PP
+Definition at line 283 of file modules.cpp.
.PP
References data.
.PP
.nf
-283 {
-284 return this->data;
-285 }
+284 {
+285 return this->data;
+286 }
.fi
-.SS "std::string Event::GetEventID ()"
.PP
-Get the event ID. Use this to determine the event type for safe casting of the data Definition at line 298 of file modules.cpp.
+.SS "\fBstd::string\fP Event::GetEventID ()"
+.PP
+Get the event ID.
+.PP
+Use this to determine the event type for safe casting of the data
+.PP
+Definition at line 299 of file modules.cpp.
.PP
References id.
.PP
.nf
-299 {
-300 return this->id;
-301 }
+300 {
+301 return this->id;
+302 }
.fi
+.PP
.SS "\fBModule\fP * Event::GetSource ()"
.PP
-Get the event Source. Definition at line 287 of file modules.cpp.
+Get the event Source.
+.PP
+Definition at line 288 of file modules.cpp.
.PP
References source.
.PP
.nf
-288 {
-289 return this->source;
-290 }
+289 {
+290 return this->source;
+291 }
.fi
+.PP
.SS "char * Event::Send ()\fC [virtual]\fP"
.PP
-Send the Event. The return result of an \fBEvent::Send()\fP will always be NULL as no replies are expected. Implements \fBModuleMessage\fP.
+Send the Event.
+.PP
+The return result of an \fBEvent::Send()\fP will always be NULL as no replies are expected.
.PP
-Definition at line 292 of file modules.cpp.
+Implements \fBModuleMessage\fP.
+.PP
+Definition at line 293 of file modules.cpp.
.PP
References FOREACH_MOD.
.PP
.nf
-293 {
-294 FOREACH_MOD OnEvent(this);
-295 return NULL;
-296 }
+294 {
+295 FOREACH_MOD OnEvent(this);
+296 return NULL;
+297 }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "char* \fBEvent::data\fP\fC [protected]\fP"
.PP
-This member holds a pointer to arbitary data set by the emitter of the message. Definition at line 199 of file modules.h.
+This member holds a pointer to arbitary data set by the emitter of the message.
+.PP
+Definition at line 201 of file modules.h.
.PP
Referenced by GetData().
-.SS "std::string \fBEvent::id\fP\fC [protected]\fP"
+.SS "\fBstd::string\fP \fBEvent::id\fP\fC [protected]\fP"
+.PP
+The event identifier.
.PP
-The event identifier. This is arbitary text which should be used to distinguish one type of event from another. Definition at line 208 of file modules.h.
+This is arbitary text which should be used to distinguish one type of event from another.
+.PP
+Definition at line 210 of file modules.h.
.PP
Referenced by GetEventID().
.SS "\fBModule\fP* \fBEvent::source\fP\fC [protected]\fP"
.PP
-This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply. Definition at line 203 of file modules.h.
+This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply.
+.PP
+Definition at line 205 of file modules.h.
.PP
Referenced by GetSource().
diff --git a/docs/man/man3/ExemptItem.3 b/docs/man/man3/ExemptItem.3
index 530a2a39b..7f07d2075 100644
--- a/docs/man/man3/ExemptItem.3
+++ b/docs/man/man3/ExemptItem.3
@@ -1,4 +1,4 @@
-.TH "ExemptItem" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ExemptItem" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -14,7 +14,9 @@ Inherits \fBHostItem\fP.
.PP
.SH "Detailed Description"
.PP
-A subclass of \fBHostItem\fP designed to hold channel exempts (+e). Definition at line 60 of file channels.h.
+A subclass of \fBHostItem\fP designed to hold channel exempts (+e).
+.PP
+Definition at line 60 of file channels.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/ExtMode.3 b/docs/man/man3/ExtMode.3
index 1c8a04730..6b5905f8d 100644
--- a/docs/man/man3/ExtMode.3
+++ b/docs/man/man3/ExtMode.3
@@ -1,4 +1,4 @@
-.TH "ExtMode" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ExtMode" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -25,59 +25,51 @@ Inherits \fBclassbase\fP.
.RI "int \fBtype\fP"
.br
.ti -1c
-.RI "int \fBparams_when_on\fP"
+.RI "bool \fBneedsoper\fP"
.br
.ti -1c
-.RI "int \fBparams_when_off\fP"
+.RI "int \fBparams_when_on\fP"
.br
.ti -1c
-.RI "bool \fBneedsoper\fP"
+.RI "int \fBparams_when_off\fP"
.br
.ti -1c
.RI "bool \fBlist\fP"
.br
.in -1c
+.SH "Detailed Description"
+.PP
+Definition at line 139 of file modules.cpp.
.SH "Constructor & Destructor Documentation"
.PP
.SS "ExtMode::ExtMode (char mc, int ty, bool oper, int p_on, int p_off)\fC [inline]\fP"
.PP
-Definition at line 147 of file modules.cpp.
-.PP
-References modechar, needsoper, params_when_off, params_when_on, and type.
+Definition at line 148 of file modules.cpp.
.PP
.nf
-147 : modechar(mc), type(ty), needsoper(oper), params_when_on(p_on), params_when_off(p_off) { };
+148 : modechar(mc), type(ty), needsoper(oper), params_when_on(p_on), params_when_off(p_off) { };
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "bool \fBExtMode::list\fP"
.PP
-Definition at line 146 of file modules.cpp.
+Definition at line 147 of file modules.cpp.
.SS "char \fBExtMode::modechar\fP"
.PP
-Definition at line 141 of file modules.cpp.
-.PP
-Referenced by ExtMode().
+Definition at line 142 of file modules.cpp.
.SS "bool \fBExtMode::needsoper\fP"
.PP
-Definition at line 145 of file modules.cpp.
-.PP
-Referenced by ExtMode().
-.SS "int \fBExtMode::params_when_off\fP"
-.PP
Definition at line 144 of file modules.cpp.
+.SS "int \fBExtMode::params_when_off\fP"
.PP
-Referenced by ExtMode().
+Definition at line 146 of file modules.cpp.
.SS "int \fBExtMode::params_when_on\fP"
.PP
-Definition at line 143 of file modules.cpp.
-.PP
-Referenced by ExtMode().
+Definition at line 145 of file modules.cpp.
.SS "int \fBExtMode::type\fP"
.PP
-Definition at line 142 of file modules.cpp.
-.PP
-Referenced by ExtMode().
+Definition at line 143 of file modules.cpp.
.SH "Author"
.PP
diff --git a/docs/man/man3/Extensible.3 b/docs/man/man3/Extensible.3
index b5cdefdf4..4f918482c 100644
--- a/docs/man/man3/Extensible.3
+++ b/docs/man/man3/Extensible.3
@@ -1,4 +1,4 @@
-.TH "Extensible" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "Extensible" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -12,21 +12,21 @@ Extensible \- class Extensible is the parent class of many classes such as userr
.PP
Inherits \fBclassbase\fP.
.PP
-Inherited by \fBchanrec\fP, \fBcommand_t\fP, \fBconnection\fP, and \fBircd_connector\fP.
+Inherited by \fBchanrec\fP, \fBcommand_t\fP, and \fBconnection\fP.
.PP
.SS "Public Member Functions"
.in +1c
.ti -1c
-.RI "bool \fBExtend\fP (std::string key, char *p)"
+.RI "bool \fBExtend\fP (\fBstd::string\fP key, char *p)"
.br
.RI "\fIExtend an Extensible class. \fP"
.ti -1c
-.RI "bool \fBShrink\fP (std::string key)"
+.RI "bool \fBShrink\fP (\fBstd::string\fP key)"
.br
.RI "\fIShrink an Extensible class. \fP"
.ti -1c
-.RI "char * \fBGetExt\fP (std::string key)"
+.RI "char * \fBGetExt\fP (\fBstd::string\fP key)"
.br
.RI "\fIGet an extension item. \fP"
.in -1c
@@ -34,7 +34,7 @@ Inherited by \fBchanrec\fP, \fBcommand_t\fP, \fBconnection\fP, and \fBircd_conne
.in +1c
.ti -1c
-.RI "std::map< std::string, char * > \fBExtension_Items\fP"
+.RI "std::map< \fBstd::string\fP, char * > \fBExtension_Items\fP"
.br
.RI "\fIPrivate data store. \fP"
.in -1c
@@ -42,14 +42,16 @@ Inherited by \fBchanrec\fP, \fBcommand_t\fP, \fBconnection\fP, and \fBircd_conne
.PP
class Extensible is the parent class of many classes such as userrec and chanrec.
-class Extensible implements a system which allows modules to 'extend' the class by attaching data within a map associated with the object. In this way modules can store their own custom information within user objects, channel objects and server objects, without breaking other modules (this is more sensible than using a flags variable, and each module defining bits within the flag as 'theirs' as it is less prone to conflict and supports arbitary data storage).
+class Extensible implements a system which allows modules to 'extend' the class by attaching data within a map associated with the object. In this way modules can store their own custom information within user objects, channel objects and server objects, without breaking other modules (this is more sensible than using a flags variable, and each module defining bits within the flag as 'theirs' as it is less prone to conflict and supports arbitary data storage).
.PP
Definition at line 50 of file base.h.
.SH "Member Function Documentation"
.PP
-.SS "bool Extensible::Extend (std::string key, char * p)"
+.SS "bool Extensible::Extend (\fBstd::string\fP key, char * p)"
.PP
-Extend an Extensible class. \fBParameters:\fP
+Extend an Extensible class.
+.PP
+\fBParameters:\fP
.RS 4
\fIkey\fP The key parameter is an arbitary string which identifies the extension data
.br
@@ -64,9 +66,11 @@ Returns true on success, false if otherwise
.RE
.PP
-.SS "char* Extensible::GetExt (std::string key)"
+.SS "char* Extensible::GetExt (\fBstd::string\fP key)"
+.PP
+Get an extension item.
.PP
-Get an extension item. \fBParameters:\fP
+\fBParameters:\fP
.RS 4
\fIkey\fP The key parameter is an arbitary string which identifies the extension data
.RE
@@ -77,9 +81,11 @@ If you provide a non-existent key name, the function returns NULL, otherwise a p
.RE
.PP
-.SS "bool Extensible::Shrink (std::string key)"
+.SS "bool Extensible::Shrink (\fBstd::string\fP key)"
.PP
-Shrink an Extensible class. \fBParameters:\fP
+Shrink an Extensible class.
+.PP
+\fBParameters:\fP
.RS 4
\fIkey\fP The key parameter is an arbitary string which identifies the extension data
.RE
@@ -94,9 +100,11 @@ Returns true on success.
.SH "Member Data Documentation"
.PP
-.SS "std::map<std::string,char*> \fBExtensible::Extension_Items\fP\fC [private]\fP"
+.SS "std::map<\fBstd::string\fP,char*> \fBExtensible::Extension_Items\fP\fC [private]\fP"
+.PP
+Private data store.
.PP
-Private data store. Definition at line 54 of file base.h.
+Definition at line 54 of file base.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/FileReader.3 b/docs/man/man3/FileReader.3
index cd9e613ef..c6111fde1 100644
--- a/docs/man/man3/FileReader.3
+++ b/docs/man/man3/FileReader.3
@@ -1,4 +1,4 @@
-.TH "FileReader" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "FileReader" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -20,7 +20,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIDefault constructor. \fP"
.ti -1c
-.RI "\fBFileReader\fP (std::string filename)"
+.RI "\fBFileReader\fP (\fBstd::string\fP filename)"
.br
.RI "\fISecondary constructor. \fP"
.ti -1c
@@ -28,7 +28,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIDefault destructor. \fP"
.ti -1c
-.RI "void \fBLoadFile\fP (std::string filename)"
+.RI "void \fBLoadFile\fP (\fBstd::string\fP filename)"
.br
.RI "\fIUsed to load a file. \fP"
.ti -1c
@@ -36,7 +36,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIReturns true if the file exists This function will return false if the file could not be opened. \fP"
.ti -1c
-.RI "std::string \fBGetLine\fP (int x)"
+.RI "\fBstd::string\fP \fBGetLine\fP (int x)"
.br
.RI "\fIRetrieve one line from the file. \fP"
.ti -1c
@@ -55,102 +55,135 @@ Inherits \fBclassbase\fP.
.PP
Caches a text file into memory and can be used to retrieve lines from it.
-This class contains methods for read-only manipulation of a text file in memory. Either use the constructor type with one parameter to load a file into memory at construction, or use the LoadFile method to load a file.
+This class contains methods for read-only manipulation of a text file in memory. Either use the constructor type with one parameter to load a file into memory at construction, or use the LoadFile method to load a file.
.PP
-Definition at line 1239 of file modules.h.
+Definition at line 1210 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "FileReader::FileReader ()"
.PP
-Default constructor. This method does not load any file into memory, you must use the LoadFile method after constructing the class this way.Definition at line 975 of file modules.cpp.
+Default constructor.
+.PP
+This method does not load any file into memory, you must use the LoadFile method after constructing the class this way.
+.PP
+Definition at line 950 of file modules.cpp.
.PP
.nf
-976 {
-977 }
+951 {
+952 }
.fi
-.SS "FileReader::FileReader (std::string filename)"
.PP
-Secondary constructor. 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, \fBFileReader::FileSize\fP returns 0.Definition at line 968 of file modules.cpp.
+.SS "FileReader::FileReader (\fBstd::string\fP filename)"
+.PP
+Secondary constructor.
.PP
-References fc, and file_cache.
+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, \fBFileReader::FileSize\fP returns 0.
+.PP
+Definition at line 943 of file modules.cpp.
+.PP
+References fc.
.PP
.nf
-969 {
-970 file_cache c;
-971 readfile(c,filename.c_str());
-972 this->fc = c;
-973 }
+944 {
+945 file_cache c;
+946 readfile(c,filename.c_str());
+947 this->fc = c;
+948 }
.fi
-.SS "FileReader::~\fBFileReader\fP ()"
.PP
-Default destructor. This deletes the memory allocated to the file.Definition at line 987 of file modules.cpp.
+.SS "FileReader::~FileReader ()"
+.PP
+Default destructor.
+.PP
+This deletes the memory allocated to the file.
+.PP
+Definition at line 962 of file modules.cpp.
.PP
.nf
-988 {
-989 }
+963 {
+964 }
.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "bool FileReader::Exists ()"
.PP
-Returns true if the file exists This function will return false if the file could not be opened. Definition at line 991 of file modules.cpp.
+Returns true if the file exists This function will return false if the file could not be opened.
+.PP
+Definition at line 966 of file modules.cpp.
.PP
References fc.
.PP
.nf
-992 {
-993 if (fc.size() == 0)
-994 {
-995 return(false);
-996 }
-997 else
-998 {
-999 return(true);
-1000 }
-1001 }
+967 {
+968 if (fc.size() == 0)
+969 {
+970 return(false);
+971 }
+972 else
+973 {
+974 return(true);
+975 }
+976 }
.fi
+.PP
.SS "int FileReader::FileSize ()"
.PP
-Returns the size of the file in lines. 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.Definition at line 1010 of file modules.cpp.
+Returns the size of the file in lines.
+.PP
+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.
+.PP
+Definition at line 985 of file modules.cpp.
.PP
References fc.
.PP
.nf
-1011 {
-1012 return fc.size();
-1013 }
+986 {
+987 return fc.size();
+988 }
.fi
-.SS "std::string FileReader::GetLine (int x)"
.PP
-Retrieve one line from the file. 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.Definition at line 1003 of file modules.cpp.
+.SS "\fBstd::string\fP FileReader::GetLine (int x)"
+.PP
+Retrieve one line from the file.
+.PP
+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.
+.PP
+Definition at line 978 of file modules.cpp.
.PP
References fc.
.PP
.nf
-1004 {
-1005 if ((x<0) || (x>fc.size()))
-1006 return '';
-1007 return fc[x];
-1008 }
+979 {
+980 if ((x<0) || ((unsigned)x>fc.size()))
+981 return '';
+982 return fc[x];
+983 }
.fi
-.SS "void FileReader::LoadFile (std::string filename)"
.PP
-Used to load a file. 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, \fBFileReader::FileSize\fP returns 0.Definition at line 979 of file modules.cpp.
+.SS "void FileReader::LoadFile (\fBstd::string\fP filename)"
.PP
-References fc, and file_cache.
+Used to load a file.
+.PP
+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, \fBFileReader::FileSize\fP returns 0.
+.PP
+Definition at line 954 of file modules.cpp.
+.PP
+References fc.
.PP
.nf
-980 {
-981 file_cache c;
-982 readfile(c,filename.c_str());
-983 this->fc = c;
-984 }
+955 {
+956 file_cache c;
+957 readfile(c,filename.c_str());
+958 this->fc = c;
+959 }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "\fBfile_cache\fP \fBFileReader::fc\fP\fC [private]\fP"
.PP
-Definition at line 1241 of file modules.h.
+Definition at line 1212 of file modules.h.
.PP
Referenced by Exists(), FileReader(), FileSize(), GetLine(), and LoadFile().
diff --git a/docs/man/man3/GLine.3 b/docs/man/man3/GLine.3
index 790d62ae9..90e78da82 100644
--- a/docs/man/man3/GLine.3
+++ b/docs/man/man3/GLine.3
@@ -1,4 +1,4 @@
-.TH "GLine" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "GLine" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -22,12 +22,16 @@ Inherits \fBXLine\fP.
.in -1c
.SH "Detailed Description"
.PP
-GLine class. Definition at line 73 of file xline.h.
+GLine class.
+.PP
+Definition at line 73 of file xline.h.
.SH "Member Data Documentation"
.PP
.SS "char \fBGLine::hostmask\fP[200]"
.PP
-Hostmask (ident) to match against May contain wildcards. Definition at line 79 of file xline.h.
+Hostmask (ident) to match against May contain wildcards.
+.PP
+Definition at line 79 of file xline.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/HostItem.3 b/docs/man/man3/HostItem.3
index 41ad398a5..950a16845 100644
--- a/docs/man/man3/HostItem.3
+++ b/docs/man/man3/HostItem.3
@@ -1,4 +1,4 @@
-.TH "HostItem" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "HostItem" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -41,7 +41,7 @@ Inherited by \fBBanItem\fP, \fBExemptItem\fP, and \fBInviteItem\fP.
.PP
Holds an entry for a ban list, exemption list, or invite list.
-This class contains a single element in a channel list, such as a banlist.
+This class contains a single element in a channel list, such as a banlist.
.PP
Definition at line 36 of file channels.h.
.SH "Constructor & Destructor Documentation"
@@ -53,13 +53,15 @@ Definition at line 43 of file channels.h.
.nf
43 { /* stub */ }
.fi
-.SS "virtual HostItem::~\fBHostItem\fP ()\fC [inline, virtual]\fP"
+.PP
+.SS "virtual HostItem::~HostItem ()\fC [inline, virtual]\fP"
.PP
Definition at line 44 of file channels.h.
.PP
.nf
44 { /* stub */ }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "char \fBHostItem::data\fP[MAXBUF]"
diff --git a/docs/man/man3/InviteItem.3 b/docs/man/man3/InviteItem.3
index 1f1b4b014..11c1fd0b6 100644
--- a/docs/man/man3/InviteItem.3
+++ b/docs/man/man3/InviteItem.3
@@ -1,4 +1,4 @@
-.TH "InviteItem" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "InviteItem" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -14,7 +14,9 @@ Inherits \fBHostItem\fP.
.PP
.SH "Detailed Description"
.PP
-A subclass of \fBHostItem\fP designed to hold channel invites (+I). Definition at line 68 of file channels.h.
+A subclass of \fBHostItem\fP designed to hold channel invites (+I).
+.PP
+Definition at line 68 of file channels.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/Invited.3 b/docs/man/man3/Invited.3
index 480652984..18e08bb8e 100644
--- a/docs/man/man3/Invited.3
+++ b/docs/man/man3/Invited.3
@@ -1,4 +1,4 @@
-.TH "Invited" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "Invited" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -21,7 +21,9 @@ Inherits \fBclassbase\fP.
.in -1c
.SH "Detailed Description"
.PP
-Holds a channel name to which a user has been invited. Definition at line 36 of file users.h.
+Holds a channel name to which a user has been invited.
+.PP
+Definition at line 36 of file users.h.
.SH "Member Data Documentation"
.PP
.SS "char \fBInvited::channel\fP[CHANMAX]"
diff --git a/docs/man/man3/KLine.3 b/docs/man/man3/KLine.3
index 622641661..f0cbd2b59 100644
--- a/docs/man/man3/KLine.3
+++ b/docs/man/man3/KLine.3
@@ -1,4 +1,4 @@
-.TH "KLine" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "KLine" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -22,12 +22,16 @@ Inherits \fBXLine\fP.
.in -1c
.SH "Detailed Description"
.PP
-KLine class. Definition at line 62 of file xline.h.
+KLine class.
+.PP
+Definition at line 62 of file xline.h.
.SH "Member Data Documentation"
.PP
.SS "char \fBKLine::hostmask\fP[200]"
.PP
-Hostmask (ident) to match against May contain wildcards. Definition at line 68 of file xline.h.
+Hostmask (ident) to match against May contain wildcards.
+.PP
+Definition at line 68 of file xline.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/ModeParameter.3 b/docs/man/man3/ModeParameter.3
index 75922cd20..d2740f9ed 100644
--- a/docs/man/man3/ModeParameter.3
+++ b/docs/man/man3/ModeParameter.3
@@ -1,4 +1,4 @@
-.TH "ModeParameter" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ModeParameter" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -29,7 +29,7 @@ Inherits \fBclassbase\fP.
.PP
Holds a custom parameter to a module-defined channel mode e.g.
-for +L this would hold the channel name.
+for +L this would hold the channel name.
.PP
Definition at line 77 of file channels.h.
.SH "Member Data Documentation"
diff --git a/docs/man/man3/Module.3 b/docs/man/man3/Module.3
index 9867a9454..335d8a5a5 100644
--- a/docs/man/man3/Module.3
+++ b/docs/man/man3/Module.3
@@ -1,4 +1,4 @@
-.TH "Module" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "Module" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -48,11 +48,11 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled when a user parts a channel. \fP"
.ti -1c
-.RI "virtual void \fBOnPacketTransmit\fP (std::string &data, std::string serv)"
+.RI "virtual void \fBOnPacketTransmit\fP (\fBstd::string\fP &data, \fBstd::string\fP serv)"
.br
.RI "\fICalled before a packet is transmitted across the irc network between two irc servers. \fP"
.ti -1c
-.RI "virtual void \fBOnPacketReceive\fP (std::string &data, std::string serv)"
+.RI "virtual void \fBOnPacketReceive\fP (\fBstd::string\fP &data, \fBstd::string\fP serv)"
.br
.RI "\fICalled after a packet is received from another irc server. \fP"
.ti -1c
@@ -60,7 +60,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled on rehash. \fP"
.ti -1c
-.RI "virtual void \fBOnServerRaw\fP (std::string &raw, bool inbound, \fBuserrec\fP *user)"
+.RI "virtual void \fBOnServerRaw\fP (\fBstd::string\fP &raw, bool inbound, \fBuserrec\fP *user)"
.br
.RI "\fICalled when a raw command is transmitted or received. \fP"
.ti -1c
@@ -72,11 +72,11 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled whenever a user is about to join a channel, before any processing is done. \fP"
.ti -1c
-.RI "virtual int \fBOnUserPreKick\fP (\fBuserrec\fP *source, \fBuserrec\fP *user, \fBchanrec\fP *chan, std::string reason)"
+.RI "virtual int \fBOnUserPreKick\fP (\fBuserrec\fP *source, \fBuserrec\fP *user, \fBchanrec\fP *chan, \fBstd::string\fP reason)"
.br
.RI "\fICalled whenever a user is about to be kicked. \fP"
.ti -1c
-.RI "virtual void \fBOnUserKick\fP (\fBuserrec\fP *source, \fBuserrec\fP *user, \fBchanrec\fP *chan, std::string reason)"
+.RI "virtual void \fBOnUserKick\fP (\fBuserrec\fP *source, \fBuserrec\fP *user, \fBchanrec\fP *chan, \fBstd::string\fP reason)"
.br
.RI "\fICalled whenever a user is kicked. \fP"
.ti -1c
@@ -96,19 +96,19 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled whenever a user is about to invite another user into a channel, before any processing is done. \fP"
.ti -1c
-.RI "virtual int \fBOnUserPreMessage\fP (\fBuserrec\fP *user, void *dest, int target_type, std::string &text)"
+.RI "virtual int \fBOnUserPreMessage\fP (\fBuserrec\fP *user, void *dest, int target_type, \fBstd::string\fP &text)"
.br
.RI "\fICalled whenever a user is about to PRIVMSG A user or a channel, before any processing is done. \fP"
.ti -1c
-.RI "virtual int \fBOnUserPreNotice\fP (\fBuserrec\fP *user, void *dest, int target_type, std::string &text)"
+.RI "virtual int \fBOnUserPreNotice\fP (\fBuserrec\fP *user, void *dest, int target_type, \fBstd::string\fP &text)"
.br
.RI "\fICalled whenever a user is about to NOTICE A user or a channel, before any processing is done. \fP"
.ti -1c
-.RI "virtual int \fBOnUserPreNick\fP (\fBuserrec\fP *user, std::string newnick)"
+.RI "virtual int \fBOnUserPreNick\fP (\fBuserrec\fP *user, \fBstd::string\fP newnick)"
.br
.RI "\fICalled before any nickchange, local or remote. \fP"
.ti -1c
-.RI "virtual void \fBOnUserPostNick\fP (\fBuserrec\fP *user, std::string oldnick)"
+.RI "virtual void \fBOnUserPostNick\fP (\fBuserrec\fP *user, \fBstd::string\fP oldnick)"
.br
.RI "\fICalled after any nickchange, local or remote. \fP"
.ti -1c
@@ -124,18 +124,22 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled during a netburst to sync channel data. \fP"
.ti -1c
-.RI "virtual void \fBOn005Numeric\fP (std::string &output)"
+.RI "virtual void \fBOn005Numeric\fP (\fBstd::string\fP &output)"
.br
.RI "\fICalled when a 005 numeric is about to be output. \fP"
.ti -1c
-.RI "virtual int \fBOnKill\fP (\fBuserrec\fP *source, \fBuserrec\fP *dest, std::string reason)"
+.RI "virtual int \fBOnKill\fP (\fBuserrec\fP *source, \fBuserrec\fP *dest, \fBstd::string\fP reason)"
.br
.RI "\fICalled when a client is disconnected by KILL. \fP"
.ti -1c
-.RI "virtual void \fBOnLoadModule\fP (\fBModule\fP *mod, std::string name)"
+.RI "virtual void \fBOnLoadModule\fP (\fBModule\fP *mod, \fBstd::string\fP name)"
.br
.RI "\fICalled whenever a module is loaded. \fP"
.ti -1c
+.RI "virtual void \fBOnUnloadModule\fP (\fBModule\fP *mod, \fBstd::string\fP name)"
+.br
+.RI "\fICalled whenever a module is unloaded. \fP"
+.ti -1c
.RI "virtual void \fBOnBackgroundTimer\fP (time_t curtime)"
.br
.RI "\fICalled once every five seconds for background processing. \fP"
@@ -144,7 +148,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled whenever a list is needed for a listmode. \fP"
.ti -1c
-.RI "virtual int \fBOnPreCommand\fP (std::string command, char **parameters, int pcnt, \fBuserrec\fP *user)"
+.RI "virtual int \fBOnPreCommand\fP (\fBstd::string\fP command, char **parameters, int pcnt, \fBuserrec\fP *user)"
.br
.RI "\fICalled whenever any command is about to be executed. \fP"
.ti -1c
@@ -156,7 +160,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled whenever a user is about to register their connection (e.g. \fP"
.ti -1c
-.RI "virtual int \fBOnRawMode\fP (\fBuserrec\fP *user, \fBchanrec\fP *chan, char mode, std::string param, bool adding, int pcnt)"
+.RI "virtual int \fBOnRawMode\fP (\fBuserrec\fP *user, \fBchanrec\fP *chan, char mode, \fBstd::string\fP param, bool adding, int pcnt)"
.br
.RI "\fICalled whenever a mode character is processed. \fP"
.ti -1c
@@ -164,7 +168,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled whenever a user joins a channel, to determine if invite checks should go ahead or not. \fP"
.ti -1c
-.RI "virtual int \fBOnCheckKey\fP (\fBuserrec\fP *user, \fBchanrec\fP *chan, std::string keygiven)"
+.RI "virtual int \fBOnCheckKey\fP (\fBuserrec\fP *user, \fBchanrec\fP *chan, \fBstd::string\fP keygiven)"
.br
.RI "\fICalled whenever a user joins a channel, to determine if key checks should go ahead or not. \fP"
.ti -1c
@@ -180,22 +184,18 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled on all /STATS commands This method is triggered for all /STATS use, including stats symbols handled by the core. \fP"
.ti -1c
-.RI "virtual int \fBOnChangeLocalUserHost\fP (\fBuserrec\fP *user, std::string newhost)"
+.RI "virtual int \fBOnChangeLocalUserHost\fP (\fBuserrec\fP *user, \fBstd::string\fP newhost)"
.br
.RI "\fICalled whenever a change of a local users displayed host is attempted. \fP"
.ti -1c
-.RI "virtual int \fBOnChangeLocalUserGECOS\fP (\fBuserrec\fP *user, std::string newhost)"
+.RI "virtual int \fBOnChangeLocalUserGECOS\fP (\fBuserrec\fP *user, \fBstd::string\fP newhost)"
.br
.RI "\fICalled whenever a change of a local users GECOS (fullname field) is attempted. \fP"
.ti -1c
-.RI "virtual int \fBOnLocalTopicChange\fP (\fBuserrec\fP *user, \fBchanrec\fP *chan, std::string topic)"
+.RI "virtual int \fBOnLocalTopicChange\fP (\fBuserrec\fP *user, \fBchanrec\fP *chan, \fBstd::string\fP topic)"
.br
.RI "\fICalled whenever a topic is changed by a local user. \fP"
.ti -1c
-.RI "virtual int \fBOnMeshToken\fP (char token, \fBstring_list\fP params, \fBserverrec\fP *source, \fBserverrec\fP *reply, std::string tcp_host, std::string ipaddr, int port)"
-.br
-.RI "\fICalled whenever an unknown token is received in a server to server link. \fP"
-.ti -1c
.RI "virtual void \fBOnEvent\fP (\fBEvent\fP *event)"
.br
.RI "\fICalled whenever an \fBEvent\fP class is sent to all module by another module. \fP"
@@ -204,7 +204,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled whenever a \fBRequest\fP class is sent to your module by another module. \fP"
.ti -1c
-.RI "virtual int \fBOnOperCompare\fP (std::string password, std::string input)"
+.RI "virtual int \fBOnOperCompare\fP (\fBstd::string\fP password, \fBstd::string\fP input)"
.br
.RI "\fICalled whenever an oper password is to be compared to what a user has input. \fP"
.ti -1c
@@ -216,15 +216,15 @@ Inherits \fBclassbase\fP.
.br
.RI "\fICalled whenever a user connects, anywhere on the network. \fP"
.ti -1c
-.RI "virtual int \fBOnAddBan\fP (\fBuserrec\fP *source, \fBchanrec\fP *channel, std::string banmask)"
+.RI "virtual int \fBOnAddBan\fP (\fBuserrec\fP *source, \fBchanrec\fP *channel, \fBstd::string\fP banmask)"
.br
.RI "\fICalled whenever a ban is added to a channel's list. \fP"
.ti -1c
-.RI "virtual int \fBOnDelBan\fP (\fBuserrec\fP *source, \fBchanrec\fP *channel, std::string banmask)"
+.RI "virtual int \fBOnDelBan\fP (\fBuserrec\fP *source, \fBchanrec\fP *channel, \fBstd::string\fP banmask)"
.br
.RI "\fICalled whenever a ban is removed from a channel's list. \fP"
.ti -1c
-.RI "virtual void \fBOnRawSocketAccept\fP (int fd, std::string ip, int localport)"
+.RI "virtual void \fBOnRawSocketAccept\fP (int fd, \fBstd::string\fP ip, int localport)"
.br
.RI "\fICalled immediately after any connection is accepted. \fP"
.ti -1c
@@ -244,46 +244,64 @@ Inherits \fBclassbase\fP.
.PP
Base class for all InspIRCd modules This class is the base class for InspIRCd modules.
-All modules must inherit from this class, its methods will be called when irc server events occur. class inherited from module must be instantiated by the \fBModuleFactory\fP class (see relevent section) for the plugin to be initialised.
+All modules must inherit from this class, its methods will be called when irc server events occur. class inherited from module must be instantiated by the \fBModuleFactory\fP class (see relevent section) for the plugin to be initialised.
.PP
-Definition at line 236 of file modules.h.
+Definition at line 238 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "Module::Module ()"
.PP
-Default constructor creates a module class. Definition at line 305 of file modules.cpp.
+Default constructor creates a module class.
+.PP
+Definition at line 306 of file modules.cpp.
.PP
.nf
-305 { }
+306 { }
.fi
-.SS "Module::~\fBModule\fP ()\fC [virtual]\fP"
.PP
-Default destructor destroys a module class. Definition at line 306 of file modules.cpp.
+.SS "Module::~Module ()\fC [virtual]\fP"
+.PP
+Default destructor destroys a module class.
+.PP
+Definition at line 307 of file modules.cpp.
.PP
.nf
-306 { }
+307 { }
.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "\fBVersion\fP Module::GetVersion ()\fC [virtual]\fP"
.PP
-Returns the version number of a Module. The method should return a \fBVersion\fP object with its version information assigned via \fBVersion::Version\fPDefinition at line 318 of file modules.cpp.
+Returns the version number of a Module.
+.PP
+The method should return a \fBVersion\fP object with its version information assigned via \fBVersion::Version\fP
+.PP
+Definition at line 319 of file modules.cpp.
.PP
References VF_VENDOR.
.PP
.nf
-318 { return Version(1,0,0,0,VF_VENDOR); }
+319 { return Version(1,0,0,0,VF_VENDOR); }
.fi
-.SS "void Module::On005Numeric (std::string & output)\fC [virtual]\fP"
.PP
-Called when a 005 numeric is about to be output. The module should modify the 005 numeric if needed to indicate its features.Definition at line 330 of file modules.cpp.
+.SS "void Module::On005Numeric (\fBstd::string\fP & output)\fC [virtual]\fP"
+.PP
+Called when a 005 numeric is about to be output.
+.PP
+The module should modify the 005 numeric if needed to indicate its features.
+.PP
+Definition at line 331 of file modules.cpp.
.PP
.nf
-330 { };
+331 { };
.fi
+.PP
.SS "int Module::OnAccessCheck (\fBuserrec\fP * source, \fBuserrec\fP * dest, \fBchanrec\fP * channel, int access_type)\fC [virtual]\fP"
.PP
-Called before an action which requires a channel privilage check. This function is called before many functions which check a users status on a channel, for example before opping a user, deopping a user, kicking a user, etc. There are several values for access_type which indicate for what reason access is being checked. These are:
+Called before an action which requires a channel privilage check.
+.PP
+This function is called before many functions which check a users status on a channel, for example before opping a user, deopping a user, kicking a user, etc. There are several values for access_type which indicate for what reason access is being checked. These are:
.br
.br
@@ -303,386 +321,636 @@ Called before an action which requires a channel privilage check. This function
.br
AC_INVITE (7) - a user is being invited
.br
- AC_GENERAL_MODE (8) - a user channel mode is being changed
+ AC_GENERAL_MODE (8) - a user channel mode is being changed<br>
.br
-
-.br
- Upon returning from your function you must return either ACR_DEFAULT, to indicate the module wishes to do nothing, or ACR_DENY where approprate to deny the action, and ACR_ALLOW where appropriate to allow the action. Please note that in the case of some access checks (such as AC_GENERAL_MODE) access may be denied 'upstream' causing other checks such as AC_DEOP to not be reached. Be very careful with use of the AC_GENERAL_MODE type, as it may inadvertently override the behaviour of other modules. When the access_type is AC_GENERAL_MODE, the destination of the mode will be NULL (as it has not yet been determined).Definition at line 327 of file modules.cpp.
+ Upon returning from your function you must return either ACR_DEFAULT, to indicate the module wishes to do nothing, or ACR_DENY where approprate to deny the action, and ACR_ALLOW where appropriate to allow the action. Please note that in the case of some access checks (such as AC_GENERAL_MODE) access may be denied 'upstream' causing other checks such as AC_DEOP to not be reached. Be very careful with use of the AC_GENERAL_MODE type, as it may inadvertently override the behaviour of other modules. When the access_type is AC_GENERAL_MODE, the destination of the mode will be NULL (as it has not yet been determined).
+.PP
+Definition at line 328 of file modules.cpp.
.PP
References ACR_DEFAULT.
.PP
.nf
-327 { return ACR_DEFAULT; };
+328 { return ACR_DEFAULT; };
.fi
-.SS "int Module::OnAddBan (\fBuserrec\fP * source, \fBchanrec\fP * channel, std::string banmask)\fC [virtual]\fP"
.PP
-Called whenever a ban is added to a channel's list. Return a non-zero value to 'eat' the mode change and prevent the ban from being added.Definition at line 355 of file modules.cpp.
+.SS "int Module::OnAddBan (\fBuserrec\fP * source, \fBchanrec\fP * channel, \fBstd::string\fP banmask)\fC [virtual]\fP"
+.PP
+Called whenever a ban is added to a channel's list.
+.PP
+Return a non-zero value to 'eat' the mode change and prevent the ban from being added.
+.PP
+Definition at line 356 of file modules.cpp.
.PP
.nf
-355 { return 0; };
+356 { return 0; };
.fi
+.PP
.SS "void Module::OnBackgroundTimer (time_t curtime)\fC [virtual]\fP"
.PP
-Called once every five seconds for background processing. This timer can be used to control timed features. Its period is not accurate enough to be used as a clock, but it is gauranteed to be called at least once in any five second period, directly from the main loop of the server.Definition at line 333 of file modules.cpp.
+Called once every five seconds for background processing.
+.PP
+This timer can be used to control timed features. Its period is not accurate enough to be used as a clock, but it is gauranteed to be called at least once in any five second period, directly from the main loop of the server.
+.PP
+Definition at line 335 of file modules.cpp.
.PP
.nf
-333 { };
+335 { };
.fi
-.SS "int Module::OnChangeLocalUserGECOS (\fBuserrec\fP * user, std::string newhost)\fC [virtual]\fP"
.PP
-Called whenever a change of a local users GECOS (fullname field) is attempted. return 1 to deny the name change, or 0 to allow it.Definition at line 347 of file modules.cpp.
+.SS "int Module::OnChangeLocalUserGECOS (\fBuserrec\fP * user, \fBstd::string\fP newhost)\fC [virtual]\fP"
+.PP
+Called whenever a change of a local users GECOS (fullname field) is attempted.
+.PP
+return 1 to deny the name change, or 0 to allow it.
+.PP
+Definition at line 349 of file modules.cpp.
.PP
.nf
-347 { return 0; };
+349 { return 0; };
.fi
-.SS "int Module::OnChangeLocalUserHost (\fBuserrec\fP * user, std::string newhost)\fC [virtual]\fP"
.PP
-Called whenever a change of a local users displayed host is attempted. Return 1 to deny the host change, or 0 to allow it.Definition at line 346 of file modules.cpp.
+.SS "int Module::OnChangeLocalUserHost (\fBuserrec\fP * user, \fBstd::string\fP newhost)\fC [virtual]\fP"
+.PP
+Called whenever a change of a local users displayed host is attempted.
+.PP
+Return 1 to deny the host change, or 0 to allow it.
+.PP
+Definition at line 348 of file modules.cpp.
.PP
.nf
-346 { return 0; };
+348 { return 0; };
.fi
+.PP
.SS "\fBstring_list\fP Module::OnChannelSync (\fBchanrec\fP * chan)\fC [virtual]\fP"
.PP
-Called during a netburst to sync channel data. This is called during the netburst on a per-channel basis. You should use this call to up any special channel-related things which are implemented by your module, e.g. sending listmodes. You may return multiple commands in the string_list.Definition at line 329 of file modules.cpp.
+Called during a netburst to sync channel data.
.PP
-References string_list.
+This is called during the netburst on a per-channel basis. You should use this call to up any special channel-related things which are implemented by your module, e.g. sending listmodes. You may return multiple commands in the string_list.
+.PP
+Definition at line 330 of file modules.cpp.
.PP
.nf
-329 { string_list empty; return empty; }
+330 { string_list empty; return empty; }
.fi
+.PP
.SS "int Module::OnCheckBan (\fBuserrec\fP * user, \fBchanrec\fP * chan)\fC [virtual]\fP"
.PP
-Called whenever a user joins a channel, to determine if banlist checks should go ahead or not. This method will always be called for each join, wether or not the user actually matches a channel ban, and determines the outcome of an if statement around the whole section of ban checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event. Definition at line 344 of file modules.cpp.
+Called whenever a user joins a channel, to determine if banlist checks should go ahead or not.
+.PP
+This method will always be called for each join, wether or not the user actually matches a channel ban, and determines the outcome of an if statement around the whole section of ban checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
+.PP
+Definition at line 346 of file modules.cpp.
.PP
.nf
-344 { return 0; };
+346 { return 0; };
.fi
+.PP
.SS "int Module::OnCheckInvite (\fBuserrec\fP * user, \fBchanrec\fP * chan)\fC [virtual]\fP"
.PP
-Called whenever a user joins a channel, to determine if invite checks should go ahead or not. This method will always be called for each join, wether or not the channel is actually +i, and determines the outcome of an if statement around the whole section of invite checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.Definition at line 341 of file modules.cpp.
+Called whenever a user joins a channel, to determine if invite checks should go ahead or not.
+.PP
+This method will always be called for each join, wether or not the channel is actually +i, and determines the outcome of an if statement around the whole section of invite checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
+.PP
+Definition at line 343 of file modules.cpp.
.PP
.nf
-341 { return 0; };
+343 { return 0; };
.fi
-.SS "int Module::OnCheckKey (\fBuserrec\fP * user, \fBchanrec\fP * chan, std::string keygiven)\fC [virtual]\fP"
.PP
-Called whenever a user joins a channel, to determine if key checks should go ahead or not. This method will always be called for each join, wether or not the channel is actually +k, and determines the outcome of an if statement around the whole section of key checking code. if the user specified no key, the keygiven string will be a valid but empty value. return 1 to explicitly allow the join to go ahead or 0 to ignore the event. Definition at line 342 of file modules.cpp.
+.SS "int Module::OnCheckKey (\fBuserrec\fP * user, \fBchanrec\fP * chan, \fBstd::string\fP keygiven)\fC [virtual]\fP"
+.PP
+Called whenever a user joins a channel, to determine if key checks should go ahead or not.
+.PP
+This method will always be called for each join, wether or not the channel is actually +k, and determines the outcome of an if statement around the whole section of key checking code. if the user specified no key, the keygiven string will be a valid but empty value. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
+.PP
+Definition at line 344 of file modules.cpp.
.PP
.nf
-342 { return 0; };
+344 { return 0; };
.fi
+.PP
.SS "int Module::OnCheckLimit (\fBuserrec\fP * user, \fBchanrec\fP * chan)\fC [virtual]\fP"
.PP
-Called whenever a user joins a channel, to determine if channel limit checks should go ahead or not. This method will always be called for each join, wether or not the channel is actually +l, and determines the outcome of an if statement around the whole section of channel limit checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event. Definition at line 343 of file modules.cpp.
+Called whenever a user joins a channel, to determine if channel limit checks should go ahead or not.
+.PP
+This method will always be called for each join, wether or not the channel is actually +l, and determines the outcome of an if statement around the whole section of channel limit checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
+.PP
+Definition at line 345 of file modules.cpp.
.PP
.nf
-343 { return 0; };
+345 { return 0; };
.fi
+.PP
.SS "bool Module::OnCheckReady (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called to check if a user who is connecting can now be allowed to register If any modules return false for this function, the user is held in the waiting state until all modules return true. For example a module which implements ident lookups will continue to return false for a user until their ident lookup is completed. Note that the registration timeout for a user overrides these checks, if the registration timeout is reached, the user is disconnected even if modules report that the user is not ready to connect.Definition at line 336 of file modules.cpp.
+Called to check if a user who is connecting can now be allowed to register If any modules return false for this function, the user is held in the waiting state until all modules return true.
+.PP
+For example a module which implements ident lookups will continue to return false for a user until their ident lookup is completed. Note that the registration timeout for a user overrides these checks, if the registration timeout is reached, the user is disconnected even if modules report that the user is not ready to connect.
+.PP
+Definition at line 338 of file modules.cpp.
.PP
.nf
-336 { return true; };
+338 { return true; };
.fi
-.SS "int Module::OnDelBan (\fBuserrec\fP * source, \fBchanrec\fP * channel, std::string banmask)\fC [virtual]\fP"
.PP
-Called whenever a ban is removed from a channel's list. Return a non-zero value to 'eat' the mode change and prevent the ban from being removed.Definition at line 356 of file modules.cpp.
+.SS "int Module::OnDelBan (\fBuserrec\fP * source, \fBchanrec\fP * channel, \fBstd::string\fP banmask)\fC [virtual]\fP"
+.PP
+Called whenever a ban is removed from a channel's list.
+.PP
+Return a non-zero value to 'eat' the mode change and prevent the ban from being removed.
+.PP
+Definition at line 357 of file modules.cpp.
.PP
.nf
-356 { return 0; };
+357 { return 0; };
.fi
+.PP
.SS "void Module::OnEvent (\fBEvent\fP * event)\fC [virtual]\fP"
.PP
-Called whenever an \fBEvent\fP class is sent to all module by another module. Please see the documentation of \fBEvent::Send()\fP for further information. The \fBEvent\fP sent can always be assumed to be non-NULL, you should *always* check the value of \fBEvent::GetEventID()\fP before doing anything to the event data, and you should *not* change the event data in any way!Definition at line 350 of file modules.cpp.
+Called whenever an \fBEvent\fP class is sent to all module by another module.
+.PP
+Please see the documentation of \fBEvent::Send()\fP for further information. The \fBEvent\fP sent can always be assumed to be non-NULL, you should *always* check the value of \fBEvent::GetEventID()\fP before doing anything to the event data, and you should *not* change the event data in any way!
+.PP
+Definition at line 351 of file modules.cpp.
.PP
.nf
-350 { return; };
+351 { return; };
.fi
+.PP
.SS "int Module::OnExtendedMode (\fBuserrec\fP * user, void * target, char modechar, int type, bool mode_on, \fBstring_list\fP & params)\fC [virtual]\fP"
.PP
-Called whenever an extended mode is to be processed. The type parameter is MT_SERVER, MT_CLIENT or MT_CHANNEL, dependent on where the mode is being changed. mode_on is set when the mode is being set, in which case params contains a list of parameters for the mode as strings. If mode_on is false, the mode is being removed, and parameters may contain the parameters for the mode, dependent on wether they were defined when a mode handler was set up with \fBServer::AddExtendedMode\fP If the mode is a channel mode, target is a chanrec*, and if it is a user mode, target is a userrec*. You must cast this value yourself to make use of it.Definition at line 317 of file modules.cpp.
+Called whenever an extended mode is to be processed.
+.PP
+The type parameter is MT_SERVER, MT_CLIENT or MT_CHANNEL, dependent on where the mode is being changed. mode_on is set when the mode is being set, in which case params contains a list of parameters for the mode as strings. If mode_on is false, the mode is being removed, and parameters may contain the parameters for the mode, dependent on wether they were defined when a mode handler was set up with \fBServer::AddExtendedMode\fP If the mode is a channel mode, target is a chanrec*, and if it is a user mode, target is a userrec*. You must cast this value yourself to make use of it.
+.PP
+Definition at line 318 of file modules.cpp.
.PP
.nf
-317 { return false; }
+318 { return false; }
.fi
+.PP
.SS "void Module::OnGlobalConnect (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called whenever a user connects, anywhere on the network. This event is informational only. You should not change any user information in this event. To do so, use the OnUserConnect method to change the state of local users.Definition at line 354 of file modules.cpp.
+Called whenever a user connects, anywhere on the network.
+.PP
+This event is informational only. You should not change any user information in this event. To do so, use the OnUserConnect method to change the state of local users.
+.PP
+Definition at line 355 of file modules.cpp.
.PP
.nf
-354 { };
+355 { };
.fi
+.PP
.SS "void Module::OnGlobalOper (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called whenever a user is given usermode +o, anywhere on the network. You cannot override this and prevent it from happening as it is already happened and such a task must be performed by another server. You can however bounce modes by sending servermodes out to reverse mode changes.Definition at line 353 of file modules.cpp.
+Called whenever a user is given usermode +o, anywhere on the network.
+.PP
+You cannot override this and prevent it from happening as it is already happened and such a task must be performed by another server. You can however bounce modes by sending servermodes out to reverse mode changes.
+.PP
+Definition at line 354 of file modules.cpp.
.PP
.nf
-353 { };
+354 { };
.fi
+.PP
.SS "void Module::OnInfo (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called whenever a user types /INFO. The userrec will contain the information of the user who typed the command. Modules may use this method to output their own credits in /INFO (which is the ircd's version of an about box). It is purposefully not possible to modify any info that has already been output, or halt the list. You must write a 371 numeric to the user, containing your info in the following format:
+Called whenever a user types /INFO.
.PP
-<nick> :information hereDefinition at line 320 of file modules.cpp.
+The userrec will contain the information of the user who typed the command. Modules may use this method to output their own credits in /INFO (which is the ircd's version of an about box). It is purposefully not possible to modify any info that has already been output, or halt the list. You must write a 371 numeric to the user, containing your info in the following format:
.PP
-.nf
-320 { };
-.fi
-.SS "int Module::OnKill (\fBuserrec\fP * source, \fBuserrec\fP * dest, std::string reason)\fC [virtual]\fP"
+<nick> :information here
.PP
-Called when a client is disconnected by KILL. If a client is killed by a server, e.g. a nickname collision or protocol error, source is NULL. Return 1 from this function to prevent the kill, and 0 from this function to allow it as normal. If you prevent the kill no output will be sent to the client, it is down to your module to generate this information. NOTE: It is NOT advisable to stop kills which originate from servers. If you do so youre risking race conditions, desyncs and worse!Definition at line 331 of file modules.cpp.
+Definition at line 321 of file modules.cpp.
.PP
.nf
-331 { return 0; };
+321 { };
.fi
-.SS "void Module::OnLoadModule (\fBModule\fP * mod, std::string name)\fC [virtual]\fP"
.PP
-Called whenever a module is loaded. mod will contain a pointer to the module, and string will contain its name, for example m_widgets.so. This function is primary for dependency checking, your module may decide to enable some extra features if it sees that you have for example loaded 'm_killwidgets.so' with 'm_makewidgets.so'. It is highly recommended that modules do *NOT* bail if they cannot satisfy dependencies, but instead operate under reduced functionality, unless the dependency is absolutely neccessary (e.g. a module that extends the features of another module).Definition at line 332 of file modules.cpp.
+.SS "int Module::OnKill (\fBuserrec\fP * source, \fBuserrec\fP * dest, \fBstd::string\fP reason)\fC [virtual]\fP"
+.PP
+Called when a client is disconnected by KILL.
+.PP
+If a client is killed by a server, e.g. a nickname collision or protocol error, source is NULL. Return 1 from this function to prevent the kill, and 0 from this function to allow it as normal. If you prevent the kill no output will be sent to the client, it is down to your module to generate this information. NOTE: It is NOT advisable to stop kills which originate from servers. If you do so youre risking race conditions, desyncs and worse!
+.PP
+Definition at line 332 of file modules.cpp.
.PP
.nf
-332 { };
+332 { return 0; };
.fi
-.SS "int Module::OnLocalTopicChange (\fBuserrec\fP * user, \fBchanrec\fP * chan, std::string topic)\fC [virtual]\fP"
.PP
-Called whenever a topic is changed by a local user. Return 1 to deny the topic change, or 0 to allow it.Definition at line 348 of file modules.cpp.
+.SS "void Module::OnLoadModule (\fBModule\fP * mod, \fBstd::string\fP name)\fC [virtual]\fP"
+.PP
+Called whenever a module is loaded.
+.PP
+mod will contain a pointer to the module, and string will contain its name, for example m_widgets.so. This function is primary for dependency checking, your module may decide to enable some extra features if it sees that you have for example loaded 'm_killwidgets.so' with 'm_makewidgets.so'. It is highly recommended that modules do *NOT* bail if they cannot satisfy dependencies, but instead operate under reduced functionality, unless the dependency is absolutely neccessary (e.g. a module that extends the features of another module).
+.PP
+Definition at line 333 of file modules.cpp.
.PP
.nf
-348 { return 0; };
+333 { };
.fi
-.SS "int Module::OnMeshToken (char token, \fBstring_list\fP params, \fBserverrec\fP * source, \fBserverrec\fP * reply, std::string tcp_host, std::string ipaddr, int port)\fC [virtual]\fP"
.PP
-Called whenever an unknown token is received in a server to server link. The token value is the unknown token -- please check that no other modules are using the token that you use. Returning 1 supresses the 'unknown token type' error which is usually sent to all opers with +s. The params list is a list of parameters, and if any parameters start with a colon (:) it is treated as the whole of the last parameter, identical to how RFC messages are handled. source is the sender of the message, and reply is what should be replied to for a unicast message. Note that there are not many messages in the mesh protocol which require unicast messaging. tcp_host is the server name as a string, ipaddr is its ip address in dotted decimal notation and port is the port number it is using.Definition at line 349 of file modules.cpp.
+.SS "int Module::OnLocalTopicChange (\fBuserrec\fP * user, \fBchanrec\fP * chan, \fBstd::string\fP topic)\fC [virtual]\fP"
+.PP
+Called whenever a topic is changed by a local user.
+.PP
+Return 1 to deny the topic change, or 0 to allow it.
+.PP
+Definition at line 350 of file modules.cpp.
.PP
.nf
-349 { return 0; };
+350 { return 0; };
.fi
+.PP
.SS "void Module::OnOper (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called whenever a user opers locally. The userrec will contain the oper mode 'o' as this function is called after any modifications are made to the user's structure by the core.Definition at line 319 of file modules.cpp.
+Called whenever a user opers locally.
+.PP
+The userrec will contain the oper mode 'o' as this function is called after any modifications are made to the user's structure by the core.
+.PP
+Definition at line 320 of file modules.cpp.
.PP
.nf
-319 { };
+320 { };
.fi
-.SS "int Module::OnOperCompare (std::string password, std::string input)\fC [virtual]\fP"
.PP
-Called whenever an oper password is to be compared to what a user has input. The password field (from the config file) is in 'password' and is to be compared against 'input'. This method allows for encryption of oper passwords and much more besides. You should return a nonzero value if you want to allow the comparison or zero if you wish to do nothing.Definition at line 352 of file modules.cpp.
+.SS "int Module::OnOperCompare (\fBstd::string\fP password, \fBstd::string\fP input)\fC [virtual]\fP"
+.PP
+Called whenever an oper password is to be compared to what a user has input.
+.PP
+The password field (from the config file) is in 'password' and is to be compared against 'input'. This method allows for encryption of oper passwords and much more besides. You should return a nonzero value if you want to allow the comparison or zero if you wish to do nothing.
+.PP
+Definition at line 353 of file modules.cpp.
.PP
.nf
-352 { return 0; };
+353 { return 0; };
.fi
-.SS "void Module::OnPacketReceive (std::string & data, std::string serv)\fC [virtual]\fP"
.PP
-Called after a packet is received from another irc server. This allows you to easily represent it in the correct ways to implement encryption, compression, digital signatures and anything else you may want to add. This should be regarded as a pre-processor and will be called immediately after the packet is received but before any other operations with the core of the ircd.Definition at line 313 of file modules.cpp.
+.SS "void Module::OnPacketReceive (\fBstd::string\fP & data, \fBstd::string\fP serv)\fC [virtual]\fP"
+.PP
+Called after a packet is received from another irc server.
+.PP
+This allows you to easily represent it in the correct ways to implement encryption, compression, digital signatures and anything else you may want to add. This should be regarded as a pre-processor and will be called immediately after the packet is received but before any other operations with the core of the ircd.
+.PP
+Definition at line 314 of file modules.cpp.
.PP
.nf
-313 { }
+314 { }
.fi
-.SS "void Module::OnPacketTransmit (std::string & data, std::string serv)\fC [virtual]\fP"
.PP
-Called before a packet is transmitted across the irc network between two irc servers. This allows you to easily represent it in the correct ways to implement encryption, compression, digital signatures and anything else you may want to add. This should be regarded as a pre-processor and will be called before ANY other operations within the ircd core program.Definition at line 312 of file modules.cpp.
+.SS "void Module::OnPacketTransmit (\fBstd::string\fP & data, \fBstd::string\fP serv)\fC [virtual]\fP"
+.PP
+Called before a packet is transmitted across the irc network between two irc servers.
+.PP
+This allows you to easily represent it in the correct ways to implement encryption, compression, digital signatures and anything else you may want to add. This should be regarded as a pre-processor and will be called before ANY other operations within the ircd core program.
+.PP
+Definition at line 313 of file modules.cpp.
.PP
.nf
-312 { }
+313 { }
.fi
-.SS "int Module::OnPreCommand (std::string command, char ** parameters, int pcnt, \fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called whenever any command is about to be executed. This event occurs for all registered commands, wether they are registered in the core, or another module, but it will not occur for invalid commands (e.g. ones which do not exist within the command table). By returning 1 from this method you may prevent the command being executed. If you do this, no output is created by the core, and it is down to your module to produce any output neccessary. Note that unless you return 1, you should not destroy any structures (e.g. by using \fBServer::QuitUser\fP) otherwise when the command's handler function executes after your method returns, it will be passed an invalid pointer to the user object and crash!)Definition at line 335 of file modules.cpp.
+.SS "int Module::OnPreCommand (\fBstd::string\fP command, char ** parameters, int pcnt, \fBuserrec\fP * user)\fC [virtual]\fP"
+.PP
+Called whenever any command is about to be executed.
+.PP
+This event occurs for all registered commands, wether they are registered in the core, or another module, but it will not occur for invalid commands (e.g. ones which do not exist within the command table). By returning 1 from this method you may prevent the command being executed. If you do this, no output is created by the core, and it is down to your module to produce any output neccessary. Note that unless you return 1, you should not destroy any structures (e.g. by using \fBServer::QuitUser\fP) otherwise when the command's handler function executes after your method returns, it will be passed an invalid pointer to the user object and crash!)
+.PP
+Definition at line 337 of file modules.cpp.
.PP
.nf
-335 { return 0; };
+337 { return 0; };
.fi
-.SS "int Module::OnRawMode (\fBuserrec\fP * user, \fBchanrec\fP * chan, char mode, std::string param, bool adding, int pcnt)\fC [virtual]\fP"
.PP
-Called whenever a mode character is processed. Return 1 from this function to block the mode character from being processed entirely, so that you may perform your own code instead. Note that this method allows you to override modes defined by other modes, but this is NOT RECOMMENDED!Definition at line 340 of file modules.cpp.
+.SS "int Module::OnRawMode (\fBuserrec\fP * user, \fBchanrec\fP * chan, char mode, \fBstd::string\fP param, bool adding, int pcnt)\fC [virtual]\fP"
+.PP
+Called whenever a mode character is processed.
+.PP
+Return 1 from this function to block the mode character from being processed entirely, so that you may perform your own code instead. Note that this method allows you to override modes defined by other modes, but this is NOT RECOMMENDED!
+.PP
+Definition at line 342 of file modules.cpp.
.PP
.nf
-340 { return 0; };
+342 { return 0; };
.fi
-.SS "void Module::OnRawSocketAccept (int fd, std::string ip, int localport)\fC [virtual]\fP"
.PP
-Called immediately after any connection is accepted. This is intended for raw socket processing (e.g. modules which wrap the tcp connection within another library) and provides no information relating to a user record as the connection has not been assigned yet. There are no return values from this call as all modules get an opportunity if required to process the connection.Definition at line 357 of file modules.cpp.
+.SS "void Module::OnRawSocketAccept (int fd, \fBstd::string\fP ip, int localport)\fC [virtual]\fP"
+.PP
+Called immediately after any connection is accepted.
+.PP
+This is intended for raw socket processing (e.g. modules which wrap the tcp connection within another library) and provides no information relating to a user record as the connection has not been assigned yet. There are no return values from this call as all modules get an opportunity if required to process the connection.
+.PP
+Definition at line 358 of file modules.cpp.
.PP
.nf
-357 { };
+358 { };
.fi
+.PP
.SS "void Module::OnRawSocketClose (int fd)\fC [virtual]\fP"
.PP
-Called immediately before any socket is closed. When this event is called, shutdown() has not yet been called on the socket.Definition at line 359 of file modules.cpp.
+Called immediately before any socket is closed.
+.PP
+When this event is called, shutdown() has not yet been called on the socket.
+.PP
+Definition at line 360 of file modules.cpp.
.PP
.nf
-359 { };
+360 { };
.fi
+.PP
.SS "int Module::OnRawSocketRead (int fd, char * buffer, unsigned int count, int & readresult)\fC [virtual]\fP"
.PP
-Called immediately before any read() operation on a client socket in the core. This occurs AFTER the select() or poll() so there is always data waiting to be read when this event occurs. Your event should return 1 if it has handled the reading itself, which prevents the core just using read(). You should place any data read into buffer, up to but NOT GREATER THAN the value of count. The value of readresult must be identical to an actual result that might be returned from the read() system call, for example, number of bytes read upon success, 0 upon EOF or closed socket, and -1 for error. If your function returns a nonzero value, you MUST set readresult.Definition at line 360 of file modules.cpp.
+Called immediately before any read() operation on a client socket in the core.
+.PP
+This occurs AFTER the select() or poll() so there is always data waiting to be read when this event occurs. Your event should return 1 if it has handled the reading itself, which prevents the core just using read(). You should place any data read into buffer, up to but NOT GREATER THAN the value of count. The value of readresult must be identical to an actual result that might be returned from the read() system call, for example, number of bytes read upon success, 0 upon EOF or closed socket, and -1 for error. If your function returns a nonzero value, you MUST set readresult.
+.PP
+Definition at line 361 of file modules.cpp.
.PP
.nf
-360 { return 0; };
+361 { return 0; };
.fi
+.PP
.SS "int Module::OnRawSocketWrite (int fd, char * buffer, int count)\fC [virtual]\fP"
.PP
-Called immediately before any write() operation on a user's socket in the core. Because this event is a low level event no user information is associated with it. It is intended for use by modules which may wrap connections within another API such as SSL for example. return a non-zero result if you have handled the write operation, in which case the core will not call write().Definition at line 358 of file modules.cpp.
+Called immediately before any write() operation on a user's socket in the core.
+.PP
+Because this event is a low level event no user information is associated with it. It is intended for use by modules which may wrap connections within another API such as SSL for example. return a non-zero result if you have handled the write operation, in which case the core will not call write().
+.PP
+Definition at line 359 of file modules.cpp.
.PP
.nf
-358 { return 0; };
+359 { return 0; };
.fi
+.PP
.SS "void Module::OnRehash ()\fC [virtual]\fP"
.PP
-Called on rehash. This method is called prior to a /REHASH or when a SIGHUP is received from the operating system. You should use it to reload any files so that your module keeps in step with the rest of the application.Definition at line 314 of file modules.cpp.
+Called on rehash.
+.PP
+This method is called prior to a /REHASH or when a SIGHUP is received from the operating system. You should use it to reload any files so that your module keeps in step with the rest of the application.
+.PP
+Definition at line 315 of file modules.cpp.
.PP
.nf
-314 { }
+315 { }
.fi
+.PP
.SS "char * Module::OnRequest (\fBRequest\fP * request)\fC [virtual]\fP"
.PP
-Called whenever a \fBRequest\fP class is sent to your module by another module. Please see the documentation of \fBRequest::Send()\fP for further information. The \fBRequest\fP sent can always be assumed to be non-NULL, you should not change the request object or its data. Your method may return arbitary data in the char* result which the requesting module may be able to use for pre-determined purposes (e.g. the results of an SQL query, etc).Definition at line 351 of file modules.cpp.
+Called whenever a \fBRequest\fP class is sent to your module by another module.
+.PP
+Please see the documentation of \fBRequest::Send()\fP for further information. The \fBRequest\fP sent can always be assumed to be non-NULL, you should not change the request object or its data. Your method may return arbitary data in the char* result which the requesting module may be able to use for pre-determined purposes (e.g. the results of an SQL query, etc).
+.PP
+Definition at line 352 of file modules.cpp.
.PP
Referenced by Request::Send().
.PP
.nf
-351 { return NULL; };
+352 { return NULL; };
.fi
+.PP
.SS "void Module::OnSendList (\fBuserrec\fP * user, \fBchanrec\fP * channel, char mode)\fC [virtual]\fP"
.PP
-Called whenever a list is needed for a listmode. For example, when a /MODE #channel +b (without any other parameters) is called, if a module was handling +b this function would be called. The function can then output any lists it wishes to. Please note that all modules will see all mode characters to provide the ability to extend each other, so please only output a list if the mode character given matches the one(s) you want to handle.Definition at line 334 of file modules.cpp.
+Called whenever a list is needed for a listmode.
+.PP
+For example, when a /MODE channel +b (without any other parameters) is called, if a module was handling +b this function would be called. The function can then output any lists it wishes to. Please note that all modules will see all mode characters to provide the ability to extend each other, so please only output a list if the mode character given matches the one(s) you want to handle.
+.PP
+Definition at line 336 of file modules.cpp.
.PP
.nf
-334 { };
+336 { };
.fi
-.SS "void Module::OnServerRaw (std::string & raw, bool inbound, \fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called when a raw command is transmitted or received. This method is the lowest level of handler available to a module. It will be called with raw data which is passing through a connected socket. If you wish, you may munge this data by changing the string parameter 'raw'. If you do this, after your function exits it will immediately be cut down to 510 characters plus a carriage return and linefeed. For INBOUND messages only (where inbound is set to true) the value of user will be the userrec of the connection sending the data. This is not possible for outbound data because the data may be being routed to multiple targets.Definition at line 315 of file modules.cpp.
+.SS "void Module::OnServerRaw (\fBstd::string\fP & raw, bool inbound, \fBuserrec\fP * user)\fC [virtual]\fP"
+.PP
+Called when a raw command is transmitted or received.
+.PP
+This method is the lowest level of handler available to a module. It will be called with raw data which is passing through a connected socket. If you wish, you may munge this data by changing the string parameter 'raw'. If you do this, after your function exits it will immediately be cut down to 510 characters plus a carriage return and linefeed. For INBOUND messages only (where inbound is set to true) the value of user will be the userrec of the connection sending the data. This is not possible for outbound data because the data may be being routed to multiple targets.
+.PP
+Definition at line 316 of file modules.cpp.
.PP
.nf
-315 { }
+316 { }
.fi
+.PP
.SS "void Module::OnStats (char symbol)\fC [virtual]\fP"
.PP
-Called on all /STATS commands This method is triggered for all /STATS use, including stats symbols handled by the core. Definition at line 345 of file modules.cpp.
+Called on all /STATS commands This method is triggered for all /STATS use, including stats symbols handled by the core.
+.PP
+Definition at line 347 of file modules.cpp.
+.PP
+.nf
+347 { };
+.fi
+.PP
+.SS "void Module::OnUnloadModule (\fBModule\fP * mod, \fBstd::string\fP name)\fC [virtual]\fP"
+.PP
+Called whenever a module is unloaded.
+.PP
+mod will contain a pointer to the module, and string will contain its name, for example m_widgets.so. This function is primary for dependency checking, your module may decide to enable some extra features if it sees that you have for example loaded 'm_killwidgets.so' with 'm_makewidgets.so'. It is highly recommended that modules do *NOT* bail if they cannot satisfy dependencies, but instead operate under reduced functionality, unless the dependency is absolutely neccessary (e.g. a module that extends the features of another module).
+.PP
+Definition at line 334 of file modules.cpp.
.PP
.nf
-345 { };
+334 { };
.fi
+.PP
.SS "void Module::OnUserConnect (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called when a user connects. The details of the connecting user are available to you in the parameter userrec *userDefinition at line 307 of file modules.cpp.
+Called when a user connects.
+.PP
+The details of the connecting user are available to you in the parameter userrec *user
+.PP
+Definition at line 308 of file modules.cpp.
.PP
.nf
-307 { }
+308 { }
.fi
+.PP
.SS "void Module::OnUserDisconnect (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called whenever a user's socket is closed. The details of the exiting user are available to you in the parameter userrec *user This event is called for all users, registered or not, as a cleanup method for modules which might assign resources to user, such as dns lookups, objects and sockets.Definition at line 309 of file modules.cpp.
+Called whenever a user's socket is closed.
+.PP
+The details of the exiting user are available to you in the parameter userrec *user This event is called for all users, registered or not, as a cleanup method for modules which might assign resources to user, such as dns lookups, objects and sockets.
+.PP
+Definition at line 310 of file modules.cpp.
.PP
.nf
-309 { }
+310 { }
.fi
+.PP
.SS "void Module::OnUserJoin (\fBuserrec\fP * user, \fBchanrec\fP * channel)\fC [virtual]\fP"
.PP
-Called when a user joins a channel. The details of the joining user are available to you in the parameter userrec *user, and the details of the channel they have joined is available in the variable chanrec *channelDefinition at line 310 of file modules.cpp.
+Called when a user joins a channel.
+.PP
+The details of the joining user are available to you in the parameter userrec *user, and the details of the channel they have joined is available in the variable chanrec *channel
+.PP
+Definition at line 311 of file modules.cpp.
.PP
.nf
-310 { }
+311 { }
.fi
-.SS "void Module::OnUserKick (\fBuserrec\fP * source, \fBuserrec\fP * user, \fBchanrec\fP * chan, std::string reason)\fC [virtual]\fP"
.PP
-Called whenever a user is kicked. If this method is called, the kick is already underway and cannot be prevented, so to prevent a kick, please use \fBModule::OnUserPreKick\fP instead of this method.Definition at line 339 of file modules.cpp.
+.SS "void Module::OnUserKick (\fBuserrec\fP * source, \fBuserrec\fP * user, \fBchanrec\fP * chan, \fBstd::string\fP reason)\fC [virtual]\fP"
+.PP
+Called whenever a user is kicked.
+.PP
+If this method is called, the kick is already underway and cannot be prevented, so to prevent a kick, please use \fBModule::OnUserPreKick\fP instead of this method.
+.PP
+Definition at line 341 of file modules.cpp.
.PP
.nf
-339 { };
+341 { };
.fi
+.PP
.SS "void Module::OnUserPart (\fBuserrec\fP * user, \fBchanrec\fP * channel)\fC [virtual]\fP"
.PP
-Called when a user parts a channel. The details of the leaving user are available to you in the parameter userrec *user, and the details of the channel they have left is available in the variable chanrec *channelDefinition at line 311 of file modules.cpp.
+Called when a user parts a channel.
+.PP
+The details of the leaving user are available to you in the parameter userrec *user, and the details of the channel they have left is available in the variable chanrec *channel
+.PP
+Definition at line 312 of file modules.cpp.
.PP
.nf
-311 { }
+312 { }
.fi
-.SS "void Module::OnUserPostNick (\fBuserrec\fP * user, std::string oldnick)\fC [virtual]\fP"
.PP
-Called after any nickchange, local or remote. This can be used to track users after nickchanges have been applied. Please note that although you can see remote nickchanges through this function, you should NOT make any changes to the userrec if the user is a remote user as this may cause a desnyc. check user->server before taking any action (including returning nonzero from the method). Because this method is called after the nickchange is taken place, no return values are possible to indicate forbidding of the nick change. Use OnUserPreNick for this. Definition at line 326 of file modules.cpp.
+.SS "void Module::OnUserPostNick (\fBuserrec\fP * user, \fBstd::string\fP oldnick)\fC [virtual]\fP"
+.PP
+Called after any nickchange, local or remote.
+.PP
+This can be used to track users after nickchanges have been applied. Please note that although you can see remote nickchanges through this function, you should NOT make any changes to the userrec if the user is a remote user as this may cause a desnyc. check user->server before taking any action (including returning nonzero from the method). Because this method is called after the nickchange is taken place, no return values are possible to indicate forbidding of the nick change. Use OnUserPreNick for this.
+.PP
+Definition at line 327 of file modules.cpp.
.PP
.nf
-326 { };
+327 { };
.fi
+.PP
.SS "int Module::OnUserPreInvite (\fBuserrec\fP * source, \fBuserrec\fP * dest, \fBchanrec\fP * channel)\fC [virtual]\fP"
.PP
-Called whenever a user is about to invite another user into a channel, before any processing is done. Returning 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter invites to channels.Definition at line 322 of file modules.cpp.
+Called whenever a user is about to invite another user into a channel, before any processing is done.
+.PP
+Returning 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter invites to channels.
+.PP
+Definition at line 323 of file modules.cpp.
.PP
.nf
-322 { return 0; };
+323 { return 0; };
.fi
+.PP
.SS "int Module::OnUserPreJoin (\fBuserrec\fP * user, \fBchanrec\fP * chan, const char * cname)\fC [virtual]\fP"
.PP
-Called whenever a user is about to join a channel, before any processing is done. Returning a value of 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to mimic +b, +k, +l etc. Returning -1 from this function forces the join to be allowed, bypassing restrictions such as banlists, invite, keys etc.
+Called whenever a user is about to join a channel, before any processing is done.
+.PP
+Returning a value of 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to mimic +b, +k, +l etc. Returning -1 from this function forces the join to be allowed, bypassing restrictions such as banlists, invite, keys etc.
.PP
IMPORTANT NOTE!
.PP
-If the user joins a NEW channel which does not exist yet, OnUserPreJoin will be called BEFORE the channel record is created. This will cause chanrec* chan to be NULL. There is very little you can do in form of processing on the actual channel record at this point, however the channel NAME will still be passed in char* cname, so that you could for example implement a channel blacklist or whitelist, etc.Definition at line 316 of file modules.cpp.
+If the user joins a NEW channel which does not exist yet, OnUserPreJoin will be called BEFORE the channel record is created. This will cause chanrec* chan to be NULL. There is very little you can do in form of processing on the actual channel record at this point, however the channel NAME will still be passed in char* cname, so that you could for example implement a channel blacklist or whitelist, etc.
+.PP
+Definition at line 317 of file modules.cpp.
.PP
.nf
-316 { return 0; }
+317 { return 0; }
.fi
-.SS "int Module::OnUserPreKick (\fBuserrec\fP * source, \fBuserrec\fP * user, \fBchanrec\fP * chan, std::string reason)\fC [virtual]\fP"
.PP
-Called whenever a user is about to be kicked. Returning a value of 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. Definition at line 338 of file modules.cpp.
+.SS "int Module::OnUserPreKick (\fBuserrec\fP * source, \fBuserrec\fP * user, \fBchanrec\fP * chan, \fBstd::string\fP reason)\fC [virtual]\fP"
+.PP
+Called whenever a user is about to be kicked.
+.PP
+Returning a value of 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc.
+.PP
+Definition at line 340 of file modules.cpp.
.PP
.nf
-338 { return 0; };
+340 { return 0; };
.fi
-.SS "int Module::OnUserPreMessage (\fBuserrec\fP * user, void * dest, int target_type, std::string & text)\fC [virtual]\fP"
.PP
-Called whenever a user is about to PRIVMSG A user or a channel, before any processing is done. Returning any nonzero value from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter or redirect messages. target_type can be one of TYPE_USER or TYPE_CHANNEL. If the target_type value is a user, you must cast dest to a userrec* otherwise you must cast it to a chanrec*, this is the details of where the message is destined to be sent.Definition at line 323 of file modules.cpp.
+.SS "int Module::OnUserPreMessage (\fBuserrec\fP * user, void * dest, int target_type, \fBstd::string\fP & text)\fC [virtual]\fP"
+.PP
+Called whenever a user is about to PRIVMSG A user or a channel, before any processing is done.
+.PP
+Returning any nonzero value from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter or redirect messages. target_type can be one of TYPE_USER or TYPE_CHANNEL. If the target_type value is a user, you must cast dest to a userrec* otherwise you must cast it to a chanrec*, this is the details of where the message is destined to be sent.
+.PP
+Definition at line 324 of file modules.cpp.
.PP
.nf
-323 { return 0; };
+324 { return 0; };
.fi
-.SS "int Module::OnUserPreNick (\fBuserrec\fP * user, std::string newnick)\fC [virtual]\fP"
.PP
-Called before any nickchange, local or remote. This can be used to implement Q-lines etc. Please note that although you can see remote nickchanges through this function, you should NOT make any changes to the userrec if the user is a remote user as this may cause a desnyc. check user->server before taking any action (including returning nonzero from the method). If your method returns nonzero, the nickchange is silently forbidden, and it is down to your module to generate some meaninful output.Definition at line 325 of file modules.cpp.
+.SS "int Module::OnUserPreNick (\fBuserrec\fP * user, \fBstd::string\fP newnick)\fC [virtual]\fP"
+.PP
+Called before any nickchange, local or remote.
+.PP
+This can be used to implement Q-lines etc. Please note that although you can see remote nickchanges through this function, you should NOT make any changes to the userrec if the user is a remote user as this may cause a desnyc. check user->server before taking any action (including returning nonzero from the method). If your method returns nonzero, the nickchange is silently forbidden, and it is down to your module to generate some meaninful output.
+.PP
+Definition at line 326 of file modules.cpp.
.PP
.nf
-325 { return 0; };
+326 { return 0; };
.fi
-.SS "int Module::OnUserPreNotice (\fBuserrec\fP * user, void * dest, int target_type, std::string & text)\fC [virtual]\fP"
.PP
-Called whenever a user is about to NOTICE A user or a channel, before any processing is done. Returning any nonzero value from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter or redirect messages. target_type can be one of TYPE_USER or TYPE_CHANNEL. If the target_type value is a user, you must cast dest to a userrec* otherwise you must cast it to a chanrec*, this is the details of where the message is destined to be sent. You may alter the message text as you wish before relinquishing control to the next module in the chain, and if no other modules block the text this altered form of the text will be sent out to the user and possibly to other servers.Definition at line 324 of file modules.cpp.
+.SS "int Module::OnUserPreNotice (\fBuserrec\fP * user, void * dest, int target_type, \fBstd::string\fP & text)\fC [virtual]\fP"
+.PP
+Called whenever a user is about to NOTICE A user or a channel, before any processing is done.
+.PP
+Returning any nonzero value from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter or redirect messages. target_type can be one of TYPE_USER or TYPE_CHANNEL. If the target_type value is a user, you must cast dest to a userrec* otherwise you must cast it to a chanrec*, this is the details of where the message is destined to be sent. You may alter the message text as you wish before relinquishing control to the next module in the chain, and if no other modules block the text this altered form of the text will be sent out to the user and possibly to other servers.
+.PP
+Definition at line 325 of file modules.cpp.
.PP
.nf
-324 { return 0; };
+325 { return 0; };
.fi
+.PP
.SS "void Module::OnUserQuit (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called when a user quits. The details of the exiting user are available to you in the parameter userrec *user This event is only called when the user is fully registered when they quit. To catch raw disconnections, use the OnUserDisconnect method.Definition at line 308 of file modules.cpp.
+Called when a user quits.
+.PP
+The details of the exiting user are available to you in the parameter userrec *user This event is only called when the user is fully registered when they quit. To catch raw disconnections, use the OnUserDisconnect method.
+.PP
+Definition at line 309 of file modules.cpp.
.PP
.nf
-308 { }
+309 { }
.fi
+.PP
.SS "void Module::OnUserRegister (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called whenever a user is about to register their connection (e.g. before the user is sent the MOTD etc). Modules can use this method if they are performing a function which must be done before the actual connection is completed (e.g. ident lookups, dnsbl lookups, etc). Note that you should NOT delete the user record here by causing a disconnection! Use OnUserConnect for that instead.Definition at line 337 of file modules.cpp.
+Called whenever a user is about to register their connection (e.g.
+.PP
+before the user is sent the MOTD etc). Modules can use this method if they are performing a function which must be done before the actual connection is completed (e.g. ident lookups, dnsbl lookups, etc). Note that you should NOT delete the user record here by causing a disconnection! Use OnUserConnect for that instead.
+.PP
+Definition at line 339 of file modules.cpp.
.PP
.nf
-337 { };
+339 { };
.fi
+.PP
.SS "\fBstring_list\fP Module::OnUserSync (\fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Called during a netburst to sync user data. This is called during the netburst on a per-user basis. You should use this call to up any special user-related things which are implemented by your module, e.g. sending listmodes. You may return multiple commands in the string_list.Definition at line 328 of file modules.cpp.
+Called during a netburst to sync user data.
.PP
-References string_list.
+This is called during the netburst on a per-user basis. You should use this call to up any special user-related things which are implemented by your module, e.g. sending listmodes. You may return multiple commands in the string_list.
+.PP
+Definition at line 329 of file modules.cpp.
.PP
.nf
-328 { string_list empty; return empty; }
+329 { string_list empty; return empty; }
.fi
+.PP
.SS "void Module::OnWhois (\fBuserrec\fP * source, \fBuserrec\fP * dest)\fC [virtual]\fP"
.PP
-Called whenever a /WHOIS is performed on a local user. The source parameter contains the details of the user who issued the WHOIS command, and the dest parameter contains the information of the user they are whoising.Definition at line 321 of file modules.cpp.
+Called whenever a /WHOIS is performed on a local user.
+.PP
+The source parameter contains the details of the user who issued the WHOIS command, and the dest parameter contains the information of the user they are whoising.
+.PP
+Definition at line 322 of file modules.cpp.
.PP
.nf
-321 { };
+322 { };
.fi
+.PP
.SH "Author"
diff --git a/docs/man/man3/ModuleFactory.3 b/docs/man/man3/ModuleFactory.3
index 884c19c8e..38eb2c414 100644
--- a/docs/man/man3/ModuleFactory.3
+++ b/docs/man/man3/ModuleFactory.3
@@ -1,4 +1,4 @@
-.TH "ModuleFactory" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ModuleFactory" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -30,30 +30,34 @@ Inherits \fBclassbase\fP.
.PP
Instantiates classes inherited from \fBModule\fP This class creates a class inherited from type \fBModule\fP, using new.
-This is to allow for modules to create many different variants of \fBModule\fP, dependent on architecture, configuration, etc. In most cases, the simple class shown in the example module m_foobar.so will suffice for most modules.
+This is to allow for modules to create many different variants of \fBModule\fP, dependent on architecture, configuration, etc. In most cases, the simple class shown in the example module m_foobar.so will suffice for most modules.
.PP
-Definition at line 1294 of file modules.h.
+Definition at line 1265 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "ModuleFactory::ModuleFactory ()\fC [inline]\fP"
.PP
-Definition at line 1297 of file modules.h.
+Definition at line 1268 of file modules.h.
.PP
.nf
-1297 { }
+1268 { }
.fi
-.SS "virtual ModuleFactory::~\fBModuleFactory\fP ()\fC [inline, virtual]\fP"
.PP
-Definition at line 1298 of file modules.h.
+.SS "virtual ModuleFactory::~ModuleFactory ()\fC [inline, virtual]\fP"
+.PP
+Definition at line 1269 of file modules.h.
.PP
.nf
-1298 { }
+1269 { }
.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "virtual \fBModule\fP* ModuleFactory::CreateModule ()\fC [pure virtual]\fP"
.PP
-Creates a new module. Your inherited class of ModuleFactory must return a pointer to your \fBModule\fP class using this method.
+Creates a new module.
+.PP
+Your inherited class of ModuleFactory must return a pointer to your \fBModule\fP class using this method.
.SH "Author"
.PP
diff --git a/docs/man/man3/ModuleMessage.3 b/docs/man/man3/ModuleMessage.3
index 87999becd..1aeb0a9ff 100644
--- a/docs/man/man3/ModuleMessage.3
+++ b/docs/man/man3/ModuleMessage.3
@@ -1,4 +1,4 @@
-.TH "ModuleMessage" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ModuleMessage" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -21,15 +21,32 @@ Inherited by \fBEvent\fP, and \fBRequest\fP.
.RI "virtual char * \fBSend\fP ()=0"
.br
.RI "\fIThis class is pure virtual and must be inherited. \fP"
+.ti -1c
+.RI "virtual \fB~ModuleMessage\fP ()"
+.br
.in -1c
.SH "Detailed Description"
.PP
-The ModuleMessage class is the base class of \fBRequest\fP and \fBEvent\fP This class is used to represent a basic data structure which is passed between modules for safe inter-module communications. Definition at line 141 of file modules.h.
+The ModuleMessage class is the base class of \fBRequest\fP and \fBEvent\fP This class is used to represent a basic data structure which is passed between modules for safe inter-module communications.
+.PP
+Definition at line 142 of file modules.h.
+.SH "Constructor & Destructor Documentation"
+.PP
+.SS "virtual ModuleMessage::~ModuleMessage ()\fC [inline, virtual]\fP"
+.PP
+Definition at line 148 of file modules.h.
+.PP
+.nf
+148 {};
+.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "virtual char* ModuleMessage::Send ()\fC [pure virtual]\fP"
.PP
-This class is pure virtual and must be inherited. Implemented in \fBRequest\fP, and \fBEvent\fP.
+This class is pure virtual and must be inherited.
+.PP
+Implemented in \fBRequest\fP, and \fBEvent\fP.
.SH "Author"
.PP
diff --git a/docs/man/man3/QLine.3 b/docs/man/man3/QLine.3
index e1e9ce90c..a396146bc 100644
--- a/docs/man/man3/QLine.3
+++ b/docs/man/man3/QLine.3
@@ -1,4 +1,4 @@
-.TH "QLine" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "QLine" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -26,15 +26,25 @@ Inherits \fBXLine\fP.
.in -1c
.SH "Detailed Description"
.PP
-QLine class. Definition at line 108 of file xline.h.
+QLine class.
+.PP
+Definition at line 108 of file xline.h.
.SH "Member Data Documentation"
.PP
.SS "bool \fBQLine::is_global\fP"
.PP
-Set if this is a global Z:line (e.g. it came from another server)Definition at line 118 of file xline.h.
+Set if this is a global Z:line (e.g.
+.PP
+it came from another server)
+.PP
+Definition at line 118 of file xline.h.
.SS "char \fBQLine::nick\fP[64]"
.PP
-Nickname to match against. May contain wildcards.Definition at line 114 of file xline.h.
+Nickname to match against.
+.PP
+May contain wildcards.
+.PP
+Definition at line 114 of file xline.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/Request.3 b/docs/man/man3/Request.3
index 5d83d6961..b83cace94 100644
--- a/docs/man/man3/Request.3
+++ b/docs/man/man3/Request.3
@@ -1,4 +1,4 @@
-.TH "Request" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "Request" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -56,88 +56,111 @@ Inherits \fBModuleMessage\fP.
.PP
The Request class is a unicast message directed at a given module.
-When this class is properly instantiated it may be sent to a module using the \fBSend()\fP method, which will call the given module's OnRequest method with this class as its parameter.
+When this class is properly instantiated it may be sent to a module using the \fBSend()\fP method, which will call the given module's OnRequest method with this class as its parameter.
.PP
-Definition at line 154 of file modules.h.
+Definition at line 156 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "Request::Request (char * anydata, \fBModule\fP * src, \fBModule\fP * dst)"
.PP
-Create a new Request. Definition at line 251 of file modules.cpp.
+Create a new Request.
+.PP
+Definition at line 252 of file modules.cpp.
.PP
.nf
-251 : data(anydata), source(src), dest(dst) { };
+252 : data(anydata), source(src), dest(dst) { };
.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "char * Request::GetData ()"
.PP
-Fetch the Request data. Definition at line 253 of file modules.cpp.
+Fetch the Request data.
+.PP
+Definition at line 254 of file modules.cpp.
.PP
References data.
.PP
.nf
-254 {
-255 return this->data;
-256 }
+255 {
+256 return this->data;
+257 }
.fi
+.PP
.SS "\fBModule\fP * Request::GetDest ()"
.PP
-Fetch the request destination (should be 'this' in the receiving module). Definition at line 263 of file modules.cpp.
+Fetch the request destination (should be 'this' in the receiving module).
+.PP
+Definition at line 264 of file modules.cpp.
.PP
References dest.
.PP
.nf
-264 {
-265 return this->dest;
-266 }
+265 {
+266 return this->dest;
+267 }
.fi
+.PP
.SS "\fBModule\fP * Request::GetSource ()"
.PP
-Fetch the request source. Definition at line 258 of file modules.cpp.
+Fetch the request source.
+.PP
+Definition at line 259 of file modules.cpp.
.PP
References source.
.PP
.nf
-259 {
-260 return this->source;
-261 }
+260 {
+261 return this->source;
+262 }
.fi
+.PP
.SS "char * Request::Send ()\fC [virtual]\fP"
.PP
-Send the Request. Upon returning the result will be arbitary data returned by the module you sent the request to. It is up to your module to know what this data is and how to deal with it. Implements \fBModuleMessage\fP.
+Send the Request.
+.PP
+Upon returning the result will be arbitary data returned by the module you sent the request to. It is up to your module to know what this data is and how to deal with it.
.PP
-Definition at line 268 of file modules.cpp.
+Implements \fBModuleMessage\fP.
+.PP
+Definition at line 269 of file modules.cpp.
.PP
References dest, and Module::OnRequest().
.PP
.nf
-269 {
-270 if (this->dest)
-271 {
-272 return dest->OnRequest(this);
-273 }
-274 else
-275 {
-276 return NULL;
-277 }
-278 }
+270 {
+271 if (this->dest)
+272 {
+273 return dest->OnRequest(this);
+274 }
+275 else
+276 {
+277 return NULL;
+278 }
+279 }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "char* \fBRequest::data\fP\fC [protected]\fP"
.PP
-This member holds a pointer to arbitary data set by the emitter of the message. Definition at line 159 of file modules.h.
+This member holds a pointer to arbitary data set by the emitter of the message.
+.PP
+Definition at line 161 of file modules.h.
.PP
Referenced by GetData().
.SS "\fBModule\fP* \fBRequest::dest\fP\fC [protected]\fP"
.PP
-The single destination of the Request. Definition at line 166 of file modules.h.
+The single destination of the Request.
+.PP
+Definition at line 168 of file modules.h.
.PP
Referenced by GetDest(), and Send().
.SS "\fBModule\fP* \fBRequest::source\fP\fC [protected]\fP"
.PP
-This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply. Definition at line 163 of file modules.h.
+This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply.
+.PP
+Definition at line 165 of file modules.h.
.PP
Referenced by GetSource().
diff --git a/docs/man/man3/Server.3 b/docs/man/man3/Server.3
index f8e40edc4..55223633d 100644
--- a/docs/man/man3/Server.3
+++ b/docs/man/man3/Server.3
@@ -1,4 +1,4 @@
-.TH "Server" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "Server" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -24,35 +24,35 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIDefault destructor. \fP"
.ti -1c
-.RI "virtual void \fBSendOpers\fP (std::string s)"
+.RI "virtual void \fBSendOpers\fP (\fBstd::string\fP s)"
.br
.RI "\fISends text to all opers. \fP"
.ti -1c
-.RI "virtual void \fBLog\fP (int level, std::string s)"
+.RI "virtual void \fBLog\fP (int level, \fBstd::string\fP s)"
.br
.RI "\fIWrites a log string. \fP"
.ti -1c
-.RI "virtual void \fBSend\fP (int Socket, std::string s)"
+.RI "virtual void \fBSend\fP (int Socket, \fBstd::string\fP s)"
.br
.RI "\fISends a line of text down a TCP/IP socket. \fP"
.ti -1c
-.RI "virtual void \fBSendServ\fP (int Socket, std::string s)"
+.RI "virtual void \fBSendServ\fP (int Socket, \fBstd::string\fP s)"
.br
.RI "\fISends text from the server to a socket. \fP"
.ti -1c
-.RI "virtual void \fBSendChannelServerNotice\fP (std::string ServName, \fBchanrec\fP *Channel, std::string text)"
+.RI "virtual void \fBSendChannelServerNotice\fP (\fBstd::string\fP ServName, \fBchanrec\fP *Channel, \fBstd::string\fP text)"
.br
.RI "\fIWrites text to a channel, but from a server, including all. \fP"
.ti -1c
-.RI "virtual void \fBSendFrom\fP (int Socket, \fBuserrec\fP *User, std::string s)"
+.RI "virtual void \fBSendFrom\fP (int Socket, \fBuserrec\fP *User, \fBstd::string\fP s)"
.br
.RI "\fISends text from a user to a socket. \fP"
.ti -1c
-.RI "virtual void \fBSendTo\fP (\fBuserrec\fP *Source, \fBuserrec\fP *Dest, std::string s)"
+.RI "virtual void \fBSendTo\fP (\fBuserrec\fP *Source, \fBuserrec\fP *Dest, \fBstd::string\fP s)"
.br
.RI "\fISends text from a user to another user. \fP"
.ti -1c
-.RI "virtual void \fBSendChannel\fP (\fBuserrec\fP *User, \fBchanrec\fP *Channel, std::string s, bool IncludeSender)"
+.RI "virtual void \fBSendChannel\fP (\fBuserrec\fP *User, \fBchanrec\fP *Channel, \fBstd::string\fP s, bool IncludeSender)"
.br
.RI "\fISends text from a user to a channel (mulicast). \fP"
.ti -1c
@@ -60,15 +60,15 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIReturns true if two users share a common channel. \fP"
.ti -1c
-.RI "virtual void \fBSendCommon\fP (\fBuserrec\fP *User, std::string text, bool IncludeSender)"
+.RI "virtual void \fBSendCommon\fP (\fBuserrec\fP *User, \fBstd::string\fP text, bool IncludeSender)"
.br
.RI "\fISends text from a user to one or more channels (mulicast). \fP"
.ti -1c
-.RI "virtual void \fBSendWallops\fP (\fBuserrec\fP *User, std::string text)"
+.RI "virtual void \fBSendWallops\fP (\fBuserrec\fP *User, \fBstd::string\fP text)"
.br
.RI "\fISends a WALLOPS message. \fP"
.ti -1c
-.RI "virtual bool \fBIsNick\fP (std::string nick)"
+.RI "virtual bool \fBIsNick\fP (\fBstd::string\fP nick)"
.br
.RI "\fIReturns true if a nick is valid. \fP"
.ti -1c
@@ -76,7 +76,7 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIReturns a count of the number of users on a channel. \fP"
.ti -1c
-.RI "virtual \fBuserrec\fP * \fBFindNick\fP (std::string nick)"
+.RI "virtual \fBuserrec\fP * \fBFindNick\fP (\fBstd::string\fP nick)"
.br
.RI "\fIAttempts to look up a nick and return a pointer to it. \fP"
.ti -1c
@@ -84,11 +84,11 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIAttempts to look up a nick using the file descriptor associated with that nick. \fP"
.ti -1c
-.RI "virtual \fBchanrec\fP * \fBFindChannel\fP (std::string channel)"
+.RI "virtual \fBchanrec\fP * \fBFindChannel\fP (\fBstd::string\fP channel)"
.br
.RI "\fIAttempts to look up a channel and return a pointer to it. \fP"
.ti -1c
-.RI "virtual std::string \fBChanMode\fP (\fBuserrec\fP *User, \fBchanrec\fP *Chan)"
+.RI "virtual \fBstd::string\fP \fBChanMode\fP (\fBuserrec\fP *User, \fBchanrec\fP *Chan)"
.br
.RI "\fIAttempts to look up a user's privilages on a channel. \fP"
.ti -1c
@@ -96,15 +96,15 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIChecks if a user is on a channel. \fP"
.ti -1c
-.RI "virtual std::string \fBGetServerName\fP ()"
+.RI "virtual \fBstd::string\fP \fBGetServerName\fP ()"
.br
.RI "\fIReturns the server name of the server where the module is loaded. \fP"
.ti -1c
-.RI "virtual std::string \fBGetNetworkName\fP ()"
+.RI "virtual \fBstd::string\fP \fBGetNetworkName\fP ()"
.br
.RI "\fIReturns the network name, global to all linked servers. \fP"
.ti -1c
-.RI "virtual std::string \fBGetServerDescription\fP ()"
+.RI "virtual \fBstd::string\fP \fBGetServerDescription\fP ()"
.br
.RI "\fIReturns the server description string of the local server. \fP"
.ti -1c
@@ -128,43 +128,43 @@ Inherits \fBclassbase\fP.
.br
.RI "\fISends a servermode. \fP"
.ti -1c
-.RI "virtual void \fBSendToModeMask\fP (std::string modes, int flags, std::string text)"
+.RI "virtual void \fBSendToModeMask\fP (\fBstd::string\fP modes, int flags, \fBstd::string\fP text)"
.br
.RI "\fISends to all users matching a mode mask You must specify one or more usermodes as the first parameter. \fP"
.ti -1c
-.RI "virtual \fBchanrec\fP * \fBJoinUserToChannel\fP (\fBuserrec\fP *user, std::string cname, std::string key)"
+.RI "virtual \fBchanrec\fP * \fBJoinUserToChannel\fP (\fBuserrec\fP *user, \fBstd::string\fP cname, \fBstd::string\fP key)"
.br
.RI "\fIForces a user to join a channel. \fP"
.ti -1c
-.RI "virtual \fBchanrec\fP * \fBPartUserFromChannel\fP (\fBuserrec\fP *user, std::string cname, std::string reason)"
+.RI "virtual \fBchanrec\fP * \fBPartUserFromChannel\fP (\fBuserrec\fP *user, \fBstd::string\fP cname, \fBstd::string\fP reason)"
.br
.RI "\fIForces a user to part a channel. \fP"
.ti -1c
-.RI "virtual void \fBChangeUserNick\fP (\fBuserrec\fP *user, std::string nickname)"
+.RI "virtual void \fBChangeUserNick\fP (\fBuserrec\fP *user, \fBstd::string\fP nickname)"
.br
.RI "\fIForces a user nickchange. \fP"
.ti -1c
-.RI "virtual void \fBQuitUser\fP (\fBuserrec\fP *user, std::string reason)"
+.RI "virtual void \fBQuitUser\fP (\fBuserrec\fP *user, \fBstd::string\fP reason)"
.br
.RI "\fIForces a user to quit with the specified reason. \fP"
.ti -1c
-.RI "virtual bool \fBMatchText\fP (std::string sliteral, std::string spattern)"
+.RI "virtual bool \fBMatchText\fP (\fBstd::string\fP sliteral, \fBstd::string\fP spattern)"
.br
.RI "\fIMatches text against a glob pattern. \fP"
.ti -1c
-.RI "virtual void \fBCallCommandHandler\fP (std::string commandname, char **parameters, int pcnt, \fBuserrec\fP *user)"
+.RI "virtual void \fBCallCommandHandler\fP (\fBstd::string\fP commandname, char **parameters, int pcnt, \fBuserrec\fP *user)"
.br
.RI "\fICalls the handler for a command, either implemented by the core or by another module. \fP"
.ti -1c
-.RI "virtual void \fBChangeHost\fP (\fBuserrec\fP *user, std::string host)"
+.RI "virtual void \fBChangeHost\fP (\fBuserrec\fP *user, \fBstd::string\fP host)"
.br
.RI "\fIChange displayed hostname of a user. \fP"
.ti -1c
-.RI "virtual void \fBChangeGECOS\fP (\fBuserrec\fP *user, std::string gecos)"
+.RI "virtual void \fBChangeGECOS\fP (\fBuserrec\fP *user, \fBstd::string\fP gecos)"
.br
.RI "\fIChange GECOS (fullname) of a user. \fP"
.ti -1c
-.RI "virtual bool \fBIsUlined\fP (std::string server)"
+.RI "virtual bool \fBIsUlined\fP (\fBstd::string\fP server)"
.br
.RI "\fIReturns true if the servername you give is ulined. \fP"
.ti -1c
@@ -172,150 +172,152 @@ Inherits \fBclassbase\fP.
.br
.RI "\fIFetches the userlist of a channel. \fP"
.ti -1c
-.RI "virtual bool \fBUserToPseudo\fP (\fBuserrec\fP *user, std::string message)"
+.RI "virtual bool \fBUserToPseudo\fP (\fBuserrec\fP *user, \fBstd::string\fP message)"
.br
.RI "\fIRemove a user's connection to the irc server, but leave their client in existence in the user hash. \fP"
.ti -1c
-.RI "virtual bool \fBPseudoToUser\fP (\fBuserrec\fP *alive, \fBuserrec\fP *zombie, std::string message)"
+.RI "virtual bool \fBPseudoToUser\fP (\fBuserrec\fP *alive, \fBuserrec\fP *zombie, \fBstd::string\fP message)"
.br
.RI "\fIThis user takes one user, and switches their file descriptor with another user, so that one user 'becomes' the other. \fP"
.ti -1c
-.RI "virtual void \fBAddGLine\fP (long duration, std::string source, std::string reason, std::string hostmask)"
+.RI "virtual void \fBAddGLine\fP (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP hostmask)"
.br
.RI "\fIAdds a G-line The G-line is propogated to all of the servers in the mesh and enforced as soon as it is added. \fP"
.ti -1c
-.RI "virtual void \fBAddQLine\fP (long duration, std::string source, std::string reason, std::string nickname)"
+.RI "virtual void \fBAddQLine\fP (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP nickname)"
.br
.RI "\fIAdds a Q-line The Q-line is propogated to all of the servers in the mesh and enforced as soon as it is added. \fP"
.ti -1c
-.RI "virtual void \fBAddZLine\fP (long duration, std::string source, std::string reason, std::string ipaddr)"
+.RI "virtual void \fBAddZLine\fP (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP ipaddr)"
.br
.RI "\fIAdds a Z-line The Z-line is propogated to all of the servers in the mesh and enforced as soon as it is added. \fP"
.ti -1c
-.RI "virtual void \fBAddKLine\fP (long duration, std::string source, std::string reason, std::string hostmask)"
+.RI "virtual void \fBAddKLine\fP (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP hostmask)"
.br
.RI "\fIAdds a K-line The K-line is enforced as soon as it is added. \fP"
.ti -1c
-.RI "virtual void \fBAddELine\fP (long duration, std::string source, std::string reason, std::string hostmask)"
+.RI "virtual void \fBAddELine\fP (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP hostmask)"
.br
.RI "\fIAdds a E-line The E-line is enforced as soon as it is added. \fP"
.ti -1c
-.RI "virtual bool \fBDelGLine\fP (std::string hostmask)"
+.RI "virtual bool \fBDelGLine\fP (\fBstd::string\fP hostmask)"
.br
.RI "\fIDeletes a G-Line from all servers on the mesh. \fP"
.ti -1c
-.RI "virtual bool \fBDelQLine\fP (std::string nickname)"
+.RI "virtual bool \fBDelQLine\fP (\fBstd::string\fP nickname)"
.br
.RI "\fIDeletes a Q-Line from all servers on the mesh. \fP"
.ti -1c
-.RI "virtual bool \fBDelZLine\fP (std::string ipaddr)"
+.RI "virtual bool \fBDelZLine\fP (\fBstd::string\fP ipaddr)"
.br
.RI "\fIDeletes a Z-Line from all servers on the mesh. \fP"
.ti -1c
-.RI "virtual bool \fBDelKLine\fP (std::string hostmask)"
+.RI "virtual bool \fBDelKLine\fP (\fBstd::string\fP hostmask)"
.br
.RI "\fIDeletes a local K-Line. \fP"
.ti -1c
-.RI "virtual bool \fBDelELine\fP (std::string hostmask)"
+.RI "virtual bool \fBDelELine\fP (\fBstd::string\fP hostmask)"
.br
.RI "\fIDeletes a local E-Line. \fP"
.ti -1c
-.RI "virtual long \fBCalcDuration\fP (std::string duration)"
+.RI "virtual long \fBCalcDuration\fP (\fBstd::string\fP duration)"
.br
.RI "\fICalculates a duration This method will take a string containing a formatted duration (e.g. \fP"
.ti -1c
-.RI "virtual bool \fBIsValidMask\fP (std::string mask)"
+.RI "virtual bool \fBIsValidMask\fP (\fBstd::string\fP mask)"
.br
.RI "\fIReturns true if a nick!ident string is correctly formatted, false if otherwise. \fP"
.ti -1c
-.RI "virtual void \fBMeshSendAll\fP (std::string text)"
+.RI "virtual \fBModule\fP * \fBFindModule\fP (\fBstd::string\fP name)"
.br
-.RI "\fISends a line of text to all connected servers. \fP"
-.ti -1c
-.RI "virtual void \fBMeshSendCommon\fP (\fBuserrec\fP *user, std::string text)"
-.br
-.RI "\fIThis method sends a line of text to all servers who have users which share common channels with the user you provide. \fP"
-.ti -1c
-.RI "virtual void \fBMeshSendAllAlive\fP (std::string text)"
-.br
-.RI "\fIThis function is equivalent to Server::MeshSendToAll except it will only route to servers which are directly routable. \fP"
-.ti -1c
-.RI "virtual void \fBMeshSendUnicast\fP (std::string destination, std::string text)"
-.br
-.RI "\fIThis function sends a line of text directly to a server. \fP"
-.ti -1c
-.RI "virtual void \fBMeshSendAllExcept\fP (std::string target, std::string text)"
-.br
-.RI "\fIThis function sends to all servers EXCEPT the one you specify. \fP"
-.ti -1c
-.RI "virtual bool \fBMeshCheckChan\fP (\fBchanrec\fP *c, std::string servername)"
-.br
-.RI "\fIThis function is used to check if any users on channel c are on server servername. \fP"
+.RI "\fIThis function finds a module by name. \fP"
.ti -1c
-.RI "virtual bool \fBMeshCheckCommon\fP (\fBuserrec\fP *u, std::string servername)"
+.RI "virtual void \fBAddSocket\fP (\fBInspSocket\fP *sock)"
.br
-.RI "\fIThis function is used to check if user u has any channels in common with users on servername. \fP"
+.RI "\fIAdds a class derived from \fBInspSocket\fP to the server's socket engine. \fP"
.ti -1c
-.RI "virtual \fBModule\fP * \fBFindModule\fP (std::string name)"
+.RI "virtual void \fBDelSocket\fP (\fBInspSocket\fP *sock)"
.br
-.RI "\fIThis function finds a module by name. \fP"
+.RI "\fIDeletes a class derived from \fBInspSocket\fP from the server's socket engine. \fP"
.in -1c
.SH "Detailed Description"
.PP
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.
-All modules should instantiate at least one copy of this class, and use its member functions to perform their tasks.
+All modules should instantiate at least one copy of this class, and use its member functions to perform their tasks.
.PP
-Definition at line 694 of file modules.h.
+Definition at line 696 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "Server::Server ()"
.PP
-Default constructor. Creates a Server object.Definition at line 366 of file modules.cpp.
+Default constructor.
+.PP
+Creates a Server object.
+.PP
+Definition at line 367 of file modules.cpp.
.PP
.nf
-367 {
-368 }
+368 {
+369 }
.fi
-.SS "Server::~\fBServer\fP ()\fC [virtual]\fP"
.PP
-Default destructor. Destroys a Server object.Definition at line 370 of file modules.cpp.
+.SS "Server::~Server ()\fC [virtual]\fP"
+.PP
+Default destructor.
+.PP
+Destroys a Server object.
+.PP
+Definition at line 371 of file modules.cpp.
.PP
.nf
-371 {
-372 }
+372 {
+373 }
.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "void Server::AddCommand (char * cmd, handlerfunc f, char flags, int minparams, char * source)\fC [virtual]\fP"
.PP
-Adds a command to the command table. This allows modules to add extra commands into the command table. You must place a function within your module which is is of type handlerfunc:
+Adds a command to the command table.
+.PP
+This allows modules to add extra commands into the command table. You must place a function within your module which is is of type handlerfunc:
.PP
typedef void (handlerfunc) (char**, int, userrec*); ... void \fBhandle_kill(char **parameters, int pcnt, userrec *user)\fP
.PP
-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'. The source parameter is used for resource tracking, and should contain the name of your module (with file extension) e.g. 'm_blarp.so'. If you place the wrong identifier here, you can cause crashes if your module is unloaded.Definition at line 439 of file modules.cpp.
+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'. The source parameter is used for resource tracking, and should contain the name of your module (with file extension) e.g. 'm_blarp.so'. If you place the wrong identifier here, you can cause crashes if your module is unloaded.
+.PP
+Definition at line 457 of file modules.cpp.
.PP
References createcommand().
.PP
.nf
-440 {
-441 createcommand(cmd,f,flags,minparams,source);
-442 }
+458 {
+459 createcommand(cmd,f,flags,minparams,source);
+460 }
.fi
-.SS "void Server::AddELine (long duration, std::string source, std::string reason, std::string hostmask)\fC [virtual]\fP"
.PP
-Adds a E-line The E-line is enforced as soon as it is added. The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name. Definition at line 701 of file modules.cpp.
+.SS "void Server::AddELine (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP hostmask)\fC [virtual]\fP"
+.PP
+Adds a E-line The E-line is enforced as soon as it is added.
+.PP
+The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
.PP
-References add_eline(), and duration().
+Definition at line 720 of file modules.cpp.
+.PP
+References add_eline().
.PP
.nf
-702 {
-703 add_eline(duration, source.c_str(), reason.c_str(), hostmask.c_str());
-704 }
+721 {
+722 add_eline(duration, source.c_str(), reason.c_str(), hostmask.c_str());
+723 }
.fi
+.PP
.SS "bool Server::AddExtendedListMode (char modechar)\fC [virtual]\fP"
.PP
-Adds an extended mode letter which is parsed by a module and handled in a list fashion. This call is used to implement modes like +q and +a. The characteristics of these modes are as follows:
+Adds an extended mode letter which is parsed by a module and handled in a list fashion.
+.PP
+This call is used to implement modes like +q and +a. The characteristics of these modes are as follows:
.PP
(1) They are ALWAYS on channels, not on users, therefore their type is MT_CHANNEL
.PP
@@ -325,625 +327,783 @@ Adds an extended mode letter which is parsed by a module and handled in a list f
.PP
(4) The mode and its parameter are NOT stored in the channels modes structure
.PP
-It is down to the module handling the mode to maintain state and determine what 'items' (e.g. users, or a banlist) have the mode set on them, and process the modes at the correct times, e.g. during access checks on channels, etc. When the extended mode is triggered the OnExtendedMode method will be triggered as above. Note that the target you are given will be a channel, if for example your mode is set 'on a user' (in for example +a) you must use Server::Find to locate the user the mode is operating on. Your mode handler may return 1 to handle the mode AND tell the core to display the mode change, e.g. '+aaa one two three' in the case of the mode for 'two', or it may return -1 to 'eat' the mode change, so the above example would become '+aa one three' after processing.Definition at line 607 of file modules.cpp.
+It is down to the module handling the mode to maintain state and determine what 'items' (e.g. users, or a banlist) have the mode set on them, and process the modes at the correct times, e.g. during access checks on channels, etc. When the extended mode is triggered the OnExtendedMode method will be triggered as above. Note that the target you are given will be a channel, if for example your mode is set 'on a user' (in for example +a) you must use Server::Find to locate the user the mode is operating on. Your mode handler may return 1 to handle the mode AND tell the core to display the mode change, e.g. '+aaa one two three' in the case of the mode for 'two', or it may return -1 to 'eat' the mode change, so the above example would become '+aa one three' after processing.
+.PP
+Definition at line 625 of file modules.cpp.
.PP
References DoAddExtendedMode(), ModeMakeList(), and MT_CHANNEL.
.PP
.nf
-608 {
-609 bool res = DoAddExtendedMode(modechar,MT_CHANNEL,false,1,1);
-610 if (res)
-611 ModeMakeList(modechar);
-612 return res;
-613 }
+626 {
+627 bool res = DoAddExtendedMode(modechar,MT_CHANNEL,false,1,1);
+628 if (res)
+629 ModeMakeList(modechar);
+630 return res;
+631 }
.fi
+.PP
.SS "bool Server::AddExtendedMode (char modechar, int type, bool requires_oper, int params_when_on, int params_when_off)\fC [virtual]\fP"
.PP
-Adds an extended mode letter which is parsed by a module. This allows modules to add extra mode letters, e.g. +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.Definition at line 579 of file modules.cpp.
+Adds an extended mode letter which is parsed by a module.
+.PP
+This allows modules to add extra mode letters, e.g. +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.
+.PP
+Definition at line 597 of file modules.cpp.
.PP
References DEBUG, DoAddExtendedMode(), MT_CLIENT, and MT_SERVER.
.PP
.nf
-580 {
-581 if (((modechar >= 'A') && (modechar <= 'Z')) || ((modechar >= 'a') && (modechar <= 'z')))
-582 {
-583 if (type == MT_SERVER)
-584 {
-585 log(DEBUG,'*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion');
-586 return false;
-587 }
-588 if (((params_when_on>0) || (params_when_off>0)) && (type == MT_CLIENT))
-589 {
-590 log(DEBUG,'*** API ERROR *** Parameters on MT_CLIENT modes are not supported');
-591 return false;
-592 }
-593 if ((params_when_on>1) || (params_when_off>1))
-594 {
-595 log(DEBUG,'*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported');
-596 return false;
-597 }
-598 return DoAddExtendedMode(modechar,type,requires_oper,params_when_on,params_when_off);
-599 }
-600 else
-601 {
-602 log(DEBUG,'*** API ERROR *** Muppet modechar detected.');
-603 }
-604 return false;
-605 }
+598 {
+599 if (((modechar >= 'A') && (modechar <= 'Z')) || ((modechar >= 'a') && (modechar <= 'z')))
+600 {
+601 if (type == MT_SERVER)
+602 {
+603 log(DEBUG,'*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion');
+604 return false;
+605 }
+606 if (((params_when_on>0) || (params_when_off>0)) && (type == MT_CLIENT))
+607 {
+608 log(DEBUG,'*** API ERROR *** Parameters on MT_CLIENT modes are not supported');
+609 return false;
+610 }
+611 if ((params_when_on>1) || (params_when_off>1))
+612 {
+613 log(DEBUG,'*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported');
+614 return false;
+615 }
+616 return DoAddExtendedMode(modechar,type,requires_oper,params_when_on,params_when_off);
+617 }
+618 else
+619 {
+620 log(DEBUG,'*** API ERROR *** Muppet modechar detected.');
+621 }
+622 return false;
+623 }
.fi
-.SS "void Server::AddGLine (long duration, std::string source, std::string reason, std::string hostmask)\fC [virtual]\fP"
.PP
-Adds a G-line The G-line is propogated to all of the servers in the mesh and enforced as soon as it is added. The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.Definition at line 681 of file modules.cpp.
+.SS "void Server::AddGLine (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP hostmask)\fC [virtual]\fP"
+.PP
+Adds a G-line The G-line is propogated to all of the servers in the mesh and enforced as soon as it is added.
+.PP
+The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+.PP
+Definition at line 700 of file modules.cpp.
.PP
-References add_gline(), and duration().
+References add_gline().
.PP
.nf
-682 {
-683 add_gline(duration, source.c_str(), reason.c_str(), hostmask.c_str());
-684 }
+701 {
+702 add_gline(duration, source.c_str(), reason.c_str(), hostmask.c_str());
+703 }
.fi
-.SS "void Server::AddKLine (long duration, std::string source, std::string reason, std::string hostmask)\fC [virtual]\fP"
.PP
-Adds a K-line The K-line is enforced as soon as it is added. The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name. Definition at line 696 of file modules.cpp.
+.SS "void Server::AddKLine (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP hostmask)\fC [virtual]\fP"
.PP
-References add_kline(), and duration().
+Adds a K-line The K-line is enforced as soon as it is added.
+.PP
+The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+.PP
+Definition at line 715 of file modules.cpp.
+.PP
+References add_kline().
.PP
.nf
-697 {
-698 add_kline(duration, source.c_str(), reason.c_str(), hostmask.c_str());
-699 }
+716 {
+717 add_kline(duration, source.c_str(), reason.c_str(), hostmask.c_str());
+718 }
.fi
-.SS "void Server::AddQLine (long duration, std::string source, std::string reason, std::string nickname)\fC [virtual]\fP"
.PP
-Adds a Q-line The Q-line is propogated to all of the servers in the mesh and enforced as soon as it is added. The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name. Definition at line 686 of file modules.cpp.
+.SS "void Server::AddQLine (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP nickname)\fC [virtual]\fP"
+.PP
+Adds a Q-line The Q-line is propogated to all of the servers in the mesh and enforced as soon as it is added.
+.PP
+The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+.PP
+Definition at line 705 of file modules.cpp.
.PP
-References add_qline(), and duration().
+References add_qline().
.PP
.nf
-687 {
-688 add_qline(duration, source.c_str(), reason.c_str(), nickname.c_str());
-689 }
+706 {
+707 add_qline(duration, source.c_str(), reason.c_str(), nickname.c_str());
+708 }
.fi
-.SS "void Server::AddZLine (long duration, std::string source, std::string reason, std::string ipaddr)\fC [virtual]\fP"
.PP
-Adds a Z-line The Z-line is propogated to all of the servers in the mesh and enforced as soon as it is added. The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name. Definition at line 691 of file modules.cpp.
+.SS "void Server::AddSocket (\fBInspSocket\fP * sock)\fC [virtual]\fP"
.PP
-References add_zline(), and duration().
+Adds a class derived from \fBInspSocket\fP to the server's socket engine.
+.PP
+Definition at line 375 of file modules.cpp.
+.PP
+References module_sockets.
+.PP
+.nf
+376 {
+377 module_sockets.push_back(sock);
+378 }
+.fi
+.PP
+.SS "void Server::AddZLine (long duration, \fBstd::string\fP source, \fBstd::string\fP reason, \fBstd::string\fP ipaddr)\fC [virtual]\fP"
+.PP
+Adds a Z-line The Z-line is propogated to all of the servers in the mesh and enforced as soon as it is added.
+.PP
+The duration must be in seconds, however you can use the \fBServer::CalcDuration\fP method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+.PP
+Definition at line 710 of file modules.cpp.
+.PP
+References add_zline().
.PP
.nf
-692 {
-693 add_zline(duration, source.c_str(), reason.c_str(), ipaddr.c_str());
-694 }
+711 {
+712 add_zline(duration, source.c_str(), reason.c_str(), ipaddr.c_str());
+713 }
.fi
-.SS "long Server::CalcDuration (std::string duration)\fC [virtual]\fP"
.PP
-Calculates a duration This method will take a string containing a formatted duration (e.g. '1w2d') and return its value as a total number of seconds. This is the same function used internally by /GLINE etc to set the ban times.Definition at line 731 of file modules.cpp.
+.SS "long Server::CalcDuration (\fBstd::string\fP duration)\fC [virtual]\fP"
+.PP
+Calculates a duration This method will take a string containing a formatted duration (e.g.
+.PP
+'1w2d') and return its value as a total number of seconds. This is the same function used internally by /GLINE etc to set the ban times.
+.PP
+Definition at line 750 of file modules.cpp.
.PP
References duration().
.PP
.nf
-732 {
-733 return duration(delta.c_str());
-734 }
+751 {
+752 return duration(delta.c_str());
+753 }
.fi
-.SS "void Server::CallCommandHandler (std::string commandname, char ** parameters, int pcnt, \fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Calls the handler for a command, either implemented by the core or by another module. 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
+.SS "void Server::CallCommandHandler (\fBstd::string\fP commandname, char ** parameters, int pcnt, \fBuserrec\fP * user)\fC [virtual]\fP"
+.PP
+Calls the handler for a command, either implemented by the core or by another module.
+.PP
+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 \fBAddCommand()\fP. 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.Definition at line 429 of file modules.cpp.
+) 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 \fBAddCommand()\fP. 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.
+.PP
+Definition at line 447 of file modules.cpp.
.PP
.nf
-430 {
-431 call_handler(commandname.c_str(),parameters,pcnt,user);
-432 }
+448 {
+449 call_handler(commandname.c_str(),parameters,pcnt,user);
+450 }
.fi
-.SS "void Server::ChangeGECOS (\fBuserrec\fP * user, std::string gecos)\fC [virtual]\fP"
.PP
-Change GECOS (fullname) of a user. 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.Definition at line 522 of file modules.cpp.
+.SS "void Server::ChangeGECOS (\fBuserrec\fP * user, \fBstd::string\fP gecos)\fC [virtual]\fP"
+.PP
+Change GECOS (fullname) of a user.
+.PP
+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.
+.PP
+Definition at line 540 of file modules.cpp.
.PP
References ChangeName().
.PP
.nf
-523 {
-524 ChangeName(user,gecos.c_str());
-525 }
+541 {
+542 ChangeName(user,gecos.c_str());
+543 }
.fi
-.SS "void Server::ChangeHost (\fBuserrec\fP * user, std::string host)\fC [virtual]\fP"
.PP
-Change displayed hostname of a user. 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.Definition at line 517 of file modules.cpp.
+.SS "void Server::ChangeHost (\fBuserrec\fP * user, \fBstd::string\fP host)\fC [virtual]\fP"
+.PP
+Change displayed hostname of a user.
+.PP
+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.
+.PP
+Definition at line 535 of file modules.cpp.
.PP
References ChangeDisplayedHost().
.PP
.nf
-518 {
-519 ChangeDisplayedHost(user,host.c_str());
-520 }
+536 {
+537 ChangeDisplayedHost(user,host.c_str());
+538 }
.fi
-.SS "void Server::ChangeUserNick (\fBuserrec\fP * user, std::string nickname)\fC [virtual]\fP"
.PP
-Forces a user nickchange. This command works similarly to SVSNICK, and can be used to implement Q-lines etc. If you specify an invalid nickname, the nick change will be dropped and the target user will receive the error numeric for it.Definition at line 414 of file modules.cpp.
+.SS "void Server::ChangeUserNick (\fBuserrec\fP * user, \fBstd::string\fP nickname)\fC [virtual]\fP"
+.PP
+Forces a user nickchange.
+.PP
+This command works similarly to SVSNICK, and can be used to implement Q-lines etc. If you specify an invalid nickname, the nick change will be dropped and the target user will receive the error numeric for it.
+.PP
+Definition at line 432 of file modules.cpp.
.PP
.nf
-415 {
-416 force_nickchange(user,nickname.c_str());
-417 }
+433 {
+434 force_nickchange(user,nickname.c_str());
+435 }
.fi
-.SS "std::string Server::ChanMode (\fBuserrec\fP * User, \fBchanrec\fP * Chan)\fC [virtual]\fP"
.PP
-Attempts to look up a user's privilages on a channel. This function will return a string containing either @, , +, or an empty string, representing the user's privilages upon the channel you specify.Definition at line 547 of file modules.cpp.
+.SS "\fBstd::string\fP Server::ChanMode (\fBuserrec\fP * User, \fBchanrec\fP * Chan)\fC [virtual]\fP"
+.PP
+Attempts to look up a user's privilages on a channel.
+.PP
+This function will return a string containing either @, %, +, or an empty string, representing the user's privilages upon the channel you specify.
+.PP
+Definition at line 565 of file modules.cpp.
.PP
References cmode().
.PP
.nf
-548 {
-549 return cmode(User,Chan);
-550 }
+566 {
+567 return cmode(User,Chan);
+568 }
.fi
+.PP
.SS "bool Server::CommonChannels (\fBuserrec\fP * u1, \fBuserrec\fP * u2)\fC [virtual]\fP"
.PP
-Returns true if two users share a common channel. This method is used internally by the NICK and QUIT commands, and the \fBServer::SendCommon\fP method.Definition at line 495 of file modules.cpp.
+Returns true if two users share a common channel.
+.PP
+This method is used internally by the NICK and QUIT commands, and the \fBServer::SendCommon\fP method.
+.PP
+Definition at line 513 of file modules.cpp.
.PP
References common_channels().
.PP
.nf
-496 {
-497 return (common_channels(u1,u2) != 0);
-498 }
+514 {
+515 return (common_channels(u1,u2) != 0);
+516 }
.fi
+.PP
.SS "int Server::CountUsers (\fBchanrec\fP * c)\fC [virtual]\fP"
.PP
-Returns a count of the number of users on a channel. This will NEVER be 0, as if the chanrec exists, it will have at least one user in the channel.Definition at line 615 of file modules.cpp.
+Returns a count of the number of users on a channel.
+.PP
+This will NEVER be 0, as if the chanrec exists, it will have at least one user in the channel.
+.PP
+Definition at line 633 of file modules.cpp.
.PP
.nf
-616 {
-617 return usercount(c);
-618 }
+634 {
+635 return usercount(c);
+636 }
.fi
-.SS "bool Server::DelELine (std::string hostmask)\fC [virtual]\fP"
.PP
-Deletes a local E-Line. Definition at line 726 of file modules.cpp.
+.SS "bool Server::DelELine (\fBstd::string\fP hostmask)\fC [virtual]\fP"
+.PP
+Deletes a local E-Line.
+.PP
+Definition at line 745 of file modules.cpp.
.PP
References del_eline().
.PP
.nf
-727 {
-728 del_eline(hostmask.c_str());
-729 }
+746 {
+747 return del_eline(hostmask.c_str());
+748 }
.fi
-.SS "bool Server::DelGLine (std::string hostmask)\fC [virtual]\fP"
.PP
-Deletes a G-Line from all servers on the mesh. Definition at line 706 of file modules.cpp.
+.SS "bool Server::DelGLine (\fBstd::string\fP hostmask)\fC [virtual]\fP"
+.PP
+Deletes a G-Line from all servers on the mesh.
+.PP
+Definition at line 725 of file modules.cpp.
.PP
References del_gline().
.PP
.nf
-707 {
-708 del_gline(hostmask.c_str());
-709 }
+726 {
+727 return del_gline(hostmask.c_str());
+728 }
.fi
-.SS "bool Server::DelKLine (std::string hostmask)\fC [virtual]\fP"
.PP
-Deletes a local K-Line. Definition at line 721 of file modules.cpp.
+.SS "bool Server::DelKLine (\fBstd::string\fP hostmask)\fC [virtual]\fP"
+.PP
+Deletes a local K-Line.
+.PP
+Definition at line 740 of file modules.cpp.
.PP
References del_kline().
.PP
.nf
-722 {
-723 del_kline(hostmask.c_str());
-724 }
+741 {
+742 return del_kline(hostmask.c_str());
+743 }
.fi
-.SS "bool Server::DelQLine (std::string nickname)\fC [virtual]\fP"
.PP
-Deletes a Q-Line from all servers on the mesh. Definition at line 711 of file modules.cpp.
+.SS "bool Server::DelQLine (\fBstd::string\fP nickname)\fC [virtual]\fP"
+.PP
+Deletes a Q-Line from all servers on the mesh.
+.PP
+Definition at line 730 of file modules.cpp.
.PP
References del_qline().
.PP
.nf
-712 {
-713 del_qline(nickname.c_str());
-714 }
+731 {
+732 return del_qline(nickname.c_str());
+733 }
+.fi
+.PP
+.SS "void Server::DelSocket (\fBInspSocket\fP * sock)\fC [virtual]\fP"
+.PP
+Deletes a class derived from \fBInspSocket\fP from the server's socket engine.
+.PP
+Definition at line 380 of file modules.cpp.
+.PP
+References module_sockets.
+.PP
+.nf
+381 {
+382 for (std::vector<InspSocket*>::iterator a = module_sockets.begin(); a < module_sockets.end(); a++)
+383 {
+384 if (*a == sock)
+385 {
+386 module_sockets.erase(a);
+387 return;
+388 }
+389 }
+390 }
.fi
-.SS "bool Server::DelZLine (std::string ipaddr)\fC [virtual]\fP"
.PP
-Deletes a Z-Line from all servers on the mesh. Definition at line 716 of file modules.cpp.
+.SS "bool Server::DelZLine (\fBstd::string\fP ipaddr)\fC [virtual]\fP"
+.PP
+Deletes a Z-Line from all servers on the mesh.
+.PP
+Definition at line 735 of file modules.cpp.
.PP
References del_zline().
.PP
.nf
-717 {
-718 del_zline(ipaddr.c_str());
-719 }
+736 {
+737 return del_zline(ipaddr.c_str());
+738 }
.fi
-.SS "\fBchanrec\fP * Server::FindChannel (std::string channel)\fC [virtual]\fP"
.PP
-Attempts to look up a channel and return a pointer to it. This function will return NULL if the channel does not exist.Definition at line 542 of file modules.cpp.
+.SS "\fBchanrec\fP * Server::FindChannel (\fBstd::string\fP channel)\fC [virtual]\fP"
+.PP
+Attempts to look up a channel and return a pointer to it.
+.PP
+This function will return NULL if the channel does not exist.
+.PP
+Definition at line 560 of file modules.cpp.
.PP
.nf
-543 {
-544 return FindChan(channel.c_str());
-545 }
+561 {
+562 return FindChan(channel.c_str());
+563 }
.fi
+.PP
.SS "\fBuserrec\fP * Server::FindDescriptor (int socket)\fC [virtual]\fP"
.PP
-Attempts to look up a nick using the file descriptor associated with that nick. This function will return NULL if the file descriptor is not associated with a valid user.Definition at line 537 of file modules.cpp.
+Attempts to look up a nick using the file descriptor associated with that nick.
+.PP
+This function will return NULL if the file descriptor is not associated with a valid user.
.PP
-References fd_ref_table.
+Definition at line 555 of file modules.cpp.
.PP
.nf
-538 {
-539 return (socket < 65536 ? fd_ref_table[socket] : NULL);
-540 }
+556 {
+557 return (socket < 65536 ? fd_ref_table[socket] : NULL);
+558 }
.fi
-.SS "\fBModule\fP * Server::FindModule (std::string name)\fC [virtual]\fP"
.PP
-This function finds a module by name. You must provide the filename of the module. If the module cannot be found (is not loaded) the function will return NULL.Definition at line 809 of file modules.cpp.
+.SS "\fBModule\fP * Server::FindModule (\fBstd::string\fP name)\fC [virtual]\fP"
+.PP
+This function finds a module by name.
+.PP
+You must provide the filename of the module. If the module cannot be found (is not loaded) the function will return NULL.
+.PP
+Definition at line 784 of file modules.cpp.
.PP
References MODCOUNT, module_names, and modules.
.PP
.nf
-810 {
-811 for (int i = 0; i <= MODCOUNT; i++)
-812 {
-813 if (module_names[i] == name)
-814 {
-815 return modules[i];
-816 }
-817 }
-818 return NULL;
-819 }
+785 {
+786 for (int i = 0; i <= MODCOUNT; i++)
+787 {
+788 if (module_names[i] == name)
+789 {
+790 return modules[i];
+791 }
+792 }
+793 return NULL;
+794 }
.fi
-.SS "\fBuserrec\fP * Server::FindNick (std::string nick)\fC [virtual]\fP"
.PP
-Attempts to look up a nick and return a pointer to it. This function will return NULL if the nick does not exist.Definition at line 532 of file modules.cpp.
+.SS "\fBuserrec\fP * Server::FindNick (\fBstd::string\fP nick)\fC [virtual]\fP"
+.PP
+Attempts to look up a nick and return a pointer to it.
+.PP
+This function will return NULL if the nick does not exist.
+.PP
+Definition at line 550 of file modules.cpp.
.PP
.nf
-533 {
-534 return Find(nick);
-535 }
+551 {
+552 return Find(nick);
+553 }
.fi
+.PP
.SS "\fBAdmin\fP Server::GetAdmin ()\fC [virtual]\fP"
.PP
-Returns the information of the server as returned by the /ADMIN command. See the \fBAdmin\fP class for further information of the return value. The members \fBAdmin::Nick\fP, \fBAdmin::Email\fP and \fBAdmin::Name\fP contain the information for the server where the module is loaded.Definition at line 572 of file modules.cpp.
+Returns the information of the server as returned by the /ADMIN command.
+.PP
+See the \fBAdmin\fP class for further information of the return value. The members \fBAdmin::Nick\fP, \fBAdmin::Email\fP and \fBAdmin::Name\fP contain the information for the server where the module is loaded.
+.PP
+Definition at line 590 of file modules.cpp.
.PP
.nf
-573 {
-574 return Admin(getadminname(),getadminemail(),getadminnick());
-575 }
+591 {
+592 return Admin(getadminname(),getadminemail(),getadminnick());
+593 }
.fi
-.SS "std::string Server::GetNetworkName ()\fC [virtual]\fP"
.PP
-Returns the network name, global to all linked servers. Definition at line 562 of file modules.cpp.
+.SS "\fBstd::string\fP Server::GetNetworkName ()\fC [virtual]\fP"
+.PP
+Returns the network name, global to all linked servers.
+.PP
+Definition at line 580 of file modules.cpp.
.PP
.nf
-563 {
-564 return getnetworkname();
-565 }
+581 {
+582 return getnetworkname();
+583 }
.fi
-.SS "std::string Server::GetServerDescription ()\fC [virtual]\fP"
.PP
-Returns the server description string of the local server. Definition at line 567 of file modules.cpp.
+.SS "\fBstd::string\fP Server::GetServerDescription ()\fC [virtual]\fP"
+.PP
+Returns the server description string of the local server.
+.PP
+Definition at line 585 of file modules.cpp.
.PP
.nf
-568 {
-569 return getserverdesc();
-570 }
+586 {
+587 return getserverdesc();
+588 }
.fi
-.SS "std::string Server::GetServerName ()\fC [virtual]\fP"
.PP
-Returns the server name of the server where the module is loaded. Definition at line 557 of file modules.cpp.
+.SS "\fBstd::string\fP Server::GetServerName ()\fC [virtual]\fP"
+.PP
+Returns the server name of the server where the module is loaded.
+.PP
+Definition at line 575 of file modules.cpp.
.PP
.nf
-558 {
-559 return getservername();
-560 }
+576 {
+577 return getservername();
+578 }
.fi
+.PP
.SS "\fBchanuserlist\fP Server::GetUsers (\fBchanrec\fP * chan)\fC [virtual]\fP"
.PP
-Fetches the userlist of a channel. This function must be here and not a member of userrec or chanrec due to include constraints.Definition at line 402 of file modules.cpp.
+Fetches the userlist of a channel.
+.PP
+This function must be here and not a member of userrec or chanrec due to include constraints.
.PP
-References chanuserlist, chanrec::GetUsers(), and list.
+Definition at line 420 of file modules.cpp.
+.PP
+References chanrec::GetUsers(), and list.
.PP
.nf
-403 {
-404 chanuserlist userl;
-405 userl.clear();
-406 std::vector<char*> *list = chan->GetUsers();
-407 for (std::vector<char*>::iterator i = list->begin(); i != list->end(); i++)
-408 {
-409 char* o = *i;
-410 userl.push_back((userrec*)o);
-411 }
-412 return userl;
-413 }
+421 {
+422 chanuserlist userl;
+423 userl.clear();
+424 std::vector<char*> *list = chan->GetUsers();
+425 for (std::vector<char*>::iterator i = list->begin(); i != list->end(); i++)
+426 {
+427 char* o = *i;
+428 userl.push_back((userrec*)o);
+429 }
+430 return userl;
+431 }
.fi
-.SS "bool Server::IsNick (std::string nick)\fC [virtual]\fP"
.PP
-Returns true if a nick is valid. Nicks for unregistered connections will return false.Definition at line 527 of file modules.cpp.
+.SS "bool Server::IsNick (\fBstd::string\fP nick)\fC [virtual]\fP"
+.PP
+Returns true if a nick is valid.
+.PP
+Nicks for unregistered connections will return false.
+.PP
+Definition at line 545 of file modules.cpp.
.PP
References isnick().
.PP
.nf
-528 {
-529 return (isnick(nick.c_str()) != 0);
-530 }
+546 {
+547 return (isnick(nick.c_str()) != 0);
+548 }
.fi
+.PP
.SS "bool Server::IsOnChannel (\fBuserrec\fP * User, \fBchanrec\fP * Chan)\fC [virtual]\fP"
.PP
-Checks if a user is on a channel. This function will return true or false to indicate if user 'User' is on channel 'Chan'.Definition at line 552 of file modules.cpp.
+Checks if a user is on a channel.
+.PP
+This function will return true or false to indicate if user 'User' is on channel 'Chan'.
+.PP
+Definition at line 570 of file modules.cpp.
.PP
References has_channel().
.PP
.nf
-553 {
-554 return has_channel(User,Chan);
-555 }
+571 {
+572 return has_channel(User,Chan);
+573 }
.fi
-.SS "bool Server::IsUlined (std::string server)\fC [virtual]\fP"
.PP
-Returns true if the servername you give is ulined. ULined servers have extra privilages. They are allowed to change nicknames on remote servers, change modes of clients which are on remote servers and set modes of channels where there are no channel operators for that channel on the ulined server, amongst other things. Ulined server data is also broadcast across the mesh at all times as opposed to selectively messaged in the case of normal servers, as many ulined server types (such as services) do not support meshed links and must operate in this manner.Definition at line 424 of file modules.cpp.
+.SS "bool Server::IsUlined (\fBstd::string\fP server)\fC [virtual]\fP"
.PP
-References is_uline().
+Returns true if the servername you give is ulined.
.PP
-.nf
-425 {
-426 return is_uline(server.c_str());
-427 }
-.fi
-.SS "bool Server::IsValidMask (std::string mask)\fC [virtual]\fP"
+ULined servers have extra privilages. They are allowed to change nicknames on remote servers, change modes of clients which are on remote servers and set modes of channels where there are no channel operators for that channel on the ulined server, amongst other things. Ulined server data is also broadcast across the mesh at all times as opposed to selectively messaged in the case of normal servers, as many ulined server types (such as services) do not support meshed links and must operate in this manner.
+.PP
+Definition at line 442 of file modules.cpp.
.PP
-Returns true if a nick!ident string is correctly formatted, false if otherwise. Definition at line 736 of file modules.cpp.
+References is_uline().
.PP
.nf
-737 {
-738 const char* dest = mask.c_str();
-739 if (strchr(dest,'!')==0)
-740 return false;
-741 if (strchr(dest,'@')==0)
-742 return false;
-743 for (int i = 0; i < strlen(dest); i++)
-744 if (dest[i] < 32)
-745 return false;
-746 for (int i = 0; i < strlen(dest); i++)
-747 if (dest[i] > 126)
-748 return false;
-749 int c = 0;
-750 for (int i = 0; i < strlen(dest); i++)
-751 if (dest[i] == '!')
-752 c++;
-753 if (c>1)
-754 return false;
-755 c = 0;
-756 for (int i = 0; i < strlen(dest); i++)
-757 if (dest[i] == '@')
-758 c++;
-759 if (c>1)
-760 return false;
-761
-762 return true;
-763 }
+443 {
+444 return is_uline(server.c_str());
+445 }
.fi
-.SS "\fBchanrec\fP * Server::JoinUserToChannel (\fBuserrec\fP * user, std::string cname, std::string key)\fC [virtual]\fP"
.PP
-Forces a user to join a channel. This is similar to svsjoin and can be used to implement redirection, etc. On success, the return value is a valid pointer to a chanrec* of the channel the user was joined to. On failure, the result is NULL.Definition at line 392 of file modules.cpp.
+.SS "bool Server::IsValidMask (\fBstd::string\fP mask)\fC [virtual]\fP"
.PP
-.nf
-393 {
-394 return add_channel(user,cname.c_str(),key.c_str(),false);
-395 }
-.fi
-.SS "void Server::Log (int level, std::string s)\fC [virtual]\fP"
+Returns true if a nick!ident string is correctly formatted, false if otherwise.
.PP
-Writes a log string. 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.Definition at line 434 of file modules.cpp.
+Definition at line 755 of file modules.cpp.
.PP
.nf
-435 {
-436 log(level,'%s',s.c_str());
-437 }
+756 {
+757 const char* dest = mask.c_str();
+758 if (strchr(dest,'!')==0)
+759 return false;
+760 if (strchr(dest,'@')==0)
+761 return false;
+762 for (unsigned int i = 0; i < strlen(dest); i++)
+763 if (dest[i] < 32)
+764 return false;
+765 for (unsigned int i = 0; i < strlen(dest); i++)
+766 if (dest[i] > 126)
+767 return false;
+768 unsigned int c = 0;
+769 for (unsigned int i = 0; i < strlen(dest); i++)
+770 if (dest[i] == '!')
+771 c++;
+772 if (c>1)
+773 return false;
+774 c = 0;
+775 for (unsigned int i = 0; i < strlen(dest); i++)
+776 if (dest[i] == '@')
+777 c++;
+778 if (c>1)
+779 return false;
+780
+781 return true;
+782 }
.fi
-.SS "bool Server::MatchText (std::string sliteral, std::string spattern)\fC [virtual]\fP"
.PP
-Matches text against a glob pattern. Uses the ircd's internal matching function to match string against a globbing pattern, e.g. *!*@*.com Returns true if the literal successfully matches the pattern, false if otherwise.Definition at line 379 of file modules.cpp.
+.SS "\fBchanrec\fP * Server::JoinUserToChannel (\fBuserrec\fP * user, \fBstd::string\fP cname, \fBstd::string\fP key)\fC [virtual]\fP"
.PP
-.nf
-380 {
-381 char literal[MAXBUF],pattern[MAXBUF];
-382 strlcpy(literal,sliteral.c_str(),MAXBUF);
-383 strlcpy(pattern,spattern.c_str(),MAXBUF);
-384 return match(literal,pattern);
-385 }
-.fi
-.SS "bool Server::MeshCheckChan (\fBchanrec\fP * c, std::string servername)\fC [virtual]\fP"
+Forces a user to join a channel.
.PP
-This function is used to check if any users on channel c are on server servername. This is used internally by PRIVMSG etc. You should not need to use it.Definition at line 791 of file modules.cpp.
+This is similar to svsjoin and can be used to implement redirection, etc. On success, the return value is a valid pointer to a chanrec* of the channel the user was joined to. On failure, the result is NULL.
+.PP
+Definition at line 410 of file modules.cpp.
.PP
.nf
-792 {
-793 if (c)
-794 {
-795 return ChanAnyOnThisServer(c,(char*)servername.c_str());
-796 }
-797 else return false;
-798 }
+411 {
+412 return add_channel(user,cname.c_str(),key.c_str(),false);
+413 }
.fi
-.SS "bool Server::MeshCheckCommon (\fBuserrec\fP * u, std::string servername)\fC [virtual]\fP"
.PP
-This function is used to check if user u has any channels in common with users on servername. This is used internally by \fBServer::MeshSendCommon\fP. You should very rarely need to use it.Definition at line 800 of file modules.cpp.
+.SS "void Server::Log (int level, \fBstd::string\fP s)\fC [virtual]\fP"
.PP
-.nf
-801 {
-802 if (u)
-803 {
-804 return CommonOnThisServer(u,(char*)servername.c_str());
-805 }
-806 else return false;
-807 }
-.fi
-.SS "void Server::MeshSendAll (std::string text)\fC [virtual]\fP"
+Writes a log string.
+.PP
+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.
.PP
-Sends a line of text to all connected servers. If a server is not directly reachable, the core deals with routing the message, and will also deal with failures transparently.Definition at line 765 of file modules.cpp.
+Definition at line 452 of file modules.cpp.
.PP
.nf
-766 {
-767 NetSendToAll((char*)text.c_str());
-768 }
+453 {
+454 log(level,'%s',s.c_str());
+455 }
.fi
-.SS "void Server::MeshSendAllAlive (std::string text)\fC [virtual]\fP"
.PP
-This function is equivalent to Server::MeshSendToAll except it will only route to servers which are directly routable. Definition at line 776 of file modules.cpp.
+.SS "bool Server::MatchText (\fBstd::string\fP sliteral, \fBstd::string\fP spattern)\fC [virtual]\fP"
.PP
-.nf
-777 {
-778 NetSendToAllAlive((char*)text.c_str());
-779 }
-.fi
-.SS "void Server::MeshSendAllExcept (std::string target, std::string text)\fC [virtual]\fP"
+Matches text against a glob pattern.
+.PP
+Uses the ircd's internal matching function to match string against a globbing pattern, e.g. *!*@*.com Returns true if the literal successfully matches the pattern, false if otherwise.
.PP
-This function sends to all servers EXCEPT the one you specify. You should usually use this function to send messages, specifying the SENDER of your message as 'target'. This will prevent message loops.Definition at line 786 of file modules.cpp.
+Definition at line 397 of file modules.cpp.
.PP
.nf
-787 {
-788 NetSendToAllExcept(target.c_str(),(char*)text.c_str());
-789 }
+398 {
+399 char literal[MAXBUF],pattern[MAXBUF];
+400 strlcpy(literal,sliteral.c_str(),MAXBUF);
+401 strlcpy(pattern,spattern.c_str(),MAXBUF);
+402 return match(literal,pattern);
+403 }
.fi
-.SS "void Server::MeshSendCommon (\fBuserrec\fP * user, std::string text)\fC [virtual]\fP"
.PP
-This method sends a line of text to all servers who have users which share common channels with the user you provide. For example, if user A is on server A, and they are on channels #one and #two, and user B is on server B, and also on channel #one, but user C is on server C and on neither #one or #two, this function will cause the text to only be sent to server B. However, if server B is only reachable via C, it will route it to C (you do not have to worry about this routing, it is done transparently, but its good to know how things work!)Definition at line 770 of file modules.cpp.
+.SS "\fBchanrec\fP * Server::PartUserFromChannel (\fBuserrec\fP * user, \fBstd::string\fP cname, \fBstd::string\fP reason)\fC [virtual]\fP"
.PP
-.nf
-771 {
-772 if (user)
-773 NetSendToCommon(user,(char*)text.c_str());
-774 }
-.fi
-.SS "void Server::MeshSendUnicast (std::string destination, std::string text)\fC [virtual]\fP"
+Forces a user to part a channel.
+.PP
+This is similar to svspart and can be used to implement redirection, etc. Although the return value of this function is a pointer to a channel record, the returned data is undefined and should not be read or written to. This behaviour may be changed in a future version.
.PP
-This function sends a line of text directly to a server. If the server is not directly routable at this time, the server attempts to route text through the mesh.Definition at line 781 of file modules.cpp.
+Definition at line 415 of file modules.cpp.
.PP
.nf
-782 {
-783 NetSendToOne((char*)destination.c_str(),(char*)text.c_str());
-784 }
+416 {
+417 return del_channel(user,cname.c_str(),reason.c_str(),false);
+418 }
.fi
-.SS "\fBchanrec\fP * Server::PartUserFromChannel (\fBuserrec\fP * user, std::string cname, std::string reason)\fC [virtual]\fP"
.PP
-Forces a user to part a channel. This is similar to svspart and can be used to implement redirection, etc. Although the return value of this function is a pointer to a channel record, the returned data is undefined and should not be read or written to. This behaviour may be changed in a future version.Definition at line 397 of file modules.cpp.
+.SS "bool Server::PseudoToUser (\fBuserrec\fP * alive, \fBuserrec\fP * zombie, \fBstd::string\fP message)\fC [virtual]\fP"
.PP
-.nf
-398 {
-399 return del_channel(user,cname.c_str(),reason.c_str(),false);
-400 }
-.fi
-.SS "bool Server::PseudoToUser (\fBuserrec\fP * alive, \fBuserrec\fP * zombie, std::string message)\fC [virtual]\fP"
+This user takes one user, and switches their file descriptor with another user, so that one user 'becomes' the other.
.PP
-This user takes one user, and switches their file descriptor with another user, so that one user 'becomes' the other. The user in 'alive' is booted off the server with the given message. The user referred to by 'zombie' should have previously been locked with Server::ZombifyUser, otherwise stale sockets and file descriptor leaks can occur. After this call, the pointer to alive will be invalid, and the pointer to zombie will be equivalent in effect to the old pointer to alive.Definition at line 651 of file modules.cpp.
+The user in 'alive' is booted off the server with the given message. The user referred to by 'zombie' should have previously been locked with Server::ZombifyUser, otherwise stale sockets and file descriptor leaks can occur. After this call, the pointer to alive will be invalid, and the pointer to zombie will be equivalent in effect to the old pointer to alive.
.PP
-References ucrec::channel, userrec::chans, userrec::ClearBuffer(), connection::fd, FD_MAGIC_NUMBER, fd_ref_table, connection::host, userrec::ident, chanrec::name, userrec::nick, chanrec::setby, chanrec::topic, and chanrec::topicset.
+Definition at line 670 of file modules.cpp.
+.PP
+References ucrec::channel, userrec::chans, userrec::ClearBuffer(), connection::fd, FD_MAGIC_NUMBER, connection::host, userrec::ident, chanrec::name, userrec::nick, chanrec::setby, chanrec::topic, and chanrec::topicset.
.PP
.nf
-652 {
-653 zombie->fd = alive->fd;
-654 alive->fd = FD_MAGIC_NUMBER;
-655 alive->ClearBuffer();
-656 Write(zombie->fd,':%s!%s@%s NICK %s',alive->nick,alive->ident,alive->host,zombie->nick);
-657 kill_link(alive,message.c_str());
-658 fd_ref_table[zombie->fd] = zombie;
-659 for (int i = 0; i != MAXCHANS; i++)
-660 {
-661 if (zombie->chans[i].channel != NULL)
-662 {
-663 if (zombie->chans[i].channel->name)
-664 {
-665 chanrec* Ptr = zombie->chans[i].channel;
-666 WriteFrom(zombie->fd,zombie,'JOIN %s',Ptr->name);
-667 if (Ptr->topicset)
-668 {
-669 WriteServ(zombie->fd,'332 %s %s :%s', zombie->nick, Ptr->name, Ptr->topic);
-670 WriteServ(zombie->fd,'333 %s %s %s %d', zombie->nick, Ptr->name, Ptr->setby, Ptr->topicset);
-671 }
-672 userlist(zombie,Ptr);
-673 WriteServ(zombie->fd,'366 %s %s :End of /NAMES list.', zombie->nick, Ptr->name);
-674
-675 }
-676 }
-677 }
-678
-679 }
+671 {
+672 zombie->fd = alive->fd;
+673 alive->fd = FD_MAGIC_NUMBER;
+674 alive->ClearBuffer();
+675 Write(zombie->fd,':%s!%s@%s NICK %s',alive->nick,alive->ident,alive->host,zombie->nick);
+676 kill_link(alive,message.c_str());
+677 fd_ref_table[zombie->fd] = zombie;
+678 for (int i = 0; i != MAXCHANS; i++)
+679 {
+680 if (zombie->chans[i].channel != NULL)
+681 {
+682 if (zombie->chans[i].channel->name)
+683 {
+684 chanrec* Ptr = zombie->chans[i].channel;
+685 WriteFrom(zombie->fd,zombie,'JOIN %s',Ptr->name);
+686 if (Ptr->topicset)
+687 {
+688 WriteServ(zombie->fd,'332 %s %s :%s', zombie->nick, Ptr->name, Ptr->topic);
+689 WriteServ(zombie->fd,'333 %s %s %s %d', zombie->nick, Ptr->name, Ptr->setby, Ptr->topicset);
+690 }
+691 userlist(zombie,Ptr);
+692 WriteServ(zombie->fd,'366 %s %s :End of /NAMES list.', zombie->nick, Ptr->name);
+693
+694 }
+695 }
+696 }
+697 return true;
+698 }
.fi
-.SS "void Server::QuitUser (\fBuserrec\fP * user, std::string reason)\fC [virtual]\fP"
.PP
-Forces a user to quit with the specified reason. To the user, it will appear as if they typed /QUIT themselves, except for the fact that this function may bypass the quit prefix specified in the config file.
+.SS "void Server::QuitUser (\fBuserrec\fP * user, \fBstd::string\fP reason)\fC [virtual]\fP"
+.PP
+Forces a user to quit with the specified reason.
+.PP
+To the user, it will appear as if they typed /QUIT themselves, except for the fact that this function may bypass the quit prefix specified in the config file.
.PP
WARNING!
.PP
-Once you call this function, userrec* user will immediately become INVALID. You MUST NOT write to, or read from this pointer after calling the QuitUser method UNDER ANY CIRCUMSTANCES! The best course of action after calling this method is to immediately bail from your handler.Definition at line 419 of file modules.cpp.
+Once you call this function, userrec* user will immediately become INVALID. You MUST NOT write to, or read from this pointer after calling the QuitUser method UNDER ANY CIRCUMSTANCES! The best course of action after calling this method is to immediately bail from your handler.
+.PP
+Definition at line 437 of file modules.cpp.
.PP
.nf
-420 {
-421 kill_link(user,reason.c_str());
-422 }
+438 {
+439 kill_link(user,reason.c_str());
+440 }
.fi
-.SS "void Server::Send (int Socket, std::string s)\fC [virtual]\fP"
.PP
-Sends a line of text down a TCP/IP socket. This method writes a line of text to an established socket, cutting it to 510 characters plus a carriage return and linefeed if required.Definition at line 449 of file modules.cpp.
+.SS "void Server::Send (int Socket, \fBstd::string\fP s)\fC [virtual]\fP"
+.PP
+Sends a line of text down a TCP/IP socket.
+.PP
+This method writes a line of text to an established socket, cutting it to 510 characters plus a carriage return and linefeed if required.
+.PP
+Definition at line 467 of file modules.cpp.
.PP
.nf
-450 {
-451 Write(Socket,'%s',s.c_str());
-452 }
+468 {
+469 Write(Socket,'%s',s.c_str());
+470 }
.fi
-.SS "void Server::SendChannel (\fBuserrec\fP * User, \fBchanrec\fP * Channel, std::string s, bool IncludeSender)\fC [virtual]\fP"
.PP
-Sends text from a user to a channel (mulicast). 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).Definition at line 483 of file modules.cpp.
+.SS "void Server::SendChannel (\fBuserrec\fP * User, \fBchanrec\fP * Channel, \fBstd::string\fP s, bool IncludeSender)\fC [virtual]\fP"
+.PP
+Sends text from a user to a channel (mulicast).
+.PP
+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).
+.PP
+Definition at line 501 of file modules.cpp.
.PP
.nf
-484 {
-485 if (IncludeSender)
-486 {
-487 WriteChannel(Channel,User,'%s',s.c_str());
-488 }
-489 else
-490 {
-491 ChanExceptSender(Channel,User,'%s',s.c_str());
-492 }
-493 }
+502 {
+503 if (IncludeSender)
+504 {
+505 WriteChannel(Channel,User,'%s',s.c_str());
+506 }
+507 else
+508 {
+509 ChanExceptSender(Channel,User,'%s',s.c_str());
+510 }
+511 }
.fi
-.SS "void Server::SendChannelServerNotice (std::string ServName, \fBchanrec\fP * Channel, std::string text)\fC [virtual]\fP"
.PP
-Writes text to a channel, but from a server, including all. This can be used to send server notices to a group of users.Definition at line 478 of file modules.cpp.
+.SS "void Server::SendChannelServerNotice (\fBstd::string\fP ServName, \fBchanrec\fP * Channel, \fBstd::string\fP text)\fC [virtual]\fP"
+.PP
+Writes text to a channel, but from a server, including all.
+.PP
+This can be used to send server notices to a group of users.
+.PP
+Definition at line 496 of file modules.cpp.
.PP
.nf
-479 {
-480 WriteChannelWithServ((char*)ServName.c_str(), Channel, '%s', text.c_str());
-481 }
+497 {
+498 WriteChannelWithServ((char*)ServName.c_str(), Channel, '%s', text.c_str());
+499 }
.fi
-.SS "void Server::SendCommon (\fBuserrec\fP * User, std::string text, bool IncludeSender)\fC [virtual]\fP"
.PP
-Sends text from a user to one or more channels (mulicast). 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.Definition at line 500 of file modules.cpp.
+.SS "void Server::SendCommon (\fBuserrec\fP * User, \fBstd::string\fP text, bool IncludeSender)\fC [virtual]\fP"
+.PP
+Sends text from a user to one or more channels (mulicast).
+.PP
+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.
+.PP
+Definition at line 518 of file modules.cpp.
.PP
.nf
-501 {
-502 if (IncludeSender)
-503 {
-504 WriteCommon(User,'%s',text.c_str());
-505 }
-506 else
-507 {
-508 WriteCommonExcept(User,'%s',text.c_str());
-509 }
-510 }
+519 {
+520 if (IncludeSender)
+521 {
+522 WriteCommon(User,'%s',text.c_str());
+523 }
+524 else
+525 {
+526 WriteCommonExcept(User,'%s',text.c_str());
+527 }
+528 }
.fi
-.SS "void Server::SendFrom (int Socket, \fBuserrec\fP * User, std::string s)\fC [virtual]\fP"
.PP
-Sends text from a user to a socket. 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)Definition at line 459 of file modules.cpp.
+.SS "void Server::SendFrom (int Socket, \fBuserrec\fP * User, \fBstd::string\fP s)\fC [virtual]\fP"
+.PP
+Sends text from a user to a socket.
+.PP
+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)
+.PP
+Definition at line 477 of file modules.cpp.
.PP
.nf
-460 {
-461 WriteFrom(Socket,User,'%s',s.c_str());
-462 }
+478 {
+479 WriteFrom(Socket,User,'%s',s.c_str());
+480 }
.fi
+.PP
.SS "void Server::SendMode (char ** parameters, int pcnt, \fBuserrec\fP * user)\fC [virtual]\fP"
.PP
-Sends a servermode. you must format the parameters array with the target, modes and parameters for those modes.
+Sends a servermode.
+.PP
+you must format the parameters array with the target, modes and parameters for those modes.
.PP
For example:
.PP
@@ -957,36 +1117,51 @@ modes[2] = user->nick;
.PP
Srv->SendMode(modes,3,user);
.PP
-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!Definition at line 444 of file modules.cpp.
+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!
+.PP
+Definition at line 462 of file modules.cpp.
.PP
References server_mode().
.PP
.nf
-445 {
-446 server_mode(parameters,pcnt,user);
-447 }
+463 {
+464 server_mode(parameters,pcnt,user);
+465 }
.fi
-.SS "void Server::SendOpers (std::string s)\fC [virtual]\fP"
.PP
-Sends text to all opers. This method sends a server notice to all opers with the usermode +s.Definition at line 374 of file modules.cpp.
+.SS "void Server::SendOpers (\fBstd::string\fP s)\fC [virtual]\fP"
+.PP
+Sends text to all opers.
+.PP
+This method sends a server notice to all opers with the usermode +s.
+.PP
+Definition at line 392 of file modules.cpp.
.PP
.nf
-375 {
-376 WriteOpers('%s',s.c_str());
-377 }
+393 {
+394 WriteOpers('%s',s.c_str());
+395 }
.fi
-.SS "void Server::SendServ (int Socket, std::string s)\fC [virtual]\fP"
.PP
-Sends text from the server to a socket. This method writes a line of text to an established socket, with the servername prepended as used by numerics (see RFC 1459)Definition at line 454 of file modules.cpp.
+.SS "void Server::SendServ (int Socket, \fBstd::string\fP s)\fC [virtual]\fP"
+.PP
+Sends text from the server to a socket.
+.PP
+This method writes a line of text to an established socket, with the servername prepended as used by numerics (see RFC 1459)
+.PP
+Definition at line 472 of file modules.cpp.
.PP
.nf
-455 {
-456 WriteServ(Socket,'%s',s.c_str());
-457 }
+473 {
+474 WriteServ(Socket,'%s',s.c_str());
+475 }
.fi
-.SS "void Server::SendTo (\fBuserrec\fP * Source, \fBuserrec\fP * Dest, std::string s)\fC [virtual]\fP"
.PP
-Sends text from a user to another user. This method writes a line of text to a user, with a user's nick/ident /host combination prepended, as used in PRIVMSG etc commands (see RFC 1459) If you specify NULL as the source, then the data will originate from the local server, e.g. instead of:
+.SS "void Server::SendTo (\fBuserrec\fP * Source, \fBuserrec\fP * Dest, \fBstd::string\fP s)\fC [virtual]\fP"
+.PP
+Sends text from a user to another user.
+.PP
+This method writes a line of text to a user, with a user's nick/ident /host combination prepended, as used in PRIVMSG etc commands (see RFC 1459) If you specify NULL as the source, then the data will originate from the local server, e.g. instead of:
.PP
:user!ident TEXT
.PP
@@ -994,82 +1169,101 @@ The format will become:
.PP
:localserver TEXT
.PP
-Which is useful for numerics and server notices to single users, etc.Definition at line 464 of file modules.cpp.
+Which is useful for numerics and server notices to single users, etc.
+.PP
+Definition at line 482 of file modules.cpp.
.PP
References connection::fd.
.PP
.nf
-465 {
-466 if (!Source)
-467 {
-468 // if source is NULL, then the message originates from the local server
-469 Write(Dest->fd,':%s %s',this->GetServerName().c_str(),s.c_str());
-470 }
-471 else
-472 {
-473 // otherwise it comes from the user specified
-474 WriteTo(Source,Dest,'%s',s.c_str());
-475 }
-476 }
+483 {
+484 if (!Source)
+485 {
+486 // if source is NULL, then the message originates from the local server
+487 Write(Dest->fd,':%s %s',this->GetServerName().c_str(),s.c_str());
+488 }
+489 else
+490 {
+491 // otherwise it comes from the user specified
+492 WriteTo(Source,Dest,'%s',s.c_str());
+493 }
+494 }
.fi
-.SS "void Server::SendToModeMask (std::string modes, int flags, std::string text)\fC [virtual]\fP"
.PP
-Sends to all users matching a mode mask You must specify one or more usermodes as the first parameter. These can be RFC specified modes such as +i, or module provided modes, including ones provided by your own module. In the second parameter you must place a flag value which indicates wether the modes you have given will be logically ANDed or OR'ed. You may use one of either WM_AND or WM_OR. for example, if you were to use:
+.SS "void Server::SendToModeMask (\fBstd::string\fP modes, int flags, \fBstd::string\fP text)\fC [virtual]\fP"
+.PP
+Sends to all users matching a mode mask You must specify one or more usermodes as the first parameter.
+.PP
+These can be RFC specified modes such as +i, or module provided modes, including ones provided by your own module. In the second parameter you must place a flag value which indicates wether the modes you have given will be logically ANDed or OR'ed. You may use one of either WM_AND or WM_OR. for example, if you were to use:
.PP
Serv->SendToModeMask('xi', WM_OR, 'm00');
.PP
-Then the text 'm00' will be sent to all users with EITHER mode x or i. Conversely if you used WM_AND, the user must have both modes set to receive the message.Definition at line 387 of file modules.cpp.
+Then the text 'm00' will be sent to all users with EITHER mode x or i. Conversely if you used WM_AND, the user must have both modes set to receive the message.
+.PP
+Definition at line 405 of file modules.cpp.
.PP
.nf
-388 {
-389 WriteMode(modes.c_str(),flags,'%s',text.c_str());
-390 }
+406 {
+407 WriteMode(modes.c_str(),flags,'%s',text.c_str());
+408 }
.fi
-.SS "void Server::SendWallops (\fBuserrec\fP * User, std::string text)\fC [virtual]\fP"
.PP
-Sends a WALLOPS message. This method writes a WALLOPS message to all users with the +w flag, originating from the specified user.Definition at line 512 of file modules.cpp.
+.SS "void Server::SendWallops (\fBuserrec\fP * User, \fBstd::string\fP text)\fC [virtual]\fP"
+.PP
+Sends a WALLOPS message.
+.PP
+This method writes a WALLOPS message to all users with the +w flag, originating from the specified user.
+.PP
+Definition at line 530 of file modules.cpp.
.PP
.nf
-513 {
-514 WriteWallOps(User,false,'%s',text.c_str());
-515 }
+531 {
+532 WriteWallOps(User,false,'%s',text.c_str());
+533 }
.fi
-.SS "bool Server::UserToPseudo (\fBuserrec\fP * user, std::string message)\fC [virtual]\fP"
.PP
-Remove a user's connection to the irc server, but leave their client in existence in the user hash. When you call this function, the user's file descriptor will be replaced with the value of FD_MAGIC_NUMBER and their old file descriptor will be closed. This idle client will remain until it is restored with a valid file descriptor, or is removed from IRC by an operator After this call, the pointer to user will be invalid.Definition at line 621 of file modules.cpp.
+.SS "bool Server::UserToPseudo (\fBuserrec\fP * user, \fBstd::string\fP message)\fC [virtual]\fP"
+.PP
+Remove a user's connection to the irc server, but leave their client in existence in the user hash.
+.PP
+When you call this function, the user's file descriptor will be replaced with the value of FD_MAGIC_NUMBER and their old file descriptor will be closed. This idle client will remain until it is restored with a valid file descriptor, or is removed from IRC by an operator After this call, the pointer to user will be invalid.
+.PP
+Definition at line 639 of file modules.cpp.
.PP
References userrec::ClearBuffer(), DEBUG, connection::fd, FD_MAGIC_NUMBER, connection::host, and userrec::ident.
.PP
.nf
-622 {
-623 unsigned int old_fd = user->fd;
-624 user->fd = FD_MAGIC_NUMBER;
-625 user->ClearBuffer();
-626 Write(old_fd,'ERROR :Closing link (%s@%s) [%s]',user->ident,user->host,message.c_str());
-627 #ifdef USE_KQUEUE
-628 struct kevent ke;
-629 EV_SET(&ke, old_fd, EVFILT_READ, EV_DELETE, 0, 0, NULL);
-630 int i = kevent(kq, &ke, 1, 0, 0, NULL);
-631 if (i == -1)
-632 {
-633 log(DEBUG,'kqueue: Failed to remove user from queue!');
-634 }
-635 #endif
-636 #ifdef USE_EPOLL
-637 struct epoll_event ev;
-638 ev.events = EPOLLIN | EPOLLET;
-639 ev.data.fd = old_fd;
-640 int i = epoll_ctl(ep, EPOLL_CTL_DEL, old_fd, &ev);
-641 if (i < 0)
-642 {
-643 log(DEBUG,'epoll: List deletion failure!');
-644 }
-645 #endif
-646
-647 shutdown(old_fd,2);
-648 close(old_fd);
-649 }
+640 {
+641 unsigned int old_fd = user->fd;
+642 user->fd = FD_MAGIC_NUMBER;
+643 user->ClearBuffer();
+644 Write(old_fd,'ERROR :Closing link (%s@%s) [%s]',user->ident,user->host,message.c_str());
+645 #ifdef USE_KQUEUE
+646 struct kevent ke;
+647 EV_SET(&ke, old_fd, EVFILT_READ, EV_DELETE, 0, 0, NULL);
+648 int i = kevent(kq, &ke, 1, 0, 0, NULL);
+649 if (i == -1)
+650 {
+651 log(DEBUG,'kqueue: Failed to remove user from queue!');
+652 }
+653 #endif
+654 #ifdef USE_EPOLL
+655 struct epoll_event ev;
+656 ev.events = EPOLLIN | EPOLLET;
+657 ev.data.fd = old_fd;
+658 int i = epoll_ctl(ep, EPOLL_CTL_DEL, old_fd, &ev);
+659 if (i < 0)
+660 {
+661 log(DEBUG,'epoll: List deletion failure!');
+662 }
+663 #endif
+664
+665 shutdown(old_fd,2);
+666 close(old_fd);
+667 return true;
+668 }
.fi
+.PP
.SH "Author"
diff --git a/docs/man/man3/Version.3 b/docs/man/man3/Version.3
index 10c11bca4..166f36369 100644
--- a/docs/man/man3/Version.3
+++ b/docs/man/man3/Version.3
@@ -1,4 +1,4 @@
-.TH "Version" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "Version" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -42,35 +42,36 @@ Inherits \fBclassbase\fP.
.PP
Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module.
-A class of type Version is returned by the GetVersion method of the \fBModule\fP class.
+A class of type Version is returned by the GetVersion method of the \fBModule\fP class.
.PP
-Definition at line 111 of file modules.h.
+Definition at line 112 of file modules.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "Version::Version (int major, int minor, int revision, int build, int flags)"
.PP
-Definition at line 245 of file modules.cpp.
+Definition at line 246 of file modules.cpp.
.PP
.nf
-245 : Major(major), Minor(minor), Revision(revision), Build(build), Flags(flags) { };
+246 : Major(major), Minor(minor), Revision(revision), Build(build), Flags(flags) { };
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "const int \fBVersion::Build\fP"
.PP
-Definition at line 114 of file modules.h.
+Definition at line 115 of file modules.h.
.SS "const int \fBVersion::Flags\fP"
.PP
-Definition at line 114 of file modules.h.
+Definition at line 115 of file modules.h.
.SS "const int \fBVersion::Major\fP"
.PP
-Definition at line 114 of file modules.h.
+Definition at line 115 of file modules.h.
.SS "const int \fBVersion::Minor\fP"
.PP
-Definition at line 114 of file modules.h.
+Definition at line 115 of file modules.h.
.SS "const int \fBVersion::Revision\fP"
.PP
-Definition at line 114 of file modules.h.
+Definition at line 115 of file modules.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/WhoWasUser.3 b/docs/man/man3/WhoWasUser.3
index 9bccb5046..e1fc03962 100644
--- a/docs/man/man3/WhoWasUser.3
+++ b/docs/man/man3/WhoWasUser.3
@@ -1,4 +1,4 @@
-.TH "WhoWasUser" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "WhoWasUser" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -37,7 +37,9 @@ WhoWasUser \- A lightweight userrec used by WHOWAS.
.in -1c
.SH "Detailed Description"
.PP
-A lightweight userrec used by WHOWAS. Definition at line 325 of file users.h.
+A lightweight userrec used by WHOWAS.
+.PP
+Definition at line 325 of file users.h.
.SH "Member Data Documentation"
.PP
.SS "char \fBWhoWasUser::dhost\fP[160]"
diff --git a/docs/man/man3/XLine.3 b/docs/man/man3/XLine.3
index 4b1aa3c68..f6d574d79 100644
--- a/docs/man/man3/XLine.3
+++ b/docs/man/man3/XLine.3
@@ -1,4 +1,4 @@
-.TH "XLine" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "XLine" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -40,24 +40,38 @@ Inherited by \fBELine\fP, \fBGLine\fP, \fBKLine\fP, \fBQLine\fP, and \fBZLine\fP
.in -1c
.SH "Detailed Description"
.PP
-XLine is the base class for ban lines such as G lines and K lines. Definition at line 34 of file xline.h.
+XLine is the base class for ban lines such as G lines and K lines.
+.PP
+Definition at line 34 of file xline.h.
.SH "Member Data Documentation"
.PP
.SS "long \fBXLine::duration\fP"
.PP
-The duration of the ban, or 0 if permenant. Definition at line 44 of file xline.h.
+The duration of the ban, or 0 if permenant.
+.PP
+Definition at line 44 of file xline.h.
.SS "long \fBXLine::n_matches\fP"
.PP
-Number of times the core matches the ban, for statistics. Definition at line 56 of file xline.h.
+Number of times the core matches the ban, for statistics.
+.PP
+Definition at line 56 of file xline.h.
.SS "char \fBXLine::reason\fP[MAXBUF]"
.PP
-Reason for the ban. Definition at line 52 of file xline.h.
+Reason for the ban.
+.PP
+Definition at line 52 of file xline.h.
.SS "time_t \fBXLine::set_time\fP"
.PP
-The time the line was added. Definition at line 40 of file xline.h.
+The time the line was added.
+.PP
+Definition at line 40 of file xline.h.
.SS "char \fBXLine::source\fP[256]"
.PP
-Source of the ban. This can be a servername or an oper nicknameDefinition at line 48 of file xline.h.
+Source of the ban.
+.PP
+This can be a servername or an oper nickname
+.PP
+Definition at line 48 of file xline.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/ZLine.3 b/docs/man/man3/ZLine.3
index f230f3d1f..9b5c0c9ae 100644
--- a/docs/man/man3/ZLine.3
+++ b/docs/man/man3/ZLine.3
@@ -1,4 +1,4 @@
-.TH "ZLine" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ZLine" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -26,15 +26,23 @@ Inherits \fBXLine\fP.
.in -1c
.SH "Detailed Description"
.PP
-ZLine class. Definition at line 93 of file xline.h.
+ZLine class.
+.PP
+Definition at line 93 of file xline.h.
.SH "Member Data Documentation"
.PP
.SS "char \fBZLine::ipaddr\fP[40]"
.PP
-IP Address (xx.yy.zz.aa) to match against May contain wildcards. Definition at line 99 of file xline.h.
+IP Address (xx.yy.zz.aa) to match against May contain wildcards.
+.PP
+Definition at line 99 of file xline.h.
.SS "bool \fBZLine::is_global\fP"
.PP
-Set if this is a global Z:line (e.g. it came from another server)Definition at line 103 of file xline.h.
+Set if this is a global Z:line (e.g.
+.PP
+it came from another server)
+.PP
+Definition at line 103 of file xline.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/base.h.3 b/docs/man/man3/base.h.3
index c717153e6..293b9845c 100644
--- a/docs/man/man3/base.h.3
+++ b/docs/man/man3/base.h.3
@@ -1,4 +1,4 @@
-.TH "base.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "base.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -15,14 +15,10 @@ base.h \-
\fC#include <string>\fP
.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
-.RI "class \fBBoolSet\fP"
-.br
-.RI "\fIBoolSet is a utility class designed to hold eight bools in a bitmask. \fP"
-.ti -1c
.RI "class \fBclassbase\fP"
.br
.RI "\fIThe base class for all inspircd classes. \fP"
@@ -30,22 +26,16 @@ base.h \-
.RI "class \fBExtensible\fP"
.br
.RI "\fIclass Extensible is the parent class of many classes such as userrec and chanrec. \fP"
-.in -1c
-.SS "Typedefs"
-
-.in +1c
.ti -1c
-.RI "typedef void * \fBVoidPointer\fP"
+.RI "class \fBBoolSet\fP"
.br
+.RI "\fIBoolSet is a utility class designed to hold eight bools in a bitmask. \fP"
.in -1c
-.SS "Variables"
+.SS "Typedefs"
.in +1c
.ti -1c
-.RI "const int \fBbitfields\fP [] = {1,2,4,8,16,32,64,128}"
-.br
-.ti -1c
-.RI "const int \fBinverted_bitfields\fP [] = {~1,~2,~4,~8,~16,~32,~64,~128}"
+.RI "typedef void * \fBVoidPointer\fP"
.br
.in -1c
.SH "Typedef Documentation"
@@ -53,14 +43,6 @@ base.h \-
.SS "typedef void* \fBVoidPointer\fP"
.PP
Definition at line 25 of file base.h.
-.SH "Variable Documentation"
-.PP
-.SS "const int \fBbitfields\fP[] = {1,2,4,8,16,32,64,128}"
-.PP
-Definition at line 91 of file base.h.
-.SS "const int \fBinverted_bitfields\fP[] = {~1,~2,~4,~8,~16,~32,~64,~128}"
-.PP
-Definition at line 92 of file base.h.
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/channels.cpp.3 b/docs/man/man3/channels.cpp.3
index a9ef2ee12..41e336448 100644
--- a/docs/man/man3/channels.cpp.3
+++ b/docs/man/man3/channels.cpp.3
@@ -1,4 +1,4 @@
-.TH "channels.cpp" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "channels.cpp" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -36,12 +36,8 @@ channels.cpp \-
.br
\fC#include <deque>\fP
.br
-\fC#include 'connection.h'\fP
-.br
\fC#include 'users.h'\fP
.br
-\fC#include 'servers.h'\fP
-.br
\fC#include 'ctables.h'\fP
.br
\fC#include 'globals.h'\fP
@@ -156,7 +152,7 @@ channels.cpp \-
.RI "time_t \fBnb_start\fP"
.br
.ti -1c
-.RI "std::vector< std::string > \fBmodule_names\fP"
+.RI "std::vector< \fBstd::string\fP > \fBmodule_names\fP"
.br
.ti -1c
.RI "int \fBboundPortCount\fP"
@@ -165,24 +161,12 @@ channels.cpp \-
.RI "int \fBportCount\fP"
.br
.ti -1c
-.RI "int \fBSERVERportCount\fP"
-.br
-.ti -1c
.RI "int \fBports\fP [MAXSOCKS]"
.br
.ti -1c
-.RI "int \fBdefaultRoute\fP"
-.br
-.ti -1c
-.RI "std::vector< long > \fBauth_cookies\fP"
-.br
-.ti -1c
.RI "std::stringstream \fBconfig_f\fP"
.br
.ti -1c
-.RI "\fBserverrec\fP * \fBme\fP [32]"
-.br
-.ti -1c
.RI "FILE * \fBlog_file\fP"
.br
.ti -1c
@@ -196,138 +180,88 @@ channels.cpp \-
.PP
.SS "#define nspace std"
.PP
-Definition at line 55 of file channels.cpp.
+Definition at line 53 of file channels.cpp.
.SH "Variable Documentation"
.PP
.SS "char \fBAdminEmail\fP[MAXBUF]"
.PP
-Definition at line 67 of file channels.cpp.
.SS "char \fBAdminName\fP[MAXBUF]"
.PP
-Definition at line 66 of file channels.cpp.
.SS "char \fBAdminNick\fP[MAXBUF]"
.PP
-Definition at line 68 of file channels.cpp.
-.SS "std::vector<long> \fBauth_cookies\fP"
-.PP
-Definition at line 94 of file channels.cpp.
.SS "int \fBboundPortCount\fP"
.PP
-Definition at line 88 of file channels.cpp.
.SS "std::stringstream \fBconfig_f\fP"
.PP
-Definition at line 95 of file channels.cpp.
-.PP
Referenced by userrec::HasPermission().
.SS "std::vector<\fBModeParameter\fP> \fBcustom_mode_params\fP"
.PP
-Definition at line 105 of file channels.cpp.
+Definition at line 99 of file channels.cpp.
.PP
Referenced by chanrec::GetModeParameter(), and chanrec::SetCustomModeParam().
.SS "int \fBdebugging\fP"
.PP
-Definition at line 77 of file channels.cpp.
-.SS "int \fBdefaultRoute\fP"
-.PP
-Definition at line 92 of file channels.cpp.
.SS "int \fBDieDelay\fP"
.PP
-Definition at line 80 of file channels.cpp.
.SS "char \fBdiepass\fP[MAXBUF]"
.PP
-Definition at line 69 of file channels.cpp.
.SS "char \fBDieValue\fP[MAXBUF]"
.PP
-Definition at line 75 of file channels.cpp.
.SS "std::vector<\fBircd_module\fP*> factory"
.PP
-Definition at line 60 of file channels.cpp.
.SS "char \fBlist\fP[MAXBUF]"
.PP
-Definition at line 73 of file channels.cpp.
-.PP
Referenced by Server::GetUsers().
.SS "FILE* \fBlog_file\fP"
.PP
-Definition at line 99 of file channels.cpp.
.SS "int \fBLogLevel\fP"
.PP
-Definition at line 62 of file channels.cpp.
.SS "int \fBMaxWhoResults\fP"
.PP
-Definition at line 83 of file channels.cpp.
-.SS "\fBserverrec\fP* \fBme\fP[32]"
-.PP
-Definition at line 97 of file channels.cpp.
-.PP
-Referenced by IsRoutable().
+Definition at line 81 of file channels.cpp.
.SS "int \fBMODCOUNT\fP = -1"
.PP
-Definition at line 1019 of file modules.cpp.
+Definition at line 994 of file modules.cpp.
.PP
Referenced by Server::FindModule().
-.SS "std::vector<std::string> \fBmodule_names\fP"
-.PP
-Definition at line 86 of file channels.cpp.
+.SS "std::vector<\fBstd::string\fP> \fBmodule_names\fP"
.PP
Referenced by Server::FindModule().
.SS "std::vector<\fBModule\fP*> modules"
.PP
-Definition at line 59 of file channels.cpp.
-.PP
Referenced by Server::FindModule().
.SS "char \fBmotd\fP[MAXBUF]"
.PP
-Definition at line 71 of file channels.cpp.
.SS "time_t \fBnb_start\fP"
.PP
-Definition at line 84 of file channels.cpp.
.SS "int \fBNetBufferSize\fP"
.PP
-Definition at line 82 of file channels.cpp.
.SS "char \fBNetwork\fP[MAXBUF]"
.PP
-Definition at line 64 of file channels.cpp.
.SS "int \fBportCount\fP"
.PP
-Definition at line 89 of file channels.cpp.
.SS "int \fBports\fP[MAXSOCKS]"
.PP
-Definition at line 91 of file channels.cpp.
.SS "char \fBPrefixQuit\fP[MAXBUF]"
.PP
-Definition at line 74 of file channels.cpp.
.SS "char \fBrestartpass\fP[MAXBUF]"
.PP
-Definition at line 70 of file channels.cpp.
.SS "char \fBrules\fP[MAXBUF]"
.PP
-Definition at line 72 of file channels.cpp.
.SS "char \fBServerDesc\fP[MAXBUF]"
.PP
-Definition at line 65 of file channels.cpp.
.SS "char \fBServerName\fP[MAXBUF]"
.PP
-Definition at line 63 of file channels.cpp.
-.PP
Referenced by userrec::userrec().
-.SS "int \fBSERVERportCount\fP"
-.PP
-Definition at line 90 of file channels.cpp.
.SS "time_t \fBstartup_time\fP"
.PP
-Definition at line 81 of file channels.cpp.
.SS "time_t \fBTIME\fP"
.PP
-Definition at line 101 of file channels.cpp.
-.PP
-Referenced by serverrec::FlushWriteBuffers(), serverrec::serverrec(), and userrec::userrec().
+Referenced by userrec::userrec().
.SS "int \fBWHOWAS_MAX\fP"
.PP
-Definition at line 79 of file channels.cpp.
.SS "int \fBWHOWAS_STALE\fP"
.PP
-Definition at line 78 of file channels.cpp.
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/channels.h.3 b/docs/man/man3/channels.h.3
index 84ded7a0d..e0158a5fa 100644
--- a/docs/man/man3/channels.h.3
+++ b/docs/man/man3/channels.h.3
@@ -1,4 +1,4 @@
-.TH "channels.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "channels.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -17,26 +17,22 @@ channels.h \-
\fC#include <string>\fP
.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
-.RI "class \fBBanItem\fP"
+.RI "class \fBHostItem\fP"
.br
-.RI "\fIA subclass of \fBHostItem\fP designed to hold channel bans (+b). \fP"
+.RI "\fIHolds an entry for a ban list, exemption list, or invite list. \fP"
.ti -1c
-.RI "class \fBchanrec\fP"
+.RI "class \fBBanItem\fP"
.br
-.RI "\fIHolds all relevent information for a channel. \fP"
+.RI "\fIA subclass of \fBHostItem\fP designed to hold channel bans (+b). \fP"
.ti -1c
.RI "class \fBExemptItem\fP"
.br
.RI "\fIA subclass of \fBHostItem\fP designed to hold channel exempts (+e). \fP"
.ti -1c
-.RI "class \fBHostItem\fP"
-.br
-.RI "\fIHolds an entry for a ban list, exemption list, or invite list. \fP"
-.ti -1c
.RI "class \fBInviteItem\fP"
.br
.RI "\fIA subclass of \fBHostItem\fP designed to hold channel invites (+I). \fP"
@@ -45,6 +41,10 @@ channels.h \-
.br
.RI "\fIHolds a custom parameter to a module-defined channel mode e.g. \fP"
.ti -1c
+.RI "class \fBchanrec\fP"
+.br
+.RI "\fIHolds all relevent information for a channel. \fP"
+.ti -1c
.RI "class \fBucrec\fP"
.br
.RI "\fIHolds a user's modes on a channel This class associates a users privilages with a channel by creating a pointer link between a userrec and chanrec class. \fP"
@@ -141,13 +141,19 @@ Definition at line 231 of file channels.h.
.PP
.SS "typedef std::vector<\fBBanItem\fP> \fBBanList\fP"
.PP
-Holds a complete ban list. Definition at line 87 of file channels.h.
+Holds a complete ban list.
+.PP
+Definition at line 87 of file channels.h.
.SS "typedef std::vector<\fBExemptItem\fP> \fBExemptList\fP"
.PP
-Holds a complete exempt list. Definition at line 91 of file channels.h.
+Holds a complete exempt list.
+.PP
+Definition at line 91 of file channels.h.
.SS "typedef std::vector<\fBInviteItem\fP> \fBInviteList\fP"
.PP
-Holds a complete invite list. Definition at line 95 of file channels.h.
+Holds a complete invite list.
+.PP
+Definition at line 95 of file channels.h.
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/chanrec.3 b/docs/man/man3/chanrec.3
index 3f5401779..48d998e2f 100644
--- a/docs/man/man3/chanrec.3
+++ b/docs/man/man3/chanrec.3
@@ -1,4 +1,4 @@
-.TH "chanrec" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "chanrec" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -28,7 +28,7 @@ Inherits \fBExtensible\fP.
.br
.RI "\fIReturns true if a custom mode is set on a channel. \fP"
.ti -1c
-.RI "std::string \fBGetModeParameter\fP (char mode)"
+.RI "\fBstd::string\fP \fBGetModeParameter\fP (char mode)"
.br
.RI "\fIReturns the parameter for a custom mode on a channel. \fP"
.ti -1c
@@ -107,152 +107,181 @@ Inherits \fBExtensible\fP.
.PP
Holds all relevent information for a channel.
-This class represents a channel, and contains its name, modes, time created, topic, topic set time, etc, and an instance of the BanList type.
+This class represents a channel, and contains its name, modes, time created, topic, topic set time, etc, and an instance of the BanList type.
.PP
Definition at line 101 of file channels.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "chanrec::chanrec ()"
.PP
-Creates a channel record and initialises it with default values. Definition at line 107 of file channels.cpp.
+Creates a channel record and initialises it with default values.
+.PP
+Definition at line 101 of file channels.cpp.
.PP
References binarymodes, created, custom_modes, internal_userlist, key, limit, name, setby, topic, and topicset.
.PP
.nf
-108 {
-109 strcpy(name,'');
-110 strcpy(custom_modes,'');
-111 strcpy(topic,'');
-112 strcpy(setby,'');
-113 strcpy(key,'');
-114 created = topicset = limit = 0;
-115 binarymodes = 0;
-116 internal_userlist.clear();
-117 }
+102 {
+103 strcpy(name,'');
+104 strcpy(custom_modes,'');
+105 strcpy(topic,'');
+106 strcpy(setby,'');
+107 strcpy(key,'');
+108 created = topicset = limit = 0;
+109 binarymodes = 0;
+110 internal_userlist.clear();
+111 }
.fi
-.SS "virtual chanrec::~\fBchanrec\fP ()\fC [inline, virtual]\fP"
+.PP
+.SS "virtual chanrec::~chanrec ()\fC [inline, virtual]\fP"
.PP
Definition at line 224 of file channels.h.
.PP
.nf
224 { /* stub */ }
.fi
+.PP
.SH "Member Function Documentation"
.PP
.SS "void chanrec::AddUser (char * castuser)"
.PP
-Add a user pointer to the internal reference list. \fBParameters:\fP
+Add a user pointer to the internal reference list.
+.PP
+\fBParameters:\fP
.RS 4
\fIcastuser\fP This should be a pointer to a userrec, casted to char*
.RE
.PP
-The data inserted into the reference list is a table as it is an arbitary pointer compared to other users by its memory address, as this is a very fast 32 or 64 bit integer comparison.Definition at line 201 of file channels.cpp.
+The data inserted into the reference list is a table as it is an arbitary pointer compared to other users by its memory address, as this is a very fast 32 or 64 bit integer comparison.
+.PP
+Definition at line 195 of file channels.cpp.
.PP
References DEBUG, and internal_userlist.
.PP
.nf
-202 {
-203 internal_userlist.push_back(castuser);
-204 log(DEBUG,'Added casted user to channel's internal list');
-205 }
+196 {
+197 internal_userlist.push_back(castuser);
+198 log(DEBUG,'Added casted user to channel's internal list');
+199 }
.fi
+.PP
.SS "void chanrec::DelUser (char * castuser)"
.PP
-Delete a user pointer to the internal reference list. \fBParameters:\fP
+Delete a user pointer to the internal reference list.
+.PP
+\fBParameters:\fP
.RS 4
\fIcastuser\fP This should be a pointer to a userrec, casted to char*
.RE
.PP
-The data removed from the reference list is a table as it is an arbitary pointer compared to other users by its memory address, as this is a very fast 32 or 64 bit integer comparison. Definition at line 207 of file channels.cpp.
+The data removed from the reference list is a table as it is an arbitary pointer compared to other users by its memory address, as this is a very fast 32 or 64 bit integer comparison.
+.PP
+Definition at line 201 of file channels.cpp.
.PP
References DEBUG, internal_userlist, and name.
.PP
.nf
-208 {
-209 for (std::vector<char*>::iterator a = internal_userlist.begin(); a < internal_userlist.end(); a++)
-210 {
-211 if (*a == castuser)
-212 {
-213 log(DEBUG,'Removed casted user from channel's internal list');
-214 internal_userlist.erase(a);
-215 return;
-216 }
-217 }
-218 log(DEBUG,'BUG BUG BUG! Attempt to remove an uncasted user from the internal list of %s!',name);
-219 }
+202 {
+203 for (std::vector<char*>::iterator a = internal_userlist.begin(); a < internal_userlist.end(); a++)
+204 {
+205 if (*a == castuser)
+206 {
+207 log(DEBUG,'Removed casted user from channel's internal list');
+208 internal_userlist.erase(a);
+209 return;
+210 }
+211 }
+212 log(DEBUG,'BUG BUG BUG! Attempt to remove an uncasted user from the internal list of %s!',name);
+213 }
.fi
-.SS "std::string chanrec::GetModeParameter (char mode)"
.PP
-Returns the parameter for a custom mode on a channel. \fBParameters:\fP
+.SS "\fBstd::string\fP chanrec::GetModeParameter (char mode)"
+.PP
+Returns the parameter for a custom mode on a channel.
+.PP
+\fBParameters:\fP
.RS 4
\fImode\fP The mode character you wish to query
.RE
.PP
-For example if '+L #foo' is set, and you pass this method 'L', it will return '#foo'. If the mode is not set on the channel, or the mode has no parameters associated with it, it will return an empty string.
+For example if '+L #foo' is set, and you pass this method 'L', it will return 'foo'. If the mode is not set on the channel, or the mode has no parameters associated with it, it will return an empty string.
.PP
\fBReturns:\fP
.RS 4
The parameter for this mode is returned, or an empty string
.RE
.PP
-Definition at line 181 of file channels.cpp.
+
+.PP
+Definition at line 175 of file channels.cpp.
.PP
References custom_mode_params.
.PP
.nf
-182 {
-183 if (custom_mode_params.size())
-184 {
-185 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
-186 {
-187 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
-188 {
-189 return i->parameter;
-190 }
-191 }
-192 }
-193 return '';
-194 }
+176 {
+177 if (custom_mode_params.size())
+178 {
+179 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
+180 {
+181 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
+182 {
+183 return i->parameter;
+184 }
+185 }
+186 }
+187 return '';
+188 }
.fi
+.PP
.SS "long chanrec::GetUserCounter ()"
.PP
-Obtain the channel 'user counter' This returns the channel reference counter, which is initialized to 0 when the channel is created and incremented/decremented upon joins, parts quits and kicks. \fBReturns:\fP
+Obtain the channel 'user counter' This returns the channel reference counter, which is initialized to 0 when the channel is created and incremented/decremented upon joins, parts quits and kicks.
+.PP
+\fBReturns:\fP
.RS 4
The number of users on this channel
.RE
.PP
-Definition at line 196 of file channels.cpp.
+
.PP
-References internal_userlist.
+Definition at line 190 of file channels.cpp.
.PP
.nf
-197 {
-198 return (this->internal_userlist.size());
-199 }
+191 {
+192 return (this->internal_userlist.size());
+193 }
.fi
+.PP
.SS "std::vector< char * > * chanrec::GetUsers ()"
.PP
-Obrain the internal reference list The internal reference list contains a list of userrec* cast to char*. These are used for rapid comparison to determine channel membership for PRIVMSG, NOTICE, QUIT, PART etc. The resulting pointer to the vector should be considered readonly and only modified via AddUser and DelUser.
+Obrain the internal reference list The internal reference list contains a list of userrec* cast to char*.
+.PP
+These are used for rapid comparison to determine channel membership for PRIVMSG, NOTICE, QUIT, PART etc. The resulting pointer to the vector should be considered readonly and only modified via AddUser and DelUser.
.PP
\fBReturns:\fP
.RS 4
This function returns a vector of userrec pointers, each of which has been casted to char* to prevent circular references
.RE
.PP
-Definition at line 221 of file channels.cpp.
+
+.PP
+Definition at line 215 of file channels.cpp.
.PP
References internal_userlist.
.PP
Referenced by Server::GetUsers().
.PP
.nf
-222 {
-223 return &internal_userlist;
-224 }
+216 {
+217 return &internal_userlist;
+218 }
.fi
+.PP
.SS "bool chanrec::IsCustomModeSet (char mode)"
.PP
-Returns true if a custom mode is set on a channel. \fBParameters:\fP
+Returns true if a custom mode is set on a channel.
+.PP
+\fBParameters:\fP
.RS 4
\fImode\fP The mode character you wish to query
.RE
@@ -262,56 +291,66 @@ Returns true if a custom mode is set on a channel. \fBParameters:\fP
True if the custom mode is set, false if otherwise
.RE
.PP
-Definition at line 175 of file channels.cpp.
+
+.PP
+Definition at line 169 of file channels.cpp.
.PP
References DEBUG.
.PP
.nf
-176 {
-177 log(DEBUG,'Checking ISCustomModeSet: %c %s',mode,this->custom_modes);
-178 return (strchr(this->custom_modes,mode) != 0);
-179 }
+170 {
+171 log(DEBUG,'Checking ISCustomModeSet: %c %s',mode,this->custom_modes);
+172 return (strchr(this->custom_modes,mode) != 0);
+173 }
.fi
+.PP
.SS "void chanrec::SetCustomMode (char mode, bool mode_on)"
.PP
-Sets or unsets a custom mode in the channels info. \fBParameters:\fP
+Sets or unsets a custom mode in the channels info.
+.PP
+\fBParameters:\fP
.RS 4
\fImode\fP The mode character to set or unset
.br
\fImode_on\fP True if you want to set the mode or false if you want to remove it
.RE
.PP
-Definition at line 119 of file channels.cpp.
+
+.PP
+Definition at line 113 of file channels.cpp.
.PP
References custom_modes, DEBUG, and SetCustomModeParam().
.PP
.nf
-120 {
-121 if (mode_on) {
-122 static char m[3];
-123 m[0] = mode;
-124 m[1] = '\0';
-125 if (!strchr(this->custom_modes,mode))
-126 {
-127 strlcat(custom_modes,m,MAXMODES);
-128 }
-129 log(DEBUG,'Custom mode %c set',mode);
-130 }
-131 else {
-132
-133 std::string a = this->custom_modes;
-134 int pos = a.find(mode);
-135 a.erase(pos,1);
-136 strncpy(this->custom_modes,a.c_str(),MAXMODES);
-137
-138 log(DEBUG,'Custom mode %c removed: modelist='%s'',mode,this->custom_modes);
-139 this->SetCustomModeParam(mode,'',false);
-140 }
-141 }
+114 {
+115 if (mode_on) {
+116 static char m[3];
+117 m[0] = mode;
+118 m[1] = '\0';
+119 if (!strchr(this->custom_modes,mode))
+120 {
+121 strlcat(custom_modes,m,MAXMODES);
+122 }
+123 log(DEBUG,'Custom mode %c set',mode);
+124 }
+125 else {
+126
+127 std::string a = this->custom_modes;
+128 int pos = a.find(mode);
+129 a.erase(pos,1);
+130 strncpy(this->custom_modes,a.c_str(),MAXMODES);
+131
+132 log(DEBUG,'Custom mode %c removed: modelist='%s'',mode,this->custom_modes);
+133 this->SetCustomModeParam(mode,'',false);
+134 }
+135 }
.fi
+.PP
.SS "void chanrec::SetCustomModeParam (char mode, char * parameter, bool mode_on)"
.PP
-Sets or unsets the parameters for a custom mode in a channels info. \fBParameters:\fP
+Sets or unsets the parameters for a custom mode in a channels info.
+.PP
+\fBParameters:\fP
.RS 4
\fImode\fP The mode character to set or unset
.br
@@ -320,96 +359,133 @@ Sets or unsets the parameters for a custom mode in a channels info. \fBParameter
\fImode_on\fP True if you want to set the mode or false if you want to remove it
.RE
.PP
-Definition at line 144 of file channels.cpp.
+
+.PP
+Definition at line 138 of file channels.cpp.
.PP
References ModeParameter::channel, custom_mode_params, DEBUG, ModeParameter::mode, and ModeParameter::parameter.
.PP
Referenced by SetCustomMode().
.PP
.nf
-145 {
-146
-147 log(DEBUG,'SetCustomModeParam called');
-148 ModeParameter M;
-149 M.mode = mode;
-150 strlcpy(M.channel,this->name,CHANMAX);
-151 strlcpy(M.parameter,parameter,MAXBUF);
-152 if (mode_on)
-153 {
-154 log(DEBUG,'Custom mode parameter %c %s added',mode,parameter);
-155 custom_mode_params.push_back(M);
-156 }
-157 else
-158 {
-159 if (custom_mode_params.size())
-160 {
-161 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
-162 {
-163 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
-164 {
-165 log(DEBUG,'Custom mode parameter %c %s removed',mode,parameter);
-166 custom_mode_params.erase(i);
-167 return;
-168 }
-169 }
-170 }
-171 log(DEBUG,'*** BUG *** Attempt to remove non-existent mode parameter!');
-172 }
-173 }
+139 {
+140
+141 log(DEBUG,'SetCustomModeParam called');
+142 ModeParameter M;
+143 M.mode = mode;
+144 strlcpy(M.channel,this->name,CHANMAX);
+145 strlcpy(M.parameter,parameter,MAXBUF);
+146 if (mode_on)
+147 {
+148 log(DEBUG,'Custom mode parameter %c %s added',mode,parameter);
+149 custom_mode_params.push_back(M);
+150 }
+151 else
+152 {
+153 if (custom_mode_params.size())
+154 {
+155 for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
+156 {
+157 if ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
+158 {
+159 log(DEBUG,'Custom mode parameter %c %s removed',mode,parameter);
+160 custom_mode_params.erase(i);
+161 return;
+162 }
+163 }
+164 }
+165 log(DEBUG,'*** BUG *** Attempt to remove non-existent mode parameter!');
+166 }
+167 }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "\fBBanList\fP \fBchanrec::bans\fP"
.PP
-The list of all bans set on the channel. Definition at line 149 of file channels.h.
+The list of all bans set on the channel.
+.PP
+Definition at line 149 of file channels.h.
.SS "char \fBchanrec::binarymodes\fP"
.PP
-Contains a bitmask of the CM_* builtin (RFC) binary mode symbols. Definition at line 145 of file channels.h.
+Contains a bitmask of the CM_* builtin (RFC) binary mode symbols.
+.PP
+Definition at line 145 of file channels.h.
.PP
Referenced by chanrec().
.SS "time_t \fBchanrec::created\fP"
.PP
-Creation time. Definition at line 123 of file channels.h.
+Creation time.
+.PP
+Definition at line 123 of file channels.h.
.PP
Referenced by chanrec().
.SS "char \fBchanrec::custom_modes\fP[MAXMODES]"
.PP
-Custom modes for the channel. Plugins may use this field in any way they see fit.Definition at line 110 of file channels.h.
+Custom modes for the channel.
+.PP
+Plugins may use this field in any way they see fit.
+.PP
+Definition at line 110 of file channels.h.
.PP
Referenced by chanrec(), and SetCustomMode().
.SS "std::vector<char*> \fBchanrec::internal_userlist\fP"
.PP
-User list (casted to char*'s to stop forward declaration stuff) (chicken and egg scenario!). Definition at line 115 of file channels.h.
+User list (casted to char*'s to stop forward declaration stuff) (chicken and egg scenario!).
+.PP
+Definition at line 115 of file channels.h.
.PP
-Referenced by AddUser(), chanrec(), DelUser(), GetUserCounter(), and GetUsers().
+Referenced by AddUser(), chanrec(), DelUser(), and GetUsers().
.SS "char \fBchanrec::key\fP[32]"
.PP
-Contains the channel key. If this value is an empty string, there is no channel key in place.Definition at line 141 of file channels.h.
+Contains the channel key.
+.PP
+If this value is an empty string, there is no channel key in place.
+.PP
+Definition at line 141 of file channels.h.
.PP
Referenced by chanrec().
.SS "short int \fBchanrec::limit\fP"
.PP
-Contains the channel user limit. If this value is zero, there is no limit in place.Definition at line 136 of file channels.h.
+Contains the channel user limit.
+.PP
+If this value is zero, there is no limit in place.
+.PP
+Definition at line 136 of file channels.h.
.PP
Referenced by chanrec().
.SS "char \fBchanrec::name\fP[CHANMAX]"
.PP
-The channels name. Definition at line 106 of file channels.h.
+The channels name.
+.PP
+Definition at line 106 of file channels.h.
.PP
Referenced by chanrec(), DelUser(), and Server::PseudoToUser().
.SS "char \fBchanrec::setby\fP[NICKMAX]"
.PP
-The last user to set the topic. If this member is an empty string, no topic was ever set.Definition at line 131 of file channels.h.
+The last user to set the topic.
+.PP
+If this member is an empty string, no topic was ever set.
+.PP
+Definition at line 131 of file channels.h.
.PP
Referenced by chanrec(), and Server::PseudoToUser().
.SS "char \fBchanrec::topic\fP[MAXBUF]"
.PP
-Channel topic. If this is an empty string, no channel topic is set.Definition at line 120 of file channels.h.
+Channel topic.
+.PP
+If this is an empty string, no channel topic is set.
+.PP
+Definition at line 120 of file channels.h.
.PP
Referenced by chanrec(), and Server::PseudoToUser().
.SS "time_t \fBchanrec::topicset\fP"
.PP
-Time topic was set. If no topic was ever set, this will be equal to \fBchanrec::created\fPDefinition at line 127 of file channels.h.
+Time topic was set.
+.PP
+If no topic was ever set, this will be equal to \fBchanrec::created\fP
+.PP
+Definition at line 127 of file channels.h.
.PP
Referenced by chanrec(), and Server::PseudoToUser().
diff --git a/docs/man/man3/classbase.3 b/docs/man/man3/classbase.3
index 2d962475b..cf1538044 100644
--- a/docs/man/man3/classbase.3
+++ b/docs/man/man3/classbase.3
@@ -1,4 +1,4 @@
-.TH "classbase" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "classbase" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -33,30 +33,38 @@ Inherited by \fBAdmin\fP, \fBConfigReader\fP, \fBConnectClass\fP, \fBExtensible\
.in -1c
.SH "Detailed Description"
.PP
-The base class for all inspircd classes. Definition at line 29 of file base.h.
+The base class for all inspircd classes.
+.PP
+Definition at line 29 of file base.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "classbase::classbase ()\fC [inline]\fP"
.PP
-Constructor, Sets the object's time. Definition at line 39 of file base.h.
+Constructor, Sets the object's time.
+.PP
+Definition at line 39 of file base.h.
.PP
References age.
.PP
.nf
39 { age = time(NULL); }
.fi
-.SS "classbase::~\fBclassbase\fP ()\fC [inline]\fP"
+.PP
+.SS "classbase::~classbase ()\fC [inline]\fP"
.PP
Definition at line 40 of file base.h.
.PP
.nf
40 { }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "time_t \fBclassbase::age\fP"
.PP
-Time that the object was instantiated (used for TS calculation etc). Definition at line 34 of file base.h.
+Time that the object was instantiated (used for TS calculation etc).
+.PP
+Definition at line 34 of file base.h.
.PP
Referenced by classbase().
diff --git a/docs/man/man3/command_t.3 b/docs/man/man3/command_t.3
index ccd08117f..a761b01d2 100644
--- a/docs/man/man3/command_t.3
+++ b/docs/man/man3/command_t.3
@@ -1,4 +1,4 @@
-.TH "command_t" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "command_t" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -46,30 +46,46 @@ Inherits \fBExtensible\fP.
.in -1c
.SH "Detailed Description"
.PP
-A structure that defines a command. Definition at line 26 of file ctables.h.
+A structure that defines a command.
+.PP
+Definition at line 26 of file ctables.h.
.SH "Member Data Documentation"
.PP
.SS "char \fBcommand_t::command\fP[MAXBUF]"
.PP
-Command name. Definition at line 31 of file ctables.h.
+Command name.
+.PP
+Definition at line 31 of file ctables.h.
.SS "char \fBcommand_t::flags_needed\fP"
.PP
-User flags needed to execute the command or 0. Definition at line 37 of file ctables.h.
+User flags needed to execute the command or 0.
+.PP
+Definition at line 37 of file ctables.h.
.SS "handlerfunc* \fBcommand_t::handler_function\fP"
.PP
-Handler function as in typedef. Definition at line 34 of file ctables.h.
+Handler function as in typedef.
+.PP
+Definition at line 34 of file ctables.h.
.SS "int \fBcommand_t::min_params\fP"
.PP
-Minimum number of parameters command takes. Definition at line 40 of file ctables.h.
+Minimum number of parameters command takes.
+.PP
+Definition at line 40 of file ctables.h.
.SS "char \fBcommand_t::source\fP[MAXBUF]"
.PP
-used for resource tracking between modules Definition at line 49 of file ctables.h.
+used for resource tracking between modules
+.PP
+Definition at line 49 of file ctables.h.
.SS "long \fBcommand_t::total_bytes\fP"
.PP
-used by /stats m Definition at line 46 of file ctables.h.
+used by /stats m
+.PP
+Definition at line 46 of file ctables.h.
.SS "long \fBcommand_t::use_count\fP"
.PP
-used by /stats m Definition at line 43 of file ctables.h.
+used by /stats m
+.PP
+Definition at line 43 of file ctables.h.
.SH "Author"
.PP
diff --git a/docs/man/man3/commands.h.3 b/docs/man/man3/commands.h.3
index a129fa14e..467911b07 100644
--- a/docs/man/man3/commands.h.3
+++ b/docs/man/man3/commands.h.3
@@ -1,4 +1,4 @@
-.TH "commands.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "commands.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -181,80 +181,6 @@ commands.h \-
.RI "void \fBhandle_commands\fP (char **parameters, int pcnt, \fBuserrec\fP *user)"
.br
.ti -1c
-.RI "void \fBhandle_link_packet\fP (char *tcp_msg, char *tcp_host, \fBserverrec\fP *serv, char *tcp_sum)"
-.br
-.RI "\fISpecial functions for processing server to server traffic. \fP"
-.ti -1c
-.RI "void \fBprocess_restricted_commands\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *ipaddr, int port, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_amp\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.RI "\fIThese are the handlers for server commands (tokens). \fP"
-.ti -1c
-.RI "void \fBhandle_dollar\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_J\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_R\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_plus\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_b\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_a\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_F\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_N\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_AT\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_k\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_n\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_Q\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_K\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_L\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_m\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_M\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_T\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_t\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_i\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_P\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
-.RI "void \fBhandle_V\fP (char token, char *params, \fBserverrec\fP *source, \fBserverrec\fP *reply, char *tcp_host, char *tcp_sum)"
-.br
-.ti -1c
.RI "bool \fBis_uline\fP (const char *server)"
.br
.RI "\fIFunctions for u:lined servers. \fP"
@@ -262,62 +188,37 @@ commands.h \-
.RI "long \fBduration\fP (const char *str)"
.br
.RI "\fIOther useful functions. \fP"
-.ti -1c
-.RI "void \fBConnectServer\fP (char *servermask, \fBuserrec\fP *user)"
-.br
-.RI "\fI\fBServer\fP connect creation. \fP"
.in -1c
.SH "Function Documentation"
.PP
-.SS "void ConnectServer (char * servermask, \fBuserrec\fP * user)"
-.PP
-\fBServer\fP connect creation.
.SS "long duration (const char * str)"
.PP
-Other useful functions. Referenced by Server::AddELine(), Server::AddGLine(), Server::AddKLine(), Server::AddQLine(), Server::AddZLine(), and Server::CalcDuration().
-.SS "void handle_a (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
+Other useful functions.
.PP
+Referenced by Server::CalcDuration().
.SS "void handle_admin (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_amp (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
-These are the handlers for server commands (tokens).
-.SS "void handle_AT (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_away (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_b (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_commands (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_connect (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_die (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_dollar (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_eline (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_F (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_gline (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_i (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_info (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_invite (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_ison (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_J (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_join (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
These are the handlers for user commands.
-.SS "void handle_K (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
-.SS "void handle_k (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
.PP
.SS "void handle_kick (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
@@ -325,11 +226,6 @@ These are the handlers for user commands.
.PP
.SS "void handle_kline (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_L (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
-.SS "void handle_link_packet (char * tcp_msg, char * tcp_host, \fBserverrec\fP * serv, char * tcp_sum)"
-.PP
-Special functions for processing server to server traffic.
.SS "void handle_links (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_list (char ** parameters, int pcnt, \fBuserrec\fP * user)"
@@ -338,20 +234,12 @@ Special functions for processing server to server traffic.
.PP
.SS "void handle_lusers (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_M (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
-.SS "void handle_m (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_map (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_modules (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_motd (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_n (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
-.SS "void handle_N (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_names (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_nick (char ** parameters, int pcnt, \fBuserrec\fP * user)"
@@ -360,28 +248,20 @@ Special functions for processing server to server traffic.
.PP
.SS "void handle_oper (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_P (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_part (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_pass (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_ping (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_plus (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_pong (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_privmsg (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_Q (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_qline (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_quit (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_R (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_rehash (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_restart (char ** parameters, int pcnt, \fBuserrec\fP * user)"
@@ -396,10 +276,6 @@ Special functions for processing server to server traffic.
.PP
.SS "void handle_summon (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_t (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
-.SS "void handle_T (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_time (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_topic (char ** parameters, int pcnt, \fBuserrec\fP * user)"
@@ -414,8 +290,6 @@ Special functions for processing server to server traffic.
.PP
.SS "void handle_users (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-.SS "void handle_V (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * tcp_sum)"
-.PP
.SS "void handle_wallops (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
.SS "void handle_who (char ** parameters, int pcnt, \fBuserrec\fP * user)"
@@ -428,9 +302,9 @@ Special functions for processing server to server traffic.
.PP
.SS "bool is_uline (const char * server)"
.PP
-Functions for u:lined servers. Referenced by Server::IsUlined().
-.SS "void process_restricted_commands (char token, char * params, \fBserverrec\fP * source, \fBserverrec\fP * reply, char * tcp_host, char * ipaddr, int port, char * tcp_sum)"
+Functions for u:lined servers.
.PP
+Referenced by Server::IsUlined().
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/connection.3 b/docs/man/man3/connection.3
index cce6dc268..e243173d6 100644
--- a/docs/man/man3/connection.3
+++ b/docs/man/man3/connection.3
@@ -1,4 +1,4 @@
-.TH "connection" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "connection" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -12,7 +12,7 @@ connection \- Please note: classes serverrec and userrec both inherit from class
.PP
Inherits \fBExtensible\fP.
.PP
-Inherited by \fBserverrec\fP, and \fBuserrec\fP.
+Inherited by \fBuserrec\fP.
.PP
.SS "Public Member Functions"
@@ -84,84 +84,129 @@ Inherited by \fBserverrec\fP, and \fBuserrec\fP.
.in -1c
.SH "Detailed Description"
.PP
-Please note: classes serverrec and userrec both inherit from class connection. Definition at line 296 of file connection.h.
+Please note: classes serverrec and userrec both inherit from class connection.
+.PP
+Definition at line 37 of file connection.h.
.SH "Constructor & Destructor Documentation"
.PP
-.SS "connection::connection ()"
+.SS "connection::connection ()\fC [inline]\fP"
.PP
Default constructor.
+.PP
+Definition at line 100 of file connection.h.
+.PP
+References fd.
+.PP
+.nf
+101 {
+102 this->fd = -1;
+103 }
+.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "int \fBconnection::bytes_in\fP"
.PP
-Stats counter for bytes inbound. Definition at line 313 of file connection.h.
+Stats counter for bytes inbound.
+.PP
+Definition at line 54 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "int \fBconnection::bytes_out\fP"
.PP
-Stats counter for bytes outbound. Definition at line 317 of file connection.h.
+Stats counter for bytes outbound.
+.PP
+Definition at line 58 of file connection.h.
.PP
Referenced by userrec::FlushWriteBuf(), and userrec::userrec().
.SS "int \fBconnection::cmds_in\fP"
.PP
-Stats counter for commands inbound. Definition at line 321 of file connection.h.
+Stats counter for commands inbound.
+.PP
+Definition at line 62 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "int \fBconnection::cmds_out\fP"
.PP
-Stats counter for commands outbound. Definition at line 325 of file connection.h.
+Stats counter for commands outbound.
+.PP
+Definition at line 66 of file connection.h.
.PP
Referenced by userrec::FlushWriteBuf(), and userrec::userrec().
.SS "int \fBconnection::fd\fP"
.PP
-File descriptor of the connection. Definition at line 301 of file connection.h.
+File descriptor of the connection.
.PP
-Referenced by serverrec::BeginLink(), serverrec::CreateListener(), ConfigReader::DumpErrors(), serverrec::MeshCookie(), Server::PseudoToUser(), userrec::ReadData(), Server::SendTo(), serverrec::serverrec(), userrec::userrec(), and Server::UserToPseudo().
+Definition at line 42 of file connection.h.
+.PP
+Referenced by connection(), ConfigReader::DumpErrors(), Server::PseudoToUser(), Server::SendTo(), userrec::userrec(), and Server::UserToPseudo().
.SS "bool \fBconnection::haspassed\fP"
.PP
-True if server/user has authenticated, false if otherwise. Definition at line 329 of file connection.h.
+True if server/user has authenticated, false if otherwise.
+.PP
+Definition at line 70 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "char \fBconnection::host\fP[160]"
.PP
-Hostname of connection. Not used if this is a serverrecDefinition at line 305 of file connection.h.
+Hostname of connection.
+.PP
+Not used if this is a serverrec
+.PP
+Definition at line 46 of file connection.h.
.PP
Referenced by userrec::GetFullRealHost(), Server::PseudoToUser(), userrec::userrec(), and Server::UserToPseudo().
.SS "time_t \fBconnection::idle_lastmsg\fP"
.PP
-Time that the connection last sent data, used to calculate idle time. Definition at line 351 of file connection.h.
+Time that the connection last sent data, used to calculate idle time.
+.PP
+Definition at line 92 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "char \fBconnection::ip\fP[16]"
.PP
-IP of connection. Definition at line 309 of file connection.h.
+IP of connection.
+.PP
+Definition at line 50 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "time_t \fBconnection::lastping\fP"
.PP
-Time the connection was last pinged. Definition at line 343 of file connection.h.
+Time the connection was last pinged.
.PP
-Referenced by serverrec::serverrec(), and userrec::userrec().
+Definition at line 84 of file connection.h.
+.PP
+Referenced by userrec::userrec().
.SS "time_t \fBconnection::nping\fP"
.PP
-Used by PING checks with clients. Definition at line 355 of file connection.h.
+Used by PING checks with clients.
+.PP
+Definition at line 96 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "int \fBconnection::port\fP"
.PP
-Port number For a userrec, this is the port they connected to the network on. For a serverrec this is the current listening port of the serverrec object.Definition at line 335 of file connection.h.
+Port number For a userrec, this is the port they connected to the network on.
.PP
-Referenced by serverrec::CreateListener(), and userrec::userrec().
+For a serverrec this is the current listening port of the serverrec object.
+.PP
+Definition at line 76 of file connection.h.
+.PP
+Referenced by userrec::userrec().
.SS "char \fBconnection::registered\fP"
.PP
-Used by userrec to indicate the registration status of the connection. Definition at line 339 of file connection.h.
+Used by userrec to indicate the registration status of the connection.
+.PP
+Definition at line 80 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "time_t \fBconnection::signon\fP"
.PP
-Time the connection was created, set in the constructor. Definition at line 347 of file connection.h.
+Time the connection was created, set in the constructor.
+.PP
+Definition at line 88 of file connection.h.
.PP
-Referenced by serverrec::serverrec(), and userrec::userrec().
+Referenced by userrec::userrec().
.SH "Author"
.PP
diff --git a/docs/man/man3/connection.h.3 b/docs/man/man3/connection.h.3
index 4e15d56f9..04af56c8c 100644
--- a/docs/man/man3/connection.h.3
+++ b/docs/man/man3/connection.h.3
@@ -1,4 +1,4 @@
-.TH "connection.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "connection.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -35,77 +35,14 @@ connection.h \-
\fC#include <sstream>\fP
.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
.RI "class \fBconnection\fP"
.br
.RI "\fIPlease note: classes serverrec and userrec both inherit from class connection. \fP"
-.ti -1c
-.RI "class \fBircd_connector\fP"
-.br
-.RI "\fIEach connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds. \fP"
-.in -1c
-.SS "Defines"
-
-.in +1c
-.ti -1c
-.RI "#define \fBSTATE_DISCONNECTED\fP 0"
-.br
-.ti -1c
-.RI "#define \fBSTATE_CONNECTED\fP 1"
-.br
-.ti -1c
-.RI "#define \fBSTATE_SYNC\fP 2"
-.br
-.ti -1c
-.RI "#define \fBSTATE_NOAUTH_INBOUND\fP 3"
-.br
-.ti -1c
-.RI "#define \fBSTATE_NOAUTH_OUTBOUND\fP 4"
-.br
-.ti -1c
-.RI "#define \fBSTATE_SERVICES\fP 5"
-.br
.in -1c
-.SS "Functions"
-
-.in +1c
-.ti -1c
-.RI "std::string \fBCreateSum\fP ()"
-.br
-.in -1c
-.SH "Define Documentation"
-.PP
-.SS "#define STATE_CONNECTED 1"
-.PP
-Definition at line 36 of file connection.h.
-.SS "#define STATE_DISCONNECTED 0"
-.PP
-Definition at line 35 of file connection.h.
-.PP
-Referenced by serverrec::BeginLink(), serverrec::FlushWriteBuffers(), IsRoutable(), serverrec::MeshCookie(), serverrec::RecvPacket(), and serverrec::SendPacket().
-.SS "#define STATE_NOAUTH_INBOUND 3"
-.PP
-Definition at line 38 of file connection.h.
-.PP
-Referenced by serverrec::AddIncoming(), and serverrec::FlushWriteBuffers().
-.SS "#define STATE_NOAUTH_OUTBOUND 4"
-.PP
-Definition at line 39 of file connection.h.
-.PP
-Referenced by serverrec::BeginLink(), serverrec::FlushWriteBuffers(), and serverrec::MeshCookie().
-.SS "#define STATE_SERVICES 5"
-.PP
-Definition at line 40 of file connection.h.
-.SS "#define STATE_SYNC 2"
-.PP
-Definition at line 37 of file connection.h.
-.SH "Function Documentation"
-.PP
-.SS "std::string CreateSum ()"
-.PP
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/ctables.h.3 b/docs/man/man3/ctables.h.3
index 1abb82f4a..b9fe786ed 100644
--- a/docs/man/man3/ctables.h.3
+++ b/docs/man/man3/ctables.h.3
@@ -1,4 +1,4 @@
-.TH "ctables.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ctables.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -13,7 +13,7 @@ ctables.h \-
\fC#include 'base.h'\fP
.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
diff --git a/docs/man/man3/dns.h.3 b/docs/man/man3/dns.h.3
index 1dae58d82..a3c90c1c8 100644
--- a/docs/man/man3/dns.h.3
+++ b/docs/man/man3/dns.h.3
@@ -1,4 +1,4 @@
-.TH "dns.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "dns.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -15,16 +15,16 @@ dns.h \-
\fC#include <string>\fP
.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
-.RI "class \fBDNS\fP"
+.RI "struct \fBdns_ip4list\fP"
.br
-.RI "\fIThe DNS class allows fast nonblocking resolution of hostnames and ip addresses. \fP"
.ti -1c
-.RI "struct \fBdns_ip4list\fP"
+.RI "class \fBDNS\fP"
.br
+.RI "\fIThe DNS class allows fast nonblocking resolution of hostnames and ip addresses. \fP"
.in -1c
.SH "Author"
.PP
diff --git a/docs/man/man3/dns_ip4list.3 b/docs/man/man3/dns_ip4list.3
index b94b73779..483f4c324 100644
--- a/docs/man/man3/dns_ip4list.3
+++ b/docs/man/man3/dns_ip4list.3
@@ -1,4 +1,4 @@
-.TH "dns_ip4list" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "dns_ip4list" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -18,6 +18,9 @@ dns_ip4list \-
.RI "\fBdns_ip4list\fP * \fBnext\fP"
.br
.in -1c
+.SH "Detailed Description"
+.PP
+Definition at line 26 of file dns.h.
.SH "Member Data Documentation"
.PP
.SS "in_addr \fBdns_ip4list::ip\fP"
diff --git a/docs/man/man3/hashcomp.h.3 b/docs/man/man3/hashcomp.h.3
index 06d234d52..2e77b22f0 100644
--- a/docs/man/man3/hashcomp.h.3
+++ b/docs/man/man3/hashcomp.h.3
@@ -1,4 +1,4 @@
-.TH "hashcomp.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "hashcomp.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -15,11 +15,33 @@ hashcomp.h \-
.in +1c
.ti -1c
+.RI "namespace \fBnspace\fP"
+.br
+.ti -1c
.RI "namespace \fBirc\fP"
.br
+.in -1c
+.SS "Classes"
+
+.in +1c
+.ti -1c
+.RI "struct \fBnspace::hash< in_addr >\fP"
+.br
.ti -1c
-.RI "namespace \fBnspace\fP"
+.RI "struct \fBnspace::hash< string >\fP"
+.br
+.ti -1c
+.RI "struct \fBirc::StrHashComp\fP"
+.br
+.RI "\fIThis class returns true if two strings match. \fP"
+.ti -1c
+.RI "struct \fBirc::InAddr_HashComp\fP"
+.br
+.RI "\fIThis class returns true if two in_addr structs match. \fP"
+.ti -1c
+.RI "struct \fBirc::irc_char_traits\fP"
.br
+.RI "\fIThe \fBirc_char_traits\fP class is used for RFC-style comparison of strings. \fP"
.in -1c
.SS "Defines"
@@ -28,6 +50,14 @@ hashcomp.h \-
.RI "#define \fBnspace\fP __gnu_cxx"
.br
.in -1c
+.SS "Typedefs"
+
+.in +1c
+.ti -1c
+.RI "typedef basic_string< char, irc_char_traits, allocator< char > > \fBirc::string\fP"
+.br
+.RI "\fIThis typedef declares \fBirc::string\fP based upon \fBirc_char_traits\fP. \fP"
+.in -1c
.SH "Define Documentation"
.PP
.SS "#define nspace __gnu_cxx"
diff --git a/docs/man/man3/irc.3 b/docs/man/man3/irc.3
index 56a91446e..5732c80f7 100644
--- a/docs/man/man3/irc.3
+++ b/docs/man/man3/irc.3
@@ -1,16 +1,21 @@
-.TH "irc" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "irc" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
irc \- The irc namespace contains a number of helper classes.
+.PP
.SH SYNOPSIS
.br
.PP
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
+.RI "struct \fBStrHashComp\fP"
+.br
+.RI "\fIThis class returns true if two strings match. \fP"
+.ti -1c
.RI "struct \fBInAddr_HashComp\fP"
.br
.RI "\fIThis class returns true if two in_addr structs match. \fP"
@@ -18,10 +23,6 @@ irc \- The irc namespace contains a number of helper classes.
.RI "struct \fBirc_char_traits\fP"
.br
.RI "\fIThe \fBirc_char_traits\fP class is used for RFC-style comparison of strings. \fP"
-.ti -1c
-.RI "struct \fBStrHashComp\fP"
-.br
-.RI "\fIThis class returns true if two strings match. \fP"
.in -1c
.SS "Typedefs"
@@ -38,7 +39,9 @@ The irc namespace contains a number of helper classes.
.PP
.SS "typedef basic_string<char, \fBirc_char_traits\fP, allocator<char> > \fBirc::string\fP"
.PP
-This typedef declares \fBirc::string\fP based upon \fBirc_char_traits\fP. Definition at line 129 of file hashcomp.h.
+This typedef declares \fBirc::string\fP based upon \fBirc_char_traits\fP.
+.PP
+Definition at line 129 of file hashcomp.h.
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/irc_InAddr_HashComp.3 b/docs/man/man3/irc_InAddr_HashComp.3
index 322fd7b74..ead2429e0 100644
--- a/docs/man/man3/irc_InAddr_HashComp.3
+++ b/docs/man/man3/irc_InAddr_HashComp.3
@@ -1,4 +1,4 @@
-.TH "irc::InAddr_HashComp" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "irc::InAddr_HashComp" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -14,7 +14,7 @@ irc::InAddr_HashComp \- This class returns true if two in_addr structs match.
.in +1c
.ti -1c
-.RI "bool \fBoperator()\fP (const in_addr &s1, const in_addr &s2) const"
+.RI "bool \fBoperator()\fP (const in_addr &s1, const in_addr &s2) const "
.br
.RI "\fIThe operator () does the actual comparison in hash_map. \fP"
.in -1c
@@ -30,6 +30,8 @@ Definition at line 92 of file hashcomp.h.
.SS "bool irc::InAddr_HashComp::operator() (const in_addr & s1, const in_addr & s2) const"
.PP
The operator () does the actual comparison in hash_map.
+.PP
+
.SH "Author"
.PP
diff --git a/docs/man/man3/irc_StrHashComp.3 b/docs/man/man3/irc_StrHashComp.3
index ecd16fef2..8b96cb26a 100644
--- a/docs/man/man3/irc_StrHashComp.3
+++ b/docs/man/man3/irc_StrHashComp.3
@@ -1,4 +1,4 @@
-.TH "irc::StrHashComp" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "irc::StrHashComp" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -14,7 +14,7 @@ irc::StrHashComp \- This class returns true if two strings match.
.in +1c
.ti -1c
-.RI "bool \fBoperator()\fP (const std::string &s1, const std::string &s2) const"
+.RI "bool \fBoperator()\fP (const \fBstd::string\fP &s1, const \fBstd::string\fP &s2) const "
.br
.RI "\fIThe operator () does the actual comparison in hash_map. \fP"
.in -1c
@@ -27,9 +27,11 @@ Case sensitivity is ignored, and the RFC 'character set' is adhered to
Definition at line 80 of file hashcomp.h.
.SH "Member Function Documentation"
.PP
-.SS "bool irc::StrHashComp::operator() (const std::string & s1, const std::string & s2) const"
+.SS "bool irc::StrHashComp::operator() (const \fBstd::string\fP & s1, const \fBstd::string\fP & s2) const"
.PP
The operator () does the actual comparison in hash_map.
+.PP
+
.SH "Author"
.PP
diff --git a/docs/man/man3/irc_irc_char_traits.3 b/docs/man/man3/irc_irc_char_traits.3
index f6b81a162..fbc43ebdb 100644
--- a/docs/man/man3/irc_irc_char_traits.3
+++ b/docs/man/man3/irc_irc_char_traits.3
@@ -1,4 +1,4 @@
-.TH "irc::irc_char_traits" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "irc::irc_char_traits" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -16,23 +16,23 @@ Inherits \fBchar_traits< char >\fP.
.in +1c
.ti -1c
-.RI "bool \fBeq\fP (char c1st, char c2nd)"
+.RI "static bool \fBeq\fP (char c1st, char c2nd)"
.br
.RI "\fICheck if two chars match. \fP"
.ti -1c
-.RI "bool \fBne\fP (char c1st, char c2nd)"
+.RI "static bool \fBne\fP (char c1st, char c2nd)"
.br
.RI "\fICheck if two chars do NOT match. \fP"
.ti -1c
-.RI "bool \fBlt\fP (char c1st, char c2nd)"
+.RI "static bool \fBlt\fP (char c1st, char c2nd)"
.br
.RI "\fICheck if one char is less than another. \fP"
.ti -1c
-.RI "int \fBcompare\fP (const char *str1, const char *str2, size_t n)"
+.RI "static int \fBcompare\fP (const char *str1, const char *str2, size_t n)"
.br
.RI "\fICompare two strings of size n. \fP"
.ti -1c
-.RI "const char * \fBfind\fP (const char *s1, int n, char c)"
+.RI "static const char * \fBfind\fP (const char *s1, int n, char c)"
.br
.RI "\fIFind a char within a string up to position n. \fP"
.in -1c
@@ -45,21 +45,27 @@ This class is used to implement \fBirc::string\fP, a case-insensitive, RFC- comp
Definition at line 104 of file hashcomp.h.
.SH "Member Function Documentation"
.PP
-.SS "int irc::irc_char_traits::compare (const char * str1, const char * str2, size_t n)\fC [static]\fP"
+.SS "static int irc::irc_char_traits::compare (const char * str1, const char * str2, size_t n)\fC [static]\fP"
.PP
Compare two strings of size n.
-.SS "bool irc::irc_char_traits::eq (char c1st, char c2nd)\fC [static]\fP"
+.PP
+.SS "static bool irc::irc_char_traits::eq (char c1st, char c2nd)\fC [static]\fP"
.PP
Check if two chars match.
-.SS "const char* irc::irc_char_traits::find (const char * s1, int n, char c)\fC [static]\fP"
+.PP
+.SS "static const char* irc::irc_char_traits::find (const char * s1, int n, char c)\fC [static]\fP"
.PP
Find a char within a string up to position n.
-.SS "bool irc::irc_char_traits::lt (char c1st, char c2nd)\fC [static]\fP"
+.PP
+.SS "static bool irc::irc_char_traits::lt (char c1st, char c2nd)\fC [static]\fP"
.PP
Check if one char is less than another.
-.SS "bool irc::irc_char_traits::ne (char c1st, char c2nd)\fC [static]\fP"
+.PP
+.SS "static bool irc::irc_char_traits::ne (char c1st, char c2nd)\fC [static]\fP"
.PP
Check if two chars do NOT match.
+.PP
+
.SH "Author"
.PP
diff --git a/docs/man/man3/message.h.3 b/docs/man/man3/message.h.3
index 5fbf3852b..5778a25f6 100644
--- a/docs/man/man3/message.h.3
+++ b/docs/man/man3/message.h.3
@@ -1,4 +1,4 @@
-.TH "message.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "message.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
diff --git a/docs/man/man3/mode.h.3 b/docs/man/man3/mode.h.3
index 6095483d1..8a27ddae3 100644
--- a/docs/man/man3/mode.h.3
+++ b/docs/man/man3/mode.h.3
@@ -1,4 +1,4 @@
-.TH "mode.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "mode.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -96,6 +96,7 @@ mode.h \-
.PP
.SS "void server_mode (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
+Referenced by Server::SendMode().
.SS "char* take_ban (\fBuserrec\fP * user, char * dest, \fBchanrec\fP * chan, int status)"
.PP
.SS "char* take_hops (\fBuserrec\fP * user, char * dest, \fBchanrec\fP * chan, int status)"
diff --git a/docs/man/man3/modules.cpp.3 b/docs/man/man3/modules.cpp.3
index 3232cdf1a..1a652c1d6 100644
--- a/docs/man/man3/modules.cpp.3
+++ b/docs/man/man3/modules.cpp.3
@@ -1,4 +1,4 @@
-.TH "modules.cpp" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "modules.cpp" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -32,12 +32,8 @@ modules.cpp \-
.br
\fC#include <deque>\fP
.br
-\fC#include 'connection.h'\fP
-.br
\fC#include 'users.h'\fP
.br
-\fC#include 'servers.h'\fP
-.br
\fC#include 'ctables.h'\fP
.br
\fC#include 'globals.h'\fP
@@ -62,8 +58,10 @@ modules.cpp \-
.br
\fC#include 'hashcomp.h'\fP
.br
+\fC#include 'socket.h'\fP
+.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
@@ -74,16 +72,16 @@ modules.cpp \-
.in +1c
.ti -1c
-.RI "typedef nspace::hash_map< std::string, \fBuserrec\fP *, nspace::hash< string >, \fBirc::StrHashComp\fP > \fBuser_hash\fP"
+.RI "typedef nspace::hash_map< \fBstd::string\fP, \fBuserrec\fP *, nspace::hash< \fBstring\fP >, \fBirc::StrHashComp\fP > \fBuser_hash\fP"
.br
.ti -1c
-.RI "typedef nspace::hash_map< std::string, \fBchanrec\fP *, nspace::hash< string >, \fBirc::StrHashComp\fP > \fBchan_hash\fP"
+.RI "typedef nspace::hash_map< \fBstd::string\fP, \fBchanrec\fP *, nspace::hash< \fBstring\fP >, \fBirc::StrHashComp\fP > \fBchan_hash\fP"
.br
.ti -1c
-.RI "typedef nspace::hash_map< in_addr, string *, nspace::hash< in_addr >, \fBirc::InAddr_HashComp\fP > \fBaddress_cache\fP"
+.RI "typedef nspace::hash_map< in_addr, \fBstring\fP *, nspace::hash< in_addr >, \fBirc::InAddr_HashComp\fP > \fBaddress_cache\fP"
.br
.ti -1c
-.RI "typedef nspace::hash_map< std::string, \fBWhoWasUser\fP *, nspace::hash< string >, \fBirc::StrHashComp\fP > \fBwhowas_hash\fP"
+.RI "typedef nspace::hash_map< \fBstd::string\fP, \fBWhoWasUser\fP *, nspace::hash< \fBstring\fP >, \fBirc::StrHashComp\fP > \fBwhowas_hash\fP"
.br
.ti -1c
.RI "typedef std::deque< \fBcommand_t\fP > \fBcommand_table\fP"
@@ -139,7 +137,10 @@ modules.cpp \-
.RI "std::vector< \fBircd_module\fP * > \fBfactory\fP"
.br
.ti -1c
-.RI "std::vector< std::string > \fBinclude_stack\fP"
+.RI "std::vector< \fBstd::string\fP > \fBinclude_stack\fP"
+.br
+.ti -1c
+.RI "std::vector< \fBInspSocket\fP * > \fBmodule_sockets\fP"
.br
.ti -1c
.RI "time_t \fBTIME\fP"
@@ -211,7 +212,7 @@ modules.cpp \-
.RI "time_t \fBnb_start\fP"
.br
.ti -1c
-.RI "std::vector< std::string > \fBmodule_names\fP"
+.RI "std::vector< \fBstd::string\fP > \fBmodule_names\fP"
.br
.ti -1c
.RI "int \fBboundPortCount\fP"
@@ -220,24 +221,12 @@ modules.cpp \-
.RI "int \fBportCount\fP"
.br
.ti -1c
-.RI "int \fBSERVERportCount\fP"
-.br
-.ti -1c
.RI "int \fBports\fP [MAXSOCKS]"
.br
.ti -1c
-.RI "int \fBdefaultRoute\fP"
-.br
-.ti -1c
-.RI "std::vector< long > \fBauth_cookies\fP"
-.br
-.ti -1c
.RI "std::stringstream \fBconfig_f\fP"
.br
.ti -1c
-.RI "\fBserverrec\fP * \fBme\fP [32]"
-.br
-.ti -1c
.RI "FILE * \fBlog_file\fP"
.br
.ti -1c
@@ -270,311 +259,265 @@ modules.cpp \-
.in -1c
.SH "Typedef Documentation"
.PP
-.SS "typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, \fBirc::InAddr_HashComp\fP> \fBaddress_cache\fP"
+.SS "typedef nspace::hash_map<in_addr,\fBstring\fP*, nspace::hash<in_addr>, \fBirc::InAddr_HashComp\fP> \fBaddress_cache\fP"
.PP
-Definition at line 122 of file modules.cpp.
-.SS "typedef nspace::hash_map<std::string, \fBchanrec\fP*, nspace::hash<string>, \fBirc::StrHashComp\fP> \fBchan_hash\fP"
+Definition at line 123 of file modules.cpp.
+.SS "typedef nspace::hash_map<\fBstd::string\fP, \fBchanrec\fP*, nspace::hash<\fBstring\fP>, \fBirc::StrHashComp\fP> \fBchan_hash\fP"
.PP
-Definition at line 121 of file modules.cpp.
+Definition at line 122 of file modules.cpp.
.SS "typedef std::deque<\fBcommand_t\fP> \fBcommand_table\fP"
.PP
-Definition at line 124 of file modules.cpp.
+Definition at line 125 of file modules.cpp.
.SS "typedef std::vector<\fBExtMode\fP> \fBExtModeList\fP"
.PP
-Definition at line 150 of file modules.cpp.
-.SS "typedef ExtModeList::iterator \fBExtModeListIter\fP"
-.PP
Definition at line 151 of file modules.cpp.
+.SS "typedef ExtModeList::iterator \fBExtModeListIter\fP"
.PP
-Referenced by ModeDefined(), ModeDefinedOff(), ModeDefinedOn(), ModeDefinedOper(), ModeIsListMode(), and ModeMakeList().
-.SS "typedef nspace::hash_map<std::string, \fBuserrec\fP*, nspace::hash<string>, \fBirc::StrHashComp\fP> \fBuser_hash\fP"
+Definition at line 152 of file modules.cpp.
+.SS "typedef nspace::hash_map<\fBstd::string\fP, \fBuserrec\fP*, nspace::hash<\fBstring\fP>, \fBirc::StrHashComp\fP> \fBuser_hash\fP"
.PP
-Definition at line 120 of file modules.cpp.
-.SS "typedef nspace::hash_map<std::string, \fBWhoWasUser\fP*, nspace::hash<string>, \fBirc::StrHashComp\fP> \fBwhowas_hash\fP"
+Definition at line 121 of file modules.cpp.
+.SS "typedef nspace::hash_map<\fBstd::string\fP, \fBWhoWasUser\fP*, nspace::hash<\fBstring\fP>, \fBirc::StrHashComp\fP> \fBwhowas_hash\fP"
.PP
-Definition at line 123 of file modules.cpp.
+Definition at line 124 of file modules.cpp.
.SH "Function Documentation"
.PP
.SS "bool DoAddExtendedMode (char modechar, int type, bool requires_oper, int params_on, int params_off)"
.PP
-Definition at line 220 of file modules.cpp.
+Definition at line 221 of file modules.cpp.
.PP
References EMode, and ModeDefined().
.PP
Referenced by Server::AddExtendedListMode(), and Server::AddExtendedMode().
.PP
.nf
-221 {
-222 if (ModeDefined(modechar,type)) {
-223 return false;
-224 }
-225 EMode.push_back(ExtMode(modechar,type,requires_oper,params_on,params_off));
-226 return true;
-227 }
+222 {
+223 if (ModeDefined(modechar,type)) {
+224 return false;
+225 }
+226 EMode.push_back(ExtMode(modechar,type,requires_oper,params_on,params_off));
+227 return true;
+228 }
.fi
+.PP
.SS "std::vector<\fBircd_module\fP*> factory (255)"
.PP
.SS "bool ModeDefined (char modechar, int type)"
.PP
-Definition at line 157 of file modules.cpp.
+Definition at line 158 of file modules.cpp.
.PP
-References EMode, and ExtModeListIter.
+References EMode.
.PP
Referenced by DoAddExtendedMode().
.PP
.nf
-158 {
-159 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
-160 {
-161 if ((i->modechar == modechar) && (i->type == type))
-162 {
-163 return true;
-164 }
-165 }
-166 return false;
-167 }
+159 {
+160 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
+161 {
+162 if ((i->modechar == modechar) && (i->type == type))
+163 {
+164 return true;
+165 }
+166 }
+167 return false;
+168 }
.fi
+.PP
.SS "int ModeDefinedOff (char modechar, int type)"
.PP
-Definition at line 207 of file modules.cpp.
+Definition at line 208 of file modules.cpp.
.PP
-References EMode, and ExtModeListIter.
+References EMode.
.PP
.nf
-208 {
-209 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
-210 {
-211 if ((i->modechar == modechar) && (i->type == type))
-212 {
-213 return i->params_when_off;
-214 }
-215 }
-216 return 0;
-217 }
+209 {
+210 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
+211 {
+212 if ((i->modechar == modechar) && (i->type == type))
+213 {
+214 return i->params_when_off;
+215 }
+216 }
+217 return 0;
+218 }
.fi
+.PP
.SS "int ModeDefinedOn (char modechar, int type)"
.PP
-Definition at line 194 of file modules.cpp.
+Definition at line 195 of file modules.cpp.
.PP
-References EMode, and ExtModeListIter.
+References EMode.
.PP
.nf
-195 {
-196 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
-197 {
-198 if ((i->modechar == modechar) && (i->type == type))
-199 {
-200 return i->params_when_on;
-201 }
-202 }
-203 return 0;
-204 }
+196 {
+197 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
+198 {
+199 if ((i->modechar == modechar) && (i->type == type))
+200 {
+201 return i->params_when_on;
+202 }
+203 }
+204 return 0;
+205 }
.fi
+.PP
.SS "bool ModeDefinedOper (char modechar, int type)"
.PP
-Definition at line 181 of file modules.cpp.
+Definition at line 182 of file modules.cpp.
.PP
-References EMode, and ExtModeListIter.
+References EMode.
.PP
.nf
-182 {
-183 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
-184 {
-185 if ((i->modechar == modechar) && (i->type == type) && (i->needsoper == true))
-186 {
-187 return true;
-188 }
-189 }
-190 return false;
-191 }
+183 {
+184 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
+185 {
+186 if ((i->modechar == modechar) && (i->type == type) && (i->needsoper == true))
+187 {
+188 return true;
+189 }
+190 }
+191 return false;
+192 }
.fi
+.PP
.SS "bool ModeIsListMode (char modechar, int type)"
.PP
-Definition at line 169 of file modules.cpp.
+Definition at line 170 of file modules.cpp.
.PP
-References EMode, and ExtModeListIter.
+References EMode.
.PP
.nf
-170 {
-171 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
-172 {
-173 if ((i->modechar == modechar) && (i->type == type) && (i->list == true))
-174 {
-175 return true;
-176 }
-177 }
-178 return false;
-179 }
+171 {
+172 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
+173 {
+174 if ((i->modechar == modechar) && (i->type == type) && (i->list == true))
+175 {
+176 return true;
+177 }
+178 }
+179 return false;
+180 }
.fi
+.PP
.SS "void ModeMakeList (char modechar)"
.PP
-Definition at line 230 of file modules.cpp.
+Definition at line 231 of file modules.cpp.
.PP
-References EMode, ExtModeListIter, and MT_CHANNEL.
+References EMode, and MT_CHANNEL.
.PP
Referenced by Server::AddExtendedListMode().
.PP
.nf
-231 {
-232 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
-233 {
-234 if ((i->modechar == modechar) && (i->type == MT_CHANNEL))
-235 {
-236 i->list = true;
-237 return;
-238 }
-239 }
-240 return;
-241 }
+232 {
+233 for (ExtModeListIter i = EMode.begin(); i < EMode.end(); i++)
+234 {
+235 if ((i->modechar == modechar) && (i->type == MT_CHANNEL))
+236 {
+237 i->list = true;
+238 return;
+239 }
+240 }
+241 return;
+242 }
.fi
+.PP
.SS "std::vector<\fBModule\fP*> modules (255)"
.PP
.SH "Variable Documentation"
.PP
.SS "char \fBAdminEmail\fP[MAXBUF]"
.PP
-Definition at line 84 of file modules.cpp.
.SS "char \fBAdminName\fP[MAXBUF]"
.PP
-Definition at line 83 of file modules.cpp.
.SS "char \fBAdminNick\fP[MAXBUF]"
.PP
-Definition at line 85 of file modules.cpp.
-.SS "std::vector<long> \fBauth_cookies\fP"
-.PP
-Definition at line 111 of file modules.cpp.
.SS "int \fBboundPortCount\fP"
.PP
-Definition at line 105 of file modules.cpp.
.SS "\fBchan_hash\fP \fBchanlist\fP"
.PP
-Definition at line 128 of file modules.cpp.
.SS "\fBuser_hash\fP \fBclientlist\fP"
.PP
-Definition at line 127 of file modules.cpp.
.SS "\fBcommand_table\fP \fBcmdlist\fP"
.PP
-Definition at line 130 of file modules.cpp.
.SS "std::stringstream \fBconfig_f\fP"
.PP
-Definition at line 112 of file modules.cpp.
.SS "int \fBdebugging\fP"
.PP
-Definition at line 94 of file modules.cpp.
-.SS "int \fBdefaultRoute\fP"
-.PP
-Definition at line 109 of file modules.cpp.
.SS "int \fBDieDelay\fP"
.PP
-Definition at line 97 of file modules.cpp.
.SS "char \fBdiepass\fP[MAXBUF]"
.PP
-Definition at line 86 of file modules.cpp.
.SS "char \fBDieValue\fP[MAXBUF]"
.PP
-Definition at line 92 of file modules.cpp.
.SS "\fBExtModeList\fP \fBEMode\fP"
.PP
-Definition at line 154 of file modules.cpp.
+Definition at line 155 of file modules.cpp.
.PP
Referenced by DoAddExtendedMode(), ModeDefined(), ModeDefinedOff(), ModeDefinedOn(), ModeDefinedOper(), ModeIsListMode(), and ModeMakeList().
.SS "std::vector<\fBircd_module\fP*> factory"
.PP
-Definition at line 73 of file modules.cpp.
.SS "\fBuserrec\fP* \fBfd_ref_table\fP[65536]"
.PP
-Definition at line 118 of file modules.cpp.
-.PP
-Referenced by Server::FindDescriptor(), and Server::PseudoToUser().
-.SS "std::vector<std::string> \fBinclude_stack\fP"
-.PP
-Definition at line 75 of file modules.cpp.
+.SS "std::vector<\fBstd::string\fP> \fBinclude_stack\fP"
.PP
Referenced by ConfigReader::ConfigReader().
.SS "\fBaddress_cache\fP \fBIP\fP"
.PP
-Definition at line 133 of file modules.cpp.
.SS "char \fBlist\fP[MAXBUF]"
.PP
-Definition at line 90 of file modules.cpp.
.SS "FILE* \fBlog_file\fP"
.PP
-Definition at line 116 of file modules.cpp.
.SS "int \fBLogLevel\fP"
.PP
-Definition at line 79 of file modules.cpp.
.SS "int \fBMaxWhoResults\fP"
.PP
-Definition at line 100 of file modules.cpp.
-.SS "\fBserverrec\fP* \fBme\fP[32]"
-.PP
-Definition at line 114 of file modules.cpp.
+Definition at line 81 of file channels.cpp.
.SS "int \fBMODCOUNT\fP = -1"
.PP
-Definition at line 1019 of file modules.cpp.
-.SS "std::vector<std::string> \fBmodule_names\fP"
+Definition at line 994 of file modules.cpp.
+.SS "std::vector<\fBstd::string\fP> \fBmodule_names\fP"
.PP
-Definition at line 103 of file modules.cpp.
+.SS "std::vector<\fBInspSocket\fP*> \fBmodule_sockets\fP"
+.PP
+Referenced by Server::AddSocket(), and Server::DelSocket().
.SS "std::vector<\fBModule\fP*> modules"
.PP
-Definition at line 72 of file modules.cpp.
.SS "\fBfile_cache\fP \fBMOTD\fP"
.PP
-Definition at line 131 of file modules.cpp.
.SS "char \fBmotd\fP[MAXBUF]"
.PP
-Definition at line 88 of file modules.cpp.
.SS "time_t \fBnb_start\fP"
.PP
-Definition at line 101 of file modules.cpp.
.SS "int \fBNetBufferSize\fP"
.PP
-Definition at line 99 of file modules.cpp.
.SS "char \fBNetwork\fP[MAXBUF]"
.PP
-Definition at line 81 of file modules.cpp.
.SS "int \fBportCount\fP"
.PP
-Definition at line 106 of file modules.cpp.
.SS "int \fBports\fP[MAXSOCKS]"
.PP
-Definition at line 108 of file modules.cpp.
.SS "char \fBPrefixQuit\fP[MAXBUF]"
.PP
-Definition at line 91 of file modules.cpp.
.SS "char \fBrestartpass\fP[MAXBUF]"
.PP
-Definition at line 87 of file modules.cpp.
.SS "\fBfile_cache\fP \fBRULES\fP"
.PP
-Definition at line 132 of file modules.cpp.
.SS "char \fBrules\fP[MAXBUF]"
.PP
-Definition at line 89 of file modules.cpp.
.SS "char \fBServerDesc\fP[MAXBUF]"
.PP
-Definition at line 82 of file modules.cpp.
.SS "char \fBServerName\fP[MAXBUF]"
.PP
-Definition at line 80 of file modules.cpp.
-.SS "int \fBSERVERportCount\fP"
-.PP
-Definition at line 107 of file modules.cpp.
.SS "time_t \fBstartup_time\fP"
.PP
-Definition at line 98 of file modules.cpp.
.SS "time_t \fBTIME\fP"
.PP
-Definition at line 77 of file modules.cpp.
.SS "\fBwhowas_hash\fP \fBwhowas\fP"
.PP
-Definition at line 129 of file modules.cpp.
.SS "int \fBWHOWAS_MAX\fP"
.PP
-Definition at line 96 of file modules.cpp.
.SS "int \fBWHOWAS_STALE\fP"
.PP
-Definition at line 95 of file modules.cpp.
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/modules.h.3 b/docs/man/man3/modules.h.3
index 3d5c084f4..36b65e742 100644
--- a/docs/man/man3/modules.h.3
+++ b/docs/man/man3/modules.h.3
@@ -1,4 +1,4 @@
-.TH "modules.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "modules.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -12,6 +12,8 @@ modules.h \-
.br
\fC#include 'ctables.h'\fP
.br
+\fC#include 'socket.h'\fP
+.br
\fC#include <string>\fP
.br
\fC#include <deque>\fP
@@ -19,49 +21,49 @@ modules.h \-
\fC#include <sstream>\fP
.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
+.RI "class \fBVersion\fP"
+.br
+.RI "\fIHolds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module. \fP"
+.ti -1c
.RI "class \fBAdmin\fP"
.br
.RI "\fIHolds /ADMIN data This class contains the admin details of the local server. \fP"
.ti -1c
-.RI "class \fBConfigReader\fP"
+.RI "class \fBModuleMessage\fP"
.br
-.RI "\fIAllows 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. \fP"
+.RI "\fIThe ModuleMessage class is the base class of \fBRequest\fP and \fBEvent\fP This class is used to represent a basic data structure which is passed between modules for safe inter-module communications. \fP"
.ti -1c
-.RI "class \fBEvent\fP"
+.RI "class \fBRequest\fP"
.br
-.RI "\fIThe Event class is a unicast message directed at all modules. \fP"
+.RI "\fIThe Request class is a unicast message directed at a given module. \fP"
.ti -1c
-.RI "class \fBFileReader\fP"
+.RI "class \fBEvent\fP"
.br
-.RI "\fICaches a text file into memory and can be used to retrieve lines from it. \fP"
+.RI "\fIThe Event class is a unicast message directed at all modules. \fP"
.ti -1c
.RI "class \fBModule\fP"
.br
.RI "\fIBase class for all InspIRCd modules This class is the base class for InspIRCd modules. \fP"
.ti -1c
-.RI "class \fBModuleFactory\fP"
-.br
-.RI "\fIInstantiates classes inherited from \fBModule\fP This class creates a class inherited from type \fBModule\fP, using new. \fP"
-.ti -1c
-.RI "class \fBModuleMessage\fP"
+.RI "class \fBServer\fP"
.br
-.RI "\fIThe ModuleMessage class is the base class of \fBRequest\fP and \fBEvent\fP This class is used to represent a basic data structure which is passed between modules for safe inter-module communications. \fP"
+.RI "\fIAllows 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. \fP"
.ti -1c
-.RI "class \fBRequest\fP"
+.RI "class \fBConfigReader\fP"
.br
-.RI "\fIThe Request class is a unicast message directed at a given module. \fP"
+.RI "\fIAllows 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. \fP"
.ti -1c
-.RI "class \fBServer\fP"
+.RI "class \fBFileReader\fP"
.br
-.RI "\fIAllows 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. \fP"
+.RI "\fICaches a text file into memory and can be used to retrieve lines from it. \fP"
.ti -1c
-.RI "class \fBVersion\fP"
+.RI "class \fBModuleFactory\fP"
.br
-.RI "\fIHolds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module. \fP"
+.RI "\fIInstantiates classes inherited from \fBModule\fP This class creates a class inherited from type \fBModule\fP, using new. \fP"
.in -1c
.SS "Defines"
@@ -164,7 +166,7 @@ modules.h \-
.in +1c
.ti -1c
-.RI "typedef std::deque< std::string > \fBfile_cache\fP"
+.RI "typedef std::deque< \fBstd::string\fP > \fBfile_cache\fP"
.br
.RI "\fILow level definition of a \fBFileReader\fP classes file cache area. \fP"
.ti -1c
@@ -230,45 +232,47 @@ Referenced by Module::OnAccessCheck().
Definition at line 38 of file modules.h.
.SS "#define CONF_FILE_NOT_FOUND 0x000200"
.PP
-Definition at line 1141 of file modules.h.
+Definition at line 1112 of file modules.h.
.PP
Referenced by ConfigReader::ConfigReader().
.SS "#define CONF_NOT_A_NUMBER 0x000010"
.PP
-Definition at line 1138 of file modules.h.
+Definition at line 1109 of file modules.h.
.PP
Referenced by ConfigReader::ReadInteger().
.SS "#define CONF_NOT_UNSIGNED 0x000080"
.PP
-Definition at line 1139 of file modules.h.
+Definition at line 1110 of file modules.h.
.PP
Referenced by ConfigReader::ReadInteger().
.SS "#define CONF_VALUE_NOT_FOUND 0x000100"
.PP
-Definition at line 1140 of file modules.h.
+Definition at line 1111 of file modules.h.
.PP
Referenced by ConfigReader::ReadFlag(), ConfigReader::ReadInteger(), and ConfigReader::ReadValue().
.SS "#define DEBUG 10"
.PP
Definition at line 23 of file modules.h.
.PP
-Referenced by Server::AddExtendedMode(), serverrec::AddIncoming(), chanrec::AddUser(), chanrec::DelUser(), userrec::HasPermission(), chanrec::IsCustomModeSet(), serverrec::RecvPacket(), userrec::RemoveInvite(), serverrec::SendPacket(), chanrec::SetCustomMode(), chanrec::SetCustomModeParam(), userrec::SetWriteError(), and Server::UserToPseudo().
+Referenced by Server::AddExtendedMode(), chanrec::AddUser(), chanrec::DelUser(), userrec::HasPermission(), InspSocket::InspSocket(), chanrec::IsCustomModeSet(), InspSocket::Read(), userrec::ReadData(), userrec::RemoveInvite(), chanrec::SetCustomMode(), chanrec::SetCustomModeParam(), InspSocket::SetState(), userrec::SetWriteError(), and Server::UserToPseudo().
.SS "#define DEFAULT 30"
.PP
Definition at line 25 of file modules.h.
.SS "#define FD_MAGIC_NUMBER -42"
.PP
-Definition at line 99 of file modules.h.
+Definition at line 100 of file modules.h.
.PP
Referenced by Server::PseudoToUser(), and Server::UserToPseudo().
.SS "#define FOREACH_MOD for (int _i = 0; _i <= \fBMODCOUNT\fP; _i++) modules[_i]->"
.PP
-Definition at line 79 of file modules.h.
+Definition at line 80 of file modules.h.
.PP
Referenced by Event::Send().
.SS "#define FOREACH_RESULT(x)"
.PP
-\fBValue:\fP.nf
+\fBValue:\fP
+.PP
+.nf
{ MOD_RESULT = 0; \
for (int _i = 0; _i <= MODCOUNT; _i++) { \
int res = modules[_i]->x ; \
@@ -280,7 +284,7 @@ Referenced by Event::Send().
}
.fi
.PP
-Definition at line 87 of file modules.h.
+Definition at line 88 of file modules.h.
.SS "#define MT_CHANNEL 1"
.PP
Definition at line 31 of file modules.h.
@@ -323,22 +327,20 @@ Referenced by Module::GetVersion().
.PP
.SS "typedef std::deque<\fBuserrec\fP*> \fBchanuserlist\fP"
.PP
-Holds a list of users in a channel. Definition at line 72 of file modules.h.
+Holds a list of users in a channel.
.PP
-Referenced by Server::GetUsers().
-.SS "typedef std::deque<std::string> \fBfile_cache\fP"
+Definition at line 73 of file modules.h.
+.SS "typedef std::deque<\fBstd::string\fP> \fBfile_cache\fP"
.PP
-Low level definition of a \fBFileReader\fP classes file cache area. Definition at line 67 of file modules.h.
+Low level definition of a \fBFileReader\fP classes file cache area.
.PP
-Referenced by FileReader::FileReader(), and FileReader::LoadFile().
+Definition at line 68 of file modules.h.
.SS "typedef DLLFactory<\fBModuleFactory\fP> \fBircd_module\fP"
.PP
-Definition at line 1307 of file modules.h.
+Definition at line 1278 of file modules.h.
.SS "typedef \fBfile_cache\fP \fBstring_list\fP"
.PP
-Definition at line 68 of file modules.h.
-.PP
-Referenced by Module::OnChannelSync(), and Module::OnUserSync().
+Definition at line 69 of file modules.h.
.SH "Function Documentation"
.PP
.SS "void createcommand (char * cmd, handlerfunc f, char flags, int minparams, char * source)"
@@ -346,7 +348,6 @@ Referenced by Module::OnChannelSync(), and Module::OnUserSync().
Referenced by Server::AddCommand().
.SS "void server_mode (char ** parameters, int pcnt, \fBuserrec\fP * user)"
.PP
-Referenced by Server::SendMode().
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/nspace.3 b/docs/man/man3/nspace.3
index a70d80f53..44ac7474d 100644
--- a/docs/man/man3/nspace.3
+++ b/docs/man/man3/nspace.3
@@ -1,4 +1,4 @@
-.TH "nspace" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "nspace" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -6,14 +6,14 @@ nspace \-
.SH SYNOPSIS
.br
.PP
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
-.RI "struct \fBnspace.hash< in_addr >\fP"
+.RI "struct \fBhash< in_addr >\fP"
.br
.ti -1c
-.RI "struct \fBnspace.hash< string >\fP"
+.RI "struct \fBhash< string >\fP"
.br
.in -1c
.SH "Author"
diff --git a/docs/man/man3/std.3 b/docs/man/man3/std.3
index d7536d797..e566786d7 100644
--- a/docs/man/man3/std.3
+++ b/docs/man/man3/std.3
@@ -1,4 +1,4 @@
-.TH "std" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "std" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
diff --git a/docs/man/man3/std_char_traits.3 b/docs/man/man3/std_char_traits.3
index 5d2b39799..dcf736b14 100644
--- a/docs/man/man3/std_char_traits.3
+++ b/docs/man/man3/std_char_traits.3
@@ -1,4 +1,4 @@
-.TH "std::char_traits" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "std::char_traits" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
diff --git a/docs/man/man3/ucrec.3 b/docs/man/man3/ucrec.3
index be2545aaa..464b9ab48 100644
--- a/docs/man/man3/ucrec.3
+++ b/docs/man/man3/ucrec.3
@@ -1,4 +1,4 @@
-.TH "ucrec" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "ucrec" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -28,7 +28,7 @@ Inherits \fBclassbase\fP.
.ti -1c
.RI "char \fBuc_modes\fP"
.br
-.RI "\fIContains a bitmask of the UCMODE_OP ... \fP"
+.RI "\fIContains a bitmask of the UCMODE_OP . \fP"
.ti -1c
.RI "\fBchanrec\fP * \fBchannel\fP"
.br
@@ -38,7 +38,7 @@ Inherits \fBclassbase\fP.
.PP
Holds a user's modes on a channel This class associates a users privilages with a channel by creating a pointer link between a userrec and chanrec class.
-The uc_modes member holds a bitmask of which privilages the user has on the channel, such as op, voice, etc.
+The uc_modes member holds a bitmask of which privilages the user has on the channel, such as op, voice, etc.
.PP
Definition at line 241 of file channels.h.
.SH "Constructor & Destructor Documentation"
@@ -50,23 +50,33 @@ Definition at line 254 of file channels.h.
.nf
254 { /* stub */ }
.fi
-.SS "virtual ucrec::~\fBucrec\fP ()\fC [inline, virtual]\fP"
+.PP
+.SS "virtual ucrec::~ucrec ()\fC [inline, virtual]\fP"
.PP
Definition at line 255 of file channels.h.
.PP
.nf
255 { /* stub */ }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "\fBchanrec\fP* \fBucrec::channel\fP"
.PP
-Points to the channel record where the given modes apply. If the record is not in use, this value will be NULL.Definition at line 252 of file channels.h.
+Points to the channel record where the given modes apply.
+.PP
+If the record is not in use, this value will be NULL.
+.PP
+Definition at line 252 of file channels.h.
.PP
Referenced by Server::PseudoToUser(), and userrec::userrec().
.SS "char \fBucrec::uc_modes\fP"
.PP
-Contains a bitmask of the UCMODE_OP ... UCMODE_FOUNDER values. If this value is zero, the user has no privilages upon the channel.Definition at line 247 of file channels.h.
+Contains a bitmask of the UCMODE_OP .
+.PP
+.. UCMODE_FOUNDER values. If this value is zero, the user has no privilages upon the channel.
+.PP
+Definition at line 247 of file channels.h.
.PP
Referenced by userrec::userrec().
diff --git a/docs/man/man3/userrec.3 b/docs/man/man3/userrec.3
index e5d14b57f..dd6cda28e 100644
--- a/docs/man/man3/userrec.3
+++ b/docs/man/man3/userrec.3
@@ -1,4 +1,4 @@
-.TH "userrec" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "userrec" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -50,7 +50,7 @@ Inherits \fBconnection\fP.
.br
.RI "\fICalls read() to read some data for this user using their fd. \fP"
.ti -1c
-.RI "bool \fBAddBuffer\fP (std::string a)"
+.RI "bool \fBAddBuffer\fP (\fBstd::string\fP a)"
.br
.RI "\fIThis method adds data to the buffer of the user. \fP"
.ti -1c
@@ -62,19 +62,19 @@ Inherits \fBconnection\fP.
.br
.RI "\fIThis function clears the entire buffer by setting it to an empty string. \fP"
.ti -1c
-.RI "std::string \fBGetBuffer\fP ()"
+.RI "\fBstd::string\fP \fBGetBuffer\fP ()"
.br
.RI "\fIThis method returns the first available string at the tail end of the buffer and advances the tail end of the buffer past the string. \fP"
.ti -1c
-.RI "void \fBSetWriteError\fP (std::string error)"
+.RI "void \fBSetWriteError\fP (\fBstd::string\fP error)"
.br
.RI "\fISets the write error for a connection. \fP"
.ti -1c
-.RI "std::string \fBGetWriteError\fP ()"
+.RI "\fBstd::string\fP \fBGetWriteError\fP ()"
.br
.RI "\fIReturns the write error which last occured on this connection or an empty string if none occured. \fP"
.ti -1c
-.RI "void \fBAddWriteBuf\fP (std::string data)"
+.RI "void \fBAddWriteBuf\fP (\fBstd::string\fP data)"
.br
.RI "\fIAdds to the user's write buffer. \fP"
.ti -1c
@@ -149,11 +149,11 @@ Inherits \fBconnection\fP.
.br
.RI "\fIPassword specified by the user when they registered. \fP"
.ti -1c
-.RI "std::string \fBrecvq\fP"
+.RI "\fBstd::string\fP \fBrecvq\fP"
.br
.RI "\fIUser's receive queue. \fP"
.ti -1c
-.RI "std::string \fBsendq\fP"
+.RI "\fBstd::string\fP \fBsendq\fP"
.br
.RI "\fIUser's send queue. \fP"
.ti -1c
@@ -167,7 +167,7 @@ Inherits \fBconnection\fP.
.RI "long \fBthreshold\fP"
.br
.ti -1c
-.RI "std::string \fBWriteError\fP"
+.RI "\fBstd::string\fP \fBWriteError\fP"
.br
.ti -1c
.RI "long \fBsendqmax\fP"
@@ -190,401 +190,475 @@ Inherits \fBconnection\fP.
.PP
Holds all information about a user This class stores all information about a user connected to the irc server.
-Everything about a connection is stored here primarily, from the user's socket ID (file descriptor) through to the user's nickname and hostname. Use the Find method of the server class to locate a specific user by nickname.
+Everything about a connection is stored here primarily, from the user's socket ID (file descriptor) through to the user's nickname and hostname. Use the Find method of the server class to locate a specific user by nickname.
.PP
Definition at line 108 of file users.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "userrec::userrec ()"
.PP
-Definition at line 32 of file users.cpp.
+Definition at line 33 of file users.cpp.
.PP
References awaymsg, connection::bytes_in, connection::bytes_out, ucrec::channel, chans, connection::cmds_in, connection::cmds_out, dhost, dns_done, connection::fd, flood, fullname, connection::haspassed, connection::host, ident, connection::idle_lastmsg, invites, connection::ip, connection::lastping, lines_in, modes, nick, connection::nping, oper, connection::port, recvq, connection::registered, reset_due, sendq, server, ServerName, connection::signon, TIME, timeout, and ucrec::uc_modes.
.PP
.nf
-33 {
-34 // the PROPER way to do it, AVOID bzero at *ALL* costs
-35 strcpy(nick,'');
-36 strcpy(ip,'127.0.0.1');
-37 timeout = 0;
-38 strcpy(ident,'');
-39 strcpy(host,'');
-40 strcpy(dhost,'');
-41 strcpy(fullname,'');
-42 strcpy(modes,'');
-43 server = (char*)FindServerNamePtr(ServerName);
-44 strcpy(awaymsg,'');
-45 strcpy(oper,'');
-46 reset_due = TIME;
-47 lines_in = 0;
-48 fd = lastping = signon = idle_lastmsg = nping = registered = 0;
-49 flood = port = bytes_in = bytes_out = cmds_in = cmds_out = 0;
-50 haspassed = false;
-51 dns_done = false;
-52 recvq = '';
-53 sendq = '';
-54 for (int i = 0; i < MAXCHANS; i++)
-55 {
-56 this->chans[i].channel = NULL;
-57 this->chans[i].uc_modes = 0;
-58 }
-59 invites.clear();
-60 }
+34 {
+35 // the PROPER way to do it, AVOID bzero at *ALL* costs
+36 strcpy(nick,'');
+37 strcpy(ip,'127.0.0.1');
+38 timeout = 0;
+39 strcpy(ident,'');
+40 strcpy(host,'');
+41 strcpy(dhost,'');
+42 strcpy(fullname,'');
+43 strcpy(modes,'');
+44 server = (char*)FindServerNamePtr(ServerName);
+45 strcpy(awaymsg,'');
+46 strcpy(oper,'');
+47 reset_due = TIME;
+48 lines_in = 0;
+49 fd = lastping = signon = idle_lastmsg = nping = registered = 0;
+50 flood = port = bytes_in = bytes_out = cmds_in = cmds_out = 0;
+51 haspassed = false;
+52 dns_done = false;
+53 recvq = '';
+54 sendq = '';
+55 for (int i = 0; i < MAXCHANS; i++)
+56 {
+57 this->chans[i].channel = NULL;
+58 this->chans[i].uc_modes = 0;
+59 }
+60 invites.clear();
+61 }
.fi
-.SS "virtual userrec::~\fBuserrec\fP ()\fC [inline, virtual]\fP"
+.PP
+.SS "virtual userrec::~userrec ()\fC [inline, virtual]\fP"
.PP
Definition at line 221 of file users.h.
.PP
.nf
221 { }
.fi
+.PP
.SH "Member Function Documentation"
.PP
-.SS "bool userrec::AddBuffer (std::string a)"
+.SS "bool userrec::AddBuffer (\fBstd::string\fP a)"
+.PP
+This method adds data to the buffer of the user.
.PP
-This method adds data to the buffer of the user. The buffer can grow to any size within limits of the available memory, managed by the size of a std::string, however if any individual line in the buffer grows over 600 bytes in length (which is 88 chars over the RFC-specified limit per line) then the method will return false and the text will not be inserted.Definition at line 192 of file users.cpp.
+The buffer can grow to any size within limits of the available memory, managed by the size of a \fBstd::string\fP, however if any individual line in the buffer grows over 600 bytes in length (which is 88 chars over the RFC-specified limit per line) then the method will return false and the text will not be inserted.
+.PP
+Definition at line 194 of file users.cpp.
.PP
References recvq, recvqmax, and SetWriteError().
.PP
.nf
-193 {
-194 std::string b = '';
-195 for (int i = 0; i < a.length(); i++)
-196 if ((a[i] != '\r') && (a[i] != '\0') && (a[i] != 7))
-197 b = b + a[i];
-198 std::stringstream stream(recvq);
-199 stream << b;
-200 recvq = stream.str();
-201 int i = 0;
-202 // count the size of the first line in the buffer.
-203 while (i < recvq.length())
-204 {
-205 if (recvq[i++] == '\n')
-206 break;
-207 }
-208 if (recvq.length() > this->recvqmax)
-209 {
-210 this->SetWriteError('RecvQ exceeded');
-211 WriteOpers('*** User %s RecvQ of %d exceeds connect class maximum of %d',this->nick,recvq.length(),this->recvqmax);
-212 }
-213 // return false if we've had more than 600 characters WITHOUT
-214 // a carriage return (this is BAD, drop the socket)
-215 return (i < 600);
-216 }
+195 {
+196 std::string b = '';
+197 for (unsigned int i = 0; i < a.length(); i++)
+198 if ((a[i] != '\r') && (a[i] != '\0') && (a[i] != 7))
+199 b = b + a[i];
+200 std::stringstream stream(recvq);
+201 stream << b;
+202 recvq = stream.str();
+203 unsigned int i = 0;
+204 // count the size of the first line in the buffer.
+205 while (i < recvq.length())
+206 {
+207 if (recvq[i++] == '\n')
+208 break;
+209 }
+210 if (recvq.length() > (unsigned)this->recvqmax)
+211 {
+212 this->SetWriteError('RecvQ exceeded');
+213 WriteOpers('*** User %s RecvQ of %d exceeds connect class maximum of %d',this->nick,recvq.length(),this->recvqmax);
+214 }
+215 // return false if we've had more than 600 characters WITHOUT
+216 // a carriage return (this is BAD, drop the socket)
+217 return (i < 600);
+218 }
.fi
-.SS "void userrec::AddWriteBuf (std::string data)"
.PP
-Adds to the user's write buffer. You may add any amount of text up to this users sendq value, if you exceed the sendq value, \fBSetWriteError()\fP will be called to set the users error string to 'SendQ exceeded', and further buffer adds will be dropped.Definition at line 248 of file users.cpp.
+.SS "void userrec::AddWriteBuf (\fBstd::string\fP data)"
+.PP
+Adds to the user's write buffer.
.PP
-References GetWriteError(), sendq, sendqmax, and SetWriteError().
+You may add any amount of text up to this users sendq value, if you exceed the sendq value, \fBSetWriteError()\fP will be called to set the users error string to 'SendQ exceeded', and further buffer adds will be dropped.
+.PP
+Definition at line 250 of file users.cpp.
+.PP
+References sendq, sendqmax, and SetWriteError().
.PP
.nf
-249 {
-250 if (this->GetWriteError() != '')
-251 return;
-252 if (sendq.length() + data.length() > this->sendqmax)
-253 {
-254 WriteOpers('*** User %s SendQ of %d exceeds connect class maximum of %d',this->nick,sendq.length() + data.length(),this->sendqmax);
-255 this->SetWriteError('SendQ exceeded');
-256 return;
-257 }
-258 std::stringstream stream;
-259 stream << sendq << data;
-260 sendq = stream.str();
-261 }
+251 {
+252 if (this->GetWriteError() != '')
+253 return;
+254 if (sendq.length() + data.length() > (unsigned)this->sendqmax)
+255 {
+256 WriteOpers('*** User %s SendQ of %d exceeds connect class maximum of %d',this->nick,sendq.length() + data.length(),this->sendqmax);
+257 this->SetWriteError('SendQ exceeded');
+258 return;
+259 }
+260 std::stringstream stream;
+261 stream << sendq << data;
+262 sendq = stream.str();
+263 }
.fi
+.PP
.SS "bool userrec::BufferIsReady ()"
.PP
-This method returns true if the buffer contains at least one carriage return character (e.g. one complete line may be read)Definition at line 218 of file users.cpp.
+This method returns true if the buffer contains at least one carriage return character (e.g.
+.PP
+one complete line may be read)
+.PP
+Definition at line 220 of file users.cpp.
.PP
References recvq.
.PP
.nf
-219 {
-220 for (int i = 0; i < recvq.length(); i++)
-221 if (recvq[i] == '\n')
-222 return true;
-223 return false;
-224 }
+221 {
+222 for (unsigned int i = 0; i < recvq.length(); i++)
+223 if (recvq[i] == '\n')
+224 return true;
+225 return false;
+226 }
.fi
+.PP
.SS "void userrec::ClearBuffer ()"
.PP
-This function clears the entire buffer by setting it to an empty string. Definition at line 226 of file users.cpp.
+This function clears the entire buffer by setting it to an empty string.
+.PP
+Definition at line 228 of file users.cpp.
.PP
References recvq.
.PP
Referenced by Server::PseudoToUser(), and Server::UserToPseudo().
.PP
.nf
-227 {
-228 recvq = '';
-229 }
+229 {
+230 recvq = '';
+231 }
.fi
+.PP
.SS "void userrec::CloseSocket ()"
.PP
-Shuts down and closes the user's socket. Definition at line 62 of file users.cpp.
+Shuts down and closes the user's socket.
+.PP
+Definition at line 63 of file users.cpp.
.PP
.nf
-63 {
-64 shutdown(this->fd,2);
-65 close(this->fd);
-66 }
+64 {
+65 shutdown(this->fd,2);
+66 close(this->fd);
+67 }
.fi
+.PP
.SS "void userrec::FlushWriteBuf ()"
.PP
-Flushes as much of the user's buffer to the file descriptor as possible. This function may not always flush the entire buffer, rather instead as much of it as it possibly can. If the send() call fails to send the entire buffer, the buffer position is advanced forwards and the rest of the data sent at the next call to this method.Definition at line 264 of file users.cpp.
+Flushes as much of the user's buffer to the file descriptor as possible.
+.PP
+This function may not always flush the entire buffer, rather instead as much of it as it possibly can. If the send() call fails to send the entire buffer, the buffer position is advanced forwards and the rest of the data sent at the next call to this method.
+.PP
+Definition at line 266 of file users.cpp.
.PP
References connection::bytes_out, connection::cmds_out, sendq, and SetWriteError().
.PP
.nf
-265 {
-266 if (sendq.length())
-267 {
-268 char* tb = (char*)this->sendq.c_str();
-269 int n_sent = write(this->fd,tb,this->sendq.length());
-270 if (n_sent == -1)
-271 {
-272 this->SetWriteError(strerror(errno));
-273 }
-274 else
-275 {
-276 // advance the queue
-277 tb += n_sent;
-278 this->sendq = tb;
-279 // update the user's stats counters
-280 this->bytes_out += n_sent;
-281 this->cmds_out++;
-282 }
-283 }
-284 }
+267 {
+268 if (sendq.length())
+269 {
+270 char* tb = (char*)this->sendq.c_str();
+271 int n_sent = write(this->fd,tb,this->sendq.length());
+272 if (n_sent == -1)
+273 {
+274 this->SetWriteError(strerror(errno));
+275 }
+276 else
+277 {
+278 // advance the queue
+279 tb += n_sent;
+280 this->sendq = tb;
+281 // update the user's stats counters
+282 this->bytes_out += n_sent;
+283 this->cmds_out++;
+284 }
+285 }
+286 }
.fi
-.SS "std::string userrec::GetBuffer ()"
.PP
-This method returns the first available string at the tail end of the buffer and advances the tail end of the buffer past the string. This means it is a one way operation in a similar way to strtok(), and multiple calls return multiple lines if they are available. The results of this function if there are no lines to be read are unknown, always use \fBBufferIsReady()\fP to check if it is ok to read the buffer before calling \fBGetBuffer()\fP.Definition at line 231 of file users.cpp.
+.SS "\fBstd::string\fP userrec::GetBuffer ()"
+.PP
+This method returns the first available string at the tail end of the buffer and advances the tail end of the buffer past the string.
+.PP
+This means it is a one way operation in a similar way to strtok(), and multiple calls return multiple lines if they are available. The results of this function if there are no lines to be read are unknown, always use \fBBufferIsReady()\fP to check if it is ok to read the buffer before calling \fBGetBuffer()\fP.
+.PP
+Definition at line 233 of file users.cpp.
.PP
References recvq.
.PP
.nf
-232 {
-233 if (recvq == '')
-234 return '';
-235 char* line = (char*)recvq.c_str();
-236 std::string ret = '';
-237 while ((*line != '\n') && (strlen(line)))
-238 {
-239 ret = ret + *line;
-240 line++;
-241 }
-242 if ((*line == '\n') || (*line == '\r'))
-243 line++;
-244 recvq = line;
-245 return ret;
-246 }
+234 {
+235 if (recvq == '')
+236 return '';
+237 char* line = (char*)recvq.c_str();
+238 std::string ret = '';
+239 while ((*line != '\n') && (strlen(line)))
+240 {
+241 ret = ret + *line;
+242 line++;
+243 }
+244 if ((*line == '\n') || (*line == '\r'))
+245 line++;
+246 recvq = line;
+247 return ret;
+248 }
.fi
+.PP
.SS "char * userrec::GetFullHost ()\fC [virtual]\fP"
.PP
-Returns the full displayed host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. Definition at line 68 of file users.cpp.
+Returns the full displayed host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form.
+.PP
+Definition at line 69 of file users.cpp.
.PP
References dhost, ident, and nick.
.PP
.nf
-69 {
-70 static char result[MAXBUF];
-71 snprintf(result,MAXBUF,'%s!%s@%s',nick,ident,dhost);
-72 return result;
-73 }
+70 {
+71 static char result[MAXBUF];
+72 snprintf(result,MAXBUF,'%s!%s@%s',nick,ident,dhost);
+73 return result;
+74 }
.fi
+.PP
.SS "char * userrec::GetFullRealHost ()\fC [virtual]\fP"
.PP
-Returns the full real host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. 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.Definition at line 85 of file users.cpp.
+Returns the full real host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form.
+.PP
+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.
+.PP
+Definition at line 87 of file users.cpp.
.PP
References connection::host, ident, and nick.
.PP
.nf
-86 {
-87 static char fresult[MAXBUF];
-88 snprintf(fresult,MAXBUF,'%s!%s@%s',nick,ident,host);
-89 return fresult;
-90 }
+88 {
+89 static char fresult[MAXBUF];
+90 snprintf(fresult,MAXBUF,'%s!%s@%s',nick,ident,host);
+91 return fresult;
+92 }
.fi
+.PP
.SS "\fBInvitedList\fP * userrec::GetInviteList ()"
.PP
-Returns the list of channels this user has been invited to but has not yet joined. Definition at line 106 of file users.cpp.
+Returns the list of channels this user has been invited to but has not yet joined.
.PP
-References InvitedList, and invites.
+Definition at line 108 of file users.cpp.
+.PP
+References invites.
.PP
.nf
-107 {
-108 return &invites;
-109 }
+109 {
+110 return &invites;
+111 }
.fi
-.SS "std::string userrec::GetWriteError ()"
.PP
-Returns the write error which last occured on this connection or an empty string if none occured. Definition at line 294 of file users.cpp.
+.SS "\fBstd::string\fP userrec::GetWriteError ()"
.PP
-References WriteError.
+Returns the write error which last occured on this connection or an empty string if none occured.
.PP
-Referenced by AddWriteBuf().
+Definition at line 296 of file users.cpp.
+.PP
+References WriteError.
.PP
.nf
-295 {
-296 return this->WriteError;
-297 }
+297 {
+298 return this->WriteError;
+299 }
.fi
+.PP
.SS "bool userrec::HasPermission (char * command)"
.PP
-Returns true or false for if a user can execute a privilaged oper command. This is done by looking up their oper type from \fBuserrec::oper\fP, then referencing this to their oper classes and checking the commands they can execute.Definition at line 140 of file users.cpp.
+Returns true or false for if a user can execute a privilaged oper command.
+.PP
+This is done by looking up their oper type from \fBuserrec::oper\fP, then referencing this to their oper classes and checking the commands they can execute.
+.PP
+Definition at line 142 of file users.cpp.
.PP
References config_f, and DEBUG.
.PP
.nf
-141 {
-142 char TypeName[MAXBUF],Classes[MAXBUF],ClassName[MAXBUF],CommandList[MAXBUF];
-143 char* mycmd;
-144 char* savept;
-145 char* savept2;
-146
-147 // are they even an oper at all?
-148 if (strchr(this->modes,'o'))
-149 {
-150 log(DEBUG,'*** HasPermission: %s is an oper',this->nick);
-151 for (int j =0; j < ConfValueEnum('type',&config_f); j++)
-152 {
-153 ConfValue('type','name',j,TypeName,&config_f);
-154 if (!strcmp(TypeName,this->oper))
-155 {
-156 log(DEBUG,'*** HasPermission: %s is an oper of type '%s'',this->nick,this->oper);
-157 ConfValue('type','classes',j,Classes,&config_f);
-158 char* myclass = strtok_r(Classes,' ',&savept);
-159 while (myclass)
-160 {
-161 log(DEBUG,'*** HasPermission: checking classtype '%s'',myclass);
-162 for (int k =0; k < ConfValueEnum('class',&config_f); k++)
-163 {
-164 ConfValue('class','name',k,ClassName,&config_f);
-165 if (!strcmp(ClassName,myclass))
-166 {
-167 ConfValue('class','commands',k,CommandList,&config_f);
-168 log(DEBUG,'*** HasPermission: found class named %s with commands: '%s'',ClassName,CommandList);
-169
-170
-171 mycmd = strtok_r(CommandList,' ',&savept2);
-172 while (mycmd)
-173 {
-174 if (!strcasecmp(mycmd,command))
-175 {
-176 log(DEBUG,'*** Command %s found, returning true',command);
-177 return true;
-178 }
-179 mycmd = strtok_r(NULL,' ',&savept2);
-180 }
-181 }
-182 }
-183 myclass = strtok_r(NULL,' ',&savept);
-184 }
-185 }
-186 }
-187 }
-188 return false;
-189 }
+143 {
+144 char TypeName[MAXBUF],Classes[MAXBUF],ClassName[MAXBUF],CommandList[MAXBUF];
+145 char* mycmd;
+146 char* savept;
+147 char* savept2;
+148
+149 // are they even an oper at all?
+150 if (strchr(this->modes,'o'))
+151 {
+152 log(DEBUG,'*** HasPermission: %s is an oper',this->nick);
+153 for (int j =0; j < ConfValueEnum('type',&config_f); j++)
+154 {
+155 ConfValue('type','name',j,TypeName,&config_f);
+156 if (!strcmp(TypeName,this->oper))
+157 {
+158 log(DEBUG,'*** HasPermission: %s is an oper of type '%s'',this->nick,this->oper);
+159 ConfValue('type','classes',j,Classes,&config_f);
+160 char* myclass = strtok_r(Classes,' ',&savept);
+161 while (myclass)
+162 {
+163 log(DEBUG,'*** HasPermission: checking classtype '%s'',myclass);
+164 for (int k =0; k < ConfValueEnum('class',&config_f); k++)
+165 {
+166 ConfValue('class','name',k,ClassName,&config_f);
+167 if (!strcmp(ClassName,myclass))
+168 {
+169 ConfValue('class','commands',k,CommandList,&config_f);
+170 log(DEBUG,'*** HasPermission: found class named %s with commands: '%s'',ClassName,CommandList);
+171
+172
+173 mycmd = strtok_r(CommandList,' ',&savept2);
+174 while (mycmd)
+175 {
+176 if (!strcasecmp(mycmd,command))
+177 {
+178 log(DEBUG,'*** Command %s found, returning true',command);
+179 return true;
+180 }
+181 mycmd = strtok_r(NULL,' ',&savept2);
+182 }
+183 }
+184 }
+185 myclass = strtok_r(NULL,' ',&savept);
+186 }
+187 }
+188 }
+189 }
+190 return false;
+191 }
.fi
+.PP
.SS "void userrec::InviteTo (char * channel)\fC [virtual]\fP"
.PP
-Adds a channel to a users invite list (invites them to a channel). Definition at line 111 of file users.cpp.
+Adds a channel to a users invite list (invites them to a channel).
+.PP
+Definition at line 113 of file users.cpp.
.PP
References Invited::channel, and invites.
.PP
.nf
-112 {
-113 Invited i;
-114 strlcpy(i.channel,channel,CHANMAX);
-115 invites.push_back(i);
-116 }
+114 {
+115 Invited i;
+116 strlcpy(i.channel,channel,CHANMAX);
+117 invites.push_back(i);
+118 }
.fi
+.PP
.SS "bool userrec::IsInvited (char * channel)\fC [virtual]\fP"
.PP
-Returns true if a user is invited to a channel. Definition at line 92 of file users.cpp.
+Returns true if a user is invited to a channel.
+.PP
+Definition at line 94 of file users.cpp.
.PP
References invites.
.PP
.nf
-93 {
-94 for (InvitedList::iterator i = invites.begin(); i != invites.end(); i++)
-95 {
-96 if (i->channel) {
-97 if (!strcasecmp(i->channel,channel))
-98 {
-99 return true;
-100 }
-101 }
-102 }
-103 return false;
-104 }
+95 {
+96 for (InvitedList::iterator i = invites.begin(); i != invites.end(); i++)
+97 {
+98 if (i->channel) {
+99 if (!strcasecmp(i->channel,channel))
+100 {
+101 return true;
+102 }
+103 }
+104 }
+105 return false;
+106 }
.fi
+.PP
.SS "int userrec::ReadData (void * buffer, size_t size)"
.PP
-Calls read() to read some data for this user using their fd. Definition at line 75 of file users.cpp.
+Calls read() to read some data for this user using their fd.
+.PP
+Definition at line 76 of file users.cpp.
.PP
-References connection::fd.
+References DEBUG.
.PP
.nf
-76 {
-77 if (this->fd > -1)
-78 {
-79 return read(this->fd, buffer, size);
-80 }
-81 else return 0;
-82 }
+77 {
+78 if (this->fd > -1)
+79 {
+80 log(DEBUG,'userrec::ReadData on fd %d',this->fd);
+81 return read(this->fd, buffer, size);
+82 }
+83 else return 0;
+84 }
.fi
+.PP
.SS "void userrec::RemoveInvite (char * channel)\fC [virtual]\fP"
.PP
-Removes a channel from a users invite list. This member function is called on successfully joining an invite only channel to which the user has previously been invited, to clear the invitation.Definition at line 118 of file users.cpp.
+Removes a channel from a users invite list.
+.PP
+This member function is called on successfully joining an invite only channel to which the user has previously been invited, to clear the invitation.
+.PP
+Definition at line 120 of file users.cpp.
.PP
References DEBUG, and invites.
.PP
.nf
-119 {
-120 log(DEBUG,'Removing invites');
-121 if (channel)
-122 {
-123 if (invites.size())
-124 {
-125 for (InvitedList::iterator i = invites.begin(); i != invites.end(); i++)
-126 {
-127 if (i->channel)
-128 {
-129 if (!strcasecmp(i->channel,channel))
-130 {
-131 invites.erase(i);
-132 return;
-133 }
-134 }
-135 }
-136 }
-137 }
-138 }
+121 {
+122 log(DEBUG,'Removing invites');
+123 if (channel)
+124 {
+125 if (invites.size())
+126 {
+127 for (InvitedList::iterator i = invites.begin(); i != invites.end(); i++)
+128 {
+129 if (i->channel)
+130 {
+131 if (!strcasecmp(i->channel,channel))
+132 {
+133 invites.erase(i);
+134 return;
+135 }
+136 }
+137 }
+138 }
+139 }
+140 }
.fi
-.SS "void userrec::SetWriteError (std::string error)"
.PP
-Sets the write error for a connection. This is done because the actual disconnect of a client may occur at an inopportune time such as half way through /LIST output. The WriteErrors of clients are checked at a more ideal time (in the mainloop) and errored clients purged.Definition at line 286 of file users.cpp.
+.SS "void userrec::SetWriteError (\fBstd::string\fP error)"
+.PP
+Sets the write error for a connection.
+.PP
+This is done because the actual disconnect of a client may occur at an inopportune time such as half way through /LIST output. The WriteErrors of clients are checked at a more ideal time (in the mainloop) and errored clients purged.
+.PP
+Definition at line 288 of file users.cpp.
.PP
References DEBUG, and WriteError.
.PP
Referenced by AddBuffer(), AddWriteBuf(), and FlushWriteBuf().
.PP
.nf
-287 {
-288 log(DEBUG,'Setting error string for %s to '%s'',this->nick,error.c_str());
-289 // don't try to set the error twice, its already set take the first string.
-290 if (this->WriteError == '')
-291 this->WriteError = error;
-292 }
+289 {
+290 log(DEBUG,'Setting error string for %s to '%s'',this->nick,error.c_str());
+291 // don't try to set the error twice, its already set take the first string.
+292 if (this->WriteError == '')
+293 this->WriteError = error;
+294 }
.fi
+.PP
.SH "Member Data Documentation"
.PP
.SS "char \fBuserrec::awaymsg\fP[MAXAWAY+1]"
.PP
-The user's away message. If this string is empty, the user is not marked as away.Definition at line 155 of file users.h.
+The user's away message.
+.PP
+If this string is empty, the user is not marked as away.
+.PP
+Definition at line 155 of file users.h.
.PP
Referenced by userrec().
.SS "\fBucrec\fP \fBuserrec::chans\fP[MAXCHANS]"
@@ -594,68 +668,110 @@ Definition at line 146 of file users.h.
Referenced by Server::PseudoToUser(), and userrec().
.SS "char \fBuserrec::dhost\fP[160]"
.PP
-The host displayed to non-opers (used for cloaking etc). This usually matches the value of \fBuserrec::host\fP.Definition at line 131 of file users.h.
+The host displayed to non-opers (used for cloaking etc).
+.PP
+This usually matches the value of \fBuserrec::host\fP.
+.PP
+Definition at line 131 of file users.h.
.PP
Referenced by GetFullHost(), and userrec().
.SS "bool \fBuserrec::dns_done\fP"
.PP
-True when \fBDNS\fP lookups are completed. Definition at line 178 of file users.h.
+True when \fBDNS\fP lookups are completed.
+.PP
+Definition at line 178 of file users.h.
.PP
Referenced by userrec().
.SS "int \fBuserrec::flood\fP"
.PP
-Number of lines the user can place into the buffer (up to the global NetBufferSize bytes) before they are disconnected for excess flood. Definition at line 161 of file users.h.
+Number of lines the user can place into the buffer (up to the global NetBufferSize bytes) before they are disconnected for excess flood.
+.PP
+Definition at line 161 of file users.h.
.PP
Referenced by userrec().
.SS "char \fBuserrec::fullname\fP[MAXGECOS+1]"
.PP
-The users full name. Definition at line 135 of file users.h.
+The users full name.
+.PP
+Definition at line 135 of file users.h.
.PP
Referenced by userrec().
.SS "char \fBuserrec::ident\fP[IDENTMAX+2]"
.PP
-The users ident reply. Two characters are added to the user-defined limit to compensate for the tilde etc.Definition at line 126 of file users.h.
+The users ident reply.
+.PP
+Two characters are added to the user-defined limit to compensate for the tilde etc.
+.PP
+Definition at line 126 of file users.h.
.PP
Referenced by GetFullHost(), GetFullRealHost(), Server::PseudoToUser(), userrec(), and Server::UserToPseudo().
.SS "\fBInvitedList\fP \fBuserrec::invites\fP\fC [private]\fP"
.PP
-A list of channels the user has a pending invite to. Definition at line 114 of file users.h.
+A list of channels the user has a pending invite to.
+.PP
+Definition at line 114 of file users.h.
.PP
Referenced by GetInviteList(), InviteTo(), IsInvited(), RemoveInvite(), and userrec().
.SS "int \fBuserrec::lines_in\fP"
.PP
-Flood counters. Definition at line 203 of file users.h.
+Flood counters.
+.PP
+Definition at line 203 of file users.h.
.PP
Referenced by userrec().
.SS "char \fBuserrec::modes\fP[54]"
.PP
-The user's mode string. This may contain any of the following RFC characters: o, w, s, i Your module may define other mode characters as it sees fit. it is limited to length 54, as there can only be a maximum of 52 user modes (26 upper, 26 lower case) a null terminating char, and an optional + character.Definition at line 144 of file users.h.
+The user's mode string.
+.PP
+This may contain any of the following RFC characters: o, w, s, i Your module may define other mode characters as it sees fit. it is limited to length 54, as there can only be a maximum of 52 user modes (26 upper, 26 lower case) a null terminating char, and an optional + character.
+.PP
+Definition at line 144 of file users.h.
.PP
Referenced by userrec().
.SS "char \fBuserrec::nick\fP[NICKMAX]"
.PP
-The users nickname. An invalid nickname indicates an unregistered connection prior to the NICK command.Definition at line 121 of file users.h.
+The users nickname.
+.PP
+An invalid nickname indicates an unregistered connection prior to the NICK command.
+.PP
+Definition at line 121 of file users.h.
.PP
Referenced by ConfigReader::DumpErrors(), GetFullHost(), GetFullRealHost(), Server::PseudoToUser(), and userrec().
.SS "char \fBuserrec::oper\fP[NICKMAX]"
.PP
-The oper type they logged in as, if they are an oper. This is used to check permissions in operclasses, so that we can say 'yay' or 'nay' to any commands they issue. The value of this is the value of a valid 'type name=' tag.Definition at line 174 of file users.h.
+The oper type they logged in as, if they are an oper.
+.PP
+This is used to check permissions in operclasses, so that we can say 'yay' or 'nay' to any commands they issue. The value of this is the value of a valid 'type name=' tag.
+.PP
+Definition at line 174 of file users.h.
.PP
Referenced by userrec().
.SS "char \fBuserrec::password\fP[MAXBUF]"
.PP
-Password specified by the user when they registered. This is stored even if the block doesnt need a password, so that modules may check it.Definition at line 188 of file users.h.
+Password specified by the user when they registered.
+.PP
+This is stored even if the <connect> block doesnt need a password, so that modules may check it.
+.PP
+Definition at line 188 of file users.h.
.SS "unsigned int \fBuserrec::pingmax\fP"
.PP
-Number of seconds between PINGs for this user (set from <connect:allow> tag. Definition at line 182 of file users.h.
-.SS "std::string \fBuserrec::recvq\fP"
+Number of seconds between PINGs for this user (set from <connect:allow> tag.
.PP
-User's receive queue. Lines from the IRCd awaiting processing are stored here. Upgraded april 2005, old system a bit hairy.Definition at line 194 of file users.h.
+Definition at line 182 of file users.h.
+.SS "\fBstd::string\fP \fBuserrec::recvq\fP"
+.PP
+User's receive queue.
+.PP
+Lines from the IRCd awaiting processing are stored here. Upgraded april 2005, old system a bit hairy.
+.PP
+Definition at line 194 of file users.h.
.PP
Referenced by AddBuffer(), BufferIsReady(), ClearBuffer(), GetBuffer(), and userrec().
.SS "long \fBuserrec::recvqmax\fP"
.PP
-Maximum size this user's recvq can become. Definition at line 217 of file users.h.
+Maximum size this user's recvq can become.
+.PP
+Definition at line 217 of file users.h.
.PP
Referenced by AddBuffer().
.SS "time_t \fBuserrec::reset_due\fP"
@@ -663,19 +779,27 @@ Referenced by AddBuffer().
Definition at line 204 of file users.h.
.PP
Referenced by userrec().
-.SS "std::string \fBuserrec::sendq\fP"
+.SS "\fBstd::string\fP \fBuserrec::sendq\fP"
+.PP
+User's send queue.
.PP
-User's send queue. Lines waiting to be sent are stored here until their buffer is flushed.Definition at line 199 of file users.h.
+Lines waiting to be sent are stored here until their buffer is flushed.
+.PP
+Definition at line 199 of file users.h.
.PP
Referenced by AddWriteBuf(), FlushWriteBuf(), and userrec().
.SS "long \fBuserrec::sendqmax\fP"
.PP
-Maximum size this user's sendq can become. Definition at line 213 of file users.h.
+Maximum size this user's sendq can become.
+.PP
+Definition at line 213 of file users.h.
.PP
Referenced by AddWriteBuf().
.SS "char* \fBuserrec::server\fP"
.PP
-The server the user is connected to. Definition at line 150 of file users.h.
+The server the user is connected to.
+.PP
+Definition at line 150 of file users.h.
.PP
Referenced by userrec().
.SS "long \fBuserrec::threshold\fP"
@@ -683,10 +807,12 @@ Referenced by userrec().
Definition at line 205 of file users.h.
.SS "unsigned int \fBuserrec::timeout\fP"
.PP
-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. Definition at line 167 of file users.h.
+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.
+.PP
+Definition at line 167 of file users.h.
.PP
Referenced by userrec().
-.SS "std::string \fBuserrec::WriteError\fP"
+.SS "\fBstd::string\fP \fBuserrec::WriteError\fP"
.PP
Definition at line 209 of file users.h.
.PP
diff --git a/docs/man/man3/users.cpp.3 b/docs/man/man3/users.cpp.3
index c9dd9006a..48f8e97a8 100644
--- a/docs/man/man3/users.cpp.3
+++ b/docs/man/man3/users.cpp.3
@@ -1,4 +1,4 @@
-.TH "users.cpp" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "users.cpp" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -10,6 +10,8 @@ users.cpp \-
.br
\fC#include 'channels.h'\fP
.br
+\fC#include 'connection.h'\fP
+.br
\fC#include 'users.h'\fP
.br
\fC#include 'inspircd.h'\fP
@@ -38,13 +40,10 @@ users.cpp \-
.PP
.SS "std::stringstream \fBconfig_f\fP"
.PP
-Definition at line 27 of file users.cpp.
.SS "char \fBServerName\fP[MAXBUF]"
.PP
-Definition at line 28 of file users.cpp.
.SS "time_t \fBTIME\fP"
.PP
-Definition at line 30 of file users.cpp.
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/users.h.3 b/docs/man/man3/users.h.3
index f0872e8b1..673e90f71 100644
--- a/docs/man/man3/users.h.3
+++ b/docs/man/man3/users.h.3
@@ -1,4 +1,4 @@
-.TH "users.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "users.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -10,25 +10,25 @@ users.h \-
.br
\fC#include 'channels.h'\fP
.br
-\fC#include 'connection.h'\fP
-.br
\fC#include 'inspstring.h'\fP
.br
+\fC#include 'connection.h'\fP
+.br
\fC#include <string>\fP
.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
-.RI "class \fBConnectClass\fP"
-.br
-.RI "\fIHolds information relevent to <connect allow> and <connect deny> tags in the config file. \fP"
-.ti -1c
.RI "class \fBInvited\fP"
.br
.RI "\fIHolds a channel name to which a user has been invited. \fP"
.ti -1c
+.RI "class \fBConnectClass\fP"
+.br
+.RI "\fIHolds information relevent to <connect allow> and <connect deny> tags in the config file. \fP"
+.ti -1c
.RI "class \fBuserrec\fP"
.br
.RI "\fIHolds all information about a user This class stores all information about a user connected to the irc server. \fP"
@@ -95,12 +95,14 @@ Definition at line 28 of file users.h.
.PP
.SS "typedef std::vector<\fBConnectClass\fP> \fBClassVector\fP"
.PP
-Holds a complete list of all allow and deny tags from the configuration file (connection classes). Definition at line 100 of file users.h.
+Holds a complete list of all allow and deny tags from the configuration file (connection classes).
+.PP
+Definition at line 100 of file users.h.
.SS "typedef std::vector<\fBInvited\fP> \fBInvitedList\fP"
.PP
-Holds a complete list of all channels to which a user has been invited and has not yet joined. Definition at line 94 of file users.h.
+Holds a complete list of all channels to which a user has been invited and has not yet joined.
.PP
-Referenced by userrec::GetInviteList().
+Definition at line 94 of file users.h.
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
diff --git a/docs/man/man3/xline.h.3 b/docs/man/man3/xline.h.3
index 3444201df..9b6a790a3 100644
--- a/docs/man/man3/xline.h.3
+++ b/docs/man/man3/xline.h.3
@@ -1,4 +1,4 @@
-.TH "xline.h" 3 "30 May 2005" "InspIRCd" \" -*- nroff -*-
+.TH "xline.h" 3 "27 Nov 2005" "Version 1.0Betareleases" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
@@ -23,32 +23,32 @@ xline.h \-
\fC#include 'channels.h'\fP
.br
-.SS "Compounds"
+.SS "Classes"
.in +1c
.ti -1c
-.RI "class \fBELine\fP"
-.br
-.ti -1c
-.RI "class \fBGLine\fP"
+.RI "class \fBXLine\fP"
.br
-.RI "\fIGLine class. \fP"
+.RI "\fIXLine is the base class for ban lines such as G lines and K lines. \fP"
.ti -1c
.RI "class \fBKLine\fP"
.br
.RI "\fIKLine class. \fP"
.ti -1c
-.RI "class \fBQLine\fP"
+.RI "class \fBGLine\fP"
.br
-.RI "\fIQLine class. \fP"
+.RI "\fIGLine class. \fP"
.ti -1c
-.RI "class \fBXLine\fP"
+.RI "class \fBELine\fP"
.br
-.RI "\fIXLine is the base class for ban lines such as G lines and K lines. \fP"
.ti -1c
.RI "class \fBZLine\fP"
.br
.RI "\fIZLine class. \fP"
+.ti -1c
+.RI "class \fBQLine\fP"
+.br
+.RI "\fIQLine class. \fP"
.in -1c
.SS "Functions"
@@ -137,9 +137,6 @@ xline.h \-
.ti -1c
.RI "bool \fBqline_make_global\fP (const char *nickname)"
.br
-.ti -1c
-.RI "void \fBsync_xlines\fP (\fBserverrec\fP *serv, char *tcp_host)"
-.br
.in -1c
.SH "Function Documentation"
.PP
@@ -205,8 +202,6 @@ Referenced by Server::DelZLine().
.PP
.SS "void stats_z (\fBuserrec\fP * user)"
.PP
-.SS "void sync_xlines (\fBserverrec\fP * serv, char * tcp_host)"
-.PP
.SS "bool zline_make_global (const char * ipaddr)"
.PP
.SS "void zline_set_creation_time (char * ip, time_t create_time)"
diff --git a/docs/module-doc/annotated.html b/docs/module-doc/annotated.html
index bb9210bdb..8d3b2baae 100644
--- a/docs/module-doc/annotated.html
+++ b/docs/module-doc/annotated.html
@@ -1,11 +1,11 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Annotated Index</title>
+<title>InspIRCd: Class List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindexHL" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>InspIRCd Compound List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindexHL" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>InspIRCd Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="classAdmin.html">Admin</a></td><td class="indexvalue">Holds /ADMIN data This class contains the admin details of the local server </td></tr>
<tr><td class="indexkey"><a class="el" href="classBanItem.html">BanItem</a></td><td class="indexvalue">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel bans (+b) </td></tr>
<tr><td class="indexkey"><a class="el" href="classBoolSet.html">BoolSet</a></td><td class="indexvalue">BoolSet is a utility class designed to hold eight bools in a bitmask </td></tr>
@@ -25,23 +25,22 @@
<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="classGLine.html">GLine</a></td><td class="indexvalue">GLine class </td></tr>
+ <tr><td class="indexkey"><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html">nspace::hash&lt; in_addr &gt;</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="structnspace_1_1hash_3_01string_01_4.html">nspace::hash&lt; string &gt;</a></td><td class="indexvalue"></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="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a></td><td class="indexvalue">This class returns true if two in_addr structs match </td></tr>
+ <tr><td class="indexkey"><a class="el" href="classInspSocket.html">InspSocket</a></td><td class="indexvalue"></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="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td class="indexvalue">The <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> class is used for RFC-style comparison of strings </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="classKLine.html">KLine</a></td><td class="indexvalue">KLine class </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>
<tr><td class="indexkey"><a class="el" href="classModuleMessage.html">ModuleMessage</a></td><td class="indexvalue">Base class of <a class="el" href="classRequest.html">Request</a> and <a class="el" href="classEvent.html">Event</a> This class is used to represent a basic data structure which is passed between modules for safe inter-module communications </td></tr>
- <tr><td class="indexkey"><a class="el" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html">nspace::hash&lt; in_addr &gt;</a></td><td class="indexvalue"></td></tr>
- <tr><td class="indexkey"><a class="el" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html">nspace::hash&lt; string &gt;</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="classQLine.html">QLine</a></td><td class="indexvalue">QLine class </td></tr>
<tr><td class="indexkey"><a class="el" href="classRequest.html">Request</a></td><td class="indexvalue">Unicast message directed at a given module </td></tr>
<tr><td class="indexkey"><a class="el" href="classServer.html">Server</a></td><td class="indexvalue">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 </td></tr>
- <tr><td class="indexkey"><a class="el" href="classserverrec.html">serverrec</a></td><td class="indexvalue">A class that defines the local server or a remote server </td></tr>
<tr><td class="indexkey"><a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a></td><td class="indexvalue">This class returns true if two strings match </td></tr>
<tr><td class="indexkey"><a class="el" href="classucrec.html">ucrec</a></td><td class="indexvalue">Holds a user's modes on a channel This class associates a users privilages with a channel by creating a pointer link between a userrec and chanrec class </td></tr>
<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>
@@ -50,9 +49,8 @@
<tr><td class="indexkey"><a class="el" href="classXLine.html">XLine</a></td><td class="indexvalue">XLine is the base class for ban lines such as G lines and K lines </td></tr>
<tr><td class="indexkey"><a class="el" href="classZLine.html">ZLine</a></td><td class="indexvalue">ZLine class </td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:22 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/base_8h-source.html b/docs/module-doc/base_8h-source.html
index 9a2058149..3023bee60 100644
--- a/docs/module-doc/base_8h-source.html
+++ b/docs/module-doc/base_8h-source.html
@@ -1,94 +1,92 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: base.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>base.h</h1><a href="base_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#ifndef __BASE_H__ </span>
-00018 <span class="preprocessor"></span><span class="preprocessor">#define __BASE_H__ </span>
-00019 <span class="preprocessor"></span>
-00020 <span class="preprocessor">#include "inspircd_config.h"</span>
-00021 <span class="preprocessor">#include &lt;time.h&gt;</span>
-00022 <span class="preprocessor">#include &lt;map&gt;</span>
-00023 <span class="preprocessor">#include &lt;string&gt;</span>
-00024
-<a name="l00025"></a><a class="code" href="base_8h.html#a0">00025</a> <span class="keyword">typedef</span> <span class="keywordtype">void</span>* <a class="code" href="base_8h.html#a0">VoidPointer</a>;
-00026
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>base.h</h1><a href="base_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef __BASE_H__ </span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __BASE_H__ </span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;time.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;map&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00024"></a>00024
+<a name="l00025"></a><a class="code" href="base_8h.html#VoidPointer">00025</a> <span class="keyword">typedef</span> <span class="keywordtype">void</span>* <a class="code" href="base_8h.html#VoidPointer">VoidPointer</a>;
+<a name="l00026"></a>00026
<a name="l00029"></a><a class="code" href="classclassbase.html">00029</a> <span class="keyword">class </span><a class="code" href="classclassbase.html">classbase</a>
-00030 {
-00031 <span class="keyword">public</span>:
-<a name="l00034"></a><a class="code" href="classclassbase.html#o0">00034</a> time_t <a class="code" href="classclassbase.html#o0">age</a>;
-00035
-<a name="l00039"></a><a class="code" href="classclassbase.html#a0">00039</a> <a class="code" href="classclassbase.html#a0">classbase</a>() { <a class="code" href="classclassbase.html#o0">age</a> = time(NULL); }
-<a name="l00040"></a><a class="code" href="classclassbase.html#a1">00040</a> <a class="code" href="classclassbase.html#a1">~classbase</a>() { }
-00041 };
-00042
+<a name="l00030"></a>00030 {
+<a name="l00031"></a>00031 <span class="keyword">public</span>:
+<a name="l00034"></a><a class="code" href="classclassbase.html#age">00034</a> time_t <a class="code" href="classclassbase.html#age">age</a>;
+<a name="l00035"></a>00035
+<a name="l00039"></a><a class="code" href="classclassbase.html#classbase_28_29">00039</a> <a class="code" href="classclassbase.html#classbase_28_29">classbase</a>() { <a class="code" href="classclassbase.html#age">age</a> = time(NULL); }
+<a name="l00040"></a><a class="code" href="classclassbase.html#_7Eclassbase_28_29">00040</a> <a class="code" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>() { }
+<a name="l00041"></a>00041 };
+<a name="l00042"></a>00042
<a name="l00050"></a><a class="code" href="classExtensible.html">00050</a> <span class="keyword">class </span><a class="code" href="classExtensible.html">Extensible</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00051 {
-<a name="l00054"></a><a class="code" href="classExtensible.html#r0">00054</a> std::map&lt;std::string,char*&gt; <a class="code" href="classExtensible.html#r0">Extension_Items</a>;
-00055
-00056 <span class="keyword">public</span>:
-00057
-00069 <span class="keywordtype">bool</span> <a class="code" href="classExtensible.html#a0">Extend</a>(std::string key, <span class="keywordtype">char</span>* p);
-00070
-00080 <span class="keywordtype">bool</span> <a class="code" href="classExtensible.html#a1">Shrink</a>(std::string key);
-00081
-00088 <span class="keywordtype">char</span>* <a class="code" href="classExtensible.html#a2">GetExt</a>(std::string key);
-00089 };
-00090
-<a name="l00091"></a><a class="code" href="base_8h.html#a1">00091</a> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="base_8h.html#a1">bitfields</a>[] = {1,2,4,8,16,32,64,128};
-<a name="l00092"></a><a class="code" href="base_8h.html#a2">00092</a> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="base_8h.html#a2">inverted_bitfields</a>[] = {~1,~2,~4,~8,~16,~32,~64,~128};
-00093
-<a name="l00098"></a><a class="code" href="classBoolSet.html">00098</a> <span class="keyword">class </span><a class="code" href="classBoolSet.html">BoolSet</a>
-00099 {
-<a name="l00100"></a><a class="code" href="classBoolSet.html#r0">00100</a> <span class="keywordtype">char</span> <a class="code" href="classBoolSet.html#r0">bits</a>;
-00101
-00102 <span class="keyword">public</span>:
-00103
-00106 <a class="code" href="classBoolSet.html#a0">BoolSet</a>();
-00107
-00110 <a class="code" href="classBoolSet.html#a0">BoolSet</a>(<span class="keywordtype">char</span> bitmask);
-00111
-00116 <span class="keywordtype">void</span> <a class="code" href="classBoolSet.html#a2">Set</a>(<span class="keywordtype">int</span> number);
-00117
-00124 <span class="keywordtype">bool</span> <a class="code" href="classBoolSet.html#a3">Get</a>(<span class="keywordtype">int</span> number);
-00125
-00130 <span class="keywordtype">void</span> <a class="code" href="classBoolSet.html#a4">Unset</a>(<span class="keywordtype">int</span> number);
-00131
-00136 <span class="keywordtype">void</span> <a class="code" href="classBoolSet.html#a5">Invert</a>(<span class="keywordtype">int</span> number);
-00137
-00140 <span class="keywordtype">bool</span> <a class="code" href="classBoolSet.html#a6">operator==</a>(<a class="code" href="classBoolSet.html">BoolSet</a> other);
-00141
-00144 <a class="code" href="classBoolSet.html">BoolSet</a> <a class="code" href="classBoolSet.html#a7">operator|</a>(<a class="code" href="classBoolSet.html">BoolSet</a> other);
-00145
-00148 <a class="code" href="classBoolSet.html">BoolSet</a> <a class="code" href="classBoolSet.html#a8">operator&amp;</a>(<a class="code" href="classBoolSet.html">BoolSet</a> other);
-00149
-00152 <span class="keywordtype">bool</span> <a class="code" href="classBoolSet.html#a9">operator=</a>(<a class="code" href="classBoolSet.html">BoolSet</a> other);
-00153 };
-00154
-00155
-00156 <span class="preprocessor">#endif</span>
-00157 <span class="preprocessor"></span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:18 2005 for InspIRCd by
+<a name="l00051"></a>00051 {
+<a name="l00054"></a><a class="code" href="classExtensible.html#Extension_5FItems">00054</a> std::map&lt;std::string,char*&gt; <a class="code" href="classExtensible.html#Extension_5FItems">Extension_Items</a>;
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056 <span class="keyword">public</span>:
+<a name="l00057"></a>00057
+<a name="l00069"></a>00069 <span class="keywordtype">bool</span> <a class="code" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extend</a>(<a class="code" href="namespaceirc.html#string">std::string</a> key, <span class="keywordtype">char</span>* p);
+<a name="l00070"></a>00070
+<a name="l00080"></a>00080 <span class="keywordtype">bool</span> <a class="code" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Shrink</a>(<a class="code" href="namespaceirc.html#string">std::string</a> key);
+<a name="l00081"></a>00081
+<a name="l00088"></a>00088 <span class="keywordtype">char</span>* <a class="code" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">GetExt</a>(<a class="code" href="namespaceirc.html#string">std::string</a> key);
+<a name="l00089"></a>00089 };
+<a name="l00090"></a>00090
+<a name="l00095"></a><a class="code" href="classBoolSet.html">00095</a> <span class="keyword">class </span><a class="code" href="classBoolSet.html">BoolSet</a>
+<a name="l00096"></a>00096 {
+<a name="l00097"></a><a class="code" href="classBoolSet.html#bits">00097</a> <span class="keywordtype">char</span> <a class="code" href="classBoolSet.html#bits">bits</a>;
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099 <span class="keyword">public</span>:
+<a name="l00100"></a>00100
+<a name="l00103"></a>00103 <a class="code" href="classBoolSet.html#BoolSet_28_29">BoolSet</a>();
+<a name="l00104"></a>00104
+<a name="l00107"></a>00107 <a class="code" href="classBoolSet.html#BoolSet_28_29">BoolSet</a>(<span class="keywordtype">char</span> bitmask);
+<a name="l00108"></a>00108
+<a name="l00113"></a>00113 <span class="keywordtype">void</span> <a class="code" href="classBoolSet.html#Set_28int_20number_29">Set</a>(<span class="keywordtype">int</span> number);
+<a name="l00114"></a>00114
+<a name="l00121"></a>00121 <span class="keywordtype">bool</span> <a class="code" href="classBoolSet.html#Get_28int_20number_29">Get</a>(<span class="keywordtype">int</span> number);
+<a name="l00122"></a>00122
+<a name="l00127"></a>00127 <span class="keywordtype">void</span> <a class="code" href="classBoolSet.html#Unset_28int_20number_29">Unset</a>(<span class="keywordtype">int</span> number);
+<a name="l00128"></a>00128
+<a name="l00133"></a>00133 <span class="keywordtype">void</span> <a class="code" href="classBoolSet.html#Invert_28int_20number_29">Invert</a>(<span class="keywordtype">int</span> number);
+<a name="l00134"></a>00134
+<a name="l00137"></a>00137 <span class="keywordtype">bool</span> <a class="code" href="classBoolSet.html#operator_3D_3D_28BoolSet_20other_29">operator==</a>(<a class="code" href="classBoolSet.html">BoolSet</a> other);
+<a name="l00138"></a>00138
+<a name="l00141"></a>00141 <a class="code" href="classBoolSet.html">BoolSet</a> <a class="code" href="classBoolSet.html#operator_7C_28BoolSet_20other_29">operator|</a>(<a class="code" href="classBoolSet.html">BoolSet</a> other);
+<a name="l00142"></a>00142
+<a name="l00145"></a>00145 <a class="code" href="classBoolSet.html">BoolSet</a> <a class="code" href="classBoolSet.html#operator_20_26_28BoolSet_20other_29">operator&amp;</a>(<a class="code" href="classBoolSet.html">BoolSet</a> other);
+<a name="l00146"></a>00146
+<a name="l00149"></a>00149 <span class="keywordtype">bool</span> <a class="code" href="classBoolSet.html#operator_3D_28BoolSet_20other_29">operator=</a>(<a class="code" href="classBoolSet.html">BoolSet</a> other);
+<a name="l00150"></a>00150 };
+<a name="l00151"></a>00151
+<a name="l00152"></a>00152
+<a name="l00153"></a>00153 <span class="preprocessor">#endif</span>
+<a name="l00154"></a>00154 <span class="preprocessor"></span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/base_8h.html b/docs/module-doc/base_8h.html
index 6da6ca04e..f2d9350a9 100644
--- a/docs/module-doc/base_8h.html
+++ b/docs/module-doc/base_8h.html
@@ -1,62 +1,68 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: base.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>base.h File Reference</h1><code>#include "inspircd_config.h"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>base.h File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
<code>#include &lt;time.h&gt;</code><br>
<code>#include &lt;map&gt;</code><br>
<code>#include &lt;string&gt;</code><br>
<p>
-Include dependency graph for base.h:<p><center><img src="base_8h__incl.gif" border="0" usemap="#base.h_map" alt="Include dependency graph"></center>
+Include dependency graph for base.h:<p><center><img src="base_8h__incl.gif" border="0" usemap="#base.h_map" alt=""></center>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="base_8h__dep__incl.gif" border="0" usemap="#base.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="base_8h__dep__incl.gif" border="0" usemap="#base.hdep_map" alt=""></center>
<map name="base.hdep_map">
-<area href="channels_8h.html" shape="rect" coords="7,82,93,109" alt="">
-<area href="connection_8h.html" shape="rect" coords="117,82,215,109" alt="">
-<area href="ctables_8h.html" shape="rect" coords="290,82,365,109" alt="">
-<area href="modules_8h.html" shape="rect" coords="249,8,331,34" alt="">
+<area href="channels_8h-source.html" shape="rect" coords="123,260,208,287" alt="">
+<area href="connection_8h-source.html" shape="rect" coords="116,108,215,135" alt="">
+<area href="ctables_8h-source.html" shape="rect" coords="264,7,339,33" alt="">
+<area href="modules_8h-source.html" shape="rect" coords="396,57,479,84" alt="">
+<area href="users_8cpp-source.html" shape="rect" coords="398,159,478,185" alt="">
+<area href="users_8h-source.html" shape="rect" coords="270,260,334,287" alt="">
+<area href="commands_8h-source.html" shape="rect" coords="388,463,487,489" alt="">
+<area href="message_8h-source.html" shape="rect" coords="395,209,480,236" alt="">
+<area href="mode_8h-source.html" shape="rect" coords="404,311,471,337" alt="">
+<area href="xline_8h-source.html" shape="rect" coords="407,361,468,388" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="536,235,635,261" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="536,311,635,337" alt="">
</map>
<p>
-<a href="base_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="base_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html">BoolSet</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classclassbase.html">classbase</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">BoolSet is a utility class designed to hold eight bools in a bitmask. </em> <a href="classBoolSet.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classclassbase.html">classbase</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The base class for all inspircd classes. <a href="classclassbase.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtensible.html">Extensible</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The base class for all inspircd classes. </em> <a href="classclassbase.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtensible.html">Extensible</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">class Extensible is the parent class of many classes such as userrec and chanrec. <a href="classExtensible.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html">BoolSet</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">class Extensible is the parent class of many classes such as userrec and chanrec. </em> <a href="classExtensible.html#_details">More...</a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="base_8h.html#a0">VoidPointer</a></td></tr>
-
-<tr><td colspan=2><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="base_8h.html#a1">bitfields</a> [] = {1,2,4,8,16,32,64,128}</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>const int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="base_8h.html#a2">inverted_bitfields</a> [] = {~1,~2,~4,~8,~16,~32,~64,~128}</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">BoolSet is a utility class designed to hold eight bools in a bitmask. <a href="classBoolSet.html#_details">More...</a><br></td></tr>
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="base_8h.html#VoidPointer">VoidPointer</a></td></tr>
</table>
<hr><h2>Typedef Documentation</h2>
-<a name="a0" doxytag="base.h::VoidPointer"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="VoidPointer"></a><!-- doxytag: member="base.h::VoidPointer" ref="VoidPointer" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef void* <a class="el" href="base_8h.html#a0">VoidPointer</a>
+ <td class="md" nowrap valign="top">typedef void* <a class="el" href="base_8h.html#VoidPointer">VoidPointer</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -69,58 +75,8 @@ This graph shows which files directly or indirectly include this file:<p><center
Definition at line <a class="el" href="base_8h-source.html#l00025">25</a> of file <a class="el" href="base_8h-source.html">base.h</a>. </td>
</tr>
</table>
-<hr><h2>Variable Documentation</h2>
-<a name="a1" doxytag="base.h::bitfields"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> const int <a class="el" href="base_8h.html#a1">bitfields</a>[] = {1,2,4,8,16,32,64,128}
- </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="base_8h-source.html#l00091">91</a> of file <a class="el" href="base_8h-source.html">base.h</a>. </td>
- </tr>
-</table>
-<a name="a2" doxytag="base.h::inverted_bitfields"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> const int <a class="el" href="base_8h.html#a2">inverted_bitfields</a>[] = {~1,~2,~4,~8,~16,~32,~64,~128}
- </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="base_8h-source.html#l00092">92</a> of file <a class="el" href="base_8h-source.html">base.h</a>. </td>
- </tr>
-</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:25 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/base_8h__dep__incl.gif b/docs/module-doc/base_8h__dep__incl.gif
index 89263dd1f..3722ae7c0 100644
--- a/docs/module-doc/base_8h__dep__incl.gif
+++ b/docs/module-doc/base_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/base_8h__dep__incl.map b/docs/module-doc/base_8h__dep__incl.map
new file mode 100644
index 000000000..1174c2639
--- /dev/null
+++ b/docs/module-doc/base_8h__dep__incl.map
@@ -0,0 +1,13 @@
+base referer
+rect $channels_8h-source.html 123,260 208,287
+rect $connection_8h-source.html 116,108 215,135
+rect $ctables_8h-source.html 264,7 339,33
+rect $modules_8h-source.html 396,57 479,84
+rect $users_8cpp-source.html 398,159 478,185
+rect $users_8h-source.html 270,260 334,287
+rect $commands_8h-source.html 388,463 487,489
+rect $message_8h-source.html 395,209 480,236
+rect $mode_8h-source.html 404,311 471,337
+rect $xline_8h-source.html 407,361 468,388
+rect $channels_8cpp-source.html 536,235 635,261
+rect $modules_8cpp-source.html 536,311 635,337
diff --git a/docs/module-doc/base_8h__dep__incl.md5 b/docs/module-doc/base_8h__dep__incl.md5
new file mode 100644
index 000000000..e545b47b2
--- /dev/null
+++ b/docs/module-doc/base_8h__dep__incl.md5
@@ -0,0 +1 @@
+f6b12bb178ea9037bef41c096843593c \ No newline at end of file
diff --git a/docs/module-doc/base_8h__incl.gif b/docs/module-doc/base_8h__incl.gif
index b2b1eff77..009720209 100644
--- a/docs/module-doc/base_8h__incl.gif
+++ b/docs/module-doc/base_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/base_8h__incl.map b/docs/module-doc/base_8h__incl.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/base_8h__incl.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/base_8h__incl.md5 b/docs/module-doc/base_8h__incl.md5
new file mode 100644
index 000000000..9190d9f22
--- /dev/null
+++ b/docs/module-doc/base_8h__incl.md5
@@ -0,0 +1 @@
+67c328a54e3df328858803d816336df4 \ No newline at end of file
diff --git a/docs/module-doc/channels_8cpp-source.html b/docs/module-doc/channels_8cpp-source.html
index 91c8beca5..d99c7dae0 100644
--- a/docs/module-doc/channels_8cpp-source.html
+++ b/docs/module-doc/channels_8cpp-source.html
@@ -1,237 +1,232 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: channels.cpp Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>channels.cpp</h1><a href="channels_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
-00018
-00019 <span class="preprocessor">#include "inspircd_config.h"</span>
-00020 <span class="preprocessor">#include "inspircd.h"</span>
-00021 <span class="preprocessor">#include "inspircd_io.h"</span>
-00022 <span class="preprocessor">#include "inspircd_util.h"</span>
-00023 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
-00024 <span class="preprocessor">#include &lt;sys/errno.h&gt;</span>
-00025 <span class="preprocessor">#include &lt;sys/ioctl.h&gt;</span>
-00026 <span class="preprocessor">#include &lt;sys/utsname.h&gt;</span>
-00027 <span class="preprocessor">#include &lt;time.h&gt;</span>
-00028 <span class="preprocessor">#include &lt;string&gt;</span>
-00029 <span class="preprocessor">#ifdef GCC3</span>
-00030 <span class="preprocessor"></span><span class="preprocessor">#include &lt;ext/hash_map&gt;</span>
-00031 <span class="preprocessor">#else</span>
-00032 <span class="preprocessor"></span><span class="preprocessor">#include &lt;hash_map&gt;</span>
-00033 <span class="preprocessor">#endif</span>
-00034 <span class="preprocessor"></span><span class="preprocessor">#include &lt;map&gt;</span>
-00035 <span class="preprocessor">#include &lt;sstream&gt;</span>
-00036 <span class="preprocessor">#include &lt;vector&gt;</span>
-00037 <span class="preprocessor">#include &lt;deque&gt;</span>
-00038 <span class="preprocessor">#include "<a class="code" href="connection_8h.html">connection.h</a>"</span>
-00039 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
-00040 <span class="preprocessor">#include "<a class="code" href="servers_8h.html">servers.h</a>"</span>
-00041 <span class="preprocessor">#include "<a class="code" href="ctables_8h.html">ctables.h</a>"</span>
-00042 <span class="preprocessor">#include "globals.h"</span>
-00043 <span class="preprocessor">#include "<a class="code" href="modules_8h.html">modules.h</a>"</span>
-00044 <span class="preprocessor">#include "dynamic.h"</span>
-00045 <span class="preprocessor">#include "wildcard.h"</span>
-00046 <span class="preprocessor">#include "<a class="code" href="message_8h.html">message.h</a>"</span>
-00047 <span class="preprocessor">#include "<a class="code" href="mode_8h.html">mode.h</a>"</span>
-00048 <span class="preprocessor">#include "<a class="code" href="xline_8h.html">xline.h</a>"</span>
-00049 <span class="preprocessor">#include "inspstring.h"</span>
-00050 <span class="preprocessor">#include "helperfuncs.h"</span>
-00051
-00052 <span class="preprocessor">#ifdef GCC3</span>
-00053 <span class="preprocessor"></span><span class="preprocessor">#define nspace __gnu_cxx</span>
-00054 <span class="preprocessor"></span><span class="preprocessor">#else</span>
-<a name="l00055"></a><a class="code" href="channels_8cpp.html#a0">00055</a> <span class="preprocessor"></span><span class="preprocessor">#define nspace std</span>
-00056 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
-00057 <span class="preprocessor"></span>
-00058 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#a1">MODCOUNT</a>;
-<a name="l00059"></a><a class="code" href="channels_8cpp.html#a2">00059</a> <span class="keyword">extern</span> std::vector&lt;Module*&gt; <a class="code" href="channels_8cpp.html#a2">modules</a>;
-<a name="l00060"></a><a class="code" href="channels_8cpp.html#a3">00060</a> <span class="keyword">extern</span> std::vector&lt;ircd_module*&gt; <a class="code" href="channels_8cpp.html#a3">factory</a>;
-00061
-<a name="l00062"></a><a class="code" href="channels_8cpp.html#a4">00062</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a4">LogLevel</a>;
-<a name="l00063"></a><a class="code" href="channels_8cpp.html#a5">00063</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a5">ServerName</a>[MAXBUF];
-<a name="l00064"></a><a class="code" href="channels_8cpp.html#a6">00064</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a6">Network</a>[MAXBUF];
-<a name="l00065"></a><a class="code" href="channels_8cpp.html#a7">00065</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a7">ServerDesc</a>[MAXBUF];
-<a name="l00066"></a><a class="code" href="channels_8cpp.html#a8">00066</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a8">AdminName</a>[MAXBUF];
-<a name="l00067"></a><a class="code" href="channels_8cpp.html#a9">00067</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a9">AdminEmail</a>[MAXBUF];
-<a name="l00068"></a><a class="code" href="channels_8cpp.html#a10">00068</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a10">AdminNick</a>[MAXBUF];
-<a name="l00069"></a><a class="code" href="channels_8cpp.html#a11">00069</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a11">diepass</a>[MAXBUF];
-<a name="l00070"></a><a class="code" href="channels_8cpp.html#a12">00070</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a12">restartpass</a>[MAXBUF];
-<a name="l00071"></a><a class="code" href="channels_8cpp.html#a13">00071</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a13">motd</a>[MAXBUF];
-<a name="l00072"></a><a class="code" href="channels_8cpp.html#a14">00072</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a14">rules</a>[MAXBUF];
-<a name="l00073"></a><a class="code" href="channels_8cpp.html#a15">00073</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a15">list</a>[MAXBUF];
-<a name="l00074"></a><a class="code" href="channels_8cpp.html#a16">00074</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a16">PrefixQuit</a>[MAXBUF];
-<a name="l00075"></a><a class="code" href="channels_8cpp.html#a17">00075</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a17">DieValue</a>[MAXBUF];
-00076
-<a name="l00077"></a><a class="code" href="channels_8cpp.html#a18">00077</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a18">debugging</a>;
-<a name="l00078"></a><a class="code" href="channels_8cpp.html#a19">00078</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a19">WHOWAS_STALE</a>;
-<a name="l00079"></a><a class="code" href="channels_8cpp.html#a20">00079</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a20">WHOWAS_MAX</a>;
-<a name="l00080"></a><a class="code" href="channels_8cpp.html#a21">00080</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a21">DieDelay</a>;
-<a name="l00081"></a><a class="code" href="channels_8cpp.html#a22">00081</a> <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#a22">startup_time</a>;
-<a name="l00082"></a><a class="code" href="channels_8cpp.html#a23">00082</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a23">NetBufferSize</a>;
-<a name="l00083"></a><a class="code" href="channels_8cpp.html#a24">00083</a> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a24">MaxWhoResults</a>;
-<a name="l00084"></a><a class="code" href="channels_8cpp.html#a25">00084</a> <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#a25">nb_start</a>;
-00085
-<a name="l00086"></a><a class="code" href="channels_8cpp.html#a26">00086</a> <span class="keyword">extern</span> std::vector&lt;std::string&gt; <a class="code" href="channels_8cpp.html#a26">module_names</a>;
-00087
-<a name="l00088"></a><a class="code" href="channels_8cpp.html#a27">00088</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a27">boundPortCount</a>;
-<a name="l00089"></a><a class="code" href="channels_8cpp.html#a28">00089</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a28">portCount</a>;
-<a name="l00090"></a><a class="code" href="channels_8cpp.html#a29">00090</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a29">SERVERportCount</a>;
-<a name="l00091"></a><a class="code" href="channels_8cpp.html#a30">00091</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a30">ports</a>[MAXSOCKS];
-<a name="l00092"></a><a class="code" href="channels_8cpp.html#a31">00092</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a31">defaultRoute</a>;
-00093
-<a name="l00094"></a><a class="code" href="channels_8cpp.html#a32">00094</a> <span class="keyword">extern</span> std::vector&lt;long&gt; <a class="code" href="channels_8cpp.html#a32">auth_cookies</a>;
-<a name="l00095"></a><a class="code" href="channels_8cpp.html#a33">00095</a> <span class="keyword">extern</span> std::stringstream <a class="code" href="channels_8cpp.html#a33">config_f</a>;
-00096
-<a name="l00097"></a><a class="code" href="channels_8cpp.html#a34">00097</a> <span class="keyword">extern</span> <a class="code" href="classserverrec.html">serverrec</a>* <a class="code" href="channels_8cpp.html#a34">me</a>[32];
-00098
-<a name="l00099"></a><a class="code" href="channels_8cpp.html#a35">00099</a> <span class="keyword">extern</span> FILE *<a class="code" href="channels_8cpp.html#a35">log_file</a>;
-00100
-<a name="l00101"></a><a class="code" href="channels_8cpp.html#a36">00101</a> <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#a36">TIME</a>;
-00102
-00103 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
-00104
-<a name="l00105"></a><a class="code" href="channels_8cpp.html#a37">00105</a> std::vector&lt;ModeParameter&gt; <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>;
-00106
-<a name="l00107"></a><a class="code" href="classchanrec.html#a8">00107</a> <a class="code" href="classchanrec.html#a8">chanrec::chanrec</a>()
-00108 {
-00109 strcpy(<a class="code" href="classchanrec.html#o0">name</a>,<span class="stringliteral">""</span>);
-00110 strcpy(<a class="code" href="classchanrec.html#o1">custom_modes</a>,<span class="stringliteral">""</span>);
-00111 strcpy(<a class="code" href="classchanrec.html#o3">topic</a>,<span class="stringliteral">""</span>);
-00112 strcpy(<a class="code" href="classchanrec.html#o6">setby</a>,<span class="stringliteral">""</span>);
-00113 strcpy(<a class="code" href="classchanrec.html#o8">key</a>,<span class="stringliteral">""</span>);
-00114 <a class="code" href="classchanrec.html#o4">created</a> = <a class="code" href="classchanrec.html#o5">topicset</a> = <a class="code" href="classchanrec.html#o7">limit</a> = 0;
-00115 <a class="code" href="classchanrec.html#o9">binarymodes</a> = 0;
-00116 <a class="code" href="classchanrec.html#o2">internal_userlist</a>.clear();
-00117 }
-00118
-<a name="l00119"></a><a class="code" href="classchanrec.html#a0">00119</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a0">chanrec::SetCustomMode</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">bool</span> mode_on)
-00120 {
-00121 <span class="keywordflow">if</span> (mode_on) {
-00122 <span class="keyword">static</span> <span class="keywordtype">char</span> m[3];
-00123 m[0] = mode;
-00124 m[1] = <span class="charliteral">'\0'</span>;
-00125 <span class="keywordflow">if</span> (!strchr(this-&gt;custom_modes,mode))
-00126 {
-00127 strlcat(<a class="code" href="classchanrec.html#o1">custom_modes</a>,m,MAXMODES);
-00128 }
-00129 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Custom mode %c set"</span>,mode);
-00130 }
-00131 <span class="keywordflow">else</span> {
-00132
-00133 std::string a = this-&gt;<a class="code" href="classchanrec.html#o1">custom_modes</a>;
-00134 <span class="keywordtype">int</span> pos = a.find(mode);
-00135 a.erase(pos,1);
-00136 strncpy(this-&gt;custom_modes,a.c_str(),MAXMODES);
-00137
-00138 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Custom mode %c removed: modelist='%s'"</span>,mode,this-&gt;custom_modes);
-00139 this-&gt;<a class="code" href="classchanrec.html#a1">SetCustomModeParam</a>(mode,<span class="stringliteral">""</span>,<span class="keyword">false</span>);
-00140 }
-00141 }
-00142
-00143
-<a name="l00144"></a><a class="code" href="classchanrec.html#a1">00144</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a1">chanrec::SetCustomModeParam</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">char</span>* parameter,<span class="keywordtype">bool</span> mode_on)
-00145 {
-00146
-00147 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"SetCustomModeParam called"</span>);
-00148 <a class="code" href="classModeParameter.html">ModeParameter</a> M;
-00149 M.<a class="code" href="classModeParameter.html#o0">mode</a> = mode;
-00150 strlcpy(M.<a class="code" href="classModeParameter.html#o2">channel</a>,this-&gt;name,CHANMAX);
-00151 strlcpy(M.<a class="code" href="classModeParameter.html#o1">parameter</a>,parameter,MAXBUF);
-00152 <span class="keywordflow">if</span> (mode_on)
-00153 {
-00154 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s added"</span>,mode,parameter);
-00155 <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.push_back(M);
-00156 }
-00157 <span class="keywordflow">else</span>
-00158 {
-00159 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.size())
-00160 {
-00161 <span class="keywordflow">for</span> (vector&lt;ModeParameter&gt;::iterator i = <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.begin(); i &lt; <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.end(); i++)
-00162 {
-00163 <span class="keywordflow">if</span> ((i-&gt;mode == mode) &amp;&amp; (!strcasecmp(this-&gt;name,i-&gt;channel)))
-00164 {
-00165 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s removed"</span>,mode,parameter);
-00166 <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.erase(i);
-00167 <span class="keywordflow">return</span>;
-00168 }
-00169 }
-00170 }
-00171 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** BUG *** Attempt to remove non-existent mode parameter!"</span>);
-00172 }
-00173 }
-00174
-<a name="l00175"></a><a class="code" href="classchanrec.html#a2">00175</a> <span class="keywordtype">bool</span> <a class="code" href="classchanrec.html#a2">chanrec::IsCustomModeSet</a>(<span class="keywordtype">char</span> mode)
-00176 {
-00177 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Checking ISCustomModeSet: %c %s"</span>,mode,this-&gt;custom_modes);
-00178 <span class="keywordflow">return</span> (strchr(this-&gt;custom_modes,mode) != 0);
-00179 }
-00180
-<a name="l00181"></a><a class="code" href="classchanrec.html#a3">00181</a> std::string <a class="code" href="classchanrec.html#a3">chanrec::GetModeParameter</a>(<span class="keywordtype">char</span> mode)
-00182 {
-00183 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.size())
-00184 {
-00185 <span class="keywordflow">for</span> (vector&lt;ModeParameter&gt;::iterator i = <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.begin(); i &lt; <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.end(); i++)
-00186 {
-00187 <span class="keywordflow">if</span> ((i-&gt;mode == mode) &amp;&amp; (!strcasecmp(this-&gt;name,i-&gt;channel)))
-00188 {
-00189 <span class="keywordflow">return</span> i-&gt;parameter;
-00190 }
-00191 }
-00192 }
-00193 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-00194 }
-00195
-<a name="l00196"></a><a class="code" href="classchanrec.html#a4">00196</a> <span class="keywordtype">long</span> <a class="code" href="classchanrec.html#a4">chanrec::GetUserCounter</a>()
-00197 {
-00198 <span class="keywordflow">return</span> (this-&gt;<a class="code" href="classchanrec.html#o2">internal_userlist</a>.size());
-00199 }
-00200
-<a name="l00201"></a><a class="code" href="classchanrec.html#a5">00201</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a5">chanrec::AddUser</a>(<span class="keywordtype">char</span>* castuser)
-00202 {
-00203 <a class="code" href="classchanrec.html#o2">internal_userlist</a>.push_back(castuser);
-00204 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Added casted user to channel's internal list"</span>);
-00205 }
-00206
-<a name="l00207"></a><a class="code" href="classchanrec.html#a6">00207</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a6">chanrec::DelUser</a>(<span class="keywordtype">char</span>* castuser)
-00208 {
-00209 <span class="keywordflow">for</span> (std::vector&lt;char*&gt;::iterator a = <a class="code" href="classchanrec.html#o2">internal_userlist</a>.begin(); a &lt; <a class="code" href="classchanrec.html#o2">internal_userlist</a>.end(); a++)
-00210 {
-00211 <span class="keywordflow">if</span> (*a == castuser)
-00212 {
-00213 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Removed casted user from channel's internal list"</span>);
-00214 <a class="code" href="classchanrec.html#o2">internal_userlist</a>.erase(a);
-00215 <span class="keywordflow">return</span>;
-00216 }
-00217 }
-00218 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"BUG BUG BUG! Attempt to remove an uncasted user from the internal list of %s!"</span>,<a class="code" href="classchanrec.html#o0">name</a>);
-00219 }
-00220
-<a name="l00221"></a><a class="code" href="classchanrec.html#a7">00221</a> std::vector&lt;char*&gt; *<a class="code" href="classchanrec.html#a7">chanrec::GetUsers</a>()
-00222 {
-00223 <span class="keywordflow">return</span> &amp;<a class="code" href="classchanrec.html#o2">internal_userlist</a>;
-00224 }
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:18 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>channels.cpp</h1><a href="channels_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
+<a name="l00018"></a>00018
+<a name="l00019"></a>00019 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "inspircd.h"</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include "inspircd_io.h"</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "inspircd_util.h"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;sys/errno.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;sys/ioctl.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;sys/utsname.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;time.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#ifdef GCC3</span>
+<a name="l00030"></a>00030 <span class="preprocessor"></span><span class="preprocessor">#include &lt;ext/hash_map&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#else</span>
+<a name="l00032"></a>00032 <span class="preprocessor"></span><span class="preprocessor">#include &lt;hash_map&gt;</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#endif</span>
+<a name="l00034"></a>00034 <span class="preprocessor"></span><span class="preprocessor">#include &lt;map&gt;</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include &lt;deque&gt;</span>
+<a name="l00038"></a>00038 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
+<a name="l00039"></a>00039 <span class="preprocessor">#include "<a class="code" href="ctables_8h.html">ctables.h</a>"</span>
+<a name="l00040"></a>00040 <span class="preprocessor">#include "globals.h"</span>
+<a name="l00041"></a>00041 <span class="preprocessor">#include "<a class="code" href="modules_8h.html">modules.h</a>"</span>
+<a name="l00042"></a>00042 <span class="preprocessor">#include "dynamic.h"</span>
+<a name="l00043"></a>00043 <span class="preprocessor">#include "wildcard.h"</span>
+<a name="l00044"></a>00044 <span class="preprocessor">#include "<a class="code" href="message_8h.html">message.h</a>"</span>
+<a name="l00045"></a>00045 <span class="preprocessor">#include "<a class="code" href="mode_8h.html">mode.h</a>"</span>
+<a name="l00046"></a>00046 <span class="preprocessor">#include "<a class="code" href="xline_8h.html">xline.h</a>"</span>
+<a name="l00047"></a>00047 <span class="preprocessor">#include "inspstring.h"</span>
+<a name="l00048"></a>00048 <span class="preprocessor">#include "helperfuncs.h"</span>
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 <span class="preprocessor">#ifdef GCC3</span>
+<a name="l00051"></a>00051 <span class="preprocessor"></span><span class="preprocessor">#define nspace __gnu_cxx</span>
+<a name="l00052"></a>00052 <span class="preprocessor"></span><span class="preprocessor">#else</span>
+<a name="l00053"></a><a class="code" href="channels_8cpp.html#nspace">00053</a> <span class="preprocessor"></span><span class="preprocessor">#define nspace std</span>
+<a name="l00054"></a>00054 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00055"></a>00055 <span class="preprocessor"></span>
+<a name="l00056"></a>00056 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#MODCOUNT">MODCOUNT</a>;
+<a name="l00057"></a>00057 <span class="keyword">extern</span> std::vector&lt;Module*&gt; <a class="code" href="channels_8cpp.html#modules">modules</a>;
+<a name="l00058"></a>00058 <span class="keyword">extern</span> std::vector&lt;ircd_module*&gt; <a class="code" href="channels_8cpp.html#factory">factory</a>;
+<a name="l00059"></a>00059
+<a name="l00060"></a>00060 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#LogLevel">LogLevel</a>;
+<a name="l00061"></a>00061 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a>[MAXBUF];
+<a name="l00062"></a>00062 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#Network_5BMAXBUF_5D">Network</a>[MAXBUF];
+<a name="l00063"></a>00063 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#ServerDesc_5BMAXBUF_5D">ServerDesc</a>[MAXBUF];
+<a name="l00064"></a>00064 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#AdminName_5BMAXBUF_5D">AdminName</a>[MAXBUF];
+<a name="l00065"></a>00065 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#AdminEmail_5BMAXBUF_5D">AdminEmail</a>[MAXBUF];
+<a name="l00066"></a>00066 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#AdminNick_5BMAXBUF_5D">AdminNick</a>[MAXBUF];
+<a name="l00067"></a>00067 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#diepass_5BMAXBUF_5D">diepass</a>[MAXBUF];
+<a name="l00068"></a>00068 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#restartpass_5BMAXBUF_5D">restartpass</a>[MAXBUF];
+<a name="l00069"></a>00069 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#motd_5BMAXBUF_5D">motd</a>[MAXBUF];
+<a name="l00070"></a>00070 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#rules_5BMAXBUF_5D">rules</a>[MAXBUF];
+<a name="l00071"></a>00071 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#list_5BMAXBUF_5D">list</a>[MAXBUF];
+<a name="l00072"></a>00072 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#PrefixQuit_5BMAXBUF_5D">PrefixQuit</a>[MAXBUF];
+<a name="l00073"></a>00073 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#DieValue_5BMAXBUF_5D">DieValue</a>[MAXBUF];
+<a name="l00074"></a>00074
+<a name="l00075"></a>00075 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#debugging">debugging</a>;
+<a name="l00076"></a>00076 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#WHOWAS_5FSTALE">WHOWAS_STALE</a>;
+<a name="l00077"></a>00077 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#WHOWAS_5FMAX">WHOWAS_MAX</a>;
+<a name="l00078"></a>00078 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#DieDelay">DieDelay</a>;
+<a name="l00079"></a>00079 <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#startup_5Ftime">startup_time</a>;
+<a name="l00080"></a>00080 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#NetBufferSize">NetBufferSize</a>;
+<a name="l00081"></a><a class="code" href="modules_8cpp.html#MaxWhoResults">00081</a> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#MaxWhoResults">MaxWhoResults</a>;
+<a name="l00082"></a>00082 <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#nb_5Fstart">nb_start</a>;
+<a name="l00083"></a>00083
+<a name="l00084"></a>00084 <span class="keyword">extern</span> std::vector&lt;std::string&gt; <a class="code" href="channels_8cpp.html#module_5Fnames">module_names</a>;
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#boundPortCount">boundPortCount</a>;
+<a name="l00087"></a>00087 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#portCount">portCount</a>;
+<a name="l00088"></a>00088
+<a name="l00089"></a>00089 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#ports_5BMAXSOCKS_5D">ports</a>[MAXSOCKS];
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091 <span class="keyword">extern</span> std::stringstream <a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>;
+<a name="l00092"></a>00092
+<a name="l00093"></a>00093 <span class="keyword">extern</span> FILE *<a class="code" href="channels_8cpp.html#log_5Ffile">log_file</a>;
+<a name="l00094"></a>00094
+<a name="l00095"></a>00095 <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#TIME">TIME</a>;
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
+<a name="l00098"></a>00098
+<a name="l00099"></a><a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">00099</a> std::vector&lt;ModeParameter&gt; <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>;
+<a name="l00100"></a>00100
+<a name="l00101"></a><a class="code" href="classchanrec.html#chanrec_28_29">00101</a> <a class="code" href="classchanrec.html#chanrec_28_29">chanrec::chanrec</a>()
+<a name="l00102"></a>00102 {
+<a name="l00103"></a>00103 strcpy(<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>,<span class="stringliteral">""</span>);
+<a name="l00104"></a>00104 strcpy(<a class="code" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a>,<span class="stringliteral">""</span>);
+<a name="l00105"></a>00105 strcpy(<a class="code" href="classchanrec.html#topic_5BMAXBUF_5D">topic</a>,<span class="stringliteral">""</span>);
+<a name="l00106"></a>00106 strcpy(<a class="code" href="classchanrec.html#setby_5BNICKMAX_5D">setby</a>,<span class="stringliteral">""</span>);
+<a name="l00107"></a>00107 strcpy(<a class="code" href="classchanrec.html#key_5B_33_32_5D">key</a>,<span class="stringliteral">""</span>);
+<a name="l00108"></a>00108 <a class="code" href="classchanrec.html#created">created</a> = <a class="code" href="classchanrec.html#topicset">topicset</a> = <a class="code" href="classchanrec.html#limit">limit</a> = 0;
+<a name="l00109"></a>00109 <a class="code" href="classchanrec.html#binarymodes">binarymodes</a> = 0;
+<a name="l00110"></a>00110 <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.clear();
+<a name="l00111"></a>00111 }
+<a name="l00112"></a>00112
+<a name="l00113"></a><a class="code" href="classchanrec.html#SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29">00113</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29">chanrec::SetCustomMode</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">bool</span> mode_on)
+<a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 <span class="keywordflow">if</span> (mode_on) {
+<a name="l00116"></a>00116 <span class="keyword">static</span> <span class="keywordtype">char</span> m[3];
+<a name="l00117"></a>00117 m[0] = mode;
+<a name="l00118"></a>00118 m[1] = <span class="charliteral">'\0'</span>;
+<a name="l00119"></a>00119 <span class="keywordflow">if</span> (!strchr(this-&gt;custom_modes,mode))
+<a name="l00120"></a>00120 {
+<a name="l00121"></a>00121 strlcat(<a class="code" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a>,m,MAXMODES);
+<a name="l00122"></a>00122 }
+<a name="l00123"></a>00123 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Custom mode %c set"</span>,mode);
+<a name="l00124"></a>00124 }
+<a name="l00125"></a>00125 <span class="keywordflow">else</span> {
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127 <a class="code" href="namespaceirc.html#string">std::string</a> a = this-&gt;<a class="code" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a>;
+<a name="l00128"></a>00128 <span class="keywordtype">int</span> pos = a.find(mode);
+<a name="l00129"></a>00129 a.erase(pos,1);
+<a name="l00130"></a>00130 strncpy(this-&gt;custom_modes,a.c_str(),MAXMODES);
+<a name="l00131"></a>00131
+<a name="l00132"></a>00132 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Custom mode %c removed: modelist='%s'"</span>,mode,this-&gt;custom_modes);
+<a name="l00133"></a>00133 this-&gt;<a class="code" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">SetCustomModeParam</a>(mode,<span class="stringliteral">""</span>,<span class="keyword">false</span>);
+<a name="l00134"></a>00134 }
+<a name="l00135"></a>00135 }
+<a name="l00136"></a>00136
+<a name="l00137"></a>00137
+<a name="l00138"></a><a class="code" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">00138</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">chanrec::SetCustomModeParam</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">char</span>* parameter,<span class="keywordtype">bool</span> mode_on)
+<a name="l00139"></a>00139 {
+<a name="l00140"></a>00140
+<a name="l00141"></a>00141 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"SetCustomModeParam called"</span>);
+<a name="l00142"></a>00142 <a class="code" href="classModeParameter.html">ModeParameter</a> M;
+<a name="l00143"></a>00143 M.<a class="code" href="classModeParameter.html#mode">mode</a> = mode;
+<a name="l00144"></a>00144 strlcpy(M.<a class="code" href="classModeParameter.html#channel_5BCHANMAX_5D">channel</a>,this-&gt;name,CHANMAX);
+<a name="l00145"></a>00145 strlcpy(M.<a class="code" href="classModeParameter.html#parameter_5BMAXBUF_5D">parameter</a>,parameter,MAXBUF);
+<a name="l00146"></a>00146 <span class="keywordflow">if</span> (mode_on)
+<a name="l00147"></a>00147 {
+<a name="l00148"></a>00148 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s added"</span>,mode,parameter);
+<a name="l00149"></a>00149 <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.push_back(M);
+<a name="l00150"></a>00150 }
+<a name="l00151"></a>00151 <span class="keywordflow">else</span>
+<a name="l00152"></a>00152 {
+<a name="l00153"></a>00153 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.size())
+<a name="l00154"></a>00154 {
+<a name="l00155"></a>00155 <span class="keywordflow">for</span> (vector&lt;ModeParameter&gt;::iterator i = <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.begin(); i &lt; <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.end(); i++)
+<a name="l00156"></a>00156 {
+<a name="l00157"></a>00157 <span class="keywordflow">if</span> ((i-&gt;mode == mode) &amp;&amp; (!strcasecmp(this-&gt;name,i-&gt;channel)))
+<a name="l00158"></a>00158 {
+<a name="l00159"></a>00159 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s removed"</span>,mode,parameter);
+<a name="l00160"></a>00160 <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.erase(i);
+<a name="l00161"></a>00161 <span class="keywordflow">return</span>;
+<a name="l00162"></a>00162 }
+<a name="l00163"></a>00163 }
+<a name="l00164"></a>00164 }
+<a name="l00165"></a>00165 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** BUG *** Attempt to remove non-existent mode parameter!"</span>);
+<a name="l00166"></a>00166 }
+<a name="l00167"></a>00167 }
+<a name="l00168"></a>00168
+<a name="l00169"></a><a class="code" href="classchanrec.html#IsCustomModeSet_28char_20mode_29">00169</a> <span class="keywordtype">bool</span> <a class="code" href="classchanrec.html#IsCustomModeSet_28char_20mode_29">chanrec::IsCustomModeSet</a>(<span class="keywordtype">char</span> mode)
+<a name="l00170"></a>00170 {
+<a name="l00171"></a>00171 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Checking ISCustomModeSet: %c %s"</span>,mode,this-&gt;custom_modes);
+<a name="l00172"></a>00172 <span class="keywordflow">return</span> (strchr(this-&gt;custom_modes,mode) != 0);
+<a name="l00173"></a>00173 }
+<a name="l00174"></a>00174
+<a name="l00175"></a><a class="code" href="classchanrec.html#GetModeParameter_28char_20mode_29">00175</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classchanrec.html#GetModeParameter_28char_20mode_29">chanrec::GetModeParameter</a>(<span class="keywordtype">char</span> mode)
+<a name="l00176"></a>00176 {
+<a name="l00177"></a>00177 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.size())
+<a name="l00178"></a>00178 {
+<a name="l00179"></a>00179 <span class="keywordflow">for</span> (vector&lt;ModeParameter&gt;::iterator i = <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.begin(); i &lt; <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.end(); i++)
+<a name="l00180"></a>00180 {
+<a name="l00181"></a>00181 <span class="keywordflow">if</span> ((i-&gt;mode == mode) &amp;&amp; (!strcasecmp(this-&gt;name,i-&gt;channel)))
+<a name="l00182"></a>00182 {
+<a name="l00183"></a>00183 <span class="keywordflow">return</span> i-&gt;parameter;
+<a name="l00184"></a>00184 }
+<a name="l00185"></a>00185 }
+<a name="l00186"></a>00186 }
+<a name="l00187"></a>00187 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+<a name="l00188"></a>00188 }
+<a name="l00189"></a>00189
+<a name="l00190"></a><a class="code" href="classchanrec.html#GetUserCounter_28_29">00190</a> <span class="keywordtype">long</span> <a class="code" href="classchanrec.html#GetUserCounter_28_29">chanrec::GetUserCounter</a>()
+<a name="l00191"></a>00191 {
+<a name="l00192"></a>00192 <span class="keywordflow">return</span> (this-&gt;internal_userlist.size());
+<a name="l00193"></a>00193 }
+<a name="l00194"></a>00194
+<a name="l00195"></a><a class="code" href="classchanrec.html#AddUser_28char_20_2Acastuser_29">00195</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#AddUser_28char_20_2Acastuser_29">chanrec::AddUser</a>(<span class="keywordtype">char</span>* castuser)
+<a name="l00196"></a>00196 {
+<a name="l00197"></a>00197 <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.push_back(castuser);
+<a name="l00198"></a>00198 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Added casted user to channel's internal list"</span>);
+<a name="l00199"></a>00199 }
+<a name="l00200"></a>00200
+<a name="l00201"></a><a class="code" href="classchanrec.html#DelUser_28char_20_2Acastuser_29">00201</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#DelUser_28char_20_2Acastuser_29">chanrec::DelUser</a>(<span class="keywordtype">char</span>* castuser)
+<a name="l00202"></a>00202 {
+<a name="l00203"></a>00203 <span class="keywordflow">for</span> (std::vector&lt;char*&gt;::iterator a = <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.begin(); a &lt; <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.end(); a++)
+<a name="l00204"></a>00204 {
+<a name="l00205"></a>00205 <span class="keywordflow">if</span> (*a == castuser)
+<a name="l00206"></a>00206 {
+<a name="l00207"></a>00207 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Removed casted user from channel's internal list"</span>);
+<a name="l00208"></a>00208 <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.erase(a);
+<a name="l00209"></a>00209 <span class="keywordflow">return</span>;
+<a name="l00210"></a>00210 }
+<a name="l00211"></a>00211 }
+<a name="l00212"></a>00212 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"BUG BUG BUG! Attempt to remove an uncasted user from the internal list of %s!"</span>,<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>);
+<a name="l00213"></a>00213 }
+<a name="l00214"></a>00214
+<a name="l00215"></a><a class="code" href="classchanrec.html#GetUsers_28_29">00215</a> std::vector&lt;char*&gt; *<a class="code" href="classchanrec.html#GetUsers_28_29">chanrec::GetUsers</a>()
+<a name="l00216"></a>00216 {
+<a name="l00217"></a>00217 <span class="keywordflow">return</span> &amp;<a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>;
+<a name="l00218"></a>00218 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/channels_8cpp.html b/docs/module-doc/channels_8cpp.html
index 4d76c273f..cfaa8f104 100644
--- a/docs/module-doc/channels_8cpp.html
+++ b/docs/module-doc/channels_8cpp.html
@@ -1,14 +1,16 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: channels.cpp File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>channels.cpp File Reference</h1><code>#include "inspircd_config.h"</code><br>
-<code>#include "inspircd.h"</code><br>
-<code>#include "inspircd_io.h"</code><br>
-<code>#include "inspircd_util.h"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>channels.cpp File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
+<code>#include &quot;inspircd.h&quot;</code><br>
+<code>#include &quot;inspircd_io.h&quot;</code><br>
+<code>#include &quot;inspircd_util.h&quot;</code><br>
<code>#include &lt;unistd.h&gt;</code><br>
<code>#include &lt;sys/errno.h&gt;</code><br>
<code>#include &lt;sys/ioctl.h&gt;</code><br>
@@ -20,131 +22,120 @@
<code>#include &lt;sstream&gt;</code><br>
<code>#include &lt;vector&gt;</code><br>
<code>#include &lt;deque&gt;</code><br>
-<code>#include "<a class="el" href="connection_8h-source.html">connection.h</a>"</code><br>
-<code>#include "<a class="el" href="users_8h-source.html">users.h</a>"</code><br>
-<code>#include "<a class="el" href="servers_8h-source.html">servers.h</a>"</code><br>
-<code>#include "<a class="el" href="ctables_8h-source.html">ctables.h</a>"</code><br>
-<code>#include "globals.h"</code><br>
-<code>#include "<a class="el" href="modules_8h-source.html">modules.h</a>"</code><br>
-<code>#include "dynamic.h"</code><br>
-<code>#include "wildcard.h"</code><br>
-<code>#include "<a class="el" href="message_8h-source.html">message.h</a>"</code><br>
-<code>#include "<a class="el" href="mode_8h-source.html">mode.h</a>"</code><br>
-<code>#include "<a class="el" href="xline_8h-source.html">xline.h</a>"</code><br>
-<code>#include "inspstring.h"</code><br>
-<code>#include "helperfuncs.h"</code><br>
-
-<p>
-Include dependency graph for channels.cpp:<p><center><img src="channels_8cpp__incl.gif" border="0" usemap="#channels.cpp_map" alt="Include dependency graph"></center>
+<code>#include &quot;<a class="el" href="users_8h-source.html">users.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="ctables_8h-source.html">ctables.h</a>&quot;</code><br>
+<code>#include &quot;globals.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="modules_8h-source.html">modules.h</a>&quot;</code><br>
+<code>#include &quot;dynamic.h&quot;</code><br>
+<code>#include &quot;wildcard.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="message_8h-source.html">message.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="mode_8h-source.html">mode.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="xline_8h-source.html">xline.h</a>&quot;</code><br>
+<code>#include &quot;inspstring.h&quot;</code><br>
+<code>#include &quot;helperfuncs.h&quot;</code><br>
+
+<p>
+Include dependency graph for channels.cpp:<p><center><img src="channels_8cpp__incl.gif" border="0" usemap="#channels.cpp_map" alt=""></center>
<map name="channels.cpp_map">
-<area href="connection_8h.html" shape="rect" coords="178,666,277,693" alt="">
-<area href="users_8h.html" shape="rect" coords="335,869,399,895" alt="">
-<area href="servers_8h.html" shape="rect" coords="329,615,406,642" alt="">
-<area href="ctables_8h.html" shape="rect" coords="190,413,265,439" alt="">
-<area href="modules_8h.html" shape="rect" coords="326,1274,409,1301" alt="">
-<area href="message_8h.html" shape="rect" coords="470,931,555,958" alt="">
-<area href="mode_8h.html" shape="rect" coords="479,1603,546,1630" alt="">
-<area href="xline_8h.html" shape="rect" coords="482,1071,543,1098" alt="">
+<area href="users_8h-source.html" shape="rect" coords="324,1002,388,1028" alt="">
+<area href="ctables_8h-source.html" shape="rect" coords="319,355,393,382" alt="">
+<area href="modules_8h-source.html" shape="rect" coords="169,748,252,775" alt="">
+<area href="message_8h-source.html" shape="rect" coords="168,1052,253,1079" alt="">
+<area href="mode_8h-source.html" shape="rect" coords="177,1154,244,1180" alt="">
+<area href="xline_8h-source.html" shape="rect" coords="180,850,241,876" alt="">
</map>
<p>
-<a href="channels_8cpp-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="channels_8cpp-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Namespaces</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>namespace &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="namespacestd.html">std</a></td></tr>
-
-<tr><td colspan=2><br><h2>Defines</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a0">nspace</a>&nbsp;&nbsp;&nbsp;std</td></tr>
-
-<tr><td colspan=2><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a1">MODCOUNT</a> = -1</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="classModule.html">Module</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a2">modules</a></td></tr>
+<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacestd.html">std</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="modules_8h.html#a34">ircd_module</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a3">factory</a></td></tr>
+<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#nspace">nspace</a>&nbsp;&nbsp;&nbsp;std</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a4">LogLevel</a></td></tr>
+<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#MODCOUNT">MODCOUNT</a> = -1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a5">ServerName</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="classModule.html">Module</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#modules">modules</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a6">Network</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="modules_8h.html#ircd_5Fmodule">ircd_module</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#factory">factory</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a7">ServerDesc</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#LogLevel">LogLevel</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a8">AdminName</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a9">AdminEmail</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#Network_5BMAXBUF_5D">Network</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a10">AdminNick</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#ServerDesc_5BMAXBUF_5D">ServerDesc</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a11">diepass</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#AdminName_5BMAXBUF_5D">AdminName</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a12">restartpass</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#AdminEmail_5BMAXBUF_5D">AdminEmail</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a13">motd</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#AdminNick_5BMAXBUF_5D">AdminNick</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a14">rules</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#diepass_5BMAXBUF_5D">diepass</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a15">list</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#restartpass_5BMAXBUF_5D">restartpass</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a16">PrefixQuit</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#motd_5BMAXBUF_5D">motd</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a17">DieValue</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#rules_5BMAXBUF_5D">rules</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a18">debugging</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#list_5BMAXBUF_5D">list</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a19">WHOWAS_STALE</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#PrefixQuit_5BMAXBUF_5D">PrefixQuit</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a20">WHOWAS_MAX</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#DieValue_5BMAXBUF_5D">DieValue</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a21">DieDelay</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#debugging">debugging</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a22">startup_time</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#WHOWAS_5FSTALE">WHOWAS_STALE</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a23">NetBufferSize</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#WHOWAS_5FMAX">WHOWAS_MAX</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a24">MaxWhoResults</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#DieDelay">DieDelay</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a25">nb_start</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#startup_5Ftime">startup_time</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a26">module_names</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#NetBufferSize">NetBufferSize</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a27">boundPortCount</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#MaxWhoResults">MaxWhoResults</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a28">portCount</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#nb_5Fstart">nb_start</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a29">SERVERportCount</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="namespaceirc.html#string">std::string</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#module_5Fnames">module_names</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a30">ports</a> [MAXSOCKS]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#boundPortCount">boundPortCount</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a31">defaultRoute</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#portCount">portCount</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; long &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a32">auth_cookies</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#ports_5BMAXSOCKS_5D">ports</a> [MAXSOCKS]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::stringstream&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a33">config_f</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::stringstream&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#config_5Ff">config_f</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a34">me</a> [32]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">FILE *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#log_5Ffile">log_file</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>FILE *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a35">log_file</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#TIME">TIME</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a36">TIME</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="classModeParameter.html">ModeParameter</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8cpp.html#a37">custom_mode_params</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="classModeParameter.html">ModeParameter</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a></td></tr>
</table>
<hr><h2>Define Documentation</h2>
-<a name="a0" doxytag="channels.cpp::nspace"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="nspace"></a><!-- doxytag: member="channels.cpp::nspace" ref="nspace" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define nspace&nbsp;&nbsp;&nbsp;std
+ <td class="md" nowrap valign="top">#define nspace&nbsp;&nbsp;&nbsp;std </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -154,22 +145,23 @@ Include dependency graph for channels.cpp:<p><center><img src="channels_8cpp__in
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00055">55</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+Definition at line <a class="el" href="channels_8cpp-source.html#l00053">53</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
</tr>
</table>
<hr><h2>Variable Documentation</h2>
-<a name="a9" doxytag="channels.cpp::AdminEmail"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AdminEmail_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::AdminEmail" ref="AdminEmail_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a10">AdminEmail</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#AdminEmail_5BMAXBUF_5D">AdminEmail</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -177,47 +169,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00055">55</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00067">67</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
- </tr>
-</table>
-<a name="a8" doxytag="channels.cpp::AdminName"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a9">AdminName</a>[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="channels_8cpp-source.html#l00066">66</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
- </tr>
-</table>
-<a name="a10" doxytag="channels.cpp::AdminNick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AdminName_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::AdminName" ref="AdminName_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a11">AdminNick</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#AdminName_5BMAXBUF_5D">AdminName</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -225,23 +192,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00066">66</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00068">68</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a32" doxytag="channels.cpp::auth_cookies"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AdminNick_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::AdminNick" ref="AdminNick_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;long&gt; <a class="el" href="modules_8cpp.html#a33">auth_cookies</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#AdminNick_5BMAXBUF_5D">AdminNick</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -249,23 +215,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00068">68</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00094">94</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a27" doxytag="channels.cpp::boundPortCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="boundPortCount"></a><!-- doxytag: member="channels.cpp::boundPortCount" ref="boundPortCount" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a28">boundPortCount</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="socket_8cpp.html#boundPortCount">boundPortCount</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -273,23 +238,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00094">94</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00088">88</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a33" doxytag="channels.cpp::config_f"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="config_5Ff"></a><!-- doxytag: member="channels.cpp::config_f" ref="config_5Ff" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::stringstream <a class="el" href="users_8cpp.html#a0">config_f</a>
+ <td class="md" nowrap valign="top">std::stringstream <a class="el" href="users_8cpp.html#config_5Ff">config_f</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -299,23 +263,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00088">88</a>
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00095">95</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00140">userrec::HasPermission()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00142">userrec::HasPermission()</a>. </td>
</tr>
</table>
-<a name="a37" doxytag="channels.cpp::custom_mode_params"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="custom_5Fmode_5Fparams"></a><!-- doxytag: member="channels.cpp::custom_mode_params" ref="custom_5Fmode_5Fparams" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="classModeParameter.html">ModeParameter</a>&gt; <a class="el" href="channels_8cpp.html#a37">custom_mode_params</a>
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="classModeParameter.html">ModeParameter</a>&gt; <a class="el" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -325,23 +288,24 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00140">userrec::HasPer
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00105">105</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+Definition at line <a class="el" href="channels_8cpp-source.html#l00099">99</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00181">chanrec::GetModeParameter()</a>, and <a class="el" href="channels_8cpp-source.html#l00144">chanrec::SetCustomModeParam()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00175">chanrec::GetModeParameter()</a>, and <a class="el" href="channels_8cpp-source.html#l00138">chanrec::SetCustomModeParam()</a>. </td>
</tr>
</table>
-<a name="a18" doxytag="channels.cpp::debugging"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="debugging"></a><!-- doxytag: member="channels.cpp::debugging" ref="debugging" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a19">debugging</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#debugging">debugging</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -349,47 +313,22 @@ Referenced by <a class="el" href="channels_8cpp-source.html#l00181">chanrec::Get
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00077">77</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
- </tr>
-</table>
-<a name="a31" doxytag="channels.cpp::defaultRoute"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a32">defaultRoute</a>
- </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="channels_8cpp-source.html#l00092">92</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
</tr>
</table>
-<a name="a21" doxytag="channels.cpp::DieDelay"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DieDelay"></a><!-- doxytag: member="channels.cpp::DieDelay" ref="DieDelay" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a22">DieDelay</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#DieDelay">DieDelay</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -397,47 +336,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00092">92</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00080">80</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
- </tr>
-</table>
-<a name="a11" doxytag="channels.cpp::diepass"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a12">diepass</a>[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="channels_8cpp-source.html#l00069">69</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
- </tr>
-</table>
-<a name="a17" doxytag="channels.cpp::DieValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="diepass_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::diepass" ref="diepass_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a18">DieValue</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#diepass_5BMAXBUF_5D">diepass</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -445,47 +359,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00069">69</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00075">75</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
- </tr>
-</table>
-<a name="a3" doxytag="channels.cpp::factory"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="modules_8h.html#a34">ircd_module</a>*&gt; factory
- </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="channels_8cpp-source.html#l00060">60</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
</tr>
</table>
-<a name="a15" doxytag="channels.cpp::list"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DieValue_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::DieValue" ref="DieValue_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a16">list</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#DieValue_5BMAXBUF_5D">DieValue</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -493,25 +382,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00060">60</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00073">73</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00402">Server::GetUsers()</a>. </td>
+ </td>
</tr>
</table>
-<a name="a35" doxytag="channels.cpp::log_file"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="factory"></a><!-- doxytag: member="channels.cpp::factory" ref="factory" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> FILE* <a class="el" href="modules_8cpp.html#a36">log_file</a>
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="modules_8h.html#ircd_5Fmodule">ircd_module</a>*&gt; factory </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -519,23 +405,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00402">Server::GetUs
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00099">99</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="channels.cpp::LogLevel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="list_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::list" ref="list_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a5">LogLevel</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#list_5BMAXBUF_5D">list</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -545,21 +430,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00099">99</a>
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00062">62</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00420">Server::GetUsers()</a>. </td>
</tr>
</table>
-<a name="a24" doxytag="channels.cpp::MaxWhoResults"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="log_5Ffile"></a><!-- doxytag: member="channels.cpp::log_file" ref="log_5Ffile" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a25">MaxWhoResults</a>
+ <td class="md" nowrap valign="top">FILE* <a class="el" href="socket_8cpp.html#log_5Ffile">log_file</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -567,23 +453,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00062">62</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00083">83</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a34" doxytag="channels.cpp::me"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="LogLevel"></a><!-- doxytag: member="channels.cpp::LogLevel" ref="LogLevel" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classserverrec.html">serverrec</a>* <a class="el" href="servers_8cpp.html#a2">me</a>[32]
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#LogLevel">LogLevel</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -591,25 +476,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00083">83</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00097">97</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-Referenced by <a class="el" href="servers_8cpp-source.html#l00256">IsRoutable()</a>. </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="channels.cpp::MODCOUNT"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MaxWhoResults"></a><!-- doxytag: member="channels.cpp::MaxWhoResults" ref="MaxWhoResults" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a0">MODCOUNT</a> = -1
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#MaxWhoResults">MaxWhoResults</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -619,23 +501,22 @@ Referenced by <a class="el" href="servers_8cpp-source.html#l00256">IsRoutable()<
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l01019">1019</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00809">Server::FindModule()</a>. </td>
+Definition at line <a class="el" href="channels_8cpp-source.html#l00081">81</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
</tr>
</table>
-<a name="a26" doxytag="channels.cpp::module_names"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MODCOUNT"></a><!-- doxytag: member="channels.cpp::MODCOUNT" ref="MODCOUNT" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;std::string&gt; <a class="el" href="modules_8cpp.html#a27">module_names</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#MODCOUNT">MODCOUNT</a> = -1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -645,23 +526,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00809">Server::FindM
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00086">86</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00994">994</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00809">Server::FindModule()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00784">Server::FindModule()</a>. </td>
</tr>
</table>
-<a name="a2" doxytag="channels.cpp::modules"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="module_5Fnames"></a><!-- doxytag: member="channels.cpp::module_names" ref="module_5Fnames" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="classModule.html">Module</a>*&gt; modules
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="namespaceirc.html#string">std::string</a>&gt; <a class="el" href="modules_8cpp.html#module_5Fnames">module_names</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -671,23 +553,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00809">Server::FindM
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00059">59</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00809">Server::FindModule()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00784">Server::FindModule()</a>. </td>
</tr>
</table>
-<a name="a13" doxytag="channels.cpp::motd"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="modules"></a><!-- doxytag: member="channels.cpp::modules" ref="modules" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a14">motd</a>[MAXBUF]
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="classModule.html">Module</a>*&gt; modules </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -697,21 +578,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00809">Server::FindM
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00071">71</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00784">Server::FindModule()</a>. </td>
</tr>
</table>
-<a name="a25" doxytag="channels.cpp::nb_start"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="motd_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::motd" ref="motd_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="modules_8cpp.html#a26">nb_start</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#motd_5BMAXBUF_5D">motd</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -719,23 +601,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00071">71</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00084">84</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a23" doxytag="channels.cpp::NetBufferSize"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="nb_5Fstart"></a><!-- doxytag: member="channels.cpp::nb_start" ref="nb_5Fstart" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a24">NetBufferSize</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="modules_8cpp.html#nb_5Fstart">nb_start</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -743,23 +624,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00084">84</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00082">82</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a6" doxytag="channels.cpp::Network"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="NetBufferSize"></a><!-- doxytag: member="channels.cpp::NetBufferSize" ref="NetBufferSize" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a7">Network</a>[MAXBUF]
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#NetBufferSize">NetBufferSize</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -767,23 +647,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00082">82</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00064">64</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a28" doxytag="channels.cpp::portCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Network_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::Network" ref="Network_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a29">portCount</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#Network_5BMAXBUF_5D">Network</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -791,23 +670,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00064">64</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00089">89</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a30" doxytag="channels.cpp::ports"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="portCount"></a><!-- doxytag: member="channels.cpp::portCount" ref="portCount" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a31">ports</a>[MAXSOCKS]
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#portCount">portCount</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -815,23 +693,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00089">89</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00091">91</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a16" doxytag="channels.cpp::PrefixQuit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ports_5BMAXSOCKS_5D"></a><!-- doxytag: member="channels.cpp::ports" ref="ports_5BMAXSOCKS_5D" args="[MAXSOCKS]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a17">PrefixQuit</a>[MAXBUF]
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#ports_5BMAXSOCKS_5D">ports</a>[MAXSOCKS] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -839,23 +716,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00091">91</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00074">74</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a12" doxytag="channels.cpp::restartpass"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="PrefixQuit_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::PrefixQuit" ref="PrefixQuit_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a13">restartpass</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#PrefixQuit_5BMAXBUF_5D">PrefixQuit</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -863,23 +739,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00074">74</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00070">70</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a14" doxytag="channels.cpp::rules"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="restartpass_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::restartpass" ref="restartpass_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a15">rules</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#restartpass_5BMAXBUF_5D">restartpass</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -887,23 +762,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00070">70</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00072">72</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a7" doxytag="channels.cpp::ServerDesc"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="rules_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::rules" ref="rules_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a8">ServerDesc</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#rules_5BMAXBUF_5D">rules</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -911,23 +785,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00072">72</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00065">65</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a5" doxytag="channels.cpp::ServerName"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ServerDesc_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::ServerDesc" ref="ServerDesc_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="users_8cpp.html#a1">ServerName</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#ServerDesc_5BMAXBUF_5D">ServerDesc</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -935,25 +808,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00065">65</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00063">63</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>. </td>
+ </td>
</tr>
</table>
-<a name="a29" doxytag="channels.cpp::SERVERportCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ServerName_5BMAXBUF_5D"></a><!-- doxytag: member="channels.cpp::ServerName" ref="ServerName_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a30">SERVERportCount</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="users_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -963,21 +833,22 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00032">userrec::userre
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00090">90</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="a22" doxytag="channels.cpp::startup_time"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="startup_5Ftime"></a><!-- doxytag: member="channels.cpp::startup_time" ref="startup_5Ftime" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="modules_8cpp.html#a23">startup_time</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="modules_8cpp.html#startup_5Ftime">startup_time</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -985,23 +856,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00090">90</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00081">81</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a36" doxytag="channels.cpp::TIME"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="TIME"></a><!-- doxytag: member="channels.cpp::TIME" ref="TIME" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="users_8cpp.html#a2">TIME</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="users_8cpp.html#TIME">TIME</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1011,23 +881,22 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00081">81</a>
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00101">101</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-Referenced by <a class="el" href="servers_8cpp-source.html#l00274">serverrec::FlushWriteBuffers()</a>, <a class="el" href="servers_8cpp-source.html#l00046">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="a20" doxytag="channels.cpp::WHOWAS_MAX"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="WHOWAS_5FMAX"></a><!-- doxytag: member="channels.cpp::WHOWAS_MAX" ref="WHOWAS_5FMAX" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a21">WHOWAS_MAX</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#WHOWAS_5FMAX">WHOWAS_MAX</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1035,23 +904,22 @@ Referenced by <a class="el" href="servers_8cpp-source.html#l00274">serverrec::Fl
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00079">79</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a19" doxytag="channels.cpp::WHOWAS_STALE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="WHOWAS_5FSTALE"></a><!-- doxytag: member="channels.cpp::WHOWAS_STALE" ref="WHOWAS_5FSTALE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a20">WHOWAS_STALE</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#WHOWAS_5FSTALE">WHOWAS_STALE</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1059,14 +927,11 @@ Definition at line <a class="el" href="channels_8cpp-source.html#l00079">79</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00078">78</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
+ </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:35 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/channels_8cpp__incl.gif b/docs/module-doc/channels_8cpp__incl.gif
index 34da8c3ad..e66f6b07f 100644
--- a/docs/module-doc/channels_8cpp__incl.gif
+++ b/docs/module-doc/channels_8cpp__incl.gif
Binary files differ
diff --git a/docs/module-doc/channels_8cpp__incl.map b/docs/module-doc/channels_8cpp__incl.map
new file mode 100644
index 000000000..aa0d9b1cb
--- /dev/null
+++ b/docs/module-doc/channels_8cpp__incl.map
@@ -0,0 +1,7 @@
+base referer
+rect $users_8h-source.html 324,1002 388,1028
+rect $ctables_8h-source.html 319,355 393,382
+rect $modules_8h-source.html 169,748 252,775
+rect $message_8h-source.html 168,1052 253,1079
+rect $mode_8h-source.html 177,1154 244,1180
+rect $xline_8h-source.html 180,850 241,876
diff --git a/docs/module-doc/channels_8cpp__incl.md5 b/docs/module-doc/channels_8cpp__incl.md5
new file mode 100644
index 000000000..bc705adcd
--- /dev/null
+++ b/docs/module-doc/channels_8cpp__incl.md5
@@ -0,0 +1 @@
+b9467ee45a5cd937945c9c8802f0376d \ No newline at end of file
diff --git a/docs/module-doc/channels_8h-source.html b/docs/module-doc/channels_8h-source.html
index ed610b7f6..e9acc6bb2 100644
--- a/docs/module-doc/channels_8h-source.html
+++ b/docs/module-doc/channels_8h-source.html
@@ -1,154 +1,155 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: channels.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>channels.h</h1><a href="channels_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#include "inspircd_config.h"</span>
-00018 <span class="preprocessor">#include "<a class="code" href="base_8h.html">base.h</a>"</span>
-00019 <span class="preprocessor">#include &lt;time.h&gt;</span>
-00020 <span class="preprocessor">#include &lt;vector&gt;</span>
-00021 <span class="preprocessor">#include &lt;string&gt;</span>
-00022
-00023 <span class="preprocessor">#ifndef __CHANNELS_H__</span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define __CHANNELS_H__</span>
-00025 <span class="preprocessor"></span>
-<a name="l00026"></a><a class="code" href="channels_8h.html#a0">00026</a> <span class="preprocessor">#define CM_TOPICLOCK 1</span>
-<a name="l00027"></a><a class="code" href="channels_8h.html#a1">00027</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_NOEXTERNAL 2</span>
-<a name="l00028"></a><a class="code" href="channels_8h.html#a2">00028</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_INVITEONLY 4</span>
-<a name="l00029"></a><a class="code" href="channels_8h.html#a3">00029</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_MODERATED 8</span>
-<a name="l00030"></a><a class="code" href="channels_8h.html#a4">00030</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_SECRET 16</span>
-<a name="l00031"></a><a class="code" href="channels_8h.html#a5">00031</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_PRIVATE 32</span>
-00032 <span class="preprocessor"></span>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>channels.h</h1><a href="channels_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include "<a class="code" href="base_8h.html">base.h</a>"</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;time.h&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00022"></a>00022
+<a name="l00023"></a>00023 <span class="preprocessor">#ifndef __CHANNELS_H__</span>
+<a name="l00024"></a>00024 <span class="preprocessor"></span><span class="preprocessor">#define __CHANNELS_H__</span>
+<a name="l00025"></a>00025 <span class="preprocessor"></span>
+<a name="l00026"></a><a class="code" href="channels_8h.html#CM_5FTOPICLOCK">00026</a> <span class="preprocessor">#define CM_TOPICLOCK 1</span>
+<a name="l00027"></a><a class="code" href="channels_8h.html#CM_5FNOEXTERNAL">00027</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_NOEXTERNAL 2</span>
+<a name="l00028"></a><a class="code" href="channels_8h.html#CM_5FINVITEONLY">00028</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_INVITEONLY 4</span>
+<a name="l00029"></a><a class="code" href="channels_8h.html#CM_5FMODERATED">00029</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_MODERATED 8</span>
+<a name="l00030"></a><a class="code" href="channels_8h.html#CM_5FSECRET">00030</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_SECRET 16</span>
+<a name="l00031"></a><a class="code" href="channels_8h.html#CM_5FPRIVATE">00031</a> <span class="preprocessor"></span><span class="preprocessor">#define CM_PRIVATE 32</span>
+<a name="l00032"></a>00032 <span class="preprocessor"></span>
<a name="l00036"></a><a class="code" href="classHostItem.html">00036</a> <span class="keyword">class </span><a class="code" href="classHostItem.html">HostItem</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00037 {
-00038 <span class="keyword">public</span>:
-<a name="l00039"></a><a class="code" href="classHostItem.html#o0">00039</a> time_t <a class="code" href="classHostItem.html#o0">set_time</a>;
-<a name="l00040"></a><a class="code" href="classHostItem.html#o1">00040</a> <span class="keywordtype">char</span> <a class="code" href="classHostItem.html#o1">set_by</a>[NICKMAX];
-<a name="l00041"></a><a class="code" href="classHostItem.html#o2">00041</a> <span class="keywordtype">char</span> <a class="code" href="classHostItem.html#o2">data</a>[MAXBUF];
-00042
-<a name="l00043"></a><a class="code" href="classHostItem.html#a0">00043</a> <a class="code" href="classHostItem.html#a0">HostItem</a>() { <span class="comment">/* stub */</span> }
-<a name="l00044"></a><a class="code" href="classHostItem.html#a1">00044</a> <span class="keyword">virtual</span> <a class="code" href="classHostItem.html#a1">~HostItem</a>() { <span class="comment">/* stub */</span> }
-00045 };
-00046
-00047 <span class="comment">// banlist is inherited from HostList mainly for readability</span>
-00048 <span class="comment">// reasons only</span>
-00049
+<a name="l00037"></a>00037 {
+<a name="l00038"></a>00038 <span class="keyword">public</span>:
+<a name="l00039"></a><a class="code" href="classHostItem.html#set_5Ftime">00039</a> time_t <a class="code" href="classHostItem.html#set_5Ftime">set_time</a>;
+<a name="l00040"></a><a class="code" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">00040</a> <span class="keywordtype">char</span> <a class="code" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">set_by</a>[NICKMAX];
+<a name="l00041"></a><a class="code" href="classHostItem.html#data_5BMAXBUF_5D">00041</a> <span class="keywordtype">char</span> <a class="code" href="classHostItem.html#data_5BMAXBUF_5D">data</a>[MAXBUF];
+<a name="l00042"></a>00042
+<a name="l00043"></a><a class="code" href="classHostItem.html#HostItem_28_29">00043</a> <a class="code" href="classHostItem.html#HostItem_28_29">HostItem</a>() { <span class="comment">/* stub */</span> }
+<a name="l00044"></a><a class="code" href="classHostItem.html#_7EHostItem_28_29">00044</a> <span class="keyword">virtual</span> <a class="code" href="classHostItem.html#_7EHostItem_28_29">~HostItem</a>() { <span class="comment">/* stub */</span> }
+<a name="l00045"></a>00045 };
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047 <span class="comment">// banlist is inherited from HostList mainly for readability</span>
+<a name="l00048"></a>00048 <span class="comment">// reasons only</span>
+<a name="l00049"></a>00049
<a name="l00052"></a><a class="code" href="classBanItem.html">00052</a> <span class="keyword">class </span><a class="code" href="classBanItem.html">BanItem</a> : <span class="keyword">public</span> <a class="code" href="classHostItem.html">HostItem</a>
-00053 {
-00054 };
-00055
-00056 <span class="comment">// same with this...</span>
-00057
+<a name="l00053"></a>00053 {
+<a name="l00054"></a>00054 };
+<a name="l00055"></a>00055
+<a name="l00056"></a>00056 <span class="comment">// same with this...</span>
+<a name="l00057"></a>00057
<a name="l00060"></a><a class="code" href="classExemptItem.html">00060</a> <span class="keyword">class </span><a class="code" href="classExemptItem.html">ExemptItem</a> : <span class="keyword">public</span> <a class="code" href="classHostItem.html">HostItem</a>
-00061 {
-00062 };
-00063
-00064 <span class="comment">// and this...</span>
-00065
+<a name="l00061"></a>00061 {
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063
+<a name="l00064"></a>00064 <span class="comment">// and this...</span>
+<a name="l00065"></a>00065
<a name="l00068"></a><a class="code" href="classInviteItem.html">00068</a> <span class="keyword">class </span><a class="code" href="classInviteItem.html">InviteItem</a> : <span class="keyword">public</span> <a class="code" href="classHostItem.html">HostItem</a>
-00069 {
-00070 };
-00071
-00072
+<a name="l00069"></a>00069 {
+<a name="l00070"></a>00070 };
+<a name="l00071"></a>00071
+<a name="l00072"></a>00072
<a name="l00077"></a><a class="code" href="classModeParameter.html">00077</a> <span class="keyword">class </span><a class="code" href="classModeParameter.html">ModeParameter</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00078 {
-00079 <span class="keyword">public</span>:
-<a name="l00080"></a><a class="code" href="classModeParameter.html#o0">00080</a> <span class="keywordtype">char</span> <a class="code" href="classModeParameter.html#o0">mode</a>;
-<a name="l00081"></a><a class="code" href="classModeParameter.html#o1">00081</a> <span class="keywordtype">char</span> <a class="code" href="classModeParameter.html#o1">parameter</a>[MAXBUF];
-<a name="l00082"></a><a class="code" href="classModeParameter.html#o2">00082</a> <span class="keywordtype">char</span> <a class="code" href="classModeParameter.html#o2">channel</a>[CHANMAX];
-00083 };
-00084
-<a name="l00087"></a><a class="code" href="channels_8h.html#a11">00087</a> <span class="keyword">typedef</span> std::vector&lt;BanItem&gt; <a class="code" href="channels_8h.html#a11">BanList</a>;
-00088
-<a name="l00091"></a><a class="code" href="channels_8h.html#a12">00091</a> <span class="keyword">typedef</span> std::vector&lt;ExemptItem&gt; <a class="code" href="channels_8h.html#a12">ExemptList</a>;
-00092
-<a name="l00095"></a><a class="code" href="channels_8h.html#a13">00095</a> <span class="keyword">typedef</span> std::vector&lt;InviteItem&gt; <a class="code" href="channels_8h.html#a13">InviteList</a>;
-00096
+<a name="l00078"></a>00078 {
+<a name="l00079"></a>00079 <span class="keyword">public</span>:
+<a name="l00080"></a><a class="code" href="classModeParameter.html#mode">00080</a> <span class="keywordtype">char</span> <a class="code" href="classModeParameter.html#mode">mode</a>;
+<a name="l00081"></a><a class="code" href="classModeParameter.html#parameter_5BMAXBUF_5D">00081</a> <span class="keywordtype">char</span> <a class="code" href="classModeParameter.html#parameter_5BMAXBUF_5D">parameter</a>[MAXBUF];
+<a name="l00082"></a><a class="code" href="classModeParameter.html#channel_5BCHANMAX_5D">00082</a> <span class="keywordtype">char</span> <a class="code" href="classModeParameter.html#channel_5BCHANMAX_5D">channel</a>[CHANMAX];
+<a name="l00083"></a>00083 };
+<a name="l00084"></a>00084
+<a name="l00087"></a><a class="code" href="channels_8h.html#BanList">00087</a> <span class="keyword">typedef</span> std::vector&lt;BanItem&gt; <a class="code" href="channels_8h.html#BanList">BanList</a>;
+<a name="l00088"></a>00088
+<a name="l00091"></a><a class="code" href="channels_8h.html#ExemptList">00091</a> <span class="keyword">typedef</span> std::vector&lt;ExemptItem&gt; <a class="code" href="channels_8h.html#ExemptList">ExemptList</a>;
+<a name="l00092"></a>00092
+<a name="l00095"></a><a class="code" href="channels_8h.html#InviteList">00095</a> <span class="keyword">typedef</span> std::vector&lt;InviteItem&gt; <a class="code" href="channels_8h.html#InviteList">InviteList</a>;
+<a name="l00096"></a>00096
<a name="l00101"></a><a class="code" href="classchanrec.html">00101</a> <span class="keyword">class </span><a class="code" href="classchanrec.html">chanrec</a> : <span class="keyword">public</span> <a class="code" href="classExtensible.html">Extensible</a>
-00102 {
-00103 <span class="keyword">public</span>:
-<a name="l00106"></a><a class="code" href="classchanrec.html#o0">00106</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#o0">name</a>[CHANMAX]; <span class="comment">/* channel name */</span>
-<a name="l00110"></a><a class="code" href="classchanrec.html#o1">00110</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#o1">custom_modes</a>[MAXMODES]; <span class="comment">/* modes handled by modules */</span>
-00111
-<a name="l00115"></a><a class="code" href="classchanrec.html#o2">00115</a> std::vector&lt;char*&gt; <a class="code" href="classchanrec.html#o2">internal_userlist</a>;
-00116
-<a name="l00120"></a><a class="code" href="classchanrec.html#o3">00120</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#o3">topic</a>[MAXBUF];
-<a name="l00123"></a><a class="code" href="classchanrec.html#o4">00123</a> time_t <a class="code" href="classchanrec.html#o4">created</a>;
-<a name="l00127"></a><a class="code" href="classchanrec.html#o5">00127</a> time_t <a class="code" href="classchanrec.html#o5">topicset</a>;
-<a name="l00131"></a><a class="code" href="classchanrec.html#o6">00131</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#o6">setby</a>[NICKMAX];
-00132
-<a name="l00136"></a><a class="code" href="classchanrec.html#o7">00136</a> <span class="keywordtype">short</span> <span class="keywordtype">int</span> <a class="code" href="classchanrec.html#o7">limit</a>;
-00137
-<a name="l00141"></a><a class="code" href="classchanrec.html#o8">00141</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#o8">key</a>[32];
-00142
-<a name="l00145"></a><a class="code" href="classchanrec.html#o9">00145</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#o9">binarymodes</a>;
-00146
-<a name="l00149"></a><a class="code" href="classchanrec.html#o10">00149</a> <a class="code" href="channels_8h.html#a11">BanList</a> <a class="code" href="classchanrec.html#o10">bans</a>;
-00150
-00155 <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a0">SetCustomMode</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">bool</span> mode_on);
-00156
-00162 <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a1">SetCustomModeParam</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">char</span>* parameter,<span class="keywordtype">bool</span> mode_on);
-00163
-00168 <span class="keywordtype">bool</span> <a class="code" href="classchanrec.html#a2">IsCustomModeSet</a>(<span class="keywordtype">char</span> mode);
-00169
-00180 std::string <a class="code" href="classchanrec.html#a3">GetModeParameter</a>(<span class="keywordtype">char</span> mode);
-00181
-00189 <span class="keywordtype">long</span> <a class="code" href="classchanrec.html#a4">GetUserCounter</a>();
-00190
-00198 <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a5">AddUser</a>(<span class="keywordtype">char</span>* castuser);
-00199
-00207 <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a6">DelUser</a>(<span class="keywordtype">char</span>* castuser);
-00208
-00218 std::vector&lt;char*&gt; *<a class="code" href="classchanrec.html#a7">GetUsers</a>();
-00219
-00222 <a class="code" href="classchanrec.html#a8">chanrec</a>();
-00223
-<a name="l00224"></a><a class="code" href="classchanrec.html#a9">00224</a> <span class="keyword">virtual</span> <a class="code" href="classchanrec.html#a9">~chanrec</a>() { <span class="comment">/* stub */</span> }
-00225 };
-00226
-00227 <span class="comment">/* used to hold a channel and a users modes on that channel, e.g. +v, +h, +o</span>
-00228 <span class="comment"> * needs to come AFTER struct chanrec */</span>
-00229
-<a name="l00230"></a><a class="code" href="channels_8h.html#a6">00230</a> <span class="preprocessor">#define UCMODE_OP 1</span>
-<a name="l00231"></a><a class="code" href="channels_8h.html#a7">00231</a> <span class="preprocessor"></span><span class="preprocessor">#define UCMODE_VOICE 2</span>
-<a name="l00232"></a><a class="code" href="channels_8h.html#a8">00232</a> <span class="preprocessor"></span><span class="preprocessor">#define UCMODE_HOP 4</span>
-<a name="l00233"></a><a class="code" href="channels_8h.html#a9">00233</a> <span class="preprocessor"></span><span class="preprocessor">#define UCMODE_PROTECT 8</span>
-<a name="l00234"></a><a class="code" href="channels_8h.html#a10">00234</a> <span class="preprocessor"></span><span class="preprocessor">#define UCMODE_FOUNDER 16</span>
-00235 <span class="preprocessor"></span>
+<a name="l00102"></a>00102 {
+<a name="l00103"></a>00103 <span class="keyword">public</span>:
+<a name="l00106"></a><a class="code" href="classchanrec.html#name_5BCHANMAX_5D">00106</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>[CHANMAX]; <span class="comment">/* channel name */</span>
+<a name="l00110"></a><a class="code" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">00110</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a>[MAXMODES]; <span class="comment">/* modes handled by modules */</span>
+<a name="l00111"></a>00111
+<a name="l00115"></a><a class="code" href="classchanrec.html#internal_5Fuserlist">00115</a> std::vector&lt;char*&gt; <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>;
+<a name="l00116"></a>00116
+<a name="l00120"></a><a class="code" href="classchanrec.html#topic_5BMAXBUF_5D">00120</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#topic_5BMAXBUF_5D">topic</a>[MAXBUF];
+<a name="l00123"></a><a class="code" href="classchanrec.html#created">00123</a> time_t <a class="code" href="classchanrec.html#created">created</a>;
+<a name="l00127"></a><a class="code" href="classchanrec.html#topicset">00127</a> time_t <a class="code" href="classchanrec.html#topicset">topicset</a>;
+<a name="l00131"></a><a class="code" href="classchanrec.html#setby_5BNICKMAX_5D">00131</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#setby_5BNICKMAX_5D">setby</a>[NICKMAX];
+<a name="l00132"></a>00132
+<a name="l00136"></a><a class="code" href="classchanrec.html#limit">00136</a> <span class="keywordtype">short</span> <span class="keywordtype">int</span> <a class="code" href="classchanrec.html#limit">limit</a>;
+<a name="l00137"></a>00137
+<a name="l00141"></a><a class="code" href="classchanrec.html#key_5B_33_32_5D">00141</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#key_5B_33_32_5D">key</a>[32];
+<a name="l00142"></a>00142
+<a name="l00145"></a><a class="code" href="classchanrec.html#binarymodes">00145</a> <span class="keywordtype">char</span> <a class="code" href="classchanrec.html#binarymodes">binarymodes</a>;
+<a name="l00146"></a>00146
+<a name="l00149"></a><a class="code" href="classchanrec.html#bans">00149</a> <a class="code" href="channels_8h.html#BanList">BanList</a> <a class="code" href="classchanrec.html#bans">bans</a>;
+<a name="l00150"></a>00150
+<a name="l00155"></a>00155 <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29">SetCustomMode</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">bool</span> mode_on);
+<a name="l00156"></a>00156
+<a name="l00162"></a>00162 <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">SetCustomModeParam</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">char</span>* parameter,<span class="keywordtype">bool</span> mode_on);
+<a name="l00163"></a>00163
+<a name="l00168"></a>00168 <span class="keywordtype">bool</span> <a class="code" href="classchanrec.html#IsCustomModeSet_28char_20mode_29">IsCustomModeSet</a>(<span class="keywordtype">char</span> mode);
+<a name="l00169"></a>00169
+<a name="l00180"></a>00180 <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classchanrec.html#GetModeParameter_28char_20mode_29">GetModeParameter</a>(<span class="keywordtype">char</span> mode);
+<a name="l00181"></a>00181
+<a name="l00189"></a>00189 <span class="keywordtype">long</span> <a class="code" href="classchanrec.html#GetUserCounter_28_29">GetUserCounter</a>();
+<a name="l00190"></a>00190
+<a name="l00198"></a>00198 <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#AddUser_28char_20_2Acastuser_29">AddUser</a>(<span class="keywordtype">char</span>* castuser);
+<a name="l00199"></a>00199
+<a name="l00207"></a>00207 <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#DelUser_28char_20_2Acastuser_29">DelUser</a>(<span class="keywordtype">char</span>* castuser);
+<a name="l00208"></a>00208
+<a name="l00218"></a>00218 std::vector&lt;char*&gt; *<a class="code" href="classchanrec.html#GetUsers_28_29">GetUsers</a>();
+<a name="l00219"></a>00219
+<a name="l00222"></a>00222 <a class="code" href="classchanrec.html#chanrec_28_29">chanrec</a>();
+<a name="l00223"></a>00223
+<a name="l00224"></a><a class="code" href="classchanrec.html#_7Echanrec_28_29">00224</a> <span class="keyword">virtual</span> <a class="code" href="classchanrec.html#_7Echanrec_28_29">~chanrec</a>() { <span class="comment">/* stub */</span> }
+<a name="l00225"></a>00225 };
+<a name="l00226"></a>00226
+<a name="l00227"></a>00227 <span class="comment">/* used to hold a channel and a users modes on that channel, e.g. +v, +h, +o</span>
+<a name="l00228"></a>00228 <span class="comment"> * needs to come AFTER struct chanrec */</span>
+<a name="l00229"></a>00229
+<a name="l00230"></a><a class="code" href="channels_8h.html#UCMODE_5FOP">00230</a> <span class="preprocessor">#define UCMODE_OP 1</span>
+<a name="l00231"></a><a class="code" href="channels_8h.html#UCMODE_5FVOICE">00231</a> <span class="preprocessor"></span><span class="preprocessor">#define UCMODE_VOICE 2</span>
+<a name="l00232"></a><a class="code" href="channels_8h.html#UCMODE_5FHOP">00232</a> <span class="preprocessor"></span><span class="preprocessor">#define UCMODE_HOP 4</span>
+<a name="l00233"></a><a class="code" href="channels_8h.html#UCMODE_5FPROTECT">00233</a> <span class="preprocessor"></span><span class="preprocessor">#define UCMODE_PROTECT 8</span>
+<a name="l00234"></a><a class="code" href="channels_8h.html#UCMODE_5FFOUNDER">00234</a> <span class="preprocessor"></span><span class="preprocessor">#define UCMODE_FOUNDER 16</span>
+<a name="l00235"></a>00235 <span class="preprocessor"></span>
<a name="l00241"></a><a class="code" href="classucrec.html">00241</a> <span class="keyword">class </span><a class="code" href="classucrec.html">ucrec</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00242 {
-00243 <span class="keyword">public</span>:
-<a name="l00247"></a><a class="code" href="classucrec.html#o0">00247</a> <span class="keywordtype">char</span> <a class="code" href="classucrec.html#o0">uc_modes</a>;
-00248
-<a name="l00252"></a><a class="code" href="classucrec.html#o1">00252</a> <a class="code" href="classchanrec.html">chanrec</a> *<a class="code" href="classucrec.html#o1">channel</a>;
-00253
-<a name="l00254"></a><a class="code" href="classucrec.html#a0">00254</a> <a class="code" href="classucrec.html#a0">ucrec</a>() { <span class="comment">/* stub */</span> }
-<a name="l00255"></a><a class="code" href="classucrec.html#a1">00255</a> <span class="keyword">virtual</span> <a class="code" href="classucrec.html#a1">~ucrec</a>() { <span class="comment">/* stub */</span> }
-00256 };
-00257
-00258 <span class="preprocessor">#endif</span>
-00259 <span class="preprocessor"></span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:19 2005 for InspIRCd by
+<a name="l00242"></a>00242 {
+<a name="l00243"></a>00243 <span class="keyword">public</span>:
+<a name="l00247"></a><a class="code" href="classucrec.html#uc_5Fmodes">00247</a> <span class="keywordtype">char</span> <a class="code" href="classucrec.html#uc_5Fmodes">uc_modes</a>;
+<a name="l00248"></a>00248
+<a name="l00252"></a><a class="code" href="classucrec.html#channel">00252</a> <a class="code" href="classchanrec.html">chanrec</a> *<a class="code" href="classucrec.html#channel">channel</a>;
+<a name="l00253"></a>00253
+<a name="l00254"></a><a class="code" href="classucrec.html#ucrec_28_29">00254</a> <a class="code" href="classucrec.html#ucrec_28_29">ucrec</a>() { <span class="comment">/* stub */</span> }
+<a name="l00255"></a><a class="code" href="classucrec.html#_7Eucrec_28_29">00255</a> <span class="keyword">virtual</span> <a class="code" href="classucrec.html#_7Eucrec_28_29">~ucrec</a>() { <span class="comment">/* stub */</span> }
+<a name="l00256"></a>00256 };
+<a name="l00257"></a>00257
+<a name="l00258"></a>00258 <span class="preprocessor">#endif</span>
+<a name="l00259"></a>00259 <span class="preprocessor"></span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/channels_8h.html b/docs/module-doc/channels_8h.html
index 6ecb753de..b1a4e82db 100644
--- a/docs/module-doc/channels_8h.html
+++ b/docs/module-doc/channels_8h.html
@@ -1,107 +1,110 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: channels.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>channels.h File Reference</h1><code>#include "inspircd_config.h"</code><br>
-<code>#include "<a class="el" href="base_8h-source.html">base.h</a>"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>channels.h File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="base_8h-source.html">base.h</a>&quot;</code><br>
<code>#include &lt;time.h&gt;</code><br>
<code>#include &lt;vector&gt;</code><br>
<code>#include &lt;string&gt;</code><br>
<p>
-Include dependency graph for channels.h:<p><center><img src="channels_8h__incl.gif" border="0" usemap="#channels.h_map" alt="Include dependency graph"></center>
+Include dependency graph for channels.h:<p><center><img src="channels_8h__incl.gif" border="0" usemap="#channels.h_map" alt=""></center>
<map name="channels.h_map">
-<area href="base_8h.html" shape="rect" coords="157,82,218,109" alt="">
+<area href="base_8h-source.html" shape="rect" coords="143,108,204,135" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="channels_8h__dep__incl.gif" border="0" usemap="#channels.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="channels_8h__dep__incl.gif" border="0" usemap="#channels.hdep_map" alt=""></center>
<map name="channels.hdep_map">
-<area href="users_8cpp.html" shape="rect" coords="7,82,87,109" alt="">
-<area href="users_8h.html" shape="rect" coords="226,157,290,184" alt="">
-<area href="channels_8cpp.html" shape="rect" coords="426,8,525,34" alt="">
-<area href="message_8h.html" shape="rect" coords="370,82,455,109" alt="">
-<area href="mode_8h.html" shape="rect" coords="479,82,546,109" alt="">
-<area href="xline_8h.html" shape="rect" coords="285,82,346,109" alt="">
-<area href="modules_8cpp.html" shape="rect" coords="266,8,365,34" alt="">
-<area href="commands_8h.html" shape="rect" coords="111,82,210,109" alt="">
+<area href="users_8cpp-source.html" shape="rect" coords="267,7,347,33" alt="">
+<area href="users_8h-source.html" shape="rect" coords="144,199,208,225" alt="">
+<area href="commands_8h-source.html" shape="rect" coords="257,311,356,337" alt="">
+<area href="message_8h-source.html" shape="rect" coords="264,57,349,84" alt="">
+<area href="mode_8h-source.html" shape="rect" coords="273,159,340,185" alt="">
+<area href="xline_8h-source.html" shape="rect" coords="276,260,337,287" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="405,133,504,160" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="405,209,504,236" alt="">
</map>
<p>
-<a href="channels_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="channels_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBanItem.html">BanItem</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHostItem.html">HostItem</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel bans (+b). </em> <a href="classBanItem.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html">chanrec</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds an entry for a ban list, exemption list, or invite list. <a href="classHostItem.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBanItem.html">BanItem</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds all relevent information for a channel. </em> <a href="classchanrec.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExemptItem.html">ExemptItem</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel bans (+b). <a href="classBanItem.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExemptItem.html">ExemptItem</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel exempts (+e). </em> <a href="classExemptItem.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classHostItem.html">HostItem</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel exempts (+e). <a href="classExemptItem.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInviteItem.html">InviteItem</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds an entry for a ban list, exemption list, or invite list. </em> <a href="classHostItem.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classInviteItem.html">InviteItem</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel invites (+I). <a href="classInviteItem.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModeParameter.html">ModeParameter</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel invites (+I). </em> <a href="classInviteItem.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModeParameter.html">ModeParameter</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a custom parameter to a module-defined channel mode e.g. <a href="classModeParameter.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html">chanrec</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a custom parameter to a module-defined channel mode e.g. </em> <a href="classModeParameter.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classucrec.html">ucrec</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds all relevent information for a channel. <a href="classchanrec.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classucrec.html">ucrec</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a user's modes on a channel This class associates a users privilages with a channel by creating a pointer link between a userrec and chanrec class. </em> <a href="classucrec.html#_details">More...</a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Defines</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a0">CM_TOPICLOCK</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a user's modes on a channel This class associates a users privilages with a channel by creating a pointer link between a userrec and chanrec class. <a href="classucrec.html#_details">More...</a><br></td></tr>
+<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#CM_5FTOPICLOCK">CM_TOPICLOCK</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a1">CM_NOEXTERNAL</a>&nbsp;&nbsp;&nbsp;2</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#CM_5FNOEXTERNAL">CM_NOEXTERNAL</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a2">CM_INVITEONLY</a>&nbsp;&nbsp;&nbsp;4</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#CM_5FINVITEONLY">CM_INVITEONLY</a>&nbsp;&nbsp;&nbsp;4</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a3">CM_MODERATED</a>&nbsp;&nbsp;&nbsp;8</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#CM_5FMODERATED">CM_MODERATED</a>&nbsp;&nbsp;&nbsp;8</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a4">CM_SECRET</a>&nbsp;&nbsp;&nbsp;16</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#CM_5FSECRET">CM_SECRET</a>&nbsp;&nbsp;&nbsp;16</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a5">CM_PRIVATE</a>&nbsp;&nbsp;&nbsp;32</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#CM_5FPRIVATE">CM_PRIVATE</a>&nbsp;&nbsp;&nbsp;32</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a6">UCMODE_OP</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#UCMODE_5FOP">UCMODE_OP</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a7">UCMODE_VOICE</a>&nbsp;&nbsp;&nbsp;2</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#UCMODE_5FVOICE">UCMODE_VOICE</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a8">UCMODE_HOP</a>&nbsp;&nbsp;&nbsp;4</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#UCMODE_5FHOP">UCMODE_HOP</a>&nbsp;&nbsp;&nbsp;4</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a9">UCMODE_PROTECT</a>&nbsp;&nbsp;&nbsp;8</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#UCMODE_5FPROTECT">UCMODE_PROTECT</a>&nbsp;&nbsp;&nbsp;8</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a10">UCMODE_FOUNDER</a>&nbsp;&nbsp;&nbsp;16</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#UCMODE_5FFOUNDER">UCMODE_FOUNDER</a>&nbsp;&nbsp;&nbsp;16</td></tr>
-<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classBanItem.html">BanItem</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a11">BanList</a></td></tr>
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="classBanItem.html">BanItem</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#BanList">BanList</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete ban list. </em> <a href="#a11"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classExemptItem.html">ExemptItem</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a12">ExemptList</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete ban list. <a href="#BanList"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="classExemptItem.html">ExemptItem</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#ExemptList">ExemptList</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete exempt list. </em> <a href="#a12"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classInviteItem.html">InviteItem</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="channels_8h.html#a13">InviteList</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete exempt list. <a href="#ExemptList"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="classInviteItem.html">InviteItem</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html#InviteList">InviteList</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete invite list. </em> <a href="#a13"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete invite list. <a href="#InviteList"></a><br></td></tr>
</table>
<hr><h2>Define Documentation</h2>
-<a name="a2" doxytag="channels.h::CM_INVITEONLY"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CM_5FINVITEONLY"></a><!-- doxytag: member="channels.h::CM_INVITEONLY" ref="CM_5FINVITEONLY" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CM_INVITEONLY&nbsp;&nbsp;&nbsp;4
+ <td class="md" nowrap valign="top">#define CM_INVITEONLY&nbsp;&nbsp;&nbsp;4 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -114,18 +117,19 @@ This graph shows which files directly or indirectly include this file:<p><center
Definition at line <a class="el" href="channels_8h-source.html#l00028">28</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a3" doxytag="channels.h::CM_MODERATED"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CM_5FMODERATED"></a><!-- doxytag: member="channels.h::CM_MODERATED" ref="CM_5FMODERATED" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CM_MODERATED&nbsp;&nbsp;&nbsp;8
+ <td class="md" nowrap valign="top">#define CM_MODERATED&nbsp;&nbsp;&nbsp;8 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -138,18 +142,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00028">28</a> of
Definition at line <a class="el" href="channels_8h-source.html#l00029">29</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a1" doxytag="channels.h::CM_NOEXTERNAL"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CM_5FNOEXTERNAL"></a><!-- doxytag: member="channels.h::CM_NOEXTERNAL" ref="CM_5FNOEXTERNAL" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CM_NOEXTERNAL&nbsp;&nbsp;&nbsp;2
+ <td class="md" nowrap valign="top">#define CM_NOEXTERNAL&nbsp;&nbsp;&nbsp;2 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -162,18 +167,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00029">29</a> of
Definition at line <a class="el" href="channels_8h-source.html#l00027">27</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a5" doxytag="channels.h::CM_PRIVATE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CM_5FPRIVATE"></a><!-- doxytag: member="channels.h::CM_PRIVATE" ref="CM_5FPRIVATE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CM_PRIVATE&nbsp;&nbsp;&nbsp;32
+ <td class="md" nowrap valign="top">#define CM_PRIVATE&nbsp;&nbsp;&nbsp;32 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -186,18 +192,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00027">27</a> of
Definition at line <a class="el" href="channels_8h-source.html#l00031">31</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a4" doxytag="channels.h::CM_SECRET"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CM_5FSECRET"></a><!-- doxytag: member="channels.h::CM_SECRET" ref="CM_5FSECRET" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CM_SECRET&nbsp;&nbsp;&nbsp;16
+ <td class="md" nowrap valign="top">#define CM_SECRET&nbsp;&nbsp;&nbsp;16 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -210,18 +217,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00031">31</a> of
Definition at line <a class="el" href="channels_8h-source.html#l00030">30</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a0" doxytag="channels.h::CM_TOPICLOCK"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CM_5FTOPICLOCK"></a><!-- doxytag: member="channels.h::CM_TOPICLOCK" ref="CM_5FTOPICLOCK" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CM_TOPICLOCK&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top">#define CM_TOPICLOCK&nbsp;&nbsp;&nbsp;1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -234,18 +242,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00030">30</a> of
Definition at line <a class="el" href="channels_8h-source.html#l00026">26</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a10" doxytag="channels.h::UCMODE_FOUNDER"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="UCMODE_5FFOUNDER"></a><!-- doxytag: member="channels.h::UCMODE_FOUNDER" ref="UCMODE_5FFOUNDER" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define UCMODE_FOUNDER&nbsp;&nbsp;&nbsp;16
+ <td class="md" nowrap valign="top">#define UCMODE_FOUNDER&nbsp;&nbsp;&nbsp;16 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -258,18 +267,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00026">26</a> of
Definition at line <a class="el" href="channels_8h-source.html#l00234">234</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a8" doxytag="channels.h::UCMODE_HOP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="UCMODE_5FHOP"></a><!-- doxytag: member="channels.h::UCMODE_HOP" ref="UCMODE_5FHOP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define UCMODE_HOP&nbsp;&nbsp;&nbsp;4
+ <td class="md" nowrap valign="top">#define UCMODE_HOP&nbsp;&nbsp;&nbsp;4 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -282,18 +292,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00234">234</a> o
Definition at line <a class="el" href="channels_8h-source.html#l00232">232</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a6" doxytag="channels.h::UCMODE_OP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="UCMODE_5FOP"></a><!-- doxytag: member="channels.h::UCMODE_OP" ref="UCMODE_5FOP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define UCMODE_OP&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top">#define UCMODE_OP&nbsp;&nbsp;&nbsp;1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -306,18 +317,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00232">232</a> o
Definition at line <a class="el" href="channels_8h-source.html#l00230">230</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a9" doxytag="channels.h::UCMODE_PROTECT"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="UCMODE_5FPROTECT"></a><!-- doxytag: member="channels.h::UCMODE_PROTECT" ref="UCMODE_5FPROTECT" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define UCMODE_PROTECT&nbsp;&nbsp;&nbsp;8
+ <td class="md" nowrap valign="top">#define UCMODE_PROTECT&nbsp;&nbsp;&nbsp;8 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -330,18 +342,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00230">230</a> o
Definition at line <a class="el" href="channels_8h-source.html#l00233">233</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a7" doxytag="channels.h::UCMODE_VOICE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="UCMODE_5FVOICE"></a><!-- doxytag: member="channels.h::UCMODE_VOICE" ref="UCMODE_5FVOICE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define UCMODE_VOICE&nbsp;&nbsp;&nbsp;2
+ <td class="md" nowrap valign="top">#define UCMODE_VOICE&nbsp;&nbsp;&nbsp;2 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -355,18 +368,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00231">231</a> o
</tr>
</table>
<hr><h2>Typedef Documentation</h2>
-<a name="a11" doxytag="channels.h::BanList"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="BanList"></a><!-- doxytag: member="channels.h::BanList" ref="BanList" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classBanItem.html">BanItem</a>&gt; <a class="el" href="channels_8h.html#a11">BanList</a>
+ <td class="md" nowrap valign="top">typedef std::vector&lt;<a class="el" href="classBanItem.html">BanItem</a>&gt; <a class="el" href="channels_8h.html#BanList">BanList</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -381,18 +395,19 @@ Holds a complete ban list.
Definition at line <a class="el" href="channels_8h-source.html#l00087">87</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a12" doxytag="channels.h::ExemptList"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ExemptList"></a><!-- doxytag: member="channels.h::ExemptList" ref="ExemptList" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classExemptItem.html">ExemptItem</a>&gt; <a class="el" href="channels_8h.html#a12">ExemptList</a>
+ <td class="md" nowrap valign="top">typedef std::vector&lt;<a class="el" href="classExemptItem.html">ExemptItem</a>&gt; <a class="el" href="channels_8h.html#ExemptList">ExemptList</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -407,18 +422,19 @@ Holds a complete exempt list.
Definition at line <a class="el" href="channels_8h-source.html#l00091">91</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="a13" doxytag="channels.h::InviteList"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="InviteList"></a><!-- doxytag: member="channels.h::InviteList" ref="InviteList" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classInviteItem.html">InviteItem</a>&gt; <a class="el" href="channels_8h.html#a13">InviteList</a>
+ <td class="md" nowrap valign="top">typedef std::vector&lt;<a class="el" href="classInviteItem.html">InviteItem</a>&gt; <a class="el" href="channels_8h.html#InviteList">InviteList</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -433,9 +449,8 @@ Holds a complete invite list.
Definition at line <a class="el" href="channels_8h-source.html#l00095">95</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:38 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/channels_8h__dep__incl.gif b/docs/module-doc/channels_8h__dep__incl.gif
index d87ad78cd..c30f900f1 100644
--- a/docs/module-doc/channels_8h__dep__incl.gif
+++ b/docs/module-doc/channels_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/channels_8h__dep__incl.map b/docs/module-doc/channels_8h__dep__incl.map
new file mode 100644
index 000000000..6a4cbd04f
--- /dev/null
+++ b/docs/module-doc/channels_8h__dep__incl.map
@@ -0,0 +1,9 @@
+base referer
+rect $users_8cpp-source.html 267,7 347,33
+rect $users_8h-source.html 144,199 208,225
+rect $commands_8h-source.html 257,311 356,337
+rect $message_8h-source.html 264,57 349,84
+rect $mode_8h-source.html 273,159 340,185
+rect $xline_8h-source.html 276,260 337,287
+rect $channels_8cpp-source.html 405,133 504,160
+rect $modules_8cpp-source.html 405,209 504,236
diff --git a/docs/module-doc/channels_8h__dep__incl.md5 b/docs/module-doc/channels_8h__dep__incl.md5
new file mode 100644
index 000000000..25db181a9
--- /dev/null
+++ b/docs/module-doc/channels_8h__dep__incl.md5
@@ -0,0 +1 @@
+3803f94897b7a90d54a987bd74d935ae \ No newline at end of file
diff --git a/docs/module-doc/channels_8h__incl.gif b/docs/module-doc/channels_8h__incl.gif
index 942ae4726..8e4dd03bb 100644
--- a/docs/module-doc/channels_8h__incl.gif
+++ b/docs/module-doc/channels_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/channels_8h__incl.map b/docs/module-doc/channels_8h__incl.map
new file mode 100644
index 000000000..ee5bd9558
--- /dev/null
+++ b/docs/module-doc/channels_8h__incl.map
@@ -0,0 +1,2 @@
+base referer
+rect $base_8h-source.html 143,108 204,135
diff --git a/docs/module-doc/channels_8h__incl.md5 b/docs/module-doc/channels_8h__incl.md5
new file mode 100644
index 000000000..e2b7ccf71
--- /dev/null
+++ b/docs/module-doc/channels_8h__incl.md5
@@ -0,0 +1 @@
+bff3dff79fdca44ef00db5b6a6df4411 \ No newline at end of file
diff --git a/docs/module-doc/classAdmin-members.html b/docs/module-doc/classAdmin-members.html
index f41a63688..493a13aa1 100644
--- a/docs/module-doc/classAdmin-members.html
+++ b/docs/module-doc/classAdmin-members.html
@@ -1,21 +1,20 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Admin Member List</h1>This is the complete list of members for <a class="el" href="classAdmin.html">Admin</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classAdmin.html#a0">Admin</a>(std::string name, std::string email, std::string nick)</td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classAdmin.html#o1">Email</a></td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classAdmin.html#o0">Name</a></td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classAdmin.html#o2">Nick</a></td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:26 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Admin Member List</h1>This is the complete list of members for <a class="el" href="classAdmin.html">Admin</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classAdmin.html#Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29">Admin</a>(std::string name, std::string email, std::string nick)</td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAdmin.html#Email">Email</a></td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAdmin.html#Name">Name</a></td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classAdmin.html#Nick">Nick</a></td><td><a class="el" href="classAdmin.html">Admin</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classAdmin.html b/docs/module-doc/classAdmin.html
index e8c844063..d026f9314 100644
--- a/docs/module-doc/classAdmin.html
+++ b/docs/module-doc/classAdmin.html
@@ -1,78 +1,77 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Admin class Reference</title>
+<title>InspIRCd: Admin Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Admin Class Reference</h1>Holds /ADMIN data This class contains the admin details of the local server.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Admin Class Reference</h1><!-- doxytag: class="Admin" --><!-- doxytag: inherits="classbase" -->Holds /ADMIN data This class contains the admin details of the local server.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for Admin:<p><center><img src="classAdmin__inherit__graph.gif" border="0" usemap="#Admin__inherit__map" alt="Inheritance graph"></center>
<map name="Admin__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="8,7,88,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Admin:<p><center><img src="classAdmin__coll__graph.gif" border="0" usemap="#Admin__coll__map" alt="Collaboration graph"></center>
<map name="Admin__coll__map">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classAdmin-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classAdmin-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classAdmin.html#a0">Admin</a> (std::string name, std::string email, std::string nick)</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdmin.html#Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29">Admin</a> (<a class="el" href="namespaceirc.html#string">std::string</a> name, <a class="el" href="namespaceirc.html#string">std::string</a> email, <a class="el" href="namespaceirc.html#string">std::string</a> nick)</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classAdmin.html#o0">Name</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdmin.html#Name">Name</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classAdmin.html#o1">Email</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdmin.html#Email">Email</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classAdmin.html#o2">Nick</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdmin.html#Nick">Nick</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds /ADMIN data This class contains the admin details of the local server.
<p>
-It is constructed by class <a class="el" href="classServer.html">Server</a>, and has three read-only values, Name, Email and Nick that contain the specified values for the server where the module is running.
+It is constructed by class <a class="el" href="classServer.html">Server</a>, and has three read-only values, Name, Email and Nick that contain the specified values for the server where the module is running.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00123">123</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l00124">124</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29"></a><!-- doxytag: member="Admin::Admin" ref="Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29" args="(std::string name, std::string email, std::string nick)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> Admin::Admin </td>
+ <td class="md" nowrap valign="top">Admin::Admin </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>name</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>email</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>nick</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -82,25 +81,26 @@ Definition at line <a class="el" href="modules_8h-source.html#l00123">123</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00249">249</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#l00250">250</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00250"></a>00250 : <a class="code" href="classAdmin.html#Name">Name</a>(name), <a class="code" href="classAdmin.html#Email">Email</a>(email), <a class="code" href="classAdmin.html#Nick">Nick</a>(nick) { };
+</pre></div>
<p>
-<div class="fragment"><pre>00249 : <a class="code" href="classAdmin.html#o0">Name</a>(name), <a class="code" href="classAdmin.html#o1">Email</a>(email), <a class="code" href="classAdmin.html#o2">Nick</a>(nick) { };
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o1" doxytag="Admin::Email"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Email"></a><!-- doxytag: member="Admin::Email" ref="Email" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const std::string <a class="el" href="classAdmin.html#o1">Admin::Email</a>
+ <td class="md" nowrap valign="top">const <a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classAdmin.html#Email">Admin::Email</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -110,21 +110,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00249">249</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00126">126</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#l00127">127</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="Admin::Name"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Name"></a><!-- doxytag: member="Admin::Name" ref="Name" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const std::string <a class="el" href="classAdmin.html#o0">Admin::Name</a>
+ <td class="md" nowrap valign="top">const <a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classAdmin.html#Name">Admin::Name</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -134,21 +135,22 @@ Definition at line <a class="el" href="modules_8h-source.html#l00126">126</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00126">126</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#l00127">127</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="o2" doxytag="Admin::Nick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Nick"></a><!-- doxytag: member="Admin::Nick" ref="Nick" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const std::string <a class="el" href="classAdmin.html#o2">Admin::Nick</a>
+ <td class="md" nowrap valign="top">const <a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classAdmin.html#Nick">Admin::Nick</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -158,14 +160,13 @@ Definition at line <a class="el" href="modules_8h-source.html#l00126">126</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00126">126</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#l00127">127</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:26 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classAdmin__coll__graph.gif b/docs/module-doc/classAdmin__coll__graph.gif
index 7c9558a17..4d6bd25b8 100644
--- a/docs/module-doc/classAdmin__coll__graph.gif
+++ b/docs/module-doc/classAdmin__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classAdmin__coll__graph.map b/docs/module-doc/classAdmin__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classAdmin__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classAdmin__coll__graph.md5 b/docs/module-doc/classAdmin__coll__graph.md5
new file mode 100644
index 000000000..3b4270359
--- /dev/null
+++ b/docs/module-doc/classAdmin__coll__graph.md5
@@ -0,0 +1 @@
+fcbd9425e21197cf5397149daaa0139a \ No newline at end of file
diff --git a/docs/module-doc/classAdmin__inherit__graph.gif b/docs/module-doc/classAdmin__inherit__graph.gif
index 2b622c6ae..35c9d8d18 100644
--- a/docs/module-doc/classAdmin__inherit__graph.gif
+++ b/docs/module-doc/classAdmin__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classAdmin__inherit__graph.map b/docs/module-doc/classAdmin__inherit__graph.map
new file mode 100644
index 000000000..8b1d85be3
--- /dev/null
+++ b/docs/module-doc/classAdmin__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,7 87,34
diff --git a/docs/module-doc/classAdmin__inherit__graph.md5 b/docs/module-doc/classAdmin__inherit__graph.md5
new file mode 100644
index 000000000..d5ab12e24
--- /dev/null
+++ b/docs/module-doc/classAdmin__inherit__graph.md5
@@ -0,0 +1 @@
+f2ce1930250eba1618d507c7a89a6c44 \ No newline at end of file
diff --git a/docs/module-doc/classBanItem-members.html b/docs/module-doc/classBanItem-members.html
index 8a0df5530..15d2909d0 100644
--- a/docs/module-doc/classBanItem-members.html
+++ b/docs/module-doc/classBanItem-members.html
@@ -1,22 +1,21 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>BanItem Member List</h1>This is the complete list of members for <a class="el" href="classBanItem.html">BanItem</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classHostItem.html#o2">data</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#a0">HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#o1">set_by</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#o0">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:28 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>BanItem Member List</h1>This is the complete list of members for <a class="el" href="classBanItem.html">BanItem</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#data_5BMAXBUF_5D">data</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#HostItem_28_29">HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">set_by</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#set_5Ftime">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#_7EHostItem_28_29">~HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classBanItem.html b/docs/module-doc/classBanItem.html
index 96853c0d3..7dd3b43e8 100644
--- a/docs/module-doc/classBanItem.html
+++ b/docs/module-doc/classBanItem.html
@@ -1,26 +1,26 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: BanItem class Reference</title>
+<title>InspIRCd: BanItem Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>BanItem Class Reference</h1>A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel bans (+b).
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>BanItem Class Reference</h1><!-- doxytag: class="BanItem" --><!-- doxytag: inherits="HostItem" -->A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel bans (+b).
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="channels_8h-source.html">channels.h</a>&gt;</code>
<p>
Inheritance diagram for BanItem:<p><center><img src="classBanItem__inherit__graph.gif" border="0" usemap="#BanItem__inherit__map" alt="Inheritance graph"></center>
<map name="BanItem__inherit__map">
-<area href="classHostItem.html" shape="rect" coords="10,82,85,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,8,88,34" alt="">
+<area href="classHostItem.html" shape="rect" coords="9,81,84,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for BanItem:<p><center><img src="classBanItem__coll__graph.gif" border="0" usemap="#BanItem__coll__map" alt="Collaboration graph"></center>
<map name="BanItem__coll__map">
-<area href="classHostItem.html" shape="rect" coords="110,205,185,231" alt="">
-<area href="classclassbase.html" shape="rect" coords="108,98,188,125" alt="">
+<area href="classHostItem.html" shape="rect" coords="109,204,184,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="107,98,187,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classBanItem-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classBanItem-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -30,9 +30,8 @@ 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#l00052">52</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:28 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classBanItem__coll__graph.gif b/docs/module-doc/classBanItem__coll__graph.gif
index a8fc7afab..8d3f9254b 100644
--- a/docs/module-doc/classBanItem__coll__graph.gif
+++ b/docs/module-doc/classBanItem__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classBanItem__coll__graph.map b/docs/module-doc/classBanItem__coll__graph.map
new file mode 100644
index 000000000..84658baf1
--- /dev/null
+++ b/docs/module-doc/classBanItem__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classHostItem.html 109,204 184,231
+rect $classclassbase.html 107,98 187,124
diff --git a/docs/module-doc/classBanItem__coll__graph.md5 b/docs/module-doc/classBanItem__coll__graph.md5
new file mode 100644
index 000000000..25fdad153
--- /dev/null
+++ b/docs/module-doc/classBanItem__coll__graph.md5
@@ -0,0 +1 @@
+76872e97aabfd7501a98401b0eb2f0ba \ No newline at end of file
diff --git a/docs/module-doc/classBanItem__inherit__graph.gif b/docs/module-doc/classBanItem__inherit__graph.gif
index dec40731b..5a8bc8e92 100644
--- a/docs/module-doc/classBanItem__inherit__graph.gif
+++ b/docs/module-doc/classBanItem__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classBanItem__inherit__graph.map b/docs/module-doc/classBanItem__inherit__graph.map
new file mode 100644
index 000000000..6bc1ce88e
--- /dev/null
+++ b/docs/module-doc/classBanItem__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classHostItem.html 9,81 84,108
+rect $classclassbase.html 7,7 87,33
diff --git a/docs/module-doc/classBanItem__inherit__graph.md5 b/docs/module-doc/classBanItem__inherit__graph.md5
new file mode 100644
index 000000000..c990276bd
--- /dev/null
+++ b/docs/module-doc/classBanItem__inherit__graph.md5
@@ -0,0 +1 @@
+592e35411807445bb35f00b94b76a8da \ No newline at end of file
diff --git a/docs/module-doc/classBoolSet-members.html b/docs/module-doc/classBoolSet-members.html
index 1a61e76c7..c0728dad7 100644
--- a/docs/module-doc/classBoolSet-members.html
+++ b/docs/module-doc/classBoolSet-members.html
@@ -1,25 +1,24 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>BoolSet Member List</h1>This is the complete list of members for <a class="el" href="classBoolSet.html">BoolSet</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#r0">bits</a></td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a0">BoolSet</a>()</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a1">BoolSet</a>(char bitmask)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a3">Get</a>(int number)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a5">Invert</a>(int number)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a8">operator &amp;</a>(BoolSet other)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a9">operator=</a>(BoolSet other)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a6">operator==</a>(BoolSet other)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a7">operator|</a>(BoolSet other)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a2">Set</a>(int number)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classBoolSet.html#a4">Unset</a>(int number)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
-</table><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:29 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>BoolSet Member List</h1>This is the complete list of members for <a class="el" href="classBoolSet.html">BoolSet</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#bits">bits</a></td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#BoolSet_28_29">BoolSet</a>()</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#BoolSet_28char_20bitmask_29">BoolSet</a>(char bitmask)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#Get_28int_20number_29">Get</a>(int number)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#Invert_28int_20number_29">Invert</a>(int number)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#operator_20_26_28BoolSet_20other_29">operator &amp;</a>(BoolSet other)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#operator_3D_28BoolSet_20other_29">operator=</a>(BoolSet other)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#operator_3D_3D_28BoolSet_20other_29">operator==</a>(BoolSet other)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#operator_7C_28BoolSet_20other_29">operator|</a>(BoolSet other)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#Set_28int_20number_29">Set</a>(int number)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classBoolSet.html#Unset_28int_20number_29">Unset</a>(int number)</td><td><a class="el" href="classBoolSet.html">BoolSet</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classBoolSet.html b/docs/module-doc/classBoolSet.html
index bf356dabe..c812aee4f 100644
--- a/docs/module-doc/classBoolSet.html
+++ b/docs/module-doc/classBoolSet.html
@@ -1,79 +1,78 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: BoolSet class Reference</title>
+<title>InspIRCd: BoolSet Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>BoolSet Class Reference</h1>BoolSet is a utility class designed to hold eight bools in a bitmask.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>BoolSet Class Reference</h1><!-- doxytag: class="BoolSet" -->BoolSet is a utility class designed to hold eight bools in a bitmask.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="base_8h-source.html">base.h</a>&gt;</code>
<p>
Collaboration diagram for BoolSet:<p><center><img src="classBoolSet__coll__graph.gif" border="0" usemap="#BoolSet__coll__map" alt="Collaboration graph"></center>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classBoolSet-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classBoolSet-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a0">BoolSet</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#BoolSet_28_29">BoolSet</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The default constructor initializes the BoolSet to all values unset. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a1">BoolSet</a> (char bitmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The default constructor initializes the BoolSet to all values unset. <a href="#BoolSet_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#BoolSet_28char_20bitmask_29">BoolSet</a> (char bitmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This constructor copies the default bitmask from a char. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a2">Set</a> (int number)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This constructor copies the default bitmask from a char. <a href="#BoolSet_28char_20bitmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#Set_28int_20number_29">Set</a> (int number)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Set method sets one bool in the set. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a3">Get</a> (int number)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Set method sets one bool in the set. <a href="#Set_28int_20number_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#Get_28int_20number_29">Get</a> (int number)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Get method returns the value of one bool in the set. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a4">Unset</a> (int number)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Get method returns the value of one bool in the set. <a href="#Get_28int_20number_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#Unset_28int_20number_29">Unset</a> (int number)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Unset method unsets one value in the set. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a5">Invert</a> (int number)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Unset method unsets one value in the set. <a href="#Unset_28int_20number_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#Invert_28int_20number_29">Invert</a> (int number)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Unset method inverts (flips) one value in the set. </em> <a href="#a5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a6">operator==</a> (<a class="el" href="classBoolSet.html">BoolSet</a> other)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Unset method inverts (flips) one value in the set. <a href="#Invert_28int_20number_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#operator_3D_3D_28BoolSet_20other_29">operator==</a> (<a class="el" href="classBoolSet.html">BoolSet</a> other)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two BoolSets. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a7">operator|</a> (<a class="el" href="classBoolSet.html">BoolSet</a> other)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two BoolSets. <a href="#operator_3D_3D_28BoolSet_20other_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#operator_7C_28BoolSet_20other_29">operator|</a> (<a class="el" href="classBoolSet.html">BoolSet</a> other)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">OR two BoolSets together. </em> <a href="#a7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a8">operator &amp;</a> (<a class="el" href="classBoolSet.html">BoolSet</a> other)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">OR two BoolSets together. <a href="#operator_7C_28BoolSet_20other_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#operator_20_26_28BoolSet_20other_29">operator &amp;</a> (<a class="el" href="classBoolSet.html">BoolSet</a> other)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">AND two BoolSets together. </em> <a href="#a8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#a9">operator=</a> (<a class="el" href="classBoolSet.html">BoolSet</a> other)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">AND two BoolSets together. <a href="#operator_20_26_28BoolSet_20other_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#operator_3D_28BoolSet_20other_29">operator=</a> (<a class="el" href="classBoolSet.html">BoolSet</a> other)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assign one BoolSet to another. </em> <a href="#a9"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classBoolSet.html#r0">bits</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assign one BoolSet to another. <a href="#operator_3D_28BoolSet_20other_29"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBoolSet.html#bits">bits</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
BoolSet is a utility class designed to hold eight bools in a bitmask.
<p>
-Use <a class="el" href="classBoolSet.html#a2">BoolSet::Set</a> and <a class="el" href="classBoolSet.html#a3">BoolSet::Get</a> to set and get bools in the bitmask, and Unset and Invert for special operations upon them.
+Use <a class="el" href="classBoolSet.html#Set_28int_20number_29">BoolSet::Set</a> and <a class="el" href="classBoolSet.html#Get_28int_20number_29">BoolSet::Get</a> to set and get bools in the bitmask, and Unset and Invert for special operations upon them.
<p>
<p>
-Definition at line <a class="el" href="base_8h-source.html#l00098">98</a> of file <a class="el" href="base_8h-source.html">base.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a0" doxytag="BoolSet::BoolSet"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="base_8h-source.html#l00095">95</a> of file <a class="el" href="base_8h-source.html">base.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="BoolSet_28_29"></a><!-- doxytag: member="BoolSet::BoolSet" ref="BoolSet_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> BoolSet::BoolSet </td>
+ <td class="md" nowrap valign="top">BoolSet::BoolSet </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -86,25 +85,24 @@ The default constructor initializes the BoolSet to all values unset.
</td>
</tr>
</table>
-<a name="a1" doxytag="BoolSet::BoolSet"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="BoolSet_28char_20bitmask_29"></a><!-- doxytag: member="BoolSet::BoolSet" ref="BoolSet_28char_20bitmask_29" args="(char bitmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> BoolSet::BoolSet </td>
+ <td class="md" nowrap valign="top">BoolSet::BoolSet </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>bitmask</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -118,25 +116,24 @@ This constructor copies the default bitmask from a char.
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a3" doxytag="BoolSet::Get"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Get_28int_20number_29"></a><!-- doxytag: member="BoolSet::Get" ref="Get_28int_20number_29" args="(int number)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool BoolSet::Get </td>
+ <td class="md" nowrap valign="top">bool BoolSet::Get </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>number</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -148,32 +145,31 @@ The Get method returns the value of one bool in the set.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>number</em>&nbsp;</td><td>The number of the item to retrieve. This must be between 0 and 7.</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>The number of the item to retrieve. This must be between 0 and 7.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>True if the item is set, false if it is unset.</dd></dl>
</td>
</tr>
</table>
-<a name="a5" doxytag="BoolSet::Invert"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Invert_28int_20number_29"></a><!-- doxytag: member="BoolSet::Invert" ref="Invert_28int_20number_29" args="(int number)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void BoolSet::Invert </td>
+ <td class="md" nowrap valign="top">void BoolSet::Invert </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>number</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -185,31 +181,30 @@ The Unset method inverts (flips) one value in the set.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>number</em>&nbsp;</td><td>The number of the item to invert. This must be between 0 and 7.</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>The number of the item to invert. This must be between 0 and 7.</td></tr>
</table>
</dl>
</td>
</tr>
</table>
-<a name="a8" doxytag="BoolSet::operator &"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="operator_20_26_28BoolSet_20other_29"></a><!-- doxytag: member="BoolSet::operator &amp;" ref="operator_20_26_28BoolSet_20other_29" args="(BoolSet other)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classBoolSet.html">BoolSet</a> BoolSet::operator &amp; </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classBoolSet.html">BoolSet</a> BoolSet::operator &amp; </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>other</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -222,25 +217,24 @@ AND two BoolSets together.
</td>
</tr>
</table>
-<a name="a9" doxytag="BoolSet::operator="></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="operator_3D_28BoolSet_20other_29"></a><!-- doxytag: member="BoolSet::operator=" ref="operator_3D_28BoolSet_20other_29" args="(BoolSet other)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool BoolSet::operator= </td>
+ <td class="md" nowrap valign="top">bool BoolSet::operator= </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>other</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -253,25 +247,24 @@ Assign one BoolSet to another.
</td>
</tr>
</table>
-<a name="a6" doxytag="BoolSet::operator=="></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="operator_3D_3D_28BoolSet_20other_29"></a><!-- doxytag: member="BoolSet::operator==" ref="operator_3D_3D_28BoolSet_20other_29" args="(BoolSet other)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool BoolSet::operator== </td>
+ <td class="md" nowrap valign="top">bool BoolSet::operator== </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>other</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -284,25 +277,24 @@ Compare two BoolSets.
</td>
</tr>
</table>
-<a name="a7" doxytag="BoolSet::operator|"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="operator_7C_28BoolSet_20other_29"></a><!-- doxytag: member="BoolSet::operator|" ref="operator_7C_28BoolSet_20other_29" args="(BoolSet other)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classBoolSet.html">BoolSet</a> BoolSet::operator| </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classBoolSet.html">BoolSet</a> BoolSet::operator| </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>other</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -315,25 +307,24 @@ OR two BoolSets together.
</td>
</tr>
</table>
-<a name="a2" doxytag="BoolSet::Set"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Set_28int_20number_29"></a><!-- doxytag: member="BoolSet::Set" ref="Set_28int_20number_29" args="(int number)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void BoolSet::Set </td>
+ <td class="md" nowrap valign="top">void BoolSet::Set </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>number</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -345,31 +336,30 @@ The Set method sets one bool in the set.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>number</em>&nbsp;</td><td>The number of the item to set. This must be between 0 and 7.</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>The number of the item to set. This must be between 0 and 7.</td></tr>
</table>
</dl>
</td>
</tr>
</table>
-<a name="a4" doxytag="BoolSet::Unset"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Unset_28int_20number_29"></a><!-- doxytag: member="BoolSet::Unset" ref="Unset_28int_20number_29" args="(int number)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void BoolSet::Unset </td>
+ <td class="md" nowrap valign="top">void BoolSet::Unset </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>number</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -381,25 +371,26 @@ The Unset method unsets one value in the set.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>number</em>&nbsp;</td><td>The number of the item to set. This must be between 0 and 7.</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>The number of the item to set. This must be between 0 and 7.</td></tr>
</table>
</dl>
</td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="r0" doxytag="BoolSet::bits"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="bits"></a><!-- doxytag: member="BoolSet::bits" ref="bits" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classBoolSet.html#r0">BoolSet::bits</a><code> [private]</code>
+ <td class="md" nowrap valign="top">char <a class="el" href="classBoolSet.html#bits">BoolSet::bits</a><code> [private]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -409,14 +400,13 @@ The Unset method unsets one value in the set.
<p>
<p>
-Definition at line <a class="el" href="base_8h-source.html#l00100">100</a> of file <a class="el" href="base_8h-source.html">base.h</a>. </td>
+Definition at line <a class="el" href="base_8h-source.html#l00097">97</a> of file <a class="el" href="base_8h-source.html">base.h</a>. </td>
</tr>
</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:29 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classBoolSet__coll__graph.gif b/docs/module-doc/classBoolSet__coll__graph.gif
index 044a9d4a5..a430a4a72 100644
--- a/docs/module-doc/classBoolSet__coll__graph.gif
+++ b/docs/module-doc/classBoolSet__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classBoolSet__coll__graph.map b/docs/module-doc/classBoolSet__coll__graph.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/classBoolSet__coll__graph.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/classBoolSet__coll__graph.md5 b/docs/module-doc/classBoolSet__coll__graph.md5
new file mode 100644
index 000000000..c861c5189
--- /dev/null
+++ b/docs/module-doc/classBoolSet__coll__graph.md5
@@ -0,0 +1 @@
+88453d18f19c0804f5ae9ad5d18e7152 \ No newline at end of file
diff --git a/docs/module-doc/classConfigReader-members.html b/docs/module-doc/classConfigReader-members.html
index 4b1de8e41..27016f475 100644
--- a/docs/module-doc/classConfigReader-members.html
+++ b/docs/module-doc/classConfigReader-members.html
@@ -1,32 +1,31 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ConfigReader Member List</h1>This is the complete list of members for <a class="el" href="classConfigReader.html">ConfigReader</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#p0">cache</a></td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classConfigReader.html#a0">ConfigReader</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a1">ConfigReader</a>(std::string filename)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a9">DumpErrors</a>(bool bail, userrec *user)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a7">Enumerate</a>(std::string tag)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a10">EnumerateValues</a>(std::string tag, int index)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#p3">error</a></td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#p1">errorlog</a></td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a6">GetError</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#p2">readerror</a></td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a4">ReadFlag</a>(std::string tag, std::string name, int index)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a5">ReadInteger</a>(std::string tag, std::string name, int index, bool needs_unsigned)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a3">ReadValue</a>(std::string tag, std::string name, int index)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConfigReader.html#a8">Verify</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:42 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ConfigReader Member List</h1>This is the complete list of members for <a class="el" href="classConfigReader.html">ConfigReader</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#cache">cache</a></td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#ConfigReader_28_29">ConfigReader</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#ConfigReader_28std_3A_3Astring_20filename_29">ConfigReader</a>(std::string filename)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29">DumpErrors</a>(bool bail, userrec *user)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#Enumerate_28std_3A_3Astring_20tag_29">Enumerate</a>(std::string tag)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29">EnumerateValues</a>(std::string tag, int index)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#error">error</a></td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#errorlog">errorlog</a></td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#GetError_28_29">GetError</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#readerror">readerror</a></td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ReadFlag</a>(std::string tag, std::string name, int index)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29">ReadInteger</a>(std::string tag, std::string name, int index, bool needs_unsigned)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ReadValue</a>(std::string tag, std::string name, int index)</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#Verify_28_29">Verify</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConfigReader.html#_7EConfigReader_28_29">~ConfigReader</a>()</td><td><a class="el" href="classConfigReader.html">ConfigReader</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classConfigReader.html b/docs/module-doc/classConfigReader.html
index 8c0b0a5f1..331390141 100644
--- a/docs/module-doc/classConfigReader.html
+++ b/docs/module-doc/classConfigReader.html
@@ -1,97 +1,96 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ConfigReader class Reference</title>
+<title>InspIRCd: ConfigReader Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ConfigReader Class Reference</h1>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.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ConfigReader Class Reference</h1><!-- doxytag: class="ConfigReader" --><!-- doxytag: inherits="classbase" -->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.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for ConfigReader:<p><center><img src="classConfigReader__inherit__graph.gif" border="0" usemap="#ConfigReader__inherit__map" alt="Inheritance graph"></center>
<map name="ConfigReader__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="20,7,100,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="19,7,99,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ConfigReader:<p><center><img src="classConfigReader__coll__graph.gif" border="0" usemap="#ConfigReader__coll__map" alt="Collaboration graph"></center>
<map name="ConfigReader__coll__map">
-<area href="classclassbase.html" shape="rect" coords="7,98,87,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classConfigReader-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classConfigReader-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a0">ConfigReader</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#ConfigReader_28_29">ConfigReader</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a1">ConfigReader</a> (std::string filename)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <a href="#ConfigReader_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#ConfigReader_28std_3A_3Astring_20filename_29">ConfigReader</a> (<a class="el" href="namespaceirc.html#string">std::string</a> filename)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Overloaded constructor. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a2">~ConfigReader</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Overloaded constructor. <a href="#ConfigReader_28std_3A_3Astring_20filename_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#_7EConfigReader_28_29">~ConfigReader</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default destructor. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a3">ReadValue</a> (std::string tag, std::string name, int index)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default destructor. <a href="#_7EConfigReader_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ReadValue</a> (<a class="el" href="namespaceirc.html#string">std::string</a> tag, <a class="el" href="namespaceirc.html#string">std::string</a> name, int index)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a value from the config file. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a4">ReadFlag</a> (std::string tag, std::string name, int index)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a value from the config file. <a href="#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ReadFlag</a> (<a class="el" href="namespaceirc.html#string">std::string</a> tag, <a class="el" href="namespaceirc.html#string">std::string</a> name, int index)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a boolean value from the config file. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a5">ReadInteger</a> (std::string tag, std::string name, int index, bool needs_unsigned)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a boolean value from the config file. <a href="#ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29">ReadInteger</a> (<a class="el" href="namespaceirc.html#string">std::string</a> tag, <a class="el" href="namespaceirc.html#string">std::string</a> name, int index, bool needs_unsigned)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves an integer value from the config file. </em> <a href="#a5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a6">GetError</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves an integer value from the config file. <a href="#ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#GetError_28_29">GetError</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the last error to occur. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a7">Enumerate</a> (std::string tag)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the last error to occur. <a href="#GetError_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#Enumerate_28std_3A_3Astring_20tag_29">Enumerate</a> (<a class="el" href="namespaceirc.html#string">std::string</a> tag)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Counts the number of times a given tag appears in the config file. </em> <a href="#a7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a8">Verify</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Counts the number of times a given tag appears in the config file. <a href="#Enumerate_28std_3A_3Astring_20tag_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#Verify_28_29">Verify</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a config file is valid. </em> <a href="#a8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a9">DumpErrors</a> (bool bail, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a config file is valid. <a href="#Verify_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29">DumpErrors</a> (bool bail, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dumps the list of errors in a config file to an output location. </em> <a href="#a9"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#a10">EnumerateValues</a> (std::string tag, int index)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dumps the list of errors in a config file to an output location. <a href="#DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29">EnumerateValues</a> (<a class="el" href="namespaceirc.html#string">std::string</a> tag, int index)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of items within a tag. </em> <a href="#a10"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::stringstream *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#p0">cache</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of items within a tag. <a href="#EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::stringstream *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#cache">cache</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The contents of the configuration file This protected member should never be accessed by a module (and cannot be accessed unless the core is changed). </em> <a href="#p0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::stringstream *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#p1">errorlog</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The contents of the configuration file This protected member should never be accessed by a module (and cannot be accessed unless the core is changed). <a href="#cache"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::stringstream *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#errorlog">errorlog</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#p2">readerror</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#readerror">readerror</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to store errors. </em> <a href="#p2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html#p3">error</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to store errors. <a href="#readerror"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html#error">error</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
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.
<p>
-It may either be instantiated with one parameter or none. Constructing the class using one parameter allows you to specify a path to your own configuration file, otherwise, inspircd.conf is read.
+It may either be instantiated with one parameter or none. Constructing the class using one parameter allows you to specify a path to your own configuration file, otherwise, inspircd.conf is read.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01150">1150</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l01121">1121</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="ConfigReader_28_29"></a><!-- doxytag: member="ConfigReader::ConfigReader" ref="ConfigReader_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> ConfigReader::ConfigReader </td>
+ <td class="md" nowrap valign="top">ConfigReader::ConfigReader </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -103,40 +102,39 @@ 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#l00821">821</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#l00796">796</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01158">cache</a>, <a class="el" href="modules_8h-source.html#l01141">CONF_FILE_NOT_FOUND</a>, <a class="el" href="modules_8h-source.html#l01163">error</a>, <a class="el" href="modules_8h-source.html#l01159">errorlog</a>, <a class="el" href="modules_8cpp-source.html#l00075">include_stack</a>, and <a class="el" href="modules_8h-source.html#l01162">readerror</a>.
+References <a class="el" href="modules_8h-source.html#l01129">cache</a>, <a class="el" href="modules_8h-source.html#l01112">CONF_FILE_NOT_FOUND</a>, <a class="el" href="modules_8h-source.html#l01134">error</a>, <a class="el" href="modules_8h-source.html#l01130">errorlog</a>, <a class="el" href="modules_8cpp.html#include_5Fstack">include_stack</a>, and <a class="el" href="modules_8h-source.html#l01133">readerror</a>.<div class="fragment"><pre class="fragment"><a name="l00797"></a>00797 {
+<a name="l00798"></a>00798 <a class="code" href="modules_8cpp.html#include_5Fstack">include_stack</a>.clear();
+<a name="l00799"></a>00799 this-&gt;<a class="code" href="classConfigReader.html#cache">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+<a name="l00800"></a>00800 this-&gt;<a class="code" href="classConfigReader.html#errorlog">errorlog</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+<a name="l00801"></a>00801 this-&gt;<a class="code" href="classConfigReader.html#readerror">readerror</a> = LoadConf(CONFIG_FILE,this-&gt;cache,this-&gt;errorlog);
+<a name="l00802"></a>00802 <span class="keywordflow">if</span> (!this-&gt;readerror)
+<a name="l00803"></a>00803 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FFILE_5FNOT_5FFOUND">CONF_FILE_NOT_FOUND</a>;
+<a name="l00804"></a>00804 }
+</pre></div>
<p>
-<div class="fragment"><pre>00822 {
-00823 <a class="code" href="modules_8cpp.html#a3">include_stack</a>.clear();
-00824 this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00825 this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00826 this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a> = LoadConf(CONFIG_FILE,this-&gt;cache,this-&gt;errorlog);
-00827 <span class="keywordflow">if</span> (!this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a>)
-00828 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a30">CONF_FILE_NOT_FOUND</a>;
-00829 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="ConfigReader::ConfigReader"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ConfigReader_28std_3A_3Astring_20filename_29"></a><!-- doxytag: member="ConfigReader::ConfigReader" ref="ConfigReader_28std_3A_3Astring_20filename_29" args="(std::string filename)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> ConfigReader::ConfigReader </td>
+ <td class="md" nowrap valign="top">ConfigReader::ConfigReader </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>filename</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -148,38 +146,37 @@ 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#l00841">841</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#l00816">816</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01158">cache</a>, <a class="el" href="modules_8h-source.html#l01141">CONF_FILE_NOT_FOUND</a>, <a class="el" href="modules_8h-source.html#l01163">error</a>, <a class="el" href="modules_8h-source.html#l01159">errorlog</a>, and <a class="el" href="modules_8h-source.html#l01162">readerror</a>.
+References <a class="el" href="modules_8h-source.html#l01129">cache</a>, <a class="el" href="modules_8h-source.html#l01112">CONF_FILE_NOT_FOUND</a>, <a class="el" href="modules_8h-source.html#l01134">error</a>, <a class="el" href="modules_8h-source.html#l01130">errorlog</a>, and <a class="el" href="modules_8h-source.html#l01133">readerror</a>.<div class="fragment"><pre class="fragment"><a name="l00817"></a>00817 {
+<a name="l00818"></a>00818 this-&gt;<a class="code" href="classConfigReader.html#cache">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+<a name="l00819"></a>00819 this-&gt;<a class="code" href="classConfigReader.html#errorlog">errorlog</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+<a name="l00820"></a>00820 this-&gt;<a class="code" href="classConfigReader.html#readerror">readerror</a> = LoadConf(filename.c_str(),this-&gt;<a class="code" href="classConfigReader.html#cache">cache</a>,this-&gt;<a class="code" href="classConfigReader.html#errorlog">errorlog</a>);
+<a name="l00821"></a>00821 <span class="keywordflow">if</span> (!this-&gt;readerror)
+<a name="l00822"></a>00822 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FFILE_5FNOT_5FFOUND">CONF_FILE_NOT_FOUND</a>;
+<a name="l00823"></a>00823 };
+</pre></div>
<p>
-<div class="fragment"><pre>00842 {
-00843 this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00844 this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00845 this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a> = LoadConf(filename.c_str(),this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a>,this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a>);
-00846 <span class="keywordflow">if</span> (!this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a>)
-00847 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a30">CONF_FILE_NOT_FOUND</a>;
-00848 };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a2" doxytag="ConfigReader::~ConfigReader"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7EConfigReader_28_29"></a><!-- doxytag: member="ConfigReader::~ConfigReader" ref="_7EConfigReader_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> ConfigReader::~<a class="el" href="classConfigReader.html">ConfigReader</a> </td>
+ <td class="md" nowrap valign="top">ConfigReader::~ConfigReader </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -191,48 +188,47 @@ Default destructor.
<p>
This method destroys the ConfigReader class.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00832">832</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#l00807">807</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01158">cache</a>, and <a class="el" href="modules_8h-source.html#l01159">errorlog</a>.
+References <a class="el" href="modules_8h-source.html#l01129">cache</a>, and <a class="el" href="modules_8h-source.html#l01130">errorlog</a>.<div class="fragment"><pre class="fragment"><a name="l00808"></a>00808 {
+<a name="l00809"></a>00809 <span class="keywordflow">if</span> (this-&gt;cache)
+<a name="l00810"></a>00810 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#cache">cache</a>;
+<a name="l00811"></a>00811 <span class="keywordflow">if</span> (this-&gt;errorlog)
+<a name="l00812"></a>00812 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#errorlog">errorlog</a>;
+<a name="l00813"></a>00813 }
+</pre></div>
<p>
-<div class="fragment"><pre>00833 {
-00834 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a>)
-00835 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a>;
-00836 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a>)
-00837 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a>;
-00838 }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a9" doxytag="ConfigReader::DumpErrors"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="ConfigReader::DumpErrors" ref="DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29" args="(bool bail, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void ConfigReader::DumpErrors </td>
+ <td class="md" nowrap valign="top">void ConfigReader::DumpErrors </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">bool&nbsp;</td>
<td class="mdname" nowrap> <em>bail</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -244,62 +240,61 @@ Dumps the list of errors in a config file to an output location.
<p>
If bail is true, then the program will abort. If bail is false and user points to a valid user record, the error report will be spooled to the given user by means of NOTICE. if bool is false AND user is false, the error report will be spooled to all opers by means of a NOTICE to all opers.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00919">919</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="modules_8h-source.html#l01159">errorlog</a>, <a class="el" href="connection_8h-source.html#l00301">connection::fd</a>, and <a class="el" href="users_8h-source.html#l00121">userrec::nick</a>.
-<p>
-<div class="fragment"><pre>00920 {
-00921 <span class="keywordflow">if</span> (bail)
-00922 {
-00923 printf(<span class="stringliteral">"There were errors in your configuration:\n%s"</span>,<a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;str().c_str());
-00924 exit(0);
-00925 }
-00926 <span class="keywordflow">else</span>
-00927 {
-00928 <span class="keywordtype">char</span> dataline[1024];
-00929 <span class="keywordflow">if</span> (user)
-00930 {
-00931 WriteServ(user-&gt;<a class="code" href="classconnection.html#o0">fd</a>,<span class="stringliteral">"NOTICE %s :There were errors in the configuration file:"</span>,user-&gt;<a class="code" href="classuserrec.html#o0">nick</a>);
-00932 <span class="keywordflow">while</span> (!<a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;eof())
-00933 {
-00934 <a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;getline(dataline,1024);
-00935 WriteServ(user-&gt;<a class="code" href="classconnection.html#o0">fd</a>,<span class="stringliteral">"NOTICE %s :%s"</span>,user-&gt;<a class="code" href="classuserrec.html#o0">nick</a>,dataline);
-00936 }
-00937 }
-00938 <span class="keywordflow">else</span>
-00939 {
-00940 WriteOpers(<span class="stringliteral">"There were errors in the configuration file:"</span>,user-&gt;<a class="code" href="classuserrec.html#o0">nick</a>);
-00941 <span class="keywordflow">while</span> (!<a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;eof())
-00942 {
-00943 <a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;getline(dataline,1024);
-00944 WriteOpers(dataline);
-00945 }
-00946 }
-00947 <span class="keywordflow">return</span>;
-00948 }
-00949 }
-</pre></div> </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00894">894</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l01130">errorlog</a>, <a class="el" href="connection_8h-source.html#l00042">connection::fd</a>, and <a class="el" href="users_8h-source.html#l00121">userrec::nick</a>.<div class="fragment"><pre class="fragment"><a name="l00895"></a>00895 {
+<a name="l00896"></a>00896 <span class="keywordflow">if</span> (bail)
+<a name="l00897"></a>00897 {
+<a name="l00898"></a>00898 printf(<span class="stringliteral">"There were errors in your configuration:\n%s"</span>,<a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;str().c_str());
+<a name="l00899"></a>00899 exit(0);
+<a name="l00900"></a>00900 }
+<a name="l00901"></a>00901 <span class="keywordflow">else</span>
+<a name="l00902"></a>00902 {
+<a name="l00903"></a>00903 <span class="keywordtype">char</span> dataline[1024];
+<a name="l00904"></a>00904 <span class="keywordflow">if</span> (user)
+<a name="l00905"></a>00905 {
+<a name="l00906"></a>00906 WriteServ(user-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"NOTICE %s :There were errors in the configuration file:"</span>,user-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>);
+<a name="l00907"></a>00907 <span class="keywordflow">while</span> (!<a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;eof())
+<a name="l00908"></a>00908 {
+<a name="l00909"></a>00909 <a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;getline(dataline,1024);
+<a name="l00910"></a>00910 WriteServ(user-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"NOTICE %s :%s"</span>,user-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,dataline);
+<a name="l00911"></a>00911 }
+<a name="l00912"></a>00912 }
+<a name="l00913"></a>00913 <span class="keywordflow">else</span>
+<a name="l00914"></a>00914 {
+<a name="l00915"></a>00915 WriteOpers(<span class="stringliteral">"There were errors in the configuration file:"</span>,user-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>);
+<a name="l00916"></a>00916 <span class="keywordflow">while</span> (!<a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;eof())
+<a name="l00917"></a>00917 {
+<a name="l00918"></a>00918 <a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;getline(dataline,1024);
+<a name="l00919"></a>00919 WriteOpers(dataline);
+<a name="l00920"></a>00920 }
+<a name="l00921"></a>00921 }
+<a name="l00922"></a>00922 <span class="keywordflow">return</span>;
+<a name="l00923"></a>00923 }
+<a name="l00924"></a>00924 }
+</pre></div>
+<p>
+ </td>
</tr>
</table>
-<a name="a7" doxytag="ConfigReader::Enumerate"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Enumerate_28std_3A_3Astring_20tag_29"></a><!-- doxytag: member="ConfigReader::Enumerate" ref="Enumerate_28std_3A_3Astring_20tag_29" args="(std::string tag)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int ConfigReader::Enumerate </td>
+ <td class="md" nowrap valign="top">int ConfigReader::Enumerate </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>tag</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -309,46 +304,45 @@ References <a class="el" href="modules_8h-source.html#l01159">errorlog</a>, <a c
<p>
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.
+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#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">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#l00952">952</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#l00927">927</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01158">cache</a>.
+References <a class="el" href="modules_8h-source.html#l01129">cache</a>.<div class="fragment"><pre class="fragment"><a name="l00928"></a>00928 {
+<a name="l00929"></a>00929 <span class="keywordflow">return</span> EnumConf(<a class="code" href="classConfigReader.html#cache">cache</a>,tag.c_str());
+<a name="l00930"></a>00930 }
+</pre></div>
<p>
-<div class="fragment"><pre>00953 {
-00954 <span class="keywordflow">return</span> EnumConf(cache,tag.c_str());
-00955 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a10" doxytag="ConfigReader::EnumerateValues"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29"></a><!-- doxytag: member="ConfigReader::EnumerateValues" ref="EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29" args="(std::string tag, int index)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int ConfigReader::EnumerateValues </td>
+ <td class="md" nowrap valign="top">int ConfigReader::EnumerateValues </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>tag</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>index</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -360,34 +354,33 @@ 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#l00957">957</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#l00932">932</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01158">cache</a>.
+References <a class="el" href="modules_8h-source.html#l01129">cache</a>.<div class="fragment"><pre class="fragment"><a name="l00933"></a>00933 {
+<a name="l00934"></a>00934 <span class="keywordflow">return</span> EnumValues(<a class="code" href="classConfigReader.html#cache">cache</a>, tag.c_str(), index);
+<a name="l00935"></a>00935 }
+</pre></div>
<p>
-<div class="fragment"><pre>00958 {
-00959 <span class="keywordflow">return</span> EnumValues(cache, tag.c_str(), index);
-00960 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a6" doxytag="ConfigReader::GetError"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetError_28_29"></a><!-- doxytag: member="ConfigReader::GetError" ref="GetError_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long ConfigReader::GetError </td>
+ <td class="md" nowrap valign="top">long ConfigReader::GetError </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -397,54 +390,53 @@ References <a class="el" href="modules_8h-source.html#l01158">cache</a>.
<p>
Returns the last error to occur.
<p>
-Valid errors can be found by looking in <a class="el" href="modules_8h.html">modules.h</a>. Any nonzero value indicates an error condition. A call to <a class="el" href="classConfigReader.html#a6">GetError()</a> resets the error flag back to 0.
+Valid errors can be found by looking in <a class="el" href="modules_8h.html">modules.h</a>. Any nonzero value indicates an error condition. A call to <a class="el" href="classConfigReader.html#GetError_28_29">GetError()</a> resets the error flag back to 0.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00912">912</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#l00887">887</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01163">error</a>.
+References <a class="el" href="modules_8h-source.html#l01134">error</a>.<div class="fragment"><pre class="fragment"><a name="l00888"></a>00888 {
+<a name="l00889"></a>00889 <span class="keywordtype">long</span> olderr = this-&gt;<a class="code" href="classConfigReader.html#error">error</a>;
+<a name="l00890"></a>00890 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = 0;
+<a name="l00891"></a>00891 <span class="keywordflow">return</span> olderr;
+<a name="l00892"></a>00892 }
+</pre></div>
<p>
-<div class="fragment"><pre>00913 {
-00914 <span class="keywordtype">long</span> olderr = this-&gt;<a class="code" href="classConfigReader.html#p3">error</a>;
-00915 this-&gt;error = 0;
-00916 <span class="keywordflow">return</span> olderr;
-00917 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="ConfigReader::ReadFlag"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29"></a><!-- doxytag: member="ConfigReader::ReadFlag" ref="ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29" args="(std::string tag, std::string name, int index)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool ConfigReader::ReadFlag </td>
+ <td class="md" nowrap valign="top">bool ConfigReader::ReadFlag </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>tag</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>name</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>index</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -456,68 +448,67 @@ Retrieves a boolean value from the config file.
<p>
This method retrieves a boolean value from the config file. Where multiple copies of the tag exist in the config file, index indicates which of the values to retrieve. The values "1", "yes" and "true" in the config file count as true to ReadFlag, and any other value counts as false.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00866">866</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="modules_8h-source.html#l01158">cache</a>, <a class="el" href="modules_8h-source.html#l01140">CONF_VALUE_NOT_FOUND</a>, and <a class="el" href="modules_8h-source.html#l01163">error</a>.
-<p>
-<div class="fragment"><pre>00867 {
-00868 <span class="keywordtype">char</span> val[MAXBUF];
-00869 <span class="keywordtype">char</span> t[MAXBUF];
-00870 <span class="keywordtype">char</span> n[MAXBUF];
-00871 strlcpy(t,tag.c_str(),MAXBUF);
-00872 strlcpy(n,name.c_str(),MAXBUF);
-00873 <span class="keywordtype">int</span> res = ReadConf(cache,t,n,index,val);
-00874 <span class="keywordflow">if</span> (!res)
-00875 {
-00876 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a29">CONF_VALUE_NOT_FOUND</a>;
-00877 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00878 }
-00879 std::string s = val;
-00880 <span class="keywordflow">return</span> ((s == <span class="stringliteral">"yes"</span>) || (s == <span class="stringliteral">"YES"</span>) || (s == <span class="stringliteral">"true"</span>) || (s == <span class="stringliteral">"TRUE"</span>) || (s == <span class="stringliteral">"1"</span>));
-00881 }
-</pre></div> </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00841">841</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l01129">cache</a>, <a class="el" href="modules_8h-source.html#l01111">CONF_VALUE_NOT_FOUND</a>, and <a class="el" href="modules_8h-source.html#l01134">error</a>.<div class="fragment"><pre class="fragment"><a name="l00842"></a>00842 {
+<a name="l00843"></a>00843 <span class="keywordtype">char</span> val[MAXBUF];
+<a name="l00844"></a>00844 <span class="keywordtype">char</span> t[MAXBUF];
+<a name="l00845"></a>00845 <span class="keywordtype">char</span> n[MAXBUF];
+<a name="l00846"></a>00846 strlcpy(t,tag.c_str(),MAXBUF);
+<a name="l00847"></a>00847 strlcpy(n,name.c_str(),MAXBUF);
+<a name="l00848"></a>00848 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#cache">cache</a>,t,n,index,val);
+<a name="l00849"></a>00849 <span class="keywordflow">if</span> (!res)
+<a name="l00850"></a>00850 {
+<a name="l00851"></a>00851 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">CONF_VALUE_NOT_FOUND</a>;
+<a name="l00852"></a>00852 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00853"></a>00853 }
+<a name="l00854"></a>00854 <a class="code" href="namespaceirc.html#string">std::string</a> s = val;
+<a name="l00855"></a>00855 <span class="keywordflow">return</span> ((s == <span class="stringliteral">"yes"</span>) || (s == <span class="stringliteral">"YES"</span>) || (s == <span class="stringliteral">"true"</span>) || (s == <span class="stringliteral">"TRUE"</span>) || (s == <span class="stringliteral">"1"</span>));
+<a name="l00856"></a>00856 }
+</pre></div>
+<p>
+ </td>
</tr>
</table>
-<a name="a5" doxytag="ConfigReader::ReadInteger"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29"></a><!-- doxytag: member="ConfigReader::ReadInteger" ref="ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29" args="(std::string tag, std::string name, int index, bool needs_unsigned)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long ConfigReader::ReadInteger </td>
+ <td class="md" nowrap valign="top">long ConfigReader::ReadInteger </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>tag</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>name</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>index</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>needs_unsigned</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -527,76 +518,75 @@ References <a class="el" href="modules_8h-source.html#l01158">cache</a>, <a clas
<p>
Retrieves an integer value from the config file.
<p>
-This method retrieves an integer value from the config file. Where multiple copies of the tag exist in the config file, index indicates which of the values to retrieve. Any invalid integer values in the tag will cause the objects error value to be set, and any call to <a class="el" href="classConfigReader.html#a6">GetError()</a> will return CONF_INVALID_NUMBER to be returned. needs_unsigned is set if the number must be unsigned. If a signed number is placed into a tag which is specified unsigned, 0 will be returned and <a class="el" href="classConfigReader.html#a6">GetError()</a> will return CONF_NOT_UNSIGNED
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00883">883</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="modules_8h-source.html#l01158">cache</a>, <a class="el" href="modules_8h-source.html#l01138">CONF_NOT_A_NUMBER</a>, <a class="el" href="modules_8h-source.html#l01139">CONF_NOT_UNSIGNED</a>, <a class="el" href="modules_8h-source.html#l01140">CONF_VALUE_NOT_FOUND</a>, and <a class="el" href="modules_8h-source.html#l01163">error</a>.
-<p>
-<div class="fragment"><pre>00884 {
-00885 <span class="keywordtype">char</span> val[MAXBUF];
-00886 <span class="keywordtype">char</span> t[MAXBUF];
-00887 <span class="keywordtype">char</span> n[MAXBUF];
-00888 strlcpy(t,tag.c_str(),MAXBUF);
-00889 strlcpy(n,name.c_str(),MAXBUF);
-00890 <span class="keywordtype">int</span> res = ReadConf(cache,t,n,index,val);
-00891 <span class="keywordflow">if</span> (!res)
-00892 {
-00893 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a29">CONF_VALUE_NOT_FOUND</a>;
-00894 <span class="keywordflow">return</span> 0;
-00895 }
-00896 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(val); i++)
-00897 {
-00898 <span class="keywordflow">if</span> (!isdigit(val[i]))
-00899 {
-00900 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a27">CONF_NOT_A_NUMBER</a>;
-00901 <span class="keywordflow">return</span> 0;
-00902 }
-00903 }
-00904 <span class="keywordflow">if</span> ((needs_unsigned) &amp;&amp; (atoi(val)&lt;0))
-00905 {
-00906 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a28">CONF_NOT_UNSIGNED</a>;
-00907 <span class="keywordflow">return</span> 0;
-00908 }
-00909 <span class="keywordflow">return</span> atoi(val);
-00910 }
-</pre></div> </td>
+This method retrieves an integer value from the config file. Where multiple copies of the tag exist in the config file, index indicates which of the values to retrieve. Any invalid integer values in the tag will cause the objects error value to be set, and any call to <a class="el" href="classConfigReader.html#GetError_28_29">GetError()</a> will return CONF_INVALID_NUMBER to be returned. needs_unsigned is set if the number must be unsigned. If a signed number is placed into a tag which is specified unsigned, 0 will be returned and <a class="el" href="classConfigReader.html#GetError_28_29">GetError()</a> will return CONF_NOT_UNSIGNED
+<p>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00858">858</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l01129">cache</a>, <a class="el" href="modules_8h-source.html#l01109">CONF_NOT_A_NUMBER</a>, <a class="el" href="modules_8h-source.html#l01110">CONF_NOT_UNSIGNED</a>, <a class="el" href="modules_8h-source.html#l01111">CONF_VALUE_NOT_FOUND</a>, and <a class="el" href="modules_8h-source.html#l01134">error</a>.<div class="fragment"><pre class="fragment"><a name="l00859"></a>00859 {
+<a name="l00860"></a>00860 <span class="keywordtype">char</span> val[MAXBUF];
+<a name="l00861"></a>00861 <span class="keywordtype">char</span> t[MAXBUF];
+<a name="l00862"></a>00862 <span class="keywordtype">char</span> n[MAXBUF];
+<a name="l00863"></a>00863 strlcpy(t,tag.c_str(),MAXBUF);
+<a name="l00864"></a>00864 strlcpy(n,name.c_str(),MAXBUF);
+<a name="l00865"></a>00865 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#cache">cache</a>,t,n,index,val);
+<a name="l00866"></a>00866 <span class="keywordflow">if</span> (!res)
+<a name="l00867"></a>00867 {
+<a name="l00868"></a>00868 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">CONF_VALUE_NOT_FOUND</a>;
+<a name="l00869"></a>00869 <span class="keywordflow">return</span> 0;
+<a name="l00870"></a>00870 }
+<a name="l00871"></a>00871 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(val); i++)
+<a name="l00872"></a>00872 {
+<a name="l00873"></a>00873 <span class="keywordflow">if</span> (!isdigit(val[i]))
+<a name="l00874"></a>00874 {
+<a name="l00875"></a>00875 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FNOT_5FA_5FNUMBER">CONF_NOT_A_NUMBER</a>;
+<a name="l00876"></a>00876 <span class="keywordflow">return</span> 0;
+<a name="l00877"></a>00877 }
+<a name="l00878"></a>00878 }
+<a name="l00879"></a>00879 <span class="keywordflow">if</span> ((needs_unsigned) &amp;&amp; (atoi(val)&lt;0))
+<a name="l00880"></a>00880 {
+<a name="l00881"></a>00881 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FNOT_5FUNSIGNED">CONF_NOT_UNSIGNED</a>;
+<a name="l00882"></a>00882 <span class="keywordflow">return</span> 0;
+<a name="l00883"></a>00883 }
+<a name="l00884"></a>00884 <span class="keywordflow">return</span> atoi(val);
+<a name="l00885"></a>00885 }
+</pre></div>
+<p>
+ </td>
</tr>
</table>
-<a name="a3" doxytag="ConfigReader::ReadValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29"></a><!-- doxytag: member="ConfigReader::ReadValue" ref="ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29" args="(std::string tag, std::string name, int index)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string ConfigReader::ReadValue </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> ConfigReader::ReadValue </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>tag</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>name</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>index</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -608,45 +598,44 @@ 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#l00850">850</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="modules_8h-source.html#l01158">cache</a>, <a class="el" href="modules_8h-source.html#l01140">CONF_VALUE_NOT_FOUND</a>, and <a class="el" href="modules_8h-source.html#l01163">error</a>.
-<p>
-<div class="fragment"><pre>00851 {
-00852 <span class="keywordtype">char</span> val[MAXBUF];
-00853 <span class="keywordtype">char</span> t[MAXBUF];
-00854 <span class="keywordtype">char</span> n[MAXBUF];
-00855 strlcpy(t,tag.c_str(),MAXBUF);
-00856 strlcpy(n,name.c_str(),MAXBUF);
-00857 <span class="keywordtype">int</span> res = ReadConf(cache,t,n,index,val);
-00858 <span class="keywordflow">if</span> (!res)
-00859 {
-00860 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a29">CONF_VALUE_NOT_FOUND</a>;
-00861 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-00862 }
-00863 <span class="keywordflow">return</span> val;
-00864 }
-</pre></div> </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00825">825</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l01129">cache</a>, <a class="el" href="modules_8h-source.html#l01111">CONF_VALUE_NOT_FOUND</a>, and <a class="el" href="modules_8h-source.html#l01134">error</a>.<div class="fragment"><pre class="fragment"><a name="l00826"></a>00826 {
+<a name="l00827"></a>00827 <span class="keywordtype">char</span> val[MAXBUF];
+<a name="l00828"></a>00828 <span class="keywordtype">char</span> t[MAXBUF];
+<a name="l00829"></a>00829 <span class="keywordtype">char</span> n[MAXBUF];
+<a name="l00830"></a>00830 strlcpy(t,tag.c_str(),MAXBUF);
+<a name="l00831"></a>00831 strlcpy(n,name.c_str(),MAXBUF);
+<a name="l00832"></a>00832 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#cache">cache</a>,t,n,index,val);
+<a name="l00833"></a>00833 <span class="keywordflow">if</span> (!res)
+<a name="l00834"></a>00834 {
+<a name="l00835"></a>00835 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">CONF_VALUE_NOT_FOUND</a>;
+<a name="l00836"></a>00836 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+<a name="l00837"></a>00837 }
+<a name="l00838"></a>00838 <span class="keywordflow">return</span> val;
+<a name="l00839"></a>00839 }
+</pre></div>
+<p>
+ </td>
</tr>
</table>
-<a name="a8" doxytag="ConfigReader::Verify"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Verify_28_29"></a><!-- doxytag: member="ConfigReader::Verify" ref="Verify_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool ConfigReader::Verify </td>
+ <td class="md" nowrap valign="top">bool ConfigReader::Verify </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -658,29 +647,30 @@ 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#l00962">962</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#l00937">937</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01162">readerror</a>.
+References <a class="el" href="modules_8h-source.html#l01133">readerror</a>.<div class="fragment"><pre class="fragment"><a name="l00938"></a>00938 {
+<a name="l00939"></a>00939 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classConfigReader.html#readerror">readerror</a>;
+<a name="l00940"></a>00940 }
+</pre></div>
<p>
-<div class="fragment"><pre>00963 {
-00964 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a>;
-00965 }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="p0" doxytag="ConfigReader::cache"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="cache"></a><!-- doxytag: member="ConfigReader::cache" ref="cache" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::stringstream* <a class="el" href="classConfigReader.html#p0">ConfigReader::cache</a><code> [protected]</code>
+ <td class="md" nowrap valign="top">std::stringstream* <a class="el" href="classConfigReader.html#cache">ConfigReader::cache</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -692,23 +682,24 @@ 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#l01158">1158</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#l01129">1129</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#l00821">ConfigReader()</a>, <a class="el" href="modules_8cpp-source.html#l00952">Enumerate()</a>, <a class="el" href="modules_8cpp-source.html#l00957">EnumerateValues()</a>, <a class="el" href="modules_8cpp-source.html#l00866">ReadFlag()</a>, <a class="el" href="modules_8cpp-source.html#l00883">ReadInteger()</a>, <a class="el" href="modules_8cpp-source.html#l00850">ReadValue()</a>, and <a class="el" href="modules_8cpp-source.html#l00832">~ConfigReader()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00796">ConfigReader()</a>, <a class="el" href="modules_8cpp-source.html#l00927">Enumerate()</a>, <a class="el" href="modules_8cpp-source.html#l00932">EnumerateValues()</a>, <a class="el" href="modules_8cpp-source.html#l00841">ReadFlag()</a>, <a class="el" href="modules_8cpp-source.html#l00858">ReadInteger()</a>, <a class="el" href="modules_8cpp-source.html#l00825">ReadValue()</a>, and <a class="el" href="modules_8cpp-source.html#l00807">~ConfigReader()</a>. </td>
</tr>
</table>
-<a name="p3" doxytag="ConfigReader::error"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="error"></a><!-- doxytag: member="ConfigReader::error" ref="error" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classConfigReader.html#p3">ConfigReader::error</a><code> [protected]</code>
+ <td class="md" nowrap valign="top">long <a class="el" href="classConfigReader.html#error">ConfigReader::error</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -718,23 +709,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00821">ConfigReader(
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01163">1163</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#l01134">1134</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#l00821">ConfigReader()</a>, <a class="el" href="modules_8cpp-source.html#l00912">GetError()</a>, <a class="el" href="modules_8cpp-source.html#l00866">ReadFlag()</a>, <a class="el" href="modules_8cpp-source.html#l00883">ReadInteger()</a>, and <a class="el" href="modules_8cpp-source.html#l00850">ReadValue()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00796">ConfigReader()</a>, <a class="el" href="modules_8cpp-source.html#l00887">GetError()</a>, <a class="el" href="modules_8cpp-source.html#l00841">ReadFlag()</a>, <a class="el" href="modules_8cpp-source.html#l00858">ReadInteger()</a>, and <a class="el" href="modules_8cpp-source.html#l00825">ReadValue()</a>. </td>
</tr>
</table>
-<a name="p1" doxytag="ConfigReader::errorlog"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="errorlog"></a><!-- doxytag: member="ConfigReader::errorlog" ref="errorlog" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::stringstream* <a class="el" href="classConfigReader.html#p1">ConfigReader::errorlog</a><code> [protected]</code>
+ <td class="md" nowrap valign="top">std::stringstream* <a class="el" href="classConfigReader.html#errorlog">ConfigReader::errorlog</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -744,23 +736,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00821">ConfigReader(
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01159">1159</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#l01130">1130</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#l00821">ConfigReader()</a>, <a class="el" href="modules_8cpp-source.html#l00919">DumpErrors()</a>, and <a class="el" href="modules_8cpp-source.html#l00832">~ConfigReader()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00796">ConfigReader()</a>, <a class="el" href="modules_8cpp-source.html#l00894">DumpErrors()</a>, and <a class="el" href="modules_8cpp-source.html#l00807">~ConfigReader()</a>. </td>
</tr>
</table>
-<a name="p2" doxytag="ConfigReader::readerror"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="readerror"></a><!-- doxytag: member="ConfigReader::readerror" ref="readerror" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool <a class="el" href="classConfigReader.html#p2">ConfigReader::readerror</a><code> [protected]</code>
+ <td class="md" nowrap valign="top">bool <a class="el" href="classConfigReader.html#readerror">ConfigReader::readerror</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -772,16 +765,15 @@ Used to store errors.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01162">1162</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#l01133">1133</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#l00821">ConfigReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00962">Verify()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00796">ConfigReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00937">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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:42 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classConfigReader__coll__graph.gif b/docs/module-doc/classConfigReader__coll__graph.gif
index ee5fdc558..a40a68c79 100644
--- a/docs/module-doc/classConfigReader__coll__graph.gif
+++ b/docs/module-doc/classConfigReader__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classConfigReader__coll__graph.map b/docs/module-doc/classConfigReader__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classConfigReader__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classConfigReader__coll__graph.md5 b/docs/module-doc/classConfigReader__coll__graph.md5
new file mode 100644
index 000000000..533d84fda
--- /dev/null
+++ b/docs/module-doc/classConfigReader__coll__graph.md5
@@ -0,0 +1 @@
+c56dd697e22ce3c20fa3cd4bd9a8d674 \ No newline at end of file
diff --git a/docs/module-doc/classConfigReader__inherit__graph.gif b/docs/module-doc/classConfigReader__inherit__graph.gif
index a0401d4a0..00519120e 100644
--- a/docs/module-doc/classConfigReader__inherit__graph.gif
+++ b/docs/module-doc/classConfigReader__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classConfigReader__inherit__graph.map b/docs/module-doc/classConfigReader__inherit__graph.map
new file mode 100644
index 000000000..2a63d2e6a
--- /dev/null
+++ b/docs/module-doc/classConfigReader__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 19,7 99,34
diff --git a/docs/module-doc/classConfigReader__inherit__graph.md5 b/docs/module-doc/classConfigReader__inherit__graph.md5
new file mode 100644
index 000000000..4ca91dca8
--- /dev/null
+++ b/docs/module-doc/classConfigReader__inherit__graph.md5
@@ -0,0 +1 @@
+d7b98fb3005dcfa23e616ed1d133423e \ No newline at end of file
diff --git a/docs/module-doc/classConnectClass-members.html b/docs/module-doc/classConnectClass-members.html
index c47a70089..c3f989f12 100644
--- a/docs/module-doc/classConnectClass-members.html
+++ b/docs/module-doc/classConnectClass-members.html
@@ -1,27 +1,26 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ConnectClass Member List</h1>This is the complete list of members for <a class="el" href="classConnectClass.html">ConnectClass</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 class="memlist"><td><a class="el" href="classConnectClass.html#o2">flood</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConnectClass.html#o3">host</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConnectClass.html#o5">pass</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConnectClass.html#o4">pingtime</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConnectClass.html#o8">recvqmax</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConnectClass.html#o1">registration_timeout</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConnectClass.html#o7">sendqmax</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConnectClass.html#o6">threshold</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classConnectClass.html#o0">type</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:44 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ConnectClass Member List</h1>This is the complete list of members for <a class="el" href="classConnectClass.html">ConnectClass</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#ConnectClass_28_29">ConnectClass</a>()</td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#flood">flood</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#host_5BMAXBUF_5D">host</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#pass_5BMAXBUF_5D">pass</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#pingtime">pingtime</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#recvqmax">recvqmax</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#registration_5Ftimeout">registration_timeout</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#sendqmax">sendqmax</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#threshold">threshold</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classConnectClass.html#type">type</a></td><td><a class="el" href="classConnectClass.html">ConnectClass</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classConnectClass.html b/docs/module-doc/classConnectClass.html
index a429cb11e..8b6b1b40a 100644
--- a/docs/module-doc/classConnectClass.html
+++ b/docs/module-doc/classConnectClass.html
@@ -1,56 +1,56 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ConnectClass class Reference</title>
+<title>InspIRCd: ConnectClass Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ConnectClass Class Reference</h1>Holds information relevent to &lt;connect allow&gt; and &lt;connect deny&gt; tags in the config file.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ConnectClass Class Reference</h1><!-- doxytag: class="ConnectClass" --><!-- doxytag: inherits="classbase" -->Holds information relevent to &lt;connect allow&gt; and &lt;connect deny&gt; tags in the config file.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="users_8h-source.html">users.h</a>&gt;</code>
<p>
Inheritance diagram for ConnectClass:<p><center><img src="classConnectClass__inherit__graph.gif" border="0" usemap="#ConnectClass__inherit__map" alt="Inheritance graph"></center>
<map name="ConnectClass__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="20,7,100,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="19,7,99,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ConnectClass:<p><center><img src="classConnectClass__coll__graph.gif" border="0" usemap="#ConnectClass__coll__map" alt="Collaboration graph"></center>
<map name="ConnectClass__coll__map">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classConnectClass-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classConnectClass-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#a0">ConnectClass</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#ConnectClass_28_29">ConnectClass</a> ()</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o0">type</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#type">type</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type of line, either CC_ALLOW or CC_DENY. </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o1">registration_timeout</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type of line, either CC_ALLOW or CC_DENY. <a href="#type"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#registration_5Ftimeout">registration_timeout</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Max time to register the connection in seconds. </em> <a href="#o1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o2">flood</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Max time to register the connection in seconds. <a href="#registration_5Ftimeout"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#flood">flood</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of lines in buffer before excess flood is triggered. </em> <a href="#o2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o3">host</a> [MAXBUF]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of lines in buffer before excess flood is triggered. <a href="#flood"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#host_5BMAXBUF_5D">host</a> [MAXBUF]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Host mask for this line. </em> <a href="#o3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o4">pingtime</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Host mask for this line. <a href="#host_5BMAXBUF_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#pingtime">pingtime</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of seconds between pings for this line. </em> <a href="#o4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o5">pass</a> [MAXBUF]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of seconds between pings for this line. <a href="#pingtime"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#pass_5BMAXBUF_5D">pass</a> [MAXBUF]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">(Optional) Password for this line </em> <a href="#o5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o6">threshold</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">(Optional) Password for this line <a href="#pass_5BMAXBUF_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#threshold">threshold</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Threshold value for flood disconnect. </em> <a href="#o6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o7">sendqmax</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Threshold value for flood disconnect. <a href="#threshold"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#sendqmax">sendqmax</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum size of sendq for users in this class (bytes). </em> <a href="#o7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html#o8">recvqmax</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum size of sendq for users in this class (bytes). <a href="#sendqmax"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html#recvqmax">recvqmax</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum size of recvq for users in this class (bytes). </em> <a href="#o8"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum size of recvq for users in this class (bytes). <a href="#recvqmax"></a><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.
@@ -58,24 +58,23 @@ Holds information relevent to &lt;connect allow&gt; and &lt;connect deny&gt; tag
<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>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a0" doxytag="ConnectClass::ConnectClass"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ConnectClass_28_29"></a><!-- doxytag: member="ConnectClass::ConnectClass" ref="ConnectClass_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> ConnectClass::ConnectClass </td>
+ <td class="md" nowrap valign="top">ConnectClass::ConnectClass </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -87,34 +86,35 @@ Definition at line <a class="el" href="users_8h-source.html#l00045">45</a> of fi
<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>.
<p>
-References <a class="el" href="users_8h-source.html#l00056">flood</a>, <a class="el" href="users_8h-source.html#l00059">host</a>, <a class="el" href="users_8h-source.html#l00065">pass</a>, <a class="el" href="users_8h-source.html#l00062">pingtime</a>, <a class="el" href="users_8h-source.html#l00077">recvqmax</a>, <a class="el" href="users_8h-source.html#l00053">registration_timeout</a>, <a class="el" href="users_8h-source.html#l00073">sendqmax</a>, and <a class="el" href="users_8h-source.html#l00069">threshold</a>.
-<p>
-<div class="fragment"><pre>00080 {
-00081 <a class="code" href="classConnectClass.html#o1">registration_timeout</a> = 0;
-00082 <a class="code" href="classConnectClass.html#o2">flood</a> = 0;
-00083 <a class="code" href="classConnectClass.html#o4">pingtime</a> = 0;
-00084 <a class="code" href="classConnectClass.html#o6">threshold</a> = 0;
-00085 <a class="code" href="classConnectClass.html#o7">sendqmax</a> = 0;
-00086 <a class="code" href="classConnectClass.html#o8">recvqmax</a> = 0;
-00087 strlcpy(host,<span class="stringliteral">""</span>,MAXBUF);
-00088 strlcpy(pass,<span class="stringliteral">""</span>,MAXBUF);
-00089 }
-</pre></div> </td>
+References <a class="el" href="users_8h-source.html#l00056">flood</a>, <a class="el" href="users_8h-source.html#l00059">host</a>, <a class="el" href="users_8h-source.html#l00065">pass</a>, <a class="el" href="users_8h-source.html#l00062">pingtime</a>, <a class="el" href="users_8h-source.html#l00077">recvqmax</a>, <a class="el" href="users_8h-source.html#l00053">registration_timeout</a>, <a class="el" href="users_8h-source.html#l00073">sendqmax</a>, and <a class="el" href="users_8h-source.html#l00069">threshold</a>.<div class="fragment"><pre class="fragment"><a name="l00080"></a>00080 {
+<a name="l00081"></a>00081 <a class="code" href="classConnectClass.html#registration_5Ftimeout">registration_timeout</a> = 0;
+<a name="l00082"></a>00082 <a class="code" href="classConnectClass.html#flood">flood</a> = 0;
+<a name="l00083"></a>00083 <a class="code" href="classConnectClass.html#pingtime">pingtime</a> = 0;
+<a name="l00084"></a>00084 <a class="code" href="classConnectClass.html#threshold">threshold</a> = 0;
+<a name="l00085"></a>00085 <a class="code" href="classConnectClass.html#sendqmax">sendqmax</a> = 0;
+<a name="l00086"></a>00086 <a class="code" href="classConnectClass.html#recvqmax">recvqmax</a> = 0;
+<a name="l00087"></a>00087 strlcpy(<a class="code" href="classConnectClass.html#host_5BMAXBUF_5D">host</a>,<span class="stringliteral">""</span>,MAXBUF);
+<a name="l00088"></a>00088 strlcpy(<a class="code" href="classConnectClass.html#pass_5BMAXBUF_5D">pass</a>,<span class="stringliteral">""</span>,MAXBUF);
+<a name="l00089"></a>00089 }
+</pre></div>
+<p>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o2" doxytag="ConnectClass::flood"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="flood"></a><!-- doxytag: member="ConnectClass::flood" ref="flood" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classConnectClass.html#o2">ConnectClass::flood</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classConnectClass.html#flood">ConnectClass::flood</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -131,18 +131,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00056">56</a> of fi
Referenced by <a class="el" href="users_8h-source.html#l00079">ConnectClass()</a>. </td>
</tr>
</table>
-<a name="o3" doxytag="ConnectClass::host"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="host_5BMAXBUF_5D"></a><!-- doxytag: member="ConnectClass::host" ref="host_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classConnectClass.html#o3">ConnectClass::host</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classConnectClass.html#host_5BMAXBUF_5D">ConnectClass::host</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -159,18 +160,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00059">59</a> of fi
Referenced by <a class="el" href="users_8h-source.html#l00079">ConnectClass()</a>. </td>
</tr>
</table>
-<a name="o5" doxytag="ConnectClass::pass"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="pass_5BMAXBUF_5D"></a><!-- doxytag: member="ConnectClass::pass" ref="pass_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classConnectClass.html#o5">ConnectClass::pass</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classConnectClass.html#pass_5BMAXBUF_5D">ConnectClass::pass</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -187,18 +189,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00065">65</a> of fi
Referenced by <a class="el" href="users_8h-source.html#l00079">ConnectClass()</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="ConnectClass::pingtime"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="pingtime"></a><!-- doxytag: member="ConnectClass::pingtime" ref="pingtime" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classConnectClass.html#o4">ConnectClass::pingtime</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classConnectClass.html#pingtime">ConnectClass::pingtime</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -215,18 +218,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00062">62</a> of fi
Referenced by <a class="el" href="users_8h-source.html#l00079">ConnectClass()</a>. </td>
</tr>
</table>
-<a name="o8" doxytag="ConnectClass::recvqmax"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="recvqmax"></a><!-- doxytag: member="ConnectClass::recvqmax" ref="recvqmax" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classConnectClass.html#o8">ConnectClass::recvqmax</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classConnectClass.html#recvqmax">ConnectClass::recvqmax</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -243,18 +247,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00077">77</a> of fi
Referenced by <a class="el" href="users_8h-source.html#l00079">ConnectClass()</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="ConnectClass::registration_timeout"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="registration_5Ftimeout"></a><!-- doxytag: member="ConnectClass::registration_timeout" ref="registration_5Ftimeout" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classConnectClass.html#o1">ConnectClass::registration_timeout</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classConnectClass.html#registration_5Ftimeout">ConnectClass::registration_timeout</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -271,18 +276,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00053">53</a> of fi
Referenced by <a class="el" href="users_8h-source.html#l00079">ConnectClass()</a>. </td>
</tr>
</table>
-<a name="o7" doxytag="ConnectClass::sendqmax"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="sendqmax"></a><!-- doxytag: member="ConnectClass::sendqmax" ref="sendqmax" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classConnectClass.html#o7">ConnectClass::sendqmax</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classConnectClass.html#sendqmax">ConnectClass::sendqmax</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -299,18 +305,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00073">73</a> of fi
Referenced by <a class="el" href="users_8h-source.html#l00079">ConnectClass()</a>. </td>
</tr>
</table>
-<a name="o6" doxytag="ConnectClass::threshold"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="threshold"></a><!-- doxytag: member="ConnectClass::threshold" ref="threshold" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classConnectClass.html#o6">ConnectClass::threshold</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classConnectClass.html#threshold">ConnectClass::threshold</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -327,18 +334,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00069">69</a> of fi
Referenced by <a class="el" href="users_8h-source.html#l00079">ConnectClass()</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="ConnectClass::type"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="type"></a><!-- doxytag: member="ConnectClass::type" ref="type" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classConnectClass.html#o0">ConnectClass::type</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="classConnectClass.html#type">ConnectClass::type</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -355,9 +363,8 @@ Definition at line <a class="el" href="users_8h-source.html#l00050">50</a> of fi
</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:44 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classConnectClass__coll__graph.gif b/docs/module-doc/classConnectClass__coll__graph.gif
index 91e6533df..f9003df11 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/classConnectClass__coll__graph.map b/docs/module-doc/classConnectClass__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classConnectClass__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classConnectClass__coll__graph.md5 b/docs/module-doc/classConnectClass__coll__graph.md5
new file mode 100644
index 000000000..386fe62e5
--- /dev/null
+++ b/docs/module-doc/classConnectClass__coll__graph.md5
@@ -0,0 +1 @@
+96da8598edb3fe496b7465ff87b486c8 \ No newline at end of file
diff --git a/docs/module-doc/classConnectClass__inherit__graph.gif b/docs/module-doc/classConnectClass__inherit__graph.gif
index 67656e26c..57b5503c1 100644
--- a/docs/module-doc/classConnectClass__inherit__graph.gif
+++ b/docs/module-doc/classConnectClass__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classConnectClass__inherit__graph.map b/docs/module-doc/classConnectClass__inherit__graph.map
new file mode 100644
index 000000000..2a63d2e6a
--- /dev/null
+++ b/docs/module-doc/classConnectClass__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 19,7 99,34
diff --git a/docs/module-doc/classConnectClass__inherit__graph.md5 b/docs/module-doc/classConnectClass__inherit__graph.md5
new file mode 100644
index 000000000..e034e7874
--- /dev/null
+++ b/docs/module-doc/classConnectClass__inherit__graph.md5
@@ -0,0 +1 @@
+5d61e64e769d14d08dfe0f37a00b141b \ No newline at end of file
diff --git a/docs/module-doc/classDNS-members.html b/docs/module-doc/classDNS-members.html
index 7aa9cc2ab..f1d0bb6e8 100644
--- a/docs/module-doc/classDNS-members.html
+++ b/docs/module-doc/classDNS-members.html
@@ -1,41 +1,40 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>DNS Member List</h1>This is the complete list of members for <a class="el" href="classDNS.html">DNS</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classDNS.html#r0">binip</a></td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a0">DNS</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a1">DNS</a>(std::string dnsserver)</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d2">dns_aton4</a>(const char *const ipstring)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d11">dns_aton4_r</a>(const char *const ipstring)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d8">dns_aton4_s</a>(const char *const ipstring, in_addr *const ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d4">dns_getip4</a>(const char *const name)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d5">dns_getip4list</a>(const char *const name)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d6">dns_getname4</a>(const in_addr *const ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d7">dns_getresult</a>(const int fd)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d13">dns_getresult_r</a>(const int fd)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d10">dns_getresult_s</a>(const int fd, char *const result)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d0">dns_init</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d1">dns_init_2</a>(const char *dnsserver)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d3">dns_ntoa4</a>(const in_addr *const ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d12">dns_ntoa4_r</a>(const in_addr *const ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#d9">dns_ntoa4_s</a>(const in_addr *const ip, char *const result)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#r3">fd</a></td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a4">ForwardLookup</a>(std::string host)</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a7">GetFD</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a6">GetResult</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a5">HasResult</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#r1">result</a></td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a3">ReverseLookup</a>(std::string ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a8">SetNS</a>(std::string dnsserver)</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#r2">t</a></td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classDNS.html#a2">~DNS</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
-</table><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:48 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>DNS Member List</h1>This is the complete list of members for <a class="el" href="classDNS.html">DNS</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#binip">binip</a></td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#DNS_28_29">DNS</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#DNS_28std_3A_3Astring_20dnsserver_29">DNS</a>(std::string dnsserver)</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Faton_34_28const_20char_20_2Aconst_20ipstring_29">dns_aton4</a>(const char *const ipstring)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Faton_34_5Fr_28const_20char_20_2Aconst_20ipstring_29">dns_aton4_r</a>(const char *const ipstring)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Faton_34_5Fs_28const_20char_20_2Aconst_20ipstring_2C_20in_5Faddr_20_2Aconst_20ip_29">dns_aton4_s</a>(const char *const ipstring, in_addr *const ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fgetip_34_28const_20char_20_2Aconst_20name_29">dns_getip4</a>(const char *const name)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fgetip_34list_28const_20char_20_2Aconst_20name_29">dns_getip4list</a>(const char *const name)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fgetname_34_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_getname4</a>(const in_addr *const ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fgetresult_28const_20int_20fd_29">dns_getresult</a>(const int fd)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fgetresult_5Fr_28const_20int_20fd_29">dns_getresult_r</a>(const int fd)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fgetresult_5Fs_28const_20int_20fd_2C_20char_20_2Aconst_20result_29">dns_getresult_s</a>(const int fd, char *const result)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Finit_28_29">dns_init</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Finit_5F_32_28const_20char_20_2Adnsserver_29">dns_init_2</a>(const char *dnsserver)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fntoa_34_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_ntoa4</a>(const in_addr *const ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fntoa_34_5Fr_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_ntoa4_r</a>(const in_addr *const ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#dns_5Fntoa_34_5Fs_28const_20in_5Faddr_20_2Aconst_20ip_2C_20char_20_2Aconst_20result_29">dns_ntoa4_s</a>(const in_addr *const ip, char *const result)</td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#fd">fd</a></td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#ForwardLookup_28std_3A_3Astring_20host_29">ForwardLookup</a>(std::string host)</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#GetFD_28_29">GetFD</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#GetResult_28_29">GetResult</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#HasResult_28_29">HasResult</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#result">result</a></td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#ReverseLookup_28std_3A_3Astring_20ip_29">ReverseLookup</a>(std::string ip)</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#SetNS_28std_3A_3Astring_20dnsserver_29">SetNS</a>(std::string dnsserver)</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#t">t</a></td><td><a class="el" href="classDNS.html">DNS</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classDNS.html#_7EDNS_28_29">~DNS</a>()</td><td><a class="el" href="classDNS.html">DNS</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classDNS.html b/docs/module-doc/classDNS.html
index 13a0af42f..0ed6c7daa 100644
--- a/docs/module-doc/classDNS.html
+++ b/docs/module-doc/classDNS.html
@@ -1,110 +1,109 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: DNS class Reference</title>
+<title>InspIRCd: DNS Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>DNS Class Reference</h1>The DNS class allows fast nonblocking resolution of hostnames and ip addresses.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>DNS Class Reference</h1><!-- doxytag: class="DNS" -->The DNS class allows fast nonblocking resolution of hostnames and ip addresses.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="dns_8h-source.html">dns.h</a>&gt;</code>
<p>
Collaboration diagram for DNS:<p><center><img src="classDNS__coll__graph.gif" border="0" usemap="#DNS__coll__map" alt="Collaboration graph"></center>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classDNS-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classDNS-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a0">DNS</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#DNS_28_29">DNS</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The default constructor uses dns addresses read from /etc/resolv.conf. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a1">DNS</a> (std::string dnsserver)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The default constructor uses dns addresses read from /etc/resolv.conf. <a href="#DNS_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#DNS_28std_3A_3Astring_20dnsserver_29">DNS</a> (<a class="el" href="namespaceirc.html#string">std::string</a> dnsserver)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This constructor accepts a dns server address. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a2">~DNS</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This constructor accepts a dns server address. <a href="#DNS_28std_3A_3Astring_20dnsserver_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#_7EDNS_28_29">~DNS</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The destructor frees all used structures. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a3">ReverseLookup</a> (std::string ip)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The destructor frees all used structures. <a href="#_7EDNS_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#ReverseLookup_28std_3A_3Astring_20ip_29">ReverseLookup</a> (<a class="el" href="namespaceirc.html#string">std::string</a> ip)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method will start the reverse lookup of an ip given in dotted decimal format, e.g. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a4">ForwardLookup</a> (std::string host)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method will start the reverse lookup of an ip given in dotted decimal format, e.g. <a href="#ReverseLookup_28std_3A_3Astring_20ip_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#ForwardLookup_28std_3A_3Astring_20host_29">ForwardLookup</a> (<a class="el" href="namespaceirc.html#string">std::string</a> host)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method will start the forward lookup of a hostname, e.g. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a5">HasResult</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method will start the forward lookup of a hostname, e.g. <a href="#ForwardLookup_28std_3A_3Astring_20host_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#HasResult_28_29">HasResult</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method will return true when the lookup is completed. </em> <a href="#a5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a6">GetResult</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method will return true when the lookup is completed. <a href="#HasResult_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#GetResult_28_29">GetResult</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the result of your query as a string, depending upon wether you called <a class="el" href="classDNS.html#a3">DNS::ReverseLookup()</a> or <a class="el" href="classDNS.html#a4">DNS::ForwardLookup</a>. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a7">GetFD</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the result of your query as a string, depending upon wether you called <a class="el" href="classDNS.html#ReverseLookup_28std_3A_3Astring_20ip_29">DNS::ReverseLookup()</a> or <a class="el" href="classDNS.html#ForwardLookup_28std_3A_3Astring_20host_29">DNS::ForwardLookup</a>. <a href="#GetResult_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#GetFD_28_29">GetFD</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the file handle used by the dns query socket or zero if the query is invalid for some reason, e.g. </em> <a href="#a7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a8">SetNS</a> (std::string dnsserver)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the file handle used by the dns query socket or zero if the query is invalid for some reason, e.g. <a href="#GetFD_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#SetNS_28std_3A_3Astring_20dnsserver_29">SetNS</a> (<a class="el" href="namespaceirc.html#string">std::string</a> dnsserver)</td></tr>
-<tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d0">dns_init</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Finit_28_29">dns_init</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d1">dns_init_2</a> (const char *dnsserver)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Finit_5F_32_28const_20char_20_2Adnsserver_29">dns_init_2</a> (const char *dnsserver)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>in_addr *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d2">dns_aton4</a> (const char *const ipstring)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">in_addr *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Faton_34_28const_20char_20_2Aconst_20ipstring_29">dns_aton4</a> (const char *const ipstring)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d3">dns_ntoa4</a> (const in_addr *const ip)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fntoa_34_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_ntoa4</a> (const in_addr *const ip)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d4">dns_getip4</a> (const char *const name)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fgetip_34_28const_20char_20_2Aconst_20name_29">dns_getip4</a> (const char *const name)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d5">dns_getip4list</a> (const char *const name)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fgetip_34list_28const_20char_20_2Aconst_20name_29">dns_getip4list</a> (const char *const name)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d6">dns_getname4</a> (const in_addr *const ip)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fgetname_34_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_getname4</a> (const in_addr *const ip)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d7">dns_getresult</a> (const int <a class="el" href="classDNS.html#r3">fd</a>)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fgetresult_28const_20int_20fd_29">dns_getresult</a> (const int <a class="el" href="classDNS.html#fd">fd</a>)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>in_addr *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d8">dns_aton4_s</a> (const char *const ipstring, in_addr *const ip)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">in_addr *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Faton_34_5Fs_28const_20char_20_2Aconst_20ipstring_2C_20in_5Faddr_20_2Aconst_20ip_29">dns_aton4_s</a> (const char *const ipstring, in_addr *const ip)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d9">dns_ntoa4_s</a> (const in_addr *const ip, char *const <a class="el" href="classDNS.html#r1">result</a>)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fntoa_34_5Fs_28const_20in_5Faddr_20_2Aconst_20ip_2C_20char_20_2Aconst_20result_29">dns_ntoa4_s</a> (const in_addr *const ip, char *const <a class="el" href="classDNS.html#result">result</a>)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d10">dns_getresult_s</a> (const int <a class="el" href="classDNS.html#r3">fd</a>, char *const <a class="el" href="classDNS.html#r1">result</a>)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fgetresult_5Fs_28const_20int_20fd_2C_20char_20_2Aconst_20result_29">dns_getresult_s</a> (const int <a class="el" href="classDNS.html#fd">fd</a>, char *const <a class="el" href="classDNS.html#result">result</a>)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>in_addr *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d11">dns_aton4_r</a> (const char *const ipstring)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">in_addr *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Faton_34_5Fr_28const_20char_20_2Aconst_20ipstring_29">dns_aton4_r</a> (const char *const ipstring)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d12">dns_ntoa4_r</a> (const in_addr *const ip)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fntoa_34_5Fr_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_ntoa4_r</a> (const in_addr *const ip)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d13">dns_getresult_r</a> (const int <a class="el" href="classDNS.html#r3">fd</a>)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#dns_5Fgetresult_5Fr_28const_20int_20fd_29">dns_getresult_r</a> (const int <a class="el" href="classDNS.html#fd">fd</a>)</td></tr>
-<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>in_addr *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r0">binip</a></td></tr>
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">in_addr *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#binip">binip</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r1">result</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#result">result</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r2">t</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#t">t</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r3">fd</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html#fd">fd</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The DNS class allows fast nonblocking resolution of hostnames and ip addresses.
<p>
-It is based heavily upon firedns by Ian Gulliver.
+It is based heavily upon firedns by Ian Gulliver.
<p>
<p>
Definition at line <a class="el" href="dns_8h-source.html#l00035">35</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a0" doxytag="DNS::DNS"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DNS_28_29"></a><!-- doxytag: member="DNS::DNS" ref="DNS_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> DNS::DNS </td>
+ <td class="md" nowrap valign="top">DNS::DNS </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -117,25 +116,24 @@ The default constructor uses dns addresses read from /etc/resolv.conf.
Please note that it will re-read /etc/resolv.conf for each copy of the class you instantiate, causing disk access and slow lookups if you create a lot of them. Consider passing the constructor a server address as a parameter instead. </td>
</tr>
</table>
-<a name="a1" doxytag="DNS::DNS"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DNS_28std_3A_3Astring_20dnsserver_29"></a><!-- doxytag: member="DNS::DNS" ref="DNS_28std_3A_3Astring_20dnsserver_29" args="(std::string dnsserver)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> DNS::DNS </td>
+ <td class="md" nowrap valign="top">DNS::DNS </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>dnsserver</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -148,24 +146,23 @@ This constructor accepts a dns server address.
The address must be in dotted decimal form, e.g. 1.2.3.4. </td>
</tr>
</table>
-<a name="a2" doxytag="DNS::~DNS"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7EDNS_28_29"></a><!-- doxytag: member="DNS::~DNS" ref="_7EDNS_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> DNS::~<a class="el" href="classDNS.html">DNS</a> </td>
+ <td class="md" nowrap valign="top">DNS::~DNS </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -179,25 +176,24 @@ The destructor frees all used structures.
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="d2" doxytag="DNS::dns_aton4"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Faton_34_28const_20char_20_2Aconst_20ipstring_29"></a><!-- doxytag: member="DNS::dns_aton4" ref="dns_5Faton_34_28const_20char_20_2Aconst_20ipstring_29" args="(const char *const ipstring)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> in_addr* DNS::dns_aton4 </td>
+ <td class="md" nowrap valign="top">in_addr* DNS::dns_aton4 </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const char *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *const &nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ipstring</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -208,25 +204,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d11" doxytag="DNS::dns_aton4_r"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Faton_34_5Fr_28const_20char_20_2Aconst_20ipstring_29"></a><!-- doxytag: member="DNS::dns_aton4_r" ref="dns_5Faton_34_5Fr_28const_20char_20_2Aconst_20ipstring_29" args="(const char *const ipstring)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> in_addr* DNS::dns_aton4_r </td>
+ <td class="md" nowrap valign="top">in_addr* DNS::dns_aton4_r </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const char *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *const &nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ipstring</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -237,34 +232,33 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d8" doxytag="DNS::dns_aton4_s"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Faton_34_5Fs_28const_20char_20_2Aconst_20ipstring_2C_20in_5Faddr_20_2Aconst_20ip_29"></a><!-- doxytag: member="DNS::dns_aton4_s" ref="dns_5Faton_34_5Fs_28const_20char_20_2Aconst_20ipstring_2C_20in_5Faddr_20_2Aconst_20ip_29" args="(const char *const ipstring, in_addr *const ip)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> in_addr* DNS::dns_aton4_s </td>
+ <td class="md" nowrap valign="top">in_addr* DNS::dns_aton4_s </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const char *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *const &nbsp;</td>
<td class="mdname" nowrap> <em>ipstring</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>in_addr *const&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap>in_addr *const &nbsp;</td>
<td class="mdname" nowrap> <em>ip</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -275,25 +269,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d4" doxytag="DNS::dns_getip4"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fgetip_34_28const_20char_20_2Aconst_20name_29"></a><!-- doxytag: member="DNS::dns_getip4" ref="dns_5Fgetip_34_28const_20char_20_2Aconst_20name_29" args="(const char *const name)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int DNS::dns_getip4 </td>
+ <td class="md" nowrap valign="top">int DNS::dns_getip4 </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const char *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *const &nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>name</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -304,25 +297,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d5" doxytag="DNS::dns_getip4list"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fgetip_34list_28const_20char_20_2Aconst_20name_29"></a><!-- doxytag: member="DNS::dns_getip4list" ref="dns_5Fgetip_34list_28const_20char_20_2Aconst_20name_29" args="(const char *const name)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int DNS::dns_getip4list </td>
+ <td class="md" nowrap valign="top">int DNS::dns_getip4list </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const char *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *const &nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>name</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -333,25 +325,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d6" doxytag="DNS::dns_getname4"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fgetname_34_28const_20in_5Faddr_20_2Aconst_20ip_29"></a><!-- doxytag: member="DNS::dns_getname4" ref="dns_5Fgetname_34_28const_20in_5Faddr_20_2Aconst_20ip_29" args="(const in_addr *const ip)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int DNS::dns_getname4 </td>
+ <td class="md" nowrap valign="top">int DNS::dns_getname4 </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const in_addr *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const in_addr *const &nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ip</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -362,25 +353,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d7" doxytag="DNS::dns_getresult"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fgetresult_28const_20int_20fd_29"></a><!-- doxytag: member="DNS::dns_getresult" ref="dns_5Fgetresult_28const_20int_20fd_29" args="(const int fd)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* DNS::dns_getresult </td>
+ <td class="md" nowrap valign="top">char* DNS::dns_getresult </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>fd</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -391,25 +381,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d13" doxytag="DNS::dns_getresult_r"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fgetresult_5Fr_28const_20int_20fd_29"></a><!-- doxytag: member="DNS::dns_getresult_r" ref="dns_5Fgetresult_5Fr_28const_20int_20fd_29" args="(const int fd)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* DNS::dns_getresult_r </td>
+ <td class="md" nowrap valign="top">char* DNS::dns_getresult_r </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>fd</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -420,34 +409,33 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d10" doxytag="DNS::dns_getresult_s"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fgetresult_5Fs_28const_20int_20fd_2C_20char_20_2Aconst_20result_29"></a><!-- doxytag: member="DNS::dns_getresult_s" ref="dns_5Fgetresult_5Fs_28const_20int_20fd_2C_20char_20_2Aconst_20result_29" args="(const int fd, char *const result)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* DNS::dns_getresult_s </td>
+ <td class="md" nowrap valign="top">char* DNS::dns_getresult_s </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const int&nbsp;</td>
<td class="mdname" nowrap> <em>fd</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *const&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap>char *const &nbsp;</td>
<td class="mdname" nowrap> <em>result</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -458,24 +446,23 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d0" doxytag="DNS::dns_init"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Finit_28_29"></a><!-- doxytag: member="DNS::dns_init" ref="dns_5Finit_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void DNS::dns_init </td>
+ <td class="md" nowrap valign="top">void DNS::dns_init </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -486,25 +473,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d1" doxytag="DNS::dns_init_2"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Finit_5F_32_28const_20char_20_2Adnsserver_29"></a><!-- doxytag: member="DNS::dns_init_2" ref="dns_5Finit_5F_32_28const_20char_20_2Adnsserver_29" args="(const char *dnsserver)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void DNS::dns_init_2 </td>
+ <td class="md" nowrap valign="top">void DNS::dns_init_2 </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>dnsserver</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -515,25 +501,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d3" doxytag="DNS::dns_ntoa4"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fntoa_34_28const_20in_5Faddr_20_2Aconst_20ip_29"></a><!-- doxytag: member="DNS::dns_ntoa4" ref="dns_5Fntoa_34_28const_20in_5Faddr_20_2Aconst_20ip_29" args="(const in_addr *const ip)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* DNS::dns_ntoa4 </td>
+ <td class="md" nowrap valign="top">char* DNS::dns_ntoa4 </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const in_addr *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const in_addr *const &nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ip</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -544,25 +529,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d12" doxytag="DNS::dns_ntoa4_r"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fntoa_34_5Fr_28const_20in_5Faddr_20_2Aconst_20ip_29"></a><!-- doxytag: member="DNS::dns_ntoa4_r" ref="dns_5Fntoa_34_5Fr_28const_20in_5Faddr_20_2Aconst_20ip_29" args="(const in_addr *const ip)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* DNS::dns_ntoa4_r </td>
+ <td class="md" nowrap valign="top">char* DNS::dns_ntoa4_r </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const in_addr *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const in_addr *const &nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ip</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [private]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -573,34 +557,33 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="d9" doxytag="DNS::dns_ntoa4_s"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fntoa_34_5Fs_28const_20in_5Faddr_20_2Aconst_20ip_2C_20char_20_2Aconst_20result_29"></a><!-- doxytag: member="DNS::dns_ntoa4_s" ref="dns_5Fntoa_34_5Fs_28const_20in_5Faddr_20_2Aconst_20ip_2C_20char_20_2Aconst_20result_29" args="(const in_addr *const ip, char *const result)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* DNS::dns_ntoa4_s </td>
+ <td class="md" nowrap valign="top">char* DNS::dns_ntoa4_s </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const in_addr *const&nbsp;</td>
+ <td class="md" nowrap valign="top">const in_addr *const &nbsp;</td>
<td class="mdname" nowrap> <em>ip</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *const&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap>char *const &nbsp;</td>
<td class="mdname" nowrap> <em>result</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -611,25 +594,24 @@ The destructor frees all used structures.
</td>
</tr>
</table>
-<a name="a4" doxytag="DNS::ForwardLookup"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ForwardLookup_28std_3A_3Astring_20host_29"></a><!-- doxytag: member="DNS::ForwardLookup" ref="ForwardLookup_28std_3A_3Astring_20host_29" args="(std::string host)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool DNS::ForwardLookup </td>
+ <td class="md" nowrap valign="top">bool DNS::ForwardLookup </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>host</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -642,24 +624,23 @@ This method will start the forward lookup of a hostname, e.g.
www.inspircd.org, and returns true if the lookup was successfully initiated. </td>
</tr>
</table>
-<a name="a7" doxytag="DNS::GetFD"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetFD_28_29"></a><!-- doxytag: member="DNS::GetFD" ref="GetFD_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int DNS::GetFD </td>
+ <td class="md" nowrap valign="top">int DNS::GetFD </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -672,24 +653,23 @@ This method returns the file handle used by the dns query socket or zero if the
the dns server not responding. </td>
</tr>
</table>
-<a name="a6" doxytag="DNS::GetResult"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetResult_28_29"></a><!-- doxytag: member="DNS::GetResult" ref="GetResult_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string DNS::GetResult </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> DNS::GetResult </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -697,29 +677,28 @@ the dns server not responding. </td>
<td>
<p>
-This method returns the result of your query as a string, depending upon wether you called <a class="el" href="classDNS.html#a3">DNS::ReverseLookup()</a> or <a class="el" href="classDNS.html#a4">DNS::ForwardLookup</a>.
+This method returns the result of your query as a string, depending upon wether you called <a class="el" href="classDNS.html#ReverseLookup_28std_3A_3Astring_20ip_29">DNS::ReverseLookup()</a> or <a class="el" href="classDNS.html#ForwardLookup_28std_3A_3Astring_20host_29">DNS::ForwardLookup</a>.
<p>
</td>
</tr>
</table>
-<a name="a5" doxytag="DNS::HasResult"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="HasResult_28_29"></a><!-- doxytag: member="DNS::HasResult" ref="HasResult_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool DNS::HasResult </td>
+ <td class="md" nowrap valign="top">bool DNS::HasResult </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -732,25 +711,24 @@ This method will return true when the lookup is completed.
It uses poll internally to determine the status of the socket. </td>
</tr>
</table>
-<a name="a3" doxytag="DNS::ReverseLookup"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ReverseLookup_28std_3A_3Astring_20ip_29"></a><!-- doxytag: member="DNS::ReverseLookup" ref="ReverseLookup_28std_3A_3Astring_20ip_29" args="(std::string ip)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool DNS::ReverseLookup </td>
+ <td class="md" nowrap valign="top">bool DNS::ReverseLookup </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ip</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -763,25 +741,24 @@ This method will start the reverse lookup of an ip given in dotted decimal forma
1.2.3.4, and returns true if the lookup was successfully initiated. </td>
</tr>
</table>
-<a name="a8" doxytag="DNS::SetNS"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SetNS_28std_3A_3Astring_20dnsserver_29"></a><!-- doxytag: member="DNS::SetNS" ref="SetNS_28std_3A_3Astring_20dnsserver_29" args="(std::string dnsserver)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void DNS::SetNS </td>
+ <td class="md" nowrap valign="top">void DNS::SetNS </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>dnsserver</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -793,18 +770,19 @@ This method will start the reverse lookup of an ip given in dotted decimal forma
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="r0" doxytag="DNS::binip"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="binip"></a><!-- doxytag: member="DNS::binip" ref="binip" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> in_addr* <a class="el" href="classDNS.html#r0">DNS::binip</a><code> [private]</code>
+ <td class="md" nowrap valign="top">in_addr* <a class="el" href="classDNS.html#binip">DNS::binip</a><code> [private]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -817,18 +795,19 @@ This method will start the reverse lookup of an ip given in dotted decimal forma
Definition at line <a class="el" href="dns_8h-source.html#l00038">38</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
</tr>
</table>
-<a name="r3" doxytag="DNS::fd"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="fd"></a><!-- doxytag: member="DNS::fd" ref="fd" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> unsigned int <a class="el" href="classDNS.html#r3">DNS::fd</a><code> [private]</code>
+ <td class="md" nowrap valign="top">int <a class="el" href="classDNS.html#fd">DNS::fd</a><code> [private]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -841,18 +820,19 @@ Definition at line <a class="el" href="dns_8h-source.html#l00038">38</a> of file
Definition at line <a class="el" href="dns_8h-source.html#l00042">42</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
</tr>
</table>
-<a name="r1" doxytag="DNS::result"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="result"></a><!-- doxytag: member="DNS::result" ref="result" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* <a class="el" href="classDNS.html#r1">DNS::result</a><code> [private]</code>
+ <td class="md" nowrap valign="top">char* <a class="el" href="classDNS.html#result">DNS::result</a><code> [private]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -865,18 +845,19 @@ Definition at line <a class="el" href="dns_8h-source.html#l00042">42</a> of file
Definition at line <a class="el" href="dns_8h-source.html#l00039">39</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
</tr>
</table>
-<a name="r2" doxytag="DNS::t"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="t"></a><!-- doxytag: member="DNS::t" ref="t" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classDNS.html#r2">DNS::t</a><code> [private]</code>
+ <td class="md" nowrap valign="top">int <a class="el" href="classDNS.html#t">DNS::t</a><code> [private]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -891,9 +872,8 @@ Definition at line <a class="el" href="dns_8h-source.html#l00040">40</a> of file
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="dns_8h-source.html">dns.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:48 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classDNS__coll__graph.gif b/docs/module-doc/classDNS__coll__graph.gif
index 7e45c1857..ddb6ebb1d 100644
--- a/docs/module-doc/classDNS__coll__graph.gif
+++ b/docs/module-doc/classDNS__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classDNS__coll__graph.map b/docs/module-doc/classDNS__coll__graph.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/classDNS__coll__graph.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/classDNS__coll__graph.md5 b/docs/module-doc/classDNS__coll__graph.md5
new file mode 100644
index 000000000..7d5283854
--- /dev/null
+++ b/docs/module-doc/classDNS__coll__graph.md5
@@ -0,0 +1 @@
+30aee4bdc7bc1791511ab48a46f93734 \ No newline at end of file
diff --git a/docs/module-doc/classELine-members.html b/docs/module-doc/classELine-members.html
index 2599c52ed..94e06c52f 100644
--- a/docs/module-doc/classELine-members.html
+++ b/docs/module-doc/classELine-members.html
@@ -1,23 +1,22 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ELine Member List</h1>This is the complete list of members for <a class="el" href="classELine.html">ELine</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classXLine.html#o1">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classELine.html#o0">hostmask</a></td><td><a class="el" href="classELine.html">ELine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o4">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o3">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o0">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o2">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:50 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ELine Member List</h1>This is the complete list of members for <a class="el" href="classELine.html">ELine</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#duration">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classELine.html#hostmask_5B_32_30_30_5D">hostmask</a></td><td><a class="el" href="classELine.html">ELine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#n_5Fmatches">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#reason_5BMAXBUF_5D">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#set_5Ftime">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#source_5B_32_35_36_5D">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classELine.html b/docs/module-doc/classELine.html
index 9d654b0fa..7a26d840d 100644
--- a/docs/module-doc/classELine.html
+++ b/docs/module-doc/classELine.html
@@ -1,42 +1,48 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ELine class Reference</title>
+<title>InspIRCd: ELine Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ELine Class Reference</h1><code>#include &lt;<a class="el" href="xline_8h-source.html">xline.h</a>&gt;</code>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ELine Class Reference</h1><!-- doxytag: class="ELine" --><!-- doxytag: inherits="XLine" --><code>#include &lt;<a class="el" href="xline_8h-source.html">xline.h</a>&gt;</code>
<p>
Inheritance diagram for ELine:<p><center><img src="classELine__inherit__graph.gif" border="0" usemap="#ELine__inherit__map" alt="Inheritance graph"></center>
<map name="ELine__inherit__map">
-<area href="classXLine.html" shape="rect" coords="20,82,76,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,8,88,34" alt="">
+<area href="classXLine.html" shape="rect" coords="19,81,75,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ELine:<p><center><img src="classELine__coll__graph.gif" border="0" usemap="#ELine__coll__map" alt="Collaboration graph"></center>
<map name="ELine__coll__map">
-<area href="classXLine.html" shape="rect" coords="166,205,222,231" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classXLine.html" shape="rect" coords="165,204,221,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,98,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classELine-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classELine-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classELine.html#o0">hostmask</a> [200]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classELine.html#hostmask_5B_32_30_30_5D">hostmask</a> [200]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostmask (ident) to match against May contain wildcards. </em> <a href="#o0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostmask (ident) to match against May contain wildcards. <a href="#hostmask_5B_32_30_30_5D"></a><br></td></tr>
</table>
-<hr><h2>Member Data Documentation</h2>
-<a name="o0" doxytag="ELine::hostmask"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="xline_8h-source.html#l00082">82</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>.<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="hostmask_5B_32_30_30_5D"></a><!-- doxytag: member="ELine::hostmask" ref="hostmask_5B_32_30_30_5D" args="[200]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classELine.html#o0">ELine::hostmask</a>[200]
+ <td class="md" nowrap valign="top">char <a class="el" href="classELine.html#hostmask_5B_32_30_30_5D">ELine::hostmask</a>[200] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -53,9 +59,8 @@ Definition at line <a class="el" href="xline_8h-source.html#l00088">88</a> of fi
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="xline_8h-source.html">xline.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:50 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classELine__coll__graph.gif b/docs/module-doc/classELine__coll__graph.gif
index 27faa2b83..2d3cfef6d 100644
--- a/docs/module-doc/classELine__coll__graph.gif
+++ b/docs/module-doc/classELine__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classELine__coll__graph.map b/docs/module-doc/classELine__coll__graph.map
new file mode 100644
index 000000000..25a1b769a
--- /dev/null
+++ b/docs/module-doc/classELine__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 165,204 221,231
+rect $classclassbase.html 7,98 87,124
diff --git a/docs/module-doc/classELine__coll__graph.md5 b/docs/module-doc/classELine__coll__graph.md5
new file mode 100644
index 000000000..6fe0010ee
--- /dev/null
+++ b/docs/module-doc/classELine__coll__graph.md5
@@ -0,0 +1 @@
+2647247e1a43e5ed62e46a0d90214392 \ No newline at end of file
diff --git a/docs/module-doc/classELine__inherit__graph.gif b/docs/module-doc/classELine__inherit__graph.gif
index b2a9da48e..f5ccb6ae1 100644
--- a/docs/module-doc/classELine__inherit__graph.gif
+++ b/docs/module-doc/classELine__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classELine__inherit__graph.map b/docs/module-doc/classELine__inherit__graph.map
new file mode 100644
index 000000000..37695eb4e
--- /dev/null
+++ b/docs/module-doc/classELine__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 19,81 75,108
+rect $classclassbase.html 7,7 87,33
diff --git a/docs/module-doc/classELine__inherit__graph.md5 b/docs/module-doc/classELine__inherit__graph.md5
new file mode 100644
index 000000000..ee2337751
--- /dev/null
+++ b/docs/module-doc/classELine__inherit__graph.md5
@@ -0,0 +1 @@
+49a9689ad5f9b5a71ec60e80a8964d4d \ No newline at end of file
diff --git a/docs/module-doc/classEvent-members.html b/docs/module-doc/classEvent-members.html
index 048949ae5..626f9ce32 100644
--- a/docs/module-doc/classEvent-members.html
+++ b/docs/module-doc/classEvent-members.html
@@ -1,25 +1,25 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Event Member List</h1>This is the complete list of members for <a class="el" href="classEvent.html">Event</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classEvent.html#p0">data</a></td><td><a class="el" href="classEvent.html">Event</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classEvent.html#a0">Event</a>(char *anydata, Module *src, std::string eventid)</td><td><a class="el" href="classEvent.html">Event</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classEvent.html#a1">GetData</a>()</td><td><a class="el" href="classEvent.html">Event</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classEvent.html#a3">GetEventID</a>()</td><td><a class="el" href="classEvent.html">Event</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classEvent.html#a2">GetSource</a>()</td><td><a class="el" href="classEvent.html">Event</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classEvent.html#p2">id</a></td><td><a class="el" href="classEvent.html">Event</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classEvent.html#a4">Send</a>()</td><td><a class="el" href="classEvent.html">Event</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classEvent.html#p1">source</a></td><td><a class="el" href="classEvent.html">Event</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:52 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Event Member List</h1>This is the complete list of members for <a class="el" href="classEvent.html">Event</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEvent.html#data">data</a></td><td><a class="el" href="classEvent.html">Event</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEvent.html#Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29">Event</a>(char *anydata, Module *src, std::string eventid)</td><td><a class="el" href="classEvent.html">Event</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEvent.html#GetData_28_29">GetData</a>()</td><td><a class="el" href="classEvent.html">Event</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEvent.html#GetEventID_28_29">GetEventID</a>()</td><td><a class="el" href="classEvent.html">Event</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEvent.html#GetSource_28_29">GetSource</a>()</td><td><a class="el" href="classEvent.html">Event</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEvent.html#id">id</a></td><td><a class="el" href="classEvent.html">Event</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEvent.html#Send_28_29">Send</a>()</td><td><a class="el" href="classEvent.html">Event</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classEvent.html#source">source</a></td><td><a class="el" href="classEvent.html">Event</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModuleMessage.html#_7EModuleMessage_28_29">~ModuleMessage</a>()</td><td><a class="el" href="classModuleMessage.html">ModuleMessage</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classEvent.html b/docs/module-doc/classEvent.html
index f16ad64ed..6e0a14d33 100644
--- a/docs/module-doc/classEvent.html
+++ b/docs/module-doc/classEvent.html
@@ -1,97 +1,96 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Event class Reference</title>
+<title>InspIRCd: Event Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Event Class Reference</h1>The Event class is a unicast message directed at all modules.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Event Class Reference</h1><!-- doxytag: class="Event" --><!-- doxytag: inherits="ModuleMessage" -->The Event class is a unicast message directed at all modules.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for Event:<p><center><img src="classEvent__inherit__graph.gif" border="0" usemap="#Event__inherit__map" alt="Inheritance graph"></center>
<map name="Event__inherit__map">
-<area href="classModuleMessage.html" shape="rect" coords="8,82,128,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="28,8,108,34" alt="">
+<area href="classModuleMessage.html" shape="rect" coords="7,81,127,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="27,7,107,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Event:<p><center><img src="classEvent__coll__graph.gif" border="0" usemap="#Event__coll__map" alt="Collaboration graph"></center>
<map name="Event__coll__map">
-<area href="classModuleMessage.html" shape="rect" coords="8,175,128,202" alt="">
-<area href="classclassbase.html" shape="rect" coords="96,98,176,125" alt="">
-<area href="classModule.html" shape="rect" coords="152,175,218,202" alt="">
+<area href="classModuleMessage.html" shape="rect" coords="7,175,127,202" alt="">
+<area href="classclassbase.html" shape="rect" coords="95,98,175,124" alt="">
+<area href="classModule.html" shape="rect" coords="151,175,217,202" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classEvent-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classEvent-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html#a0">Event</a> (char *anydata, <a class="el" href="classModule.html">Module</a> *src, std::string eventid)</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html#Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29">Event</a> (char *anydata, <a class="el" href="classModule.html">Module</a> *src, <a class="el" href="namespaceirc.html#string">std::string</a> eventid)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new Event. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html#a1">GetData</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new Event. <a href="#Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html#GetData_28_29">GetData</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the Event data. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html#a2">GetSource</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the Event data. <a href="#GetData_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html#GetSource_28_29">GetSource</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the event Source. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html#a3">GetEventID</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the event Source. <a href="#GetSource_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html#GetEventID_28_29">GetEventID</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the event ID. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html#a4">Send</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the event ID. <a href="#GetEventID_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html#Send_28_29">Send</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send the Event. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html#p0">data</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send the Event. <a href="#Send_28_29"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html#data">data</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This member holds a pointer to arbitary data set by the emitter of the message. </em> <a href="#p0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html#p1">source</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This member holds a pointer to arbitary data set by the emitter of the message. <a href="#data"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html#source">source</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply. </em> <a href="#p1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html#p2">id</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply. <a href="#source"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html#id">id</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The event identifier. </em> <a href="#p2"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The event identifier. <a href="#id"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The Event class is a unicast message directed at all modules.
<p>
-When the class is properly instantiated it may be sent to all modules using the <a class="el" href="classEvent.html#a4">Send()</a> method, which will trigger the OnEvent method in all modules passing the object as its parameter.
+When the class is properly instantiated it may be sent to all modules using the <a class="el" href="classEvent.html#Send_28_29">Send()</a> method, which will trigger the OnEvent method in all modules passing the object as its parameter.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00194">194</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="Event::Event"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l00196">196</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29"></a><!-- doxytag: member="Event::Event" ref="Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29" args="(char *anydata, Module *src, std::string eventid)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> Event::Event </td>
+ <td class="md" nowrap valign="top">Event::Event </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap> <em>anydata</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classModule.html">Module</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>src</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>eventid</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -103,31 +102,30 @@ Create a new Event.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00280">280</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>.<div class="fragment"><pre class="fragment"><a name="l00281"></a>00281 : <a class="code" href="classEvent.html#data">data</a>(anydata), <a class="code" href="classEvent.html#source">source</a>(src), <a class="code" href="classEvent.html#id">id</a>(eventid) { };
+</pre></div>
<p>
-<div class="fragment"><pre>00280 : <a class="code" href="classEvent.html#p0">data</a>(anydata), <a class="code" href="classEvent.html#p1">source</a>(src), <a class="code" href="classEvent.html#p2">id</a>(eventid) { };
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a1" doxytag="Event::GetData"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetData_28_29"></a><!-- doxytag: member="Event::GetData" ref="GetData_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char * Event::GetData </td>
+ <td class="md" nowrap valign="top">char * Event::GetData </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -139,34 +137,33 @@ Get the Event data.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00282">282</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#l00283">283</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00199">data</a>.
+References <a class="el" href="modules_8h-source.html#l00201">data</a>.<div class="fragment"><pre class="fragment"><a name="l00284"></a>00284 {
+<a name="l00285"></a>00285 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#data">data</a>;
+<a name="l00286"></a>00286 }
+</pre></div>
<p>
-<div class="fragment"><pre>00283 {
-00284 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#p0">data</a>;
-00285 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a3" doxytag="Event::GetEventID"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetEventID_28_29"></a><!-- doxytag: member="Event::GetEventID" ref="GetEventID_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string Event::GetEventID </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> Event::GetEventID </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -176,36 +173,35 @@ References <a class="el" href="modules_8h-source.html#l00199">data</a>.
<p>
Get the event ID.
<p>
-Use this to determine the event type for safe casting of the data
+Use this to determine the event type for safe casting of the data
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00298">298</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#l00299">299</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00208">id</a>.
+References <a class="el" href="modules_8h-source.html#l00210">id</a>.<div class="fragment"><pre class="fragment"><a name="l00300"></a>00300 {
+<a name="l00301"></a>00301 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#id">id</a>;
+<a name="l00302"></a>00302 }
+</pre></div>
<p>
-<div class="fragment"><pre>00299 {
-00300 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#p2">id</a>;
-00301 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a2" doxytag="Event::GetSource"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetSource_28_29"></a><!-- doxytag: member="Event::GetSource" ref="GetSource_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classModule.html">Module</a> * Event::GetSource </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a> * Event::GetSource </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -217,34 +213,33 @@ Get the event Source.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00287">287</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#l00288">288</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00203">source</a>.
+References <a class="el" href="modules_8h-source.html#l00205">source</a>.<div class="fragment"><pre class="fragment"><a name="l00289"></a>00289 {
+<a name="l00290"></a>00290 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#source">source</a>;
+<a name="l00291"></a>00291 }
+</pre></div>
<p>
-<div class="fragment"><pre>00288 {
-00289 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#p1">source</a>;
-00290 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="Event::Send"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Send_28_29"></a><!-- doxytag: member="Event::Send" ref="Send_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char * Event::Send </td>
+ <td class="md" nowrap valign="top">char * Event::Send </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -254,34 +249,35 @@ References <a class="el" href="modules_8h-source.html#l00203">source</a>.
<p>
Send the Event.
<p>
-The return result of an <a class="el" href="classEvent.html#a4">Event::Send()</a> will always be NULL as no replies are expected.
+The return result of an <a class="el" href="classEvent.html#Send_28_29">Event::Send()</a> will always be NULL as no replies are expected.
<p>
-Implements <a class="el" href="classModuleMessage.html#a0">ModuleMessage</a>.
+Implements <a class="el" href="classModuleMessage.html#Send_28_29_3D_30">ModuleMessage</a>.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00292">292</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#l00293">293</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00079">FOREACH_MOD</a>.
+References <a class="el" href="modules_8h-source.html#l00080">FOREACH_MOD</a>.<div class="fragment"><pre class="fragment"><a name="l00294"></a>00294 {
+<a name="l00295"></a>00295 <a class="code" href="modules_8h.html#FOREACH_5FMOD">FOREACH_MOD</a> OnEvent(<span class="keyword">this</span>);
+<a name="l00296"></a>00296 <span class="keywordflow">return</span> NULL;
+<a name="l00297"></a>00297 }
+</pre></div>
<p>
-<div class="fragment"><pre>00293 {
-00294 <a class="code" href="modules_8h.html#a24">FOREACH_MOD</a> OnEvent(<span class="keyword">this</span>);
-00295 <span class="keywordflow">return</span> NULL;
-00296 }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="p0" doxytag="Event::data"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="data"></a><!-- doxytag: member="Event::data" ref="data" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* <a class="el" href="classEvent.html#p0">Event::data</a><code> [protected]</code>
+ <td class="md" nowrap valign="top">char* <a class="el" href="classEvent.html#data">Event::data</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -293,23 +289,24 @@ This member holds a pointer to arbitary data set by the emitter of the message.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00199">199</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#l00201">201</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#l00282">GetData()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00283">GetData()</a>. </td>
</tr>
</table>
-<a name="p2" doxytag="Event::id"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="id"></a><!-- doxytag: member="Event::id" ref="id" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string <a class="el" href="classEvent.html#p2">Event::id</a><code> [protected]</code>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classEvent.html#id">Event::id</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -319,25 +316,26 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00282">GetData()</a>
<p>
The event identifier.
<p>
-This is arbitary text which should be used to distinguish one type of event from another.
+This is arbitary text which should be used to distinguish one type of event from another.
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00208">208</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#l00210">210</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#l00298">GetEventID()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00299">GetEventID()</a>. </td>
</tr>
</table>
-<a name="p1" doxytag="Event::source"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="source"></a><!-- doxytag: member="Event::source" ref="source" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classModule.html">Module</a>* <a class="el" href="classEvent.html#p1">Event::source</a><code> [protected]</code>
+ <td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a>* <a class="el" href="classEvent.html#source">Event::source</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -349,16 +347,15 @@ This is a pointer to the sender of the message, which can be used to directly tr
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00203">203</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#l00205">205</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#l00287">GetSource()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00288">GetSource()</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:52 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classEvent__coll__graph.gif b/docs/module-doc/classEvent__coll__graph.gif
index adbb404af..4c05eadca 100644
--- a/docs/module-doc/classEvent__coll__graph.gif
+++ b/docs/module-doc/classEvent__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classEvent__coll__graph.map b/docs/module-doc/classEvent__coll__graph.map
new file mode 100644
index 000000000..1b4799fbe
--- /dev/null
+++ b/docs/module-doc/classEvent__coll__graph.map
@@ -0,0 +1,4 @@
+base referer
+rect $classModuleMessage.html 7,175 127,202
+rect $classclassbase.html 95,98 175,124
+rect $classModule.html 151,175 217,202
diff --git a/docs/module-doc/classEvent__coll__graph.md5 b/docs/module-doc/classEvent__coll__graph.md5
new file mode 100644
index 000000000..688bac914
--- /dev/null
+++ b/docs/module-doc/classEvent__coll__graph.md5
@@ -0,0 +1 @@
+10d33c04261107a286f69046e8553f44 \ No newline at end of file
diff --git a/docs/module-doc/classEvent__inherit__graph.gif b/docs/module-doc/classEvent__inherit__graph.gif
index 49cc3fab3..d0456c9e8 100644
--- a/docs/module-doc/classEvent__inherit__graph.gif
+++ b/docs/module-doc/classEvent__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classEvent__inherit__graph.map b/docs/module-doc/classEvent__inherit__graph.map
new file mode 100644
index 000000000..f3f281b15
--- /dev/null
+++ b/docs/module-doc/classEvent__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classModuleMessage.html 7,81 127,108
+rect $classclassbase.html 27,7 107,33
diff --git a/docs/module-doc/classEvent__inherit__graph.md5 b/docs/module-doc/classEvent__inherit__graph.md5
new file mode 100644
index 000000000..89c521396
--- /dev/null
+++ b/docs/module-doc/classEvent__inherit__graph.md5
@@ -0,0 +1 @@
+f920774ed43bc66c960d56c584166dc7 \ No newline at end of file
diff --git a/docs/module-doc/classExemptItem-members.html b/docs/module-doc/classExemptItem-members.html
index 5e573def7..df9a82186 100644
--- a/docs/module-doc/classExemptItem-members.html
+++ b/docs/module-doc/classExemptItem-members.html
@@ -1,22 +1,21 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ExemptItem Member List</h1>This is the complete list of members for <a class="el" href="classExemptItem.html">ExemptItem</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classHostItem.html#o2">data</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#a0">HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#o1">set_by</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#o0">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:54 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ExemptItem Member List</h1>This is the complete list of members for <a class="el" href="classExemptItem.html">ExemptItem</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#data_5BMAXBUF_5D">data</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#HostItem_28_29">HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">set_by</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#set_5Ftime">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#_7EHostItem_28_29">~HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classExemptItem.html b/docs/module-doc/classExemptItem.html
index d5c04bee2..3d93816f7 100644
--- a/docs/module-doc/classExemptItem.html
+++ b/docs/module-doc/classExemptItem.html
@@ -1,26 +1,26 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ExemptItem class Reference</title>
+<title>InspIRCd: ExemptItem Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ExemptItem Class Reference</h1>A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel exempts (+e).
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ExemptItem Class Reference</h1><!-- doxytag: class="ExemptItem" --><!-- doxytag: inherits="HostItem" -->A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel exempts (+e).
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="channels_8h-source.html">channels.h</a>&gt;</code>
<p>
Inheritance diagram for ExemptItem:<p><center><img src="classExemptItem__inherit__graph.gif" border="0" usemap="#ExemptItem__inherit__map" alt="Inheritance graph"></center>
<map name="ExemptItem__inherit__map">
-<area href="classHostItem.html" shape="rect" coords="17,82,91,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="14,8,94,34" alt="">
+<area href="classHostItem.html" shape="rect" coords="16,81,91,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="14,7,94,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ExemptItem:<p><center><img src="classExemptItem__coll__graph.gif" border="0" usemap="#ExemptItem__coll__map" alt="Collaboration graph"></center>
<map name="ExemptItem__coll__map">
-<area href="classHostItem.html" shape="rect" coords="110,205,185,231" alt="">
-<area href="classclassbase.html" shape="rect" coords="108,98,188,125" alt="">
+<area href="classHostItem.html" shape="rect" coords="109,204,184,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="107,98,187,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classExemptItem-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classExemptItem-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -30,9 +30,8 @@ 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#l00060">60</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:54 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classExemptItem__coll__graph.gif b/docs/module-doc/classExemptItem__coll__graph.gif
index cd35ad4ef..2454fa4f7 100644
--- a/docs/module-doc/classExemptItem__coll__graph.gif
+++ b/docs/module-doc/classExemptItem__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classExemptItem__coll__graph.map b/docs/module-doc/classExemptItem__coll__graph.map
new file mode 100644
index 000000000..84658baf1
--- /dev/null
+++ b/docs/module-doc/classExemptItem__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classHostItem.html 109,204 184,231
+rect $classclassbase.html 107,98 187,124
diff --git a/docs/module-doc/classExemptItem__coll__graph.md5 b/docs/module-doc/classExemptItem__coll__graph.md5
new file mode 100644
index 000000000..d617a8a38
--- /dev/null
+++ b/docs/module-doc/classExemptItem__coll__graph.md5
@@ -0,0 +1 @@
+25e2b7408d8e26d1fbf18732be3e5256 \ No newline at end of file
diff --git a/docs/module-doc/classExemptItem__inherit__graph.gif b/docs/module-doc/classExemptItem__inherit__graph.gif
index 0d5742c4a..de11425e0 100644
--- a/docs/module-doc/classExemptItem__inherit__graph.gif
+++ b/docs/module-doc/classExemptItem__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classExemptItem__inherit__graph.map b/docs/module-doc/classExemptItem__inherit__graph.map
new file mode 100644
index 000000000..2fd89000d
--- /dev/null
+++ b/docs/module-doc/classExemptItem__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classHostItem.html 16,81 91,108
+rect $classclassbase.html 14,7 94,33
diff --git a/docs/module-doc/classExemptItem__inherit__graph.md5 b/docs/module-doc/classExemptItem__inherit__graph.md5
new file mode 100644
index 000000000..a09b17512
--- /dev/null
+++ b/docs/module-doc/classExemptItem__inherit__graph.md5
@@ -0,0 +1 @@
+8d830e52922c7fb515e30174811f813c \ No newline at end of file
diff --git a/docs/module-doc/classExtMode-members.html b/docs/module-doc/classExtMode-members.html
index 5b0dae396..9e287e28e 100644
--- a/docs/module-doc/classExtMode-members.html
+++ b/docs/module-doc/classExtMode-members.html
@@ -1,24 +1,23 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ExtMode Member List</h1>This is the complete list of members for <a class="el" href="classExtMode.html">ExtMode</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classExtMode.html#a0">ExtMode</a>(char mc, int ty, bool oper, int p_on, int p_off)</td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td><code> [inline]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtMode.html#o5">list</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtMode.html#o0">modechar</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtMode.html#o4">needsoper</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtMode.html#o3">params_when_off</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtMode.html#o2">params_when_on</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtMode.html#o1">type</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:58 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ExtMode Member List</h1>This is the complete list of members for <a class="el" href="classExtMode.html">ExtMode</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtMode.html#ExtMode_28char_20mc_2C_20int_20ty_2C_20bool_20oper_2C_20int_20p_5Fon_2C_20int_20p_5Foff_29">ExtMode</a>(char mc, int ty, bool oper, int p_on, int p_off)</td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtMode.html#list">list</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtMode.html#modechar">modechar</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtMode.html#needsoper">needsoper</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtMode.html#params_5Fwhen_5Foff">params_when_off</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtMode.html#params_5Fwhen_5Fon">params_when_on</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtMode.html#type">type</a></td><td><a class="el" href="classExtMode.html">ExtMode</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classExtMode.html b/docs/module-doc/classExtMode.html
index 07e1602c6..1c1255ba9 100644
--- a/docs/module-doc/classExtMode.html
+++ b/docs/module-doc/classExtMode.html
@@ -1,84 +1,88 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ExtMode class Reference</title>
+<title>InspIRCd: ExtMode Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ExtMode Class Reference</h1>Inheritance diagram for ExtMode:<p><center><img src="classExtMode__inherit__graph.gif" border="0" usemap="#ExtMode__inherit__map" alt="Inheritance graph"></center>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ExtMode Class Reference</h1><!-- doxytag: class="ExtMode" --><!-- doxytag: inherits="classbase" -->Inheritance diagram for ExtMode:<p><center><img src="classExtMode__inherit__graph.gif" border="0" usemap="#ExtMode__inherit__map" alt="Inheritance graph"></center>
<map name="ExtMode__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="8,7,88,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ExtMode:<p><center><img src="classExtMode__coll__graph.gif" border="0" usemap="#ExtMode__coll__map" alt="Collaboration graph"></center>
<map name="ExtMode__coll__map">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classExtMode-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classExtMode-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtMode.html#a0">ExtMode</a> (char mc, int ty, bool oper, int p_on, int p_off)</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtMode.html#ExtMode_28char_20mc_2C_20int_20ty_2C_20bool_20oper_2C_20int_20p_5Fon_2C_20int_20p_5Foff_29">ExtMode</a> (char mc, int ty, bool oper, int p_on, int p_off)</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtMode.html#o0">modechar</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtMode.html#modechar">modechar</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtMode.html#o1">type</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtMode.html#type">type</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtMode.html#o2">params_when_on</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtMode.html#needsoper">needsoper</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtMode.html#o3">params_when_off</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtMode.html#params_5Fwhen_5Fon">params_when_on</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtMode.html#o4">needsoper</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtMode.html#params_5Fwhen_5Foff">params_when_off</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtMode.html#o5">list</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtMode.html#list">list</a></td></tr>
</table>
-<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a0" doxytag="ExtMode::ExtMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00139">139</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="ExtMode_28char_20mc_2C_20int_20ty_2C_20bool_20oper_2C_20int_20p_5Fon_2C_20int_20p_5Foff_29"></a><!-- doxytag: member="ExtMode::ExtMode" ref="ExtMode_28char_20mc_2C_20int_20ty_2C_20bool_20oper_2C_20int_20p_5Fon_2C_20int_20p_5Foff_29" args="(char mc, int ty, bool oper, int p_on, int p_off)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> ExtMode::ExtMode </td>
+ <td class="md" nowrap valign="top">ExtMode::ExtMode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>mc</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>ty</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>oper</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>p_on</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>p_off</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"><code> [inline]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -88,27 +92,26 @@
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00147">147</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00148">148</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00148"></a>00148 : <a class="code" href="classExtMode.html#modechar">modechar</a>(mc), <a class="code" href="classExtMode.html#type">type</a>(ty), <a class="code" href="classExtMode.html#needsoper">needsoper</a>(oper), <a class="code" href="classExtMode.html#params_5Fwhen_5Fon">params_when_on</a>(p_on), <a class="code" href="classExtMode.html#params_5Fwhen_5Foff">params_when_off</a>(p_off) { };
+</pre></div>
<p>
-References <a class="el" href="modules_8cpp-source.html#l00141">modechar</a>, <a class="el" href="modules_8cpp-source.html#l00145">needsoper</a>, <a class="el" href="modules_8cpp-source.html#l00144">params_when_off</a>, <a class="el" href="modules_8cpp-source.html#l00143">params_when_on</a>, and <a class="el" href="modules_8cpp-source.html#l00142">type</a>.
-<p>
-<div class="fragment"><pre>00147 : <a class="code" href="classExtMode.html#o0">modechar</a>(mc), <a class="code" href="classExtMode.html#o1">type</a>(ty), <a class="code" href="classExtMode.html#o4">needsoper</a>(oper), <a class="code" href="classExtMode.html#o2">params_when_on</a>(p_on), <a class="code" href="classExtMode.html#o3">params_when_off</a>(p_off) { };
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o5" doxytag="ExtMode::list"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="list"></a><!-- doxytag: member="ExtMode::list" ref="list" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool <a class="el" href="classExtMode.html#o5">ExtMode::list</a>
+ <td class="md" nowrap valign="top">bool <a class="el" href="classExtMode.html#list">ExtMode::list</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -118,21 +121,22 @@ References <a class="el" href="modules_8cpp-source.html#l00141">modechar</a>, <a
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00146">146</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#l00147">147</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="ExtMode::modechar"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="modechar"></a><!-- doxytag: member="ExtMode::modechar" ref="modechar" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classExtMode.html#o0">ExtMode::modechar</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="classExtMode.html#modechar">ExtMode::modechar</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -142,23 +146,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00146">146</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00141">141</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>. </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00142">142</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="ExtMode::needsoper"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="needsoper"></a><!-- doxytag: member="ExtMode::needsoper" ref="needsoper" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool <a class="el" href="classExtMode.html#o4">ExtMode::needsoper</a>
+ <td class="md" nowrap valign="top">bool <a class="el" href="classExtMode.html#needsoper">ExtMode::needsoper</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -168,23 +171,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00145">145</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>. </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00144">144</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="o3" doxytag="ExtMode::params_when_off"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="params_5Fwhen_5Foff"></a><!-- doxytag: member="ExtMode::params_when_off" ref="params_5Fwhen_5Foff" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classExtMode.html#o3">ExtMode::params_when_off</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classExtMode.html#params_5Fwhen_5Foff">ExtMode::params_when_off</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -194,23 +196,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00144">144</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>. </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00146">146</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="o2" doxytag="ExtMode::params_when_on"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="params_5Fwhen_5Fon"></a><!-- doxytag: member="ExtMode::params_when_on" ref="params_5Fwhen_5Fon" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classExtMode.html#o2">ExtMode::params_when_on</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classExtMode.html#params_5Fwhen_5Fon">ExtMode::params_when_on</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -220,23 +221,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00143">143</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>. </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00145">145</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="ExtMode::type"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="type"></a><!-- doxytag: member="ExtMode::type" ref="type" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classExtMode.html#o1">ExtMode::type</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classExtMode.html#type">ExtMode::type</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -246,16 +246,13 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00142">142</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00147">ExtMode()</a>. </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00143">143</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:58 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classExtMode__coll__graph.gif b/docs/module-doc/classExtMode__coll__graph.gif
index ee3fb7a7a..183d9ea68 100644
--- a/docs/module-doc/classExtMode__coll__graph.gif
+++ b/docs/module-doc/classExtMode__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classExtMode__coll__graph.map b/docs/module-doc/classExtMode__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classExtMode__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classExtMode__coll__graph.md5 b/docs/module-doc/classExtMode__coll__graph.md5
new file mode 100644
index 000000000..34584682d
--- /dev/null
+++ b/docs/module-doc/classExtMode__coll__graph.md5
@@ -0,0 +1 @@
+aef2bb7129d67057b097a14e7f4fbf44 \ No newline at end of file
diff --git a/docs/module-doc/classExtMode__inherit__graph.gif b/docs/module-doc/classExtMode__inherit__graph.gif
index db05959c5..4efe4abe8 100644
--- a/docs/module-doc/classExtMode__inherit__graph.gif
+++ b/docs/module-doc/classExtMode__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classExtMode__inherit__graph.map b/docs/module-doc/classExtMode__inherit__graph.map
new file mode 100644
index 000000000..8b1d85be3
--- /dev/null
+++ b/docs/module-doc/classExtMode__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,7 87,34
diff --git a/docs/module-doc/classExtMode__inherit__graph.md5 b/docs/module-doc/classExtMode__inherit__graph.md5
new file mode 100644
index 000000000..148e73af3
--- /dev/null
+++ b/docs/module-doc/classExtMode__inherit__graph.md5
@@ -0,0 +1 @@
+8e2dde6b6b72ead80009841a4a78fc58 \ No newline at end of file
diff --git a/docs/module-doc/classExtensible-members.html b/docs/module-doc/classExtensible-members.html
index 35c799bd6..00599a442 100644
--- a/docs/module-doc/classExtensible-members.html
+++ b/docs/module-doc/classExtensible-members.html
@@ -1,21 +1,20 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Extensible Member List</h1>This is the complete list of members for <a class="el" href="classExtensible.html">Extensible</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classExtensible.html#a0">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#r0">Extension_Items</a></td><td><a class="el" href="classExtensible.html">Extensible</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a2">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a1">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:57 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Extensible Member List</h1>This is the complete list of members for <a class="el" href="classExtensible.html">Extensible</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Extension_5FItems">Extension_Items</a></td><td><a class="el" href="classExtensible.html">Extensible</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classExtensible.html b/docs/module-doc/classExtensible.html
index 516f0bf3a..4308465d9 100644
--- a/docs/module-doc/classExtensible.html
+++ b/docs/module-doc/classExtensible.html
@@ -1,82 +1,79 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Extensible class Reference</title>
+<title>InspIRCd: Extensible Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Extensible Class Reference</h1>class Extensible is the parent class of many classes such as userrec and chanrec.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Extensible Class Reference</h1><!-- doxytag: class="Extensible" --><!-- doxytag: inherits="classbase" -->class Extensible is the parent class of many classes such as userrec and chanrec.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="base_8h-source.html">base.h</a>&gt;</code>
<p>
Inheritance diagram for Extensible:<p><center><img src="classExtensible__inherit__graph.gif" border="0" usemap="#Extensible__inherit__map" alt="Inheritance graph"></center>
<map name="Extensible__inherit__map">
-<area href="classchanrec.html" shape="rect" coords="8,157,77,184" alt="">
-<area href="classcommand__t.html" shape="rect" coords="101,157,192,184" alt="">
-<area href="classconnection.html" shape="rect" coords="216,157,301,184" alt="">
-<area href="classircd__connector.html" shape="rect" coords="325,157,434,184" alt="">
-<area href="classclassbase.html" shape="rect" coords="162,8,242,34" alt="">
-<area href="classserverrec.html" shape="rect" coords="172,232,249,258" alt="">
-<area href="classuserrec.html" shape="rect" coords="273,232,340,258" alt="">
+<area href="classchanrec.html" shape="rect" coords="7,156,76,183" alt="">
+<area href="classcommand__t.html" shape="rect" coords="100,156,191,183" alt="">
+<area href="classconnection.html" shape="rect" coords="215,156,300,183" alt="">
+<area href="classclassbase.html" shape="rect" coords="106,7,186,33" alt="">
+<area href="classuserrec.html" shape="rect" coords="224,231,291,257" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Extensible:<p><center><img src="classExtensible__coll__graph.gif" border="0" usemap="#Extensible__coll__map" alt="Collaboration graph"></center>
<map name="Extensible__coll__map">
-<area href="classclassbase.html" shape="rect" coords="7,98,87,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classExtensible-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classExtensible-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 class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtensible.html#a0">Extend</a> (std::string key, char *p)</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extend</a> (<a class="el" href="namespaceirc.html#string">std::string</a> key, char *p)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Extend an Extensible class. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtensible.html#a1">Shrink</a> (std::string key)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Extend an Extensible class. <a href="#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Shrink</a> (<a class="el" href="namespaceirc.html#string">std::string</a> key)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shrink an Extensible class. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtensible.html#a2">GetExt</a> (std::string key)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shrink an Extensible class. <a href="#Shrink_28std_3A_3Astring_20key_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">GetExt</a> (<a class="el" href="namespaceirc.html#string">std::string</a> key)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an extension item. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::map&lt; std::string, char * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtensible.html#r0">Extension_Items</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get an extension item. <a href="#GetExt_28std_3A_3Astring_20key_29"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::map&lt; <a class="el" href="namespaceirc.html#string">std::string</a>, char * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtensible.html#Extension_5FItems">Extension_Items</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Private data store. </em> <a href="#r0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Private data store. <a href="#Extension_5FItems"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
class Extensible is the parent class of many classes such as userrec and chanrec.
<p>
-class Extensible implements a system which allows modules to 'extend' the class by attaching data within a map associated with the object. In this way modules can store their own custom information within user objects, channel objects and server objects, without breaking other modules (this is more sensible than using a flags variable, and each module defining bits within the flag as 'theirs' as it is less prone to conflict and supports arbitary data storage).
+class Extensible implements a system which allows modules to 'extend' the class by attaching data within a map associated with the object. In this way modules can store their own custom information within user objects, channel objects and server objects, without breaking other modules (this is more sensible than using a flags variable, and each module defining bits within the flag as 'theirs' as it is less prone to conflict and supports arbitary data storage).
<p>
<p>
Definition at line <a class="el" href="base_8h-source.html#l00050">50</a> of file <a class="el" href="base_8h-source.html">base.h</a>.<hr><h2>Member Function Documentation</h2>
-<a name="a0" doxytag="Extensible::Extend"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29"></a><!-- doxytag: member="Extensible::Extend" ref="Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29" args="(std::string key, char *p)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Extensible::Extend </td>
+ <td class="md" nowrap valign="top">bool Extensible::Extend </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>key</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>p</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -88,34 +85,33 @@ Extend an Extensible class.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>key</em>&nbsp;</td><td>The key parameter is an arbitary string which identifies the extension data </td></tr>
- <tr><td valign=top><em>p</em>&nbsp;</td><td>This parameter is a pointer to any data you wish to associate with the object</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>The key parameter is an arbitary string which identifies the extension data </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>This parameter is a pointer to any data you wish to associate with the object</td></tr>
</table>
</dl>
-You must provide a key to store the data as, and a void* to the data (typedef VoidPointer) The data will be inserted into the map. If the data already exists, you may not insert it twice, <a class="el" href="classExtensible.html#a0">Extensible::Extend</a> will return false in this case.<p>
+You must provide a key to store the data as, and a void* to the data (typedef VoidPointer) The data will be inserted into the map. If the data already exists, you may not insert it twice, <a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extensible::Extend</a> will return false in this case.<p>
<dl compact><dt><b>Returns:</b></dt><dd>Returns true on success, false if otherwise</dd></dl>
</td>
</tr>
</table>
-<a name="a2" doxytag="Extensible::GetExt"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetExt_28std_3A_3Astring_20key_29"></a><!-- doxytag: member="Extensible::GetExt" ref="GetExt_28std_3A_3Astring_20key_29" args="(std::string key)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* Extensible::GetExt </td>
+ <td class="md" nowrap valign="top">char* Extensible::GetExt </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>key</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -127,32 +123,31 @@ Get an extension item.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>key</em>&nbsp;</td><td>The key parameter is an arbitary string which identifies the extension data</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>The key parameter is an arbitary string which identifies the extension data</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>If you provide a non-existent key name, the function returns NULL, otherwise a pointer to the item referenced by the key is returned.</dd></dl>
</td>
</tr>
</table>
-<a name="a1" doxytag="Extensible::Shrink"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Shrink_28std_3A_3Astring_20key_29"></a><!-- doxytag: member="Extensible::Shrink" ref="Shrink_28std_3A_3Astring_20key_29" args="(std::string key)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Extensible::Shrink </td>
+ <td class="md" nowrap valign="top">bool Extensible::Shrink </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>key</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -164,7 +159,7 @@ Shrink an Extensible class.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>key</em>&nbsp;</td><td>The key parameter is an arbitary string which identifies the extension data</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>The key parameter is an arbitary string which identifies the extension data</td></tr>
</table>
</dl>
You must provide a key name. The given key name will be removed from the classes data. If you provide a nonexistent key (case is important) then the function will return false.<p>
@@ -173,18 +168,19 @@ You must provide a key name. The given key name will be removed from the classes
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="r0" doxytag="Extensible::Extension_Items"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Extension_5FItems"></a><!-- doxytag: member="Extensible::Extension_Items" ref="Extension_5FItems" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::map&lt;std::string,char*&gt; <a class="el" href="classExtensible.html#r0">Extensible::Extension_Items</a><code> [private]</code>
+ <td class="md" nowrap valign="top">std::map&lt;<a class="el" href="namespaceirc.html#string">std::string</a>,char*&gt; <a class="el" href="classExtensible.html#Extension_5FItems">Extensible::Extension_Items</a><code> [private]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -201,9 +197,8 @@ Definition at line <a class="el" href="base_8h-source.html#l00054">54</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:57 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classExtensible__coll__graph.gif b/docs/module-doc/classExtensible__coll__graph.gif
index d92353d92..b109a2213 100644
--- a/docs/module-doc/classExtensible__coll__graph.gif
+++ b/docs/module-doc/classExtensible__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classExtensible__coll__graph.map b/docs/module-doc/classExtensible__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classExtensible__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classExtensible__coll__graph.md5 b/docs/module-doc/classExtensible__coll__graph.md5
new file mode 100644
index 000000000..a721606b9
--- /dev/null
+++ b/docs/module-doc/classExtensible__coll__graph.md5
@@ -0,0 +1 @@
+4e5783e6b1854663efa1943995dec16d \ No newline at end of file
diff --git a/docs/module-doc/classExtensible__inherit__graph.gif b/docs/module-doc/classExtensible__inherit__graph.gif
index 14189d24d..cb019563d 100644
--- a/docs/module-doc/classExtensible__inherit__graph.gif
+++ b/docs/module-doc/classExtensible__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classExtensible__inherit__graph.map b/docs/module-doc/classExtensible__inherit__graph.map
new file mode 100644
index 000000000..2b223b938
--- /dev/null
+++ b/docs/module-doc/classExtensible__inherit__graph.map
@@ -0,0 +1,6 @@
+base referer
+rect $classchanrec.html 7,156 76,183
+rect $classcommand__t.html 100,156 191,183
+rect $classconnection.html 215,156 300,183
+rect $classclassbase.html 106,7 186,33
+rect $classuserrec.html 224,231 291,257
diff --git a/docs/module-doc/classExtensible__inherit__graph.md5 b/docs/module-doc/classExtensible__inherit__graph.md5
new file mode 100644
index 000000000..fe7736291
--- /dev/null
+++ b/docs/module-doc/classExtensible__inherit__graph.md5
@@ -0,0 +1 @@
+09c2299ecc297b4760a076747177ec6d \ No newline at end of file
diff --git a/docs/module-doc/classFileReader-members.html b/docs/module-doc/classFileReader-members.html
index 377da9995..c27c1c19d 100644
--- a/docs/module-doc/classFileReader-members.html
+++ b/docs/module-doc/classFileReader-members.html
@@ -1,25 +1,24 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>FileReader Member List</h1>This is the complete list of members for <a class="el" href="classFileReader.html">FileReader</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classFileReader.html#a4">Exists</a>()</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classFileReader.html#r0">fc</a></td><td><a class="el" href="classFileReader.html">FileReader</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classFileReader.html#a0">FileReader</a>()</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classFileReader.html#a1">FileReader</a>(std::string filename)</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classFileReader.html#a6">FileSize</a>()</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classFileReader.html#a5">GetLine</a>(int x)</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:01 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>FileReader Member List</h1>This is the complete list of members for <a class="el" href="classFileReader.html">FileReader</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFileReader.html#Exists_28_29">Exists</a>()</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFileReader.html#fc">fc</a></td><td><a class="el" href="classFileReader.html">FileReader</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFileReader.html#FileReader_28_29">FileReader</a>()</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFileReader.html#FileReader_28std_3A_3Astring_20filename_29">FileReader</a>(std::string filename)</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFileReader.html#FileSize_28_29">FileSize</a>()</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFileReader.html#GetLine_28int_20x_29">GetLine</a>(int x)</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFileReader.html#LoadFile_28std_3A_3Astring_20filename_29">LoadFile</a>(std::string filename)</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classFileReader.html#_7EFileReader_28_29">~FileReader</a>()</td><td><a class="el" href="classFileReader.html">FileReader</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classFileReader.html b/docs/module-doc/classFileReader.html
index 3e69fe2d0..6141b3c73 100644
--- a/docs/module-doc/classFileReader.html
+++ b/docs/module-doc/classFileReader.html
@@ -1,77 +1,76 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: FileReader class Reference</title>
+<title>InspIRCd: FileReader Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>FileReader Class Reference</h1>Caches a text file into memory and can be used to retrieve lines from it.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>FileReader Class Reference</h1><!-- doxytag: class="FileReader" --><!-- doxytag: inherits="classbase" -->Caches a text file into memory and can be used to retrieve lines from it.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for FileReader:<p><center><img src="classFileReader__inherit__graph.gif" border="0" usemap="#FileReader__inherit__map" alt="Inheritance graph"></center>
<map name="FileReader__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="12,7,92,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="11,7,91,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for FileReader:<p><center><img src="classFileReader__coll__graph.gif" border="0" usemap="#FileReader__coll__map" alt="Collaboration graph"></center>
<map name="FileReader__coll__map">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classFileReader-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classFileReader-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html#a0">FileReader</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html#FileReader_28_29">FileReader</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html#a1">FileReader</a> (std::string filename)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <a href="#FileReader_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html#FileReader_28std_3A_3Astring_20filename_29">FileReader</a> (<a class="el" href="namespaceirc.html#string">std::string</a> filename)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Secondary constructor. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html#a2">~FileReader</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Secondary constructor. <a href="#FileReader_28std_3A_3Astring_20filename_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html#_7EFileReader_28_29">~FileReader</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default destructor. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html#a3">LoadFile</a> (std::string filename)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default destructor. <a href="#_7EFileReader_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html#LoadFile_28std_3A_3Astring_20filename_29">LoadFile</a> (<a class="el" href="namespaceirc.html#string">std::string</a> filename)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to load a file. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html#a4">Exists</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used to load a file. <a href="#LoadFile_28std_3A_3Astring_20filename_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html#Exists_28_29">Exists</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if the file exists This function will return false if the file could not be opened. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html#a5">GetLine</a> (int x)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if the file exists This function will return false if the file could not be opened. <a href="#Exists_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html#GetLine_28int_20x_29">GetLine</a> (int x)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve one line from the file. </em> <a href="#a5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html#a6">FileSize</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieve one line from the file. <a href="#GetLine_28int_20x_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html#FileSize_28_29">FileSize</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the size of the file in lines. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8h.html#a31">file_cache</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html#r0">fc</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the size of the file in lines. <a href="#FileSize_28_29"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8h.html#file_5Fcache">file_cache</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html#fc">fc</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Caches a text file into memory and can be used to retrieve lines from it.
<p>
-This class contains methods for read-only manipulation of a text file in memory. Either use the constructor type with one parameter to load a file into memory at construction, or use the LoadFile method to load a file.
+This class contains methods for read-only manipulation of a text file in memory. Either use the constructor type with one parameter to load a file into memory at construction, or use the LoadFile method to load a file.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01239">1239</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l01210">1210</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="FileReader_28_29"></a><!-- doxytag: member="FileReader::FileReader" ref="FileReader_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> FileReader::FileReader </td>
+ <td class="md" nowrap valign="top">FileReader::FileReader </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -83,32 +82,31 @@ 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#l00975">975</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#l00950">950</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00951"></a>00951 {
+<a name="l00952"></a>00952 }
+</pre></div>
<p>
-<div class="fragment"><pre>00976 {
-00977 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="FileReader::FileReader"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FileReader_28std_3A_3Astring_20filename_29"></a><!-- doxytag: member="FileReader::FileReader" ref="FileReader_28std_3A_3Astring_20filename_29" args="(std::string filename)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> FileReader::FileReader </td>
+ <td class="md" nowrap valign="top">FileReader::FileReader </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>filename</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -118,38 +116,37 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00975">975</a>
<p>
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.
+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#FileSize_28_29">FileReader::FileSize</a> returns 0.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00968">968</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#l00943">943</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01241">fc</a>, and <a class="el" href="modules_8h-source.html#l00067">file_cache</a>.
+References <a class="el" href="modules_8h-source.html#l01212">fc</a>.<div class="fragment"><pre class="fragment"><a name="l00944"></a>00944 {
+<a name="l00945"></a>00945 <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a> c;
+<a name="l00946"></a>00946 readfile(c,filename.c_str());
+<a name="l00947"></a>00947 this-&gt;<a class="code" href="classFileReader.html#fc">fc</a> = c;
+<a name="l00948"></a>00948 }
+</pre></div>
<p>
-<div class="fragment"><pre>00969 {
-00970 <a class="code" href="modules_8h.html#a31">file_cache</a> c;
-00971 readfile(c,filename.c_str());
-00972 this-&gt;<a class="code" href="classFileReader.html#r0">fc</a> = c;
-00973 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a2" doxytag="FileReader::~FileReader"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7EFileReader_28_29"></a><!-- doxytag: member="FileReader::~FileReader" ref="_7EFileReader_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> FileReader::~<a class="el" href="classFileReader.html">FileReader</a> </td>
+ <td class="md" nowrap valign="top">FileReader::~FileReader </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -161,32 +158,31 @@ Default destructor.
<p>
This deletes the memory allocated to the file.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00987">987</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#l00962">962</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00963"></a>00963 {
+<a name="l00964"></a>00964 }
+</pre></div>
<p>
-<div class="fragment"><pre>00988 {
-00989 }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a4" doxytag="FileReader::Exists"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Exists_28_29"></a><!-- doxytag: member="FileReader::Exists" ref="Exists_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool FileReader::Exists </td>
+ <td class="md" nowrap valign="top">bool FileReader::Exists </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -198,41 +194,40 @@ 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#l00991">991</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="modules_8h-source.html#l01241">fc</a>.
-<p>
-<div class="fragment"><pre>00992 {
-00993 <span class="keywordflow">if</span> (<a class="code" href="classFileReader.html#r0">fc</a>.size() == 0)
-00994 {
-00995 <span class="keywordflow">return</span>(<span class="keyword">false</span>);
-00996 }
-00997 <span class="keywordflow">else</span>
-00998 {
-00999 <span class="keywordflow">return</span>(<span class="keyword">true</span>);
-01000 }
-01001 }
-</pre></div> </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00966">966</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l01212">fc</a>.<div class="fragment"><pre class="fragment"><a name="l00967"></a>00967 {
+<a name="l00968"></a>00968 <span class="keywordflow">if</span> (<a class="code" href="classFileReader.html#fc">fc</a>.size() == 0)
+<a name="l00969"></a>00969 {
+<a name="l00970"></a>00970 <span class="keywordflow">return</span>(<span class="keyword">false</span>);
+<a name="l00971"></a>00971 }
+<a name="l00972"></a>00972 <span class="keywordflow">else</span>
+<a name="l00973"></a>00973 {
+<a name="l00974"></a>00974 <span class="keywordflow">return</span>(<span class="keyword">true</span>);
+<a name="l00975"></a>00975 }
+<a name="l00976"></a>00976 }
+</pre></div>
+<p>
+ </td>
</tr>
</table>
-<a name="a6" doxytag="FileReader::FileSize"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FileSize_28_29"></a><!-- doxytag: member="FileReader::FileSize" ref="FileSize_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int FileReader::FileSize </td>
+ <td class="md" nowrap valign="top">int FileReader::FileSize </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -244,35 +239,34 @@ 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#l01010">1010</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#l00985">985</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01241">fc</a>.
+References <a class="el" href="modules_8h-source.html#l01212">fc</a>.<div class="fragment"><pre class="fragment"><a name="l00986"></a>00986 {
+<a name="l00987"></a>00987 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#fc">fc</a>.size();
+<a name="l00988"></a>00988 }
+</pre></div>
<p>
-<div class="fragment"><pre>01011 {
-01012 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#r0">fc</a>.size();
-01013 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a5" doxytag="FileReader::GetLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetLine_28int_20x_29"></a><!-- doxytag: member="FileReader::GetLine" ref="GetLine_28int_20x_29" args="(int x)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string FileReader::GetLine </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> FileReader::GetLine </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>x</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -284,37 +278,36 @@ 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#l01003">1003</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#l00978">978</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01241">fc</a>.
+References <a class="el" href="modules_8h-source.html#l01212">fc</a>.<div class="fragment"><pre class="fragment"><a name="l00979"></a>00979 {
+<a name="l00980"></a>00980 <span class="keywordflow">if</span> ((x&lt;0) || ((<span class="keywordtype">unsigned</span>)x&gt;<a class="code" href="classFileReader.html#fc">fc</a>.size()))
+<a name="l00981"></a>00981 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+<a name="l00982"></a>00982 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#fc">fc</a>[x];
+<a name="l00983"></a>00983 }
+</pre></div>
<p>
-<div class="fragment"><pre>01004 {
-01005 <span class="keywordflow">if</span> ((x&lt;0) || (x&gt;<a class="code" href="classFileReader.html#r0">fc</a>.size()))
-01006 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-01007 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#r0">fc</a>[x];
-01008 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a3" doxytag="FileReader::LoadFile"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="LoadFile_28std_3A_3Astring_20filename_29"></a><!-- doxytag: member="FileReader::LoadFile" ref="LoadFile_28std_3A_3Astring_20filename_29" args="(std::string filename)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void FileReader::LoadFile </td>
+ <td class="md" nowrap valign="top">void FileReader::LoadFile </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>filename</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -324,33 +317,34 @@ References <a class="el" href="modules_8h-source.html#l01241">fc</a>.
<p>
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.
+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#FileSize_28_29">FileReader::FileSize</a> returns 0.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00979">979</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#l00954">954</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l01241">fc</a>, and <a class="el" href="modules_8h-source.html#l00067">file_cache</a>.
+References <a class="el" href="modules_8h-source.html#l01212">fc</a>.<div class="fragment"><pre class="fragment"><a name="l00955"></a>00955 {
+<a name="l00956"></a>00956 <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a> c;
+<a name="l00957"></a>00957 readfile(c,filename.c_str());
+<a name="l00958"></a>00958 this-&gt;<a class="code" href="classFileReader.html#fc">fc</a> = c;
+<a name="l00959"></a>00959 }
+</pre></div>
<p>
-<div class="fragment"><pre>00980 {
-00981 <a class="code" href="modules_8h.html#a31">file_cache</a> c;
-00982 readfile(c,filename.c_str());
-00983 this-&gt;<a class="code" href="classFileReader.html#r0">fc</a> = c;
-00984 }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="r0" doxytag="FileReader::fc"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="fc"></a><!-- doxytag: member="FileReader::fc" ref="fc" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8h.html#a31">file_cache</a> <a class="el" href="classFileReader.html#r0">FileReader::fc</a><code> [private]</code>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8h.html#file_5Fcache">file_cache</a> <a class="el" href="classFileReader.html#fc">FileReader::fc</a><code> [private]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -360,16 +354,15 @@ References <a class="el" href="modules_8h-source.html#l01241">fc</a>, and <a cla
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01241">1241</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#l01212">1212</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#l00991">Exists()</a>, <a class="el" href="modules_8cpp-source.html#l00968">FileReader()</a>, <a class="el" href="modules_8cpp-source.html#l01010">FileSize()</a>, <a class="el" href="modules_8cpp-source.html#l01003">GetLine()</a>, and <a class="el" href="modules_8cpp-source.html#l00979">LoadFile()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00966">Exists()</a>, <a class="el" href="modules_8cpp-source.html#l00943">FileReader()</a>, <a class="el" href="modules_8cpp-source.html#l00985">FileSize()</a>, <a class="el" href="modules_8cpp-source.html#l00978">GetLine()</a>, and <a class="el" href="modules_8cpp-source.html#l00954">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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:01 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classFileReader__coll__graph.gif b/docs/module-doc/classFileReader__coll__graph.gif
index 58f782ea6..3e676a53c 100644
--- a/docs/module-doc/classFileReader__coll__graph.gif
+++ b/docs/module-doc/classFileReader__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classFileReader__coll__graph.map b/docs/module-doc/classFileReader__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classFileReader__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classFileReader__coll__graph.md5 b/docs/module-doc/classFileReader__coll__graph.md5
new file mode 100644
index 000000000..81d85200b
--- /dev/null
+++ b/docs/module-doc/classFileReader__coll__graph.md5
@@ -0,0 +1 @@
+525681b5632176b71e156ebd08f4e76a \ No newline at end of file
diff --git a/docs/module-doc/classFileReader__inherit__graph.gif b/docs/module-doc/classFileReader__inherit__graph.gif
index 71abad63d..20ec69338 100644
--- a/docs/module-doc/classFileReader__inherit__graph.gif
+++ b/docs/module-doc/classFileReader__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classFileReader__inherit__graph.map b/docs/module-doc/classFileReader__inherit__graph.map
new file mode 100644
index 000000000..cba11264e
--- /dev/null
+++ b/docs/module-doc/classFileReader__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 11,7 91,34
diff --git a/docs/module-doc/classFileReader__inherit__graph.md5 b/docs/module-doc/classFileReader__inherit__graph.md5
new file mode 100644
index 000000000..afa514f3d
--- /dev/null
+++ b/docs/module-doc/classFileReader__inherit__graph.md5
@@ -0,0 +1 @@
+4fdde72b2259aedfb4389cc3dcdc2c8b \ No newline at end of file
diff --git a/docs/module-doc/classGLine-members.html b/docs/module-doc/classGLine-members.html
index 2a6dc8ca5..eca26ed66 100644
--- a/docs/module-doc/classGLine-members.html
+++ b/docs/module-doc/classGLine-members.html
@@ -1,23 +1,22 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>GLine Member List</h1>This is the complete list of members for <a class="el" href="classGLine.html">GLine</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classXLine.html#o1">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classGLine.html#o0">hostmask</a></td><td><a class="el" href="classGLine.html">GLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o4">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o3">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o0">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o2">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:03 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>GLine Member List</h1>This is the complete list of members for <a class="el" href="classGLine.html">GLine</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#duration">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classGLine.html#hostmask_5B_32_30_30_5D">hostmask</a></td><td><a class="el" href="classGLine.html">GLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#n_5Fmatches">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#reason_5BMAXBUF_5D">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#set_5Ftime">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#source_5B_32_35_36_5D">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classGLine.html b/docs/module-doc/classGLine.html
index 2fc15a0bd..6d2a46d4d 100644
--- a/docs/module-doc/classGLine.html
+++ b/docs/module-doc/classGLine.html
@@ -1,31 +1,31 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: GLine class Reference</title>
+<title>InspIRCd: GLine Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>GLine Class Reference</h1>GLine class.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>GLine Class Reference</h1><!-- doxytag: class="GLine" --><!-- doxytag: inherits="XLine" -->GLine class.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="xline_8h-source.html">xline.h</a>&gt;</code>
<p>
Inheritance diagram for GLine:<p><center><img src="classGLine__inherit__graph.gif" border="0" usemap="#GLine__inherit__map" alt="Inheritance graph"></center>
<map name="GLine__inherit__map">
-<area href="classXLine.html" shape="rect" coords="20,82,76,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,8,88,34" alt="">
+<area href="classXLine.html" shape="rect" coords="19,81,75,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for GLine:<p><center><img src="classGLine__coll__graph.gif" border="0" usemap="#GLine__coll__map" alt="Collaboration graph"></center>
<map name="GLine__coll__map">
-<area href="classXLine.html" shape="rect" coords="166,205,222,231" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classXLine.html" shape="rect" coords="165,204,221,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,98,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classGLine-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classGLine-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classGLine.html#o0">hostmask</a> [200]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGLine.html#hostmask_5B_32_30_30_5D">hostmask</a> [200]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostmask (ident) to match against May contain wildcards. </em> <a href="#o0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostmask (ident) to match against May contain wildcards. <a href="#hostmask_5B_32_30_30_5D"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
GLine class.
@@ -33,18 +33,19 @@ GLine class.
<p>
Definition at line <a class="el" href="xline_8h-source.html#l00073">73</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>.<hr><h2>Member Data Documentation</h2>
-<a name="o0" doxytag="GLine::hostmask"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="hostmask_5B_32_30_30_5D"></a><!-- doxytag: member="GLine::hostmask" ref="hostmask_5B_32_30_30_5D" args="[200]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classGLine.html#o0">GLine::hostmask</a>[200]
+ <td class="md" nowrap valign="top">char <a class="el" href="classGLine.html#hostmask_5B_32_30_30_5D">GLine::hostmask</a>[200] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -61,9 +62,8 @@ Definition at line <a class="el" href="xline_8h-source.html#l00079">79</a> of fi
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="xline_8h-source.html">xline.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:03 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classGLine__coll__graph.gif b/docs/module-doc/classGLine__coll__graph.gif
index 7ca4bc256..0bae72027 100644
--- a/docs/module-doc/classGLine__coll__graph.gif
+++ b/docs/module-doc/classGLine__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classGLine__coll__graph.map b/docs/module-doc/classGLine__coll__graph.map
new file mode 100644
index 000000000..25a1b769a
--- /dev/null
+++ b/docs/module-doc/classGLine__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 165,204 221,231
+rect $classclassbase.html 7,98 87,124
diff --git a/docs/module-doc/classGLine__coll__graph.md5 b/docs/module-doc/classGLine__coll__graph.md5
new file mode 100644
index 000000000..9c730fc68
--- /dev/null
+++ b/docs/module-doc/classGLine__coll__graph.md5
@@ -0,0 +1 @@
+73b6083b7948aa94c2ddb2dcfa75054b \ No newline at end of file
diff --git a/docs/module-doc/classGLine__inherit__graph.gif b/docs/module-doc/classGLine__inherit__graph.gif
index 307d8677b..c8267bece 100644
--- a/docs/module-doc/classGLine__inherit__graph.gif
+++ b/docs/module-doc/classGLine__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classGLine__inherit__graph.map b/docs/module-doc/classGLine__inherit__graph.map
new file mode 100644
index 000000000..37695eb4e
--- /dev/null
+++ b/docs/module-doc/classGLine__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 19,81 75,108
+rect $classclassbase.html 7,7 87,33
diff --git a/docs/module-doc/classGLine__inherit__graph.md5 b/docs/module-doc/classGLine__inherit__graph.md5
new file mode 100644
index 000000000..9374a453c
--- /dev/null
+++ b/docs/module-doc/classGLine__inherit__graph.md5
@@ -0,0 +1 @@
+c561272c254fa5d3e2bec1555b57510b \ No newline at end of file
diff --git a/docs/module-doc/classHostItem-members.html b/docs/module-doc/classHostItem-members.html
index dcf02f5bd..6914cbe50 100644
--- a/docs/module-doc/classHostItem-members.html
+++ b/docs/module-doc/classHostItem-members.html
@@ -1,22 +1,21 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>HostItem Member List</h1>This is the complete list of members for <a class="el" href="classHostItem.html">HostItem</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classHostItem.html#o2">data</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#a0">HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#o1">set_by</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#o0">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:07 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>HostItem Member List</h1>This is the complete list of members for <a class="el" href="classHostItem.html">HostItem</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#data_5BMAXBUF_5D">data</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#HostItem_28_29">HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">set_by</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#set_5Ftime">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#_7EHostItem_28_29">~HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classHostItem.html b/docs/module-doc/classHostItem.html
index 61c4ee368..238f52f13 100644
--- a/docs/module-doc/classHostItem.html
+++ b/docs/module-doc/classHostItem.html
@@ -1,67 +1,66 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: HostItem class Reference</title>
+<title>InspIRCd: HostItem Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>HostItem Class Reference</h1>Holds an entry for a ban list, exemption list, or invite list.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>HostItem Class Reference</h1><!-- doxytag: class="HostItem" --><!-- doxytag: inherits="classbase" -->Holds an entry for a ban list, exemption list, or invite list.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="channels_8h-source.html">channels.h</a>&gt;</code>
<p>
Inheritance diagram for HostItem:<p><center><img src="classHostItem__inherit__graph.gif" border="0" usemap="#HostItem__inherit__map" alt="Inheritance graph"></center>
<map name="HostItem__inherit__map">
-<area href="classBanItem.html" shape="rect" coords="7,157,79,184" alt="">
-<area href="classExemptItem.html" shape="rect" coords="103,157,197,184" alt="">
-<area href="classInviteItem.html" shape="rect" coords="221,157,301,184" alt="">
-<area href="classclassbase.html" shape="rect" coords="110,8,190,34" alt="">
+<area href="classBanItem.html" shape="rect" coords="7,156,79,183" alt="">
+<area href="classExemptItem.html" shape="rect" coords="103,156,196,183" alt="">
+<area href="classInviteItem.html" shape="rect" coords="220,156,300,183" alt="">
+<area href="classclassbase.html" shape="rect" coords="110,7,190,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for HostItem:<p><center><img src="classHostItem__coll__graph.gif" border="0" usemap="#HostItem__coll__map" alt="Collaboration graph"></center>
<map name="HostItem__coll__map">
-<area href="classclassbase.html" shape="rect" coords="108,98,188,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="107,97,187,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classHostItem-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classHostItem-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classHostItem.html#a0">HostItem</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHostItem.html#HostItem_28_29">HostItem</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classHostItem.html#a1">~HostItem</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHostItem.html#_7EHostItem_28_29">~HostItem</a> ()</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classHostItem.html#o0">set_time</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHostItem.html#set_5Ftime">set_time</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classHostItem.html#o1">set_by</a> [NICKMAX]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">set_by</a> [NICKMAX]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classHostItem.html#o2">data</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classHostItem.html#data_5BMAXBUF_5D">data</a> [MAXBUF]</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds an entry for a ban list, exemption list, or invite list.
<p>
-This class contains a single element in a channel list, such as a banlist.
+This class contains a single element in a channel list, such as a banlist.
<p>
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00036">36</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a0" doxytag="HostItem::HostItem"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="HostItem_28_29"></a><!-- doxytag: member="HostItem::HostItem" ref="HostItem_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> HostItem::HostItem </td>
+ <td class="md" nowrap valign="top">HostItem::HostItem </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -71,30 +70,29 @@ Definition at line <a class="el" href="channels_8h-source.html#l00036">36</a> of
<p>
<p>
-Definition at line <a class="el" href="channels_8h-source.html#l00043">43</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
+Definition at line <a class="el" href="channels_8h-source.html#l00043">43</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<div class="fragment"><pre class="fragment"><a name="l00043"></a>00043 { <span class="comment">/* stub */</span> }
+</pre></div>
<p>
-<div class="fragment"><pre>00043 { <span class="comment">/* stub */</span> }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="HostItem::~HostItem"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7EHostItem_28_29"></a><!-- doxytag: member="HostItem::~HostItem" ref="_7EHostItem_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> virtual HostItem::~<a class="el" href="classHostItem.html">HostItem</a> </td>
+ <td class="md" nowrap valign="top">virtual HostItem::~HostItem </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline, virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -104,25 +102,26 @@ Definition at line <a class="el" href="channels_8h-source.html#l00043">43</a> of
<p>
<p>
-Definition at line <a class="el" href="channels_8h-source.html#l00044">44</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
+Definition at line <a class="el" href="channels_8h-source.html#l00044">44</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<div class="fragment"><pre class="fragment"><a name="l00044"></a>00044 { <span class="comment">/* stub */</span> }
+</pre></div>
<p>
-<div class="fragment"><pre>00044 { <span class="comment">/* stub */</span> }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o2" doxytag="HostItem::data"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="data_5BMAXBUF_5D"></a><!-- doxytag: member="HostItem::data" ref="data_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classHostItem.html#o2">HostItem::data</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classHostItem.html#data_5BMAXBUF_5D">HostItem::data</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -135,18 +134,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00044">44</a> of
Definition at line <a class="el" href="channels_8h-source.html#l00041">41</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="HostItem::set_by"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="set_5Fby_5BNICKMAX_5D"></a><!-- doxytag: member="HostItem::set_by" ref="set_5Fby_5BNICKMAX_5D" args="[NICKMAX]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classHostItem.html#o1">HostItem::set_by</a>[NICKMAX]
+ <td class="md" nowrap valign="top">char <a class="el" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">HostItem::set_by</a>[NICKMAX] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -159,18 +159,19 @@ Definition at line <a class="el" href="channels_8h-source.html#l00041">41</a> of
Definition at line <a class="el" href="channels_8h-source.html#l00040">40</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="HostItem::set_time"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="set_5Ftime"></a><!-- doxytag: member="HostItem::set_time" ref="set_5Ftime" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classHostItem.html#o0">HostItem::set_time</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classHostItem.html#set_5Ftime">HostItem::set_time</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -185,9 +186,8 @@ Definition at line <a class="el" href="channels_8h-source.html#l00039">39</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:07 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classHostItem__coll__graph.gif b/docs/module-doc/classHostItem__coll__graph.gif
index 23cce6b3f..1af3e7c7e 100644
--- a/docs/module-doc/classHostItem__coll__graph.gif
+++ b/docs/module-doc/classHostItem__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classHostItem__coll__graph.map b/docs/module-doc/classHostItem__coll__graph.map
new file mode 100644
index 000000000..64f9b3a84
--- /dev/null
+++ b/docs/module-doc/classHostItem__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 107,97 187,124
diff --git a/docs/module-doc/classHostItem__coll__graph.md5 b/docs/module-doc/classHostItem__coll__graph.md5
new file mode 100644
index 000000000..1febcee09
--- /dev/null
+++ b/docs/module-doc/classHostItem__coll__graph.md5
@@ -0,0 +1 @@
+78d65e764adb0280a4c5499a21d901f7 \ No newline at end of file
diff --git a/docs/module-doc/classHostItem__inherit__graph.gif b/docs/module-doc/classHostItem__inherit__graph.gif
index 64e3ad4ee..9743b6432 100644
--- a/docs/module-doc/classHostItem__inherit__graph.gif
+++ b/docs/module-doc/classHostItem__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classHostItem__inherit__graph.map b/docs/module-doc/classHostItem__inherit__graph.map
new file mode 100644
index 000000000..ad031674c
--- /dev/null
+++ b/docs/module-doc/classHostItem__inherit__graph.map
@@ -0,0 +1,5 @@
+base referer
+rect $classBanItem.html 7,156 79,183
+rect $classExemptItem.html 103,156 196,183
+rect $classInviteItem.html 220,156 300,183
+rect $classclassbase.html 110,7 190,33
diff --git a/docs/module-doc/classHostItem__inherit__graph.md5 b/docs/module-doc/classHostItem__inherit__graph.md5
new file mode 100644
index 000000000..e1ee72a99
--- /dev/null
+++ b/docs/module-doc/classHostItem__inherit__graph.md5
@@ -0,0 +1 @@
+8f648f4a23ebaee7a9ac924b7832541e \ No newline at end of file
diff --git a/docs/module-doc/classInspSocket-members.html b/docs/module-doc/classInspSocket-members.html
new file mode 100644
index 000000000..360dde71c
--- /dev/null
+++ b/docs/module-doc/classInspSocket-members.html
@@ -0,0 +1,43 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Member List</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>InspSocket Member List</h1>This is the complete list of members for <a class="el" href="classInspSocket.html">InspSocket</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#addr">addr</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#addy">addy</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#client">client</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#Close_28_29">Close</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#fd">fd</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#GetState_28_29">GetState</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#host">host</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">ibuf</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#InspSocket_28_29">InspSocket</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#InspSocket_28int_20newfd_29">InspSocket</a>(int newfd)</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#InspSocket_28std_3A_3Astring_20host_2C_20int_20port_2C_20bool_20listening_2C_20unsigned_20long_20maxtime_29">InspSocket</a>(std::string host, int port, bool listening, unsigned long maxtime)</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#length">length</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#OnClose_28_29">OnClose</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#OnConnected_28_29">OnConnected</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#OnDataReady_28_29">OnDataReady</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#OnDisconnect_28_29">OnDisconnect</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(InspSocketError e)</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">OnIncomingConnection</a>(int newfd, char *ip)</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#OnTimeout_28_29">OnTimeout</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#Poll_28_29">Poll</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#polls">polls</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#port">port</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#Read_28_29">Read</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#server">server</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#SetState_28InspSocketState_20s_29">SetState</a>(InspSocketState s)</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#state">state</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#timeout">timeout</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#timeout_5Fend">timeout_end</a></td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#Write_28std_3A_3Astring_20data_29">Write</a>(std::string data)</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInspSocket.html#_7EInspSocket_28_29">~InspSocket</a>()</td><td><a class="el" href="classInspSocket.html">InspSocket</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/classInspSocket.html b/docs/module-doc/classInspSocket.html
new file mode 100644
index 000000000..ba3112cbe
--- /dev/null
+++ b/docs/module-doc/classInspSocket.html
@@ -0,0 +1,1212 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: InspSocket Class Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>InspSocket Class Reference</h1><!-- doxytag: class="InspSocket" --><code>#include &lt;<a class="el" href="socket_8h-source.html">socket.h</a>&gt;</code>
+<p>
+Collaboration diagram for InspSocket:<p><center><img src="classInspSocket__coll__graph.gif" border="0" usemap="#InspSocket__coll__map" alt="Collaboration graph"></center>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classInspSocket-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 class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#InspSocket_28_29">InspSocket</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#InspSocket_28int_20newfd_29">InspSocket</a> (int newfd)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#InspSocket_28std_3A_3Astring_20host_2C_20int_20port_2C_20bool_20listening_2C_20unsigned_20long_20maxtime_29">InspSocket</a> (<a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classInspSocket.html#host">host</a>, int <a class="el" href="classInspSocket.html#port">port</a>, bool listening, unsigned long maxtime)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#OnConnected_28_29">OnConnected</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a> (<a class="el" href="socket_8h.html#InspSocketError">InspSocketError</a> e)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#OnDisconnect_28_29">OnDisconnect</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#OnDataReady_28_29">OnDataReady</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#OnTimeout_28_29">OnTimeout</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#OnClose_28_29">OnClose</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#Read_28_29">Read</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#Write_28std_3A_3Astring_20data_29">Write</a> (<a class="el" href="namespaceirc.html#string">std::string</a> data)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">OnIncomingConnection</a> (int newfd, char *ip)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#SetState_28InspSocketState_20s_29">SetState</a> (<a class="el" href="socket_8h.html#InspSocketState">InspSocketState</a> s)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="socket_8h.html#InspSocketState">InspSocketState</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#GetState_28_29">GetState</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#Poll_28_29">Poll</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#Close_28_29">Close</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#_7EInspSocket_28_29">~InspSocket</a> ()</td></tr>
+
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#fd">fd</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#host">host</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#port">port</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="socket_8h.html#InspSocketState">InspSocketState</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#state">state</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">sockaddr_in&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#addr">addr</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">in_addr&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#addy">addy</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#timeout_5Fend">timeout_end</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#timeout">timeout</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">pollfd&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#polls">polls</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">ibuf</a> [1024]</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">sockaddr_in&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#client">client</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">sockaddr_in&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#server">server</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">socklen_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html#length">length</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="socket_8h-source.html#l00030">30</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="InspSocket_28_29"></a><!-- doxytag: member="InspSocket::InspSocket" ref="InspSocket_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">InspSocket::InspSocket </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&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>
+
+<p>
+Definition at line <a class="el" href="socket_8cpp-source.html#l00046">46</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="socket_8h.html#InspSocketStateI_5FDISCONNECTED">I_DISCONNECTED</a>, and <a class="el" href="socket_8h-source.html#l00036">state</a>.<div class="fragment"><pre class="fragment"><a name="l00047"></a>00047 {
+<a name="l00048"></a>00048 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FDISCONNECTED">I_DISCONNECTED</a>;
+<a name="l00049"></a>00049 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="InspSocket_28int_20newfd_29"></a><!-- doxytag: member="InspSocket::InspSocket" ref="InspSocket_28int_20newfd_29" args="(int newfd)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">InspSocket::InspSocket </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">int&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>newfd</em> </td>
+ <td class="md" valign="top">&nbsp;)&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>
+
+<p>
+Definition at line <a class="el" href="socket_8cpp-source.html#l00051">51</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="socket_8h-source.html#l00033">fd</a>, <a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>, and <a class="el" href="socket_8h-source.html#l00036">state</a>.<div class="fragment"><pre class="fragment"><a name="l00052"></a>00052 {
+<a name="l00053"></a>00053 this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a> = newfd;
+<a name="l00054"></a>00054 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>;
+<a name="l00055"></a>00055 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="InspSocket_28std_3A_3Astring_20host_2C_20int_20port_2C_20bool_20listening_2C_20unsigned_20long_20maxtime_29"></a><!-- doxytag: member="InspSocket::InspSocket" ref="InspSocket_28std_3A_3Astring_20host_2C_20int_20port_2C_20bool_20listening_2C_20unsigned_20long_20maxtime_29" args="(std::string host, int port, bool listening, unsigned long maxtime)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">InspSocket::InspSocket </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap>int&nbsp;</td>
+ <td class="mdname" nowrap> <em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap>bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>listening</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap>unsigned long&nbsp;</td>
+ <td class="mdname" nowrap> <em>maxtime</em></td>
+ </tr>
+ <tr>
+ <td class="md"></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>
+
+<p>
+Definition at line <a class="el" href="socket_8cpp-source.html#l00057">57</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="socket_8h-source.html#l00037">addr</a>, <a class="el" href="socket_8h-source.html#l00038">addy</a>, <a class="el" href="socket_8cpp-source.html#l00130">Close()</a>, <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="socket_8h-source.html#l00033">fd</a>, <a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>, <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FBIND">I_ERR_BIND</a>, <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FCONNECT">I_ERR_CONNECT</a>, <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">I_ERR_SOCKET</a>, <a class="el" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>, <a class="el" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>, <a class="el" href="socket_8cpp-source.html#l00239">OnError()</a>, <a class="el" href="socket_8h-source.html#l00036">state</a>, <a class="el" href="socket_8h-source.html#l00040">timeout</a>, and <a class="el" href="socket_8h-source.html#l00039">timeout_end</a>.<div class="fragment"><pre class="fragment"><a name="l00058"></a>00058 {
+<a name="l00059"></a>00059 <span class="keywordflow">if</span> (listening) {
+<a name="l00060"></a>00060 <span class="keywordflow">if</span> ((this-&gt;fd = OpenTCPSocket()) == ERROR)
+<a name="l00061"></a>00061 {
+<a name="l00062"></a>00062 this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a> = -1;
+<a name="l00063"></a>00063 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00064"></a>00064 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">I_ERR_SOCKET</a>);
+<a name="l00065"></a>00065 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"OpenTCPSocket() error"</span>);
+<a name="l00066"></a>00066 <span class="keywordflow">return</span>;
+<a name="l00067"></a>00067 }
+<a name="l00068"></a>00068 <span class="keywordflow">else</span>
+<a name="l00069"></a>00069 {
+<a name="l00070"></a>00070 <span class="keywordflow">if</span> (BindSocket(this-&gt;fd,this-&gt;client,this-&gt;server,<a class="code" href="classInspSocket.html#port">port</a>,(<span class="keywordtype">char</span>*)<a class="code" href="classInspSocket.html#host">host</a>.c_str()) == ERROR)
+<a name="l00071"></a>00071 {
+<a name="l00072"></a>00072 this-&gt;<a class="code" href="classInspSocket.html#Close_28_29">Close</a>();
+<a name="l00073"></a>00073 this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a> = -1;
+<a name="l00074"></a>00074 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00075"></a>00075 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FBIND">I_ERR_BIND</a>);
+<a name="l00076"></a>00076 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"BindSocket() error %s"</span>,strerror(errno));
+<a name="l00077"></a>00077 <span class="keywordflow">return</span>;
+<a name="l00078"></a>00078 }
+<a name="l00079"></a>00079 <span class="keywordflow">else</span>
+<a name="l00080"></a>00080 {
+<a name="l00081"></a>00081 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>;
+<a name="l00082"></a>00082 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"New socket now in I_LISTENING state"</span>);
+<a name="l00083"></a>00083 <span class="keywordflow">return</span>;
+<a name="l00084"></a>00084 }
+<a name="l00085"></a>00085 }
+<a name="l00086"></a>00086 } <span class="keywordflow">else</span> {
+<a name="l00087"></a>00087 <span class="keywordtype">char</span>* ip;
+<a name="l00088"></a>00088 this-&gt;<a class="code" href="classInspSocket.html#host">host</a> = <a class="code" href="classInspSocket.html#host">host</a>;
+<a name="l00089"></a>00089 hostent* hoste = gethostbyname(<a class="code" href="classInspSocket.html#host">host</a>.c_str());
+<a name="l00090"></a>00090 <span class="keywordflow">if</span> (!hoste) {
+<a name="l00091"></a>00091 ip = (<span class="keywordtype">char</span>*)<a class="code" href="classInspSocket.html#host">host</a>.c_str();
+<a name="l00092"></a>00092 } <span class="keywordflow">else</span> {
+<a name="l00093"></a>00093 <span class="keyword">struct </span>in_addr* ia = (in_addr*)hoste-&gt;h_addr;
+<a name="l00094"></a>00094 ip = inet_ntoa(*ia);
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <a class="code" href="classInspSocket.html#timeout_5Fend">timeout_end</a> = time(NULL)+maxtime;
+<a name="l00098"></a>00098 <a class="code" href="classInspSocket.html#timeout">timeout</a> = <span class="keyword">false</span>;
+<a name="l00099"></a>00099 <span class="keywordflow">if</span> ((this-&gt;fd = socket(AF_INET, SOCK_STREAM, 0)) == -1)
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00102"></a>00102 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">I_ERR_SOCKET</a>);
+<a name="l00103"></a>00103 <span class="keywordflow">return</span>;
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105 this-&gt;<a class="code" href="classInspSocket.html#port">port</a> = <a class="code" href="classInspSocket.html#port">port</a>;
+<a name="l00106"></a>00106 inet_aton(ip,&amp;<a class="code" href="classInspSocket.html#addy">addy</a>);
+<a name="l00107"></a>00107 <a class="code" href="classInspSocket.html#addr">addr</a>.sin_family = AF_INET;
+<a name="l00108"></a>00108 <a class="code" href="classInspSocket.html#addr">addr</a>.sin_addr = <a class="code" href="classInspSocket.html#addy">addy</a>;
+<a name="l00109"></a>00109 <a class="code" href="classInspSocket.html#addr">addr</a>.sin_port = htons(this-&gt;port);
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111 <span class="keywordtype">int</span> flags;
+<a name="l00112"></a>00112 flags = fcntl(this-&gt;fd, F_GETFL, 0);
+<a name="l00113"></a>00113 fcntl(this-&gt;fd, F_SETFL, flags | O_NONBLOCK);
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <span class="keywordflow">if</span>(connect(this-&gt;fd, (sockaddr*)&amp;this-&gt;addr,<span class="keyword">sizeof</span>(this-&gt;addr)) == -1)
+<a name="l00116"></a>00116 {
+<a name="l00117"></a>00117 <span class="keywordflow">if</span> (errno != EINPROGRESS)
+<a name="l00118"></a>00118 {
+<a name="l00119"></a>00119 this-&gt;<a class="code" href="classInspSocket.html#Close_28_29">Close</a>();
+<a name="l00120"></a>00120 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FCONNECT">I_ERR_CONNECT</a>);
+<a name="l00121"></a>00121 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00122"></a>00122 <span class="keywordflow">return</span>;
+<a name="l00123"></a>00123 }
+<a name="l00124"></a>00124 }
+<a name="l00125"></a>00125 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>;
+<a name="l00126"></a>00126 <span class="keywordflow">return</span>;
+<a name="l00127"></a>00127 }
+<a name="l00128"></a>00128 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="_7EInspSocket_28_29"></a><!-- doxytag: member="InspSocket::~InspSocket" ref="_7EInspSocket_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">InspSocket::~InspSocket </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00246">246</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="socket_8cpp-source.html#l00130">Close()</a>.<div class="fragment"><pre class="fragment"><a name="l00247"></a>00247 {
+<a name="l00248"></a>00248 this-&gt;<a class="code" href="classInspSocket.html#Close_28_29">Close</a>();
+<a name="l00249"></a>00249 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="Close_28_29"></a><!-- doxytag: member="InspSocket::Close" ref="Close_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">void InspSocket::Close </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00130">130</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="socket_8h-source.html#l00033">fd</a>, and <a class="el" href="socket_8cpp-source.html#l00244">OnClose()</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00057">InspSocket()</a>, and <a class="el" href="socket_8cpp-source.html#l00246">~InspSocket()</a>.<div class="fragment"><pre class="fragment"><a name="l00131"></a>00131 {
+<a name="l00132"></a>00132 <span class="keywordflow">if</span> (this-&gt;fd != -1)
+<a name="l00133"></a>00133 {
+<a name="l00134"></a>00134 this-&gt;<a class="code" href="classInspSocket.html#OnClose_28_29">OnClose</a>();
+<a name="l00135"></a>00135 shutdown(this-&gt;fd,2);
+<a name="l00136"></a>00136 close(this-&gt;fd);
+<a name="l00137"></a>00137 this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a> = -1;
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="GetState_28_29"></a><!-- doxytag: member="InspSocket::GetState" ref="GetState_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"><a class="el" href="socket_8h.html#InspSocketState">InspSocketState</a> InspSocket::GetState </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&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>
+
+<p>
+Definition at line <a class="el" href="socket_8cpp-source.html#l00233">233</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="socket_8h-source.html#l00036">state</a>.<div class="fragment"><pre class="fragment"><a name="l00234"></a>00234 {
+<a name="l00235"></a>00235 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classInspSocket.html#state">state</a>;
+<a name="l00236"></a>00236 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="OnClose_28_29"></a><!-- doxytag: member="InspSocket::OnClose" ref="OnClose_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">void InspSocket::OnClose </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00244">244</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00130">Close()</a>.<div class="fragment"><pre class="fragment"><a name="l00244"></a>00244 { <span class="keywordflow">return</span>; }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="OnConnected_28_29"></a><!-- doxytag: member="InspSocket::OnConnected" ref="OnConnected_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">bool InspSocket::OnConnected </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00238">238</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>.<div class="fragment"><pre class="fragment"><a name="l00238"></a>00238 { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="OnDataReady_28_29"></a><!-- doxytag: member="InspSocket::OnDataReady" ref="OnDataReady_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">bool InspSocket::OnDataReady </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00242">242</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>.<div class="fragment"><pre class="fragment"><a name="l00242"></a>00242 { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="OnDisconnect_28_29"></a><!-- doxytag: member="InspSocket::OnDisconnect" ref="OnDisconnect_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">int InspSocket::OnDisconnect </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00240">240</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00240"></a>00240 { <span class="keywordflow">return</span> 0; }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="OnError_28InspSocketError_20e_29"></a><!-- doxytag: member="InspSocket::OnError" ref="OnError_28InspSocketError_20e_29" args="(InspSocketError e)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">void InspSocket::OnError </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="socket_8h.html#InspSocketError">InspSocketError</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>e</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00239">239</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00057">InspSocket()</a>, and <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>.<div class="fragment"><pre class="fragment"><a name="l00239"></a>00239 { <span class="keywordflow">return</span>; }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29"></a><!-- doxytag: member="InspSocket::OnIncomingConnection" ref="OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29" args="(int newfd, char *ip)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">int InspSocket::OnIncomingConnection </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">int&nbsp;</td>
+ <td class="mdname" nowrap> <em>newfd</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap>char *&nbsp;</td>
+ <td class="mdname" nowrap> <em>ip</em></td>
+ </tr>
+ <tr>
+ <td class="md"></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>
+
+<p>
+Definition at line <a class="el" href="socket_8cpp-source.html#l00241">241</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>.<div class="fragment"><pre class="fragment"><a name="l00241"></a>00241 { <span class="keywordflow">return</span> 0; }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="OnTimeout_28_29"></a><!-- doxytag: member="InspSocket::OnTimeout" ref="OnTimeout_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">void InspSocket::OnTimeout </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00243">243</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>.<div class="fragment"><pre class="fragment"><a name="l00243"></a>00243 { <span class="keywordflow">return</span>; }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="Poll_28_29"></a><!-- doxytag: member="InspSocket::Poll" ref="Poll_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">bool InspSocket::Poll </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&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>
+
+<p>
+Definition at line <a class="el" href="socket_8cpp-source.html#l00183">183</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="socket_8h-source.html#l00043">client</a>, <a class="el" href="socket_8h-source.html#l00033">fd</a>, <a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>, <a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>, <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FTIMEOUT">I_ERR_TIMEOUT</a>, <a class="el" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>, <a class="el" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>, <a class="el" href="socket_8h-source.html#l00045">length</a>, <a class="el" href="socket_8cpp-source.html#l00238">OnConnected()</a>, <a class="el" href="socket_8cpp-source.html#l00242">OnDataReady()</a>, <a class="el" href="socket_8cpp-source.html#l00239">OnError()</a>, <a class="el" href="socket_8cpp-source.html#l00241">OnIncomingConnection()</a>, <a class="el" href="socket_8cpp-source.html#l00243">OnTimeout()</a>, <a class="el" href="socket_8h-source.html#l00041">polls</a>, <a class="el" href="socket_8cpp-source.html#l00227">SetState()</a>, <a class="el" href="socket_8h-source.html#l00036">state</a>, <a class="el" href="socket_8h-source.html#l00040">timeout</a>, and <a class="el" href="socket_8h-source.html#l00039">timeout_end</a>.<div class="fragment"><pre class="fragment"><a name="l00184"></a>00184 {
+<a name="l00185"></a>00185 <span class="keywordflow">if</span> ((time(NULL) &gt; <a class="code" href="classInspSocket.html#timeout_5Fend">timeout_end</a>) &amp;&amp; (this-&gt;state == <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>))
+<a name="l00186"></a>00186 {
+<a name="l00187"></a>00187 <span class="comment">// for non-listening sockets, the timeout can occur</span>
+<a name="l00188"></a>00188 <span class="comment">// which causes termination of the connection after</span>
+<a name="l00189"></a>00189 <span class="comment">// the given number of seconds without a successful</span>
+<a name="l00190"></a>00190 <span class="comment">// connection.</span>
+<a name="l00191"></a>00191 this-&gt;<a class="code" href="classInspSocket.html#OnTimeout_28_29">OnTimeout</a>();
+<a name="l00192"></a>00192 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FTIMEOUT">I_ERR_TIMEOUT</a>);
+<a name="l00193"></a>00193 <a class="code" href="classInspSocket.html#timeout">timeout</a> = <span class="keyword">true</span>;
+<a name="l00194"></a>00194 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00195"></a>00195 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00196"></a>00196 }
+<a name="l00197"></a>00197 <a class="code" href="classInspSocket.html#polls">polls</a>.fd = this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a>;
+<a name="l00198"></a>00198 <a class="code" href="classInspSocket.html#state">state</a> == <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a> ? <a class="code" href="classInspSocket.html#polls">polls</a>.events = POLLOUT : <a class="code" href="classInspSocket.html#polls">polls</a>.events = POLLIN;
+<a name="l00199"></a>00199 <span class="keywordtype">int</span> ret = poll(&amp;<a class="code" href="classInspSocket.html#polls">polls</a>,1,1);
+<a name="l00200"></a>00200
+<a name="l00201"></a>00201 <span class="keywordflow">if</span> (ret &gt; 0)
+<a name="l00202"></a>00202 {
+<a name="l00203"></a>00203 <span class="keywordtype">int</span> incoming = -1;
+<a name="l00204"></a>00204
+<a name="l00205"></a>00205 <span class="keywordflow">switch</span> (this-&gt;state)
+<a name="l00206"></a>00206 {
+<a name="l00207"></a>00207 <span class="keywordflow">case</span> <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>:
+<a name="l00208"></a>00208 this-&gt;<a class="code" href="classInspSocket.html#SetState_28InspSocketState_20s_29">SetState</a>(<a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>);
+<a name="l00209"></a>00209 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classInspSocket.html#OnConnected_28_29">OnConnected</a>();
+<a name="l00210"></a>00210 <span class="keywordflow">break</span>;
+<a name="l00211"></a>00211 <span class="keywordflow">case</span> <a class="code" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>:
+<a name="l00212"></a>00212 <a class="code" href="classInspSocket.html#length">length</a> = <span class="keyword">sizeof</span> (<a class="code" href="classInspSocket.html#client">client</a>);
+<a name="l00213"></a>00213 incoming = accept (this-&gt;fd, (sockaddr*)&amp;<a class="code" href="classInspSocket.html#client">client</a>,&amp;<a class="code" href="classInspSocket.html#length">length</a>);
+<a name="l00214"></a>00214 this-&gt;<a class="code" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">OnIncomingConnection</a>(incoming,inet_ntoa(<a class="code" href="classInspSocket.html#client">client</a>.sin_addr));
+<a name="l00215"></a>00215 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00216"></a>00216 <span class="keywordflow">break</span>;
+<a name="l00217"></a>00217 <span class="keywordflow">case</span> <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>:
+<a name="l00218"></a>00218 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classInspSocket.html#OnDataReady_28_29">OnDataReady</a>();
+<a name="l00219"></a>00219 <span class="keywordflow">break</span>;
+<a name="l00220"></a>00220 <span class="keywordflow">default</span>:
+<a name="l00221"></a>00221 <span class="keywordflow">break</span>;
+<a name="l00222"></a>00222 }
+<a name="l00223"></a>00223 }
+<a name="l00224"></a>00224 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00225"></a>00225 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="Read_28_29"></a><!-- doxytag: member="InspSocket::Read" ref="Read_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">char * InspSocket::Read </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00141">141</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="socket_8h-source.html#l00042">ibuf</a>.<div class="fragment"><pre class="fragment"><a name="l00142"></a>00142 {
+<a name="l00143"></a>00143 <span class="keywordtype">int</span> n = recv(this-&gt;fd,this-&gt;ibuf,<span class="keyword">sizeof</span>(this-&gt;ibuf),0);
+<a name="l00144"></a>00144 <span class="keywordflow">if</span> (n &gt; 0)
+<a name="l00145"></a>00145 {
+<a name="l00146"></a>00146 <a class="code" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">ibuf</a>[n] = 0;
+<a name="l00147"></a>00147 <span class="keywordflow">return</span> <a class="code" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">ibuf</a>;
+<a name="l00148"></a>00148 }
+<a name="l00149"></a>00149 <span class="keywordflow">else</span>
+<a name="l00150"></a>00150 {
+<a name="l00151"></a>00151 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"EOF or error on socket"</span>);
+<a name="l00152"></a>00152 <span class="keywordflow">return</span> NULL;
+<a name="l00153"></a>00153 }
+<a name="l00154"></a>00154 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="SetState_28InspSocketState_20s_29"></a><!-- doxytag: member="InspSocket::SetState" ref="SetState_28InspSocketState_20s_29" args="(InspSocketState s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">void InspSocket::SetState </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="socket_8h.html#InspSocketState">InspSocketState</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
+ <td class="md" valign="top">&nbsp;)&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>
+
+<p>
+Definition at line <a class="el" href="socket_8cpp-source.html#l00227">227</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="socket_8h-source.html#l00036">state</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>.<div class="fragment"><pre class="fragment"><a name="l00228"></a>00228 {
+<a name="l00229"></a>00229 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Socket state change"</span>);
+<a name="l00230"></a>00230 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = s;
+<a name="l00231"></a>00231 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="Write_28std_3A_3Astring_20data_29"></a><!-- doxytag: member="InspSocket::Write" ref="Write_28std_3A_3Astring_20data_29" args="(std::string data)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">int InspSocket::Write </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>data</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </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="socket_8cpp-source.html#l00160">160</a> of file <a class="el" href="socket_8cpp-source.html">socket.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00161"></a>00161 {
+<a name="l00162"></a>00162 <span class="keywordtype">char</span>* d = (<span class="keywordtype">char</span>*)data.c_str();
+<a name="l00163"></a>00163 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> written = 0;
+<a name="l00164"></a>00164 <span class="keywordtype">int</span> n = 0;
+<a name="l00165"></a>00165 <span class="keywordtype">int</span> s = data.length();
+<a name="l00166"></a>00166 <span class="keywordflow">while</span> ((written &lt; data.length()) &amp;&amp; (n &gt;= 0))
+<a name="l00167"></a>00167 {
+<a name="l00168"></a>00168 n = send(this-&gt;fd,d,s,0);
+<a name="l00169"></a>00169 <span class="keywordflow">if</span> (n &gt; 0)
+<a name="l00170"></a>00170 {
+<a name="l00171"></a>00171 <span class="comment">// If we didnt write everything, advance</span>
+<a name="l00172"></a>00172 <span class="comment">// the pointers so that when we retry</span>
+<a name="l00173"></a>00173 <span class="comment">// the next time around the loop, we try</span>
+<a name="l00174"></a>00174 <span class="comment">// to write what we failed to write before.</span>
+<a name="l00175"></a>00175 written += n;
+<a name="l00176"></a>00176 s -= n;
+<a name="l00177"></a>00177 d += n;
+<a name="l00178"></a>00178 }
+<a name="l00179"></a>00179 }
+<a name="l00180"></a>00180 <span class="keywordflow">return</span> written;
+<a name="l00181"></a>00181 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="addr"></a><!-- doxytag: member="InspSocket::addr" ref="addr" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">sockaddr_in <a class="el" href="classInspSocket.html#addr">InspSocket::addr</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00037">37</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00057">InspSocket()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="addy"></a><!-- doxytag: member="InspSocket::addy" ref="addy" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">in_addr <a class="el" href="classInspSocket.html#addy">InspSocket::addy</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00038">38</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00057">InspSocket()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="client"></a><!-- doxytag: member="InspSocket::client" ref="client" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">sockaddr_in <a class="el" href="classInspSocket.html#client">InspSocket::client</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00043">43</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="fd"></a><!-- doxytag: member="InspSocket::fd" ref="fd" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">int <a class="el" href="classInspSocket.html#fd">InspSocket::fd</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00033">33</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00130">Close()</a>, <a class="el" href="socket_8cpp-source.html#l00051">InspSocket()</a>, and <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="host"></a><!-- doxytag: member="InspSocket::host" ref="host" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classInspSocket.html#host">InspSocket::host</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00034">34</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="ibuf_5B_31_30_32_34_5D"></a><!-- doxytag: member="InspSocket::ibuf" ref="ibuf_5B_31_30_32_34_5D" args="[1024]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">char <a class="el" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">InspSocket::ibuf</a>[1024]<code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00042">42</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00141">Read()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="length"></a><!-- doxytag: member="InspSocket::length" ref="length" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">socklen_t <a class="el" href="classInspSocket.html#length">InspSocket::length</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00045">45</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="polls"></a><!-- doxytag: member="InspSocket::polls" ref="polls" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">pollfd <a class="el" href="classInspSocket.html#polls">InspSocket::polls</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00041">41</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="port"></a><!-- doxytag: member="InspSocket::port" ref="port" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">int <a class="el" href="classInspSocket.html#port">InspSocket::port</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00035">35</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="server"></a><!-- doxytag: member="InspSocket::server" ref="server" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">sockaddr_in <a class="el" href="classInspSocket.html#server">InspSocket::server</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00044">44</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="state"></a><!-- doxytag: member="InspSocket::state" ref="state" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"><a class="el" href="socket_8h.html#InspSocketState">InspSocketState</a> <a class="el" href="classInspSocket.html#state">InspSocket::state</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00036">36</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00233">GetState()</a>, <a class="el" href="socket_8cpp-source.html#l00046">InspSocket()</a>, <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>, and <a class="el" href="socket_8cpp-source.html#l00227">SetState()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="timeout"></a><!-- doxytag: member="InspSocket::timeout" ref="timeout" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">bool <a class="el" href="classInspSocket.html#timeout">InspSocket::timeout</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00040">40</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00057">InspSocket()</a>, and <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="timeout_5Fend"></a><!-- doxytag: member="InspSocket::timeout_end" ref="timeout_5Fend" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classInspSocket.html#timeout_5Fend">InspSocket::timeout_end</a><code> [private]</code> </td>
+ </tr>
+ </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="socket_8h-source.html#l00039">39</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.
+<p>
+Referenced by <a class="el" href="socket_8cpp-source.html#l00057">InspSocket()</a>, and <a class="el" href="socket_8cpp-source.html#l00183">Poll()</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="socket_8h-source.html">socket.h</a><li><a class="el" href="socket_8cpp-source.html">socket.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/classInspSocket__coll__graph.gif b/docs/module-doc/classInspSocket__coll__graph.gif
new file mode 100644
index 000000000..d86379c9e
--- /dev/null
+++ b/docs/module-doc/classInspSocket__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classInspSocket__coll__graph.map b/docs/module-doc/classInspSocket__coll__graph.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/classInspSocket__coll__graph.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/classInspSocket__coll__graph.md5 b/docs/module-doc/classInspSocket__coll__graph.md5
new file mode 100644
index 000000000..f725ccf80
--- /dev/null
+++ b/docs/module-doc/classInspSocket__coll__graph.md5
@@ -0,0 +1 @@
+54ad555a6ea1c60b284e46323c9c0329 \ No newline at end of file
diff --git a/docs/module-doc/classInviteItem-members.html b/docs/module-doc/classInviteItem-members.html
index 5a11ce16f..716504d80 100644
--- a/docs/module-doc/classInviteItem-members.html
+++ b/docs/module-doc/classInviteItem-members.html
@@ -1,22 +1,21 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>InviteItem Member List</h1>This is the complete list of members for <a class="el" href="classInviteItem.html">InviteItem</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classHostItem.html#o2">data</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#a0">HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#o1">set_by</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classHostItem.html#o0">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:12 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>InviteItem Member List</h1>This is the complete list of members for <a class="el" href="classInviteItem.html">InviteItem</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#data_5BMAXBUF_5D">data</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#HostItem_28_29">HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">set_by</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#set_5Ftime">set_time</a></td><td><a class="el" href="classHostItem.html">HostItem</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classHostItem.html#_7EHostItem_28_29">~HostItem</a>()</td><td><a class="el" href="classHostItem.html">HostItem</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classInviteItem.html b/docs/module-doc/classInviteItem.html
index 36fbb00c2..0cce8bbce 100644
--- a/docs/module-doc/classInviteItem.html
+++ b/docs/module-doc/classInviteItem.html
@@ -1,26 +1,26 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: InviteItem class Reference</title>
+<title>InspIRCd: InviteItem Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>InviteItem Class Reference</h1>A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel invites (+I).
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>InviteItem Class Reference</h1><!-- doxytag: class="InviteItem" --><!-- doxytag: inherits="HostItem" -->A subclass of <a class="el" href="classHostItem.html">HostItem</a> designed to hold channel invites (+I).
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="channels_8h-source.html">channels.h</a>&gt;</code>
<p>
Inheritance diagram for InviteItem:<p><center><img src="classInviteItem__inherit__graph.gif" border="0" usemap="#InviteItem__inherit__map" alt="Inheritance graph"></center>
<map name="InviteItem__inherit__map">
-<area href="classHostItem.html" shape="rect" coords="10,82,85,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,8,88,34" alt="">
+<area href="classHostItem.html" shape="rect" coords="9,81,84,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for InviteItem:<p><center><img src="classInviteItem__coll__graph.gif" border="0" usemap="#InviteItem__coll__map" alt="Collaboration graph"></center>
<map name="InviteItem__coll__map">
-<area href="classHostItem.html" shape="rect" coords="110,205,185,231" alt="">
-<area href="classclassbase.html" shape="rect" coords="108,98,188,125" alt="">
+<area href="classHostItem.html" shape="rect" coords="109,204,184,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="107,98,187,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classInviteItem-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classInviteItem-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -30,9 +30,8 @@ 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#l00068">68</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:12 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classInviteItem__coll__graph.gif b/docs/module-doc/classInviteItem__coll__graph.gif
index abbd65cc7..9b4a16b1b 100644
--- a/docs/module-doc/classInviteItem__coll__graph.gif
+++ b/docs/module-doc/classInviteItem__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classInviteItem__coll__graph.map b/docs/module-doc/classInviteItem__coll__graph.map
new file mode 100644
index 000000000..84658baf1
--- /dev/null
+++ b/docs/module-doc/classInviteItem__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classHostItem.html 109,204 184,231
+rect $classclassbase.html 107,98 187,124
diff --git a/docs/module-doc/classInviteItem__coll__graph.md5 b/docs/module-doc/classInviteItem__coll__graph.md5
new file mode 100644
index 000000000..78e3d5cb3
--- /dev/null
+++ b/docs/module-doc/classInviteItem__coll__graph.md5
@@ -0,0 +1 @@
+0e7c9a802bcb31edadf15c0c416fbf00 \ No newline at end of file
diff --git a/docs/module-doc/classInviteItem__inherit__graph.gif b/docs/module-doc/classInviteItem__inherit__graph.gif
index 48588c3c2..aca6cb998 100644
--- a/docs/module-doc/classInviteItem__inherit__graph.gif
+++ b/docs/module-doc/classInviteItem__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classInviteItem__inherit__graph.map b/docs/module-doc/classInviteItem__inherit__graph.map
new file mode 100644
index 000000000..6bc1ce88e
--- /dev/null
+++ b/docs/module-doc/classInviteItem__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classHostItem.html 9,81 84,108
+rect $classclassbase.html 7,7 87,33
diff --git a/docs/module-doc/classInviteItem__inherit__graph.md5 b/docs/module-doc/classInviteItem__inherit__graph.md5
new file mode 100644
index 000000000..1637f9a3d
--- /dev/null
+++ b/docs/module-doc/classInviteItem__inherit__graph.md5
@@ -0,0 +1 @@
+845b1cfd9fe0eacedda5d0694f8309ad \ No newline at end of file
diff --git a/docs/module-doc/classInvited-members.html b/docs/module-doc/classInvited-members.html
index c392fc408..1170cf069 100644
--- a/docs/module-doc/classInvited-members.html
+++ b/docs/module-doc/classInvited-members.html
@@ -1,18 +1,17 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Invited Member List</h1>This is the complete list of members for <a class="el" href="classInvited.html">Invited</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classInvited.html#o0">channel</a></td><td><a class="el" href="classInvited.html">Invited</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:09 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Invited Member List</h1>This is the complete list of members for <a class="el" href="classInvited.html">Invited</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classInvited.html#channel_5BCHANMAX_5D">channel</a></td><td><a class="el" href="classInvited.html">Invited</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classInvited.html b/docs/module-doc/classInvited.html
index eebe80fee..37365beb0 100644
--- a/docs/module-doc/classInvited.html
+++ b/docs/module-doc/classInvited.html
@@ -1,27 +1,27 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Invited class Reference</title>
+<title>InspIRCd: Invited Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Invited Class Reference</h1>Holds a channel name to which a user has been invited.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Invited Class Reference</h1><!-- doxytag: class="Invited" --><!-- doxytag: inherits="classbase" -->Holds a channel name to which a user has been invited.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="users_8h-source.html">users.h</a>&gt;</code>
<p>
Inheritance diagram for Invited:<p><center><img src="classInvited__inherit__graph.gif" border="0" usemap="#Invited__inherit__map" alt="Inheritance graph"></center>
<map name="Invited__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="8,7,88,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Invited:<p><center><img src="classInvited__coll__graph.gif" border="0" usemap="#Invited__coll__map" alt="Collaboration graph"></center>
<map name="Invited__coll__map">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classInvited-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classInvited-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classInvited.html#o0">channel</a> [CHANMAX]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInvited.html#channel_5BCHANMAX_5D">channel</a> [CHANMAX]</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -30,18 +30,19 @@ Holds a channel name to which a user has been invited.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00036">36</a> of file <a class="el" href="users_8h-source.html">users.h</a>.<hr><h2>Member Data Documentation</h2>
-<a name="o0" doxytag="Invited::channel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="channel_5BCHANMAX_5D"></a><!-- doxytag: member="Invited::channel" ref="channel_5BCHANMAX_5D" args="[CHANMAX]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classInvited.html#o0">Invited::channel</a>[CHANMAX]
+ <td class="md" nowrap valign="top">char <a class="el" href="classInvited.html#channel_5BCHANMAX_5D">Invited::channel</a>[CHANMAX] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -53,14 +54,13 @@ Definition at line <a class="el" href="users_8h-source.html#l00036">36</a> of fi
<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>.
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00111">userrec::InviteTo()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00113">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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:09 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classInvited__coll__graph.gif b/docs/module-doc/classInvited__coll__graph.gif
index 90905b077..0f62e84d5 100644
--- a/docs/module-doc/classInvited__coll__graph.gif
+++ b/docs/module-doc/classInvited__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classInvited__coll__graph.map b/docs/module-doc/classInvited__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classInvited__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classInvited__coll__graph.md5 b/docs/module-doc/classInvited__coll__graph.md5
new file mode 100644
index 000000000..1ffe72a60
--- /dev/null
+++ b/docs/module-doc/classInvited__coll__graph.md5
@@ -0,0 +1 @@
+7fbf1811875f3b2d0f9e2d08f95517bf \ No newline at end of file
diff --git a/docs/module-doc/classInvited__inherit__graph.gif b/docs/module-doc/classInvited__inherit__graph.gif
index 05330c18c..b099abe99 100644
--- a/docs/module-doc/classInvited__inherit__graph.gif
+++ b/docs/module-doc/classInvited__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classInvited__inherit__graph.map b/docs/module-doc/classInvited__inherit__graph.map
new file mode 100644
index 000000000..8b1d85be3
--- /dev/null
+++ b/docs/module-doc/classInvited__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,7 87,34
diff --git a/docs/module-doc/classInvited__inherit__graph.md5 b/docs/module-doc/classInvited__inherit__graph.md5
new file mode 100644
index 000000000..8bd110dab
--- /dev/null
+++ b/docs/module-doc/classInvited__inherit__graph.md5
@@ -0,0 +1 @@
+69f699d6bf71b6885ae31ce5e4dff391 \ No newline at end of file
diff --git a/docs/module-doc/classKLine-members.html b/docs/module-doc/classKLine-members.html
index 9d056eff9..4ace61462 100644
--- a/docs/module-doc/classKLine-members.html
+++ b/docs/module-doc/classKLine-members.html
@@ -1,23 +1,22 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>KLine Member List</h1>This is the complete list of members for <a class="el" href="classKLine.html">KLine</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classXLine.html#o1">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classKLine.html#o0">hostmask</a></td><td><a class="el" href="classKLine.html">KLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o4">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o3">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o0">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o2">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:20 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>KLine Member List</h1>This is the complete list of members for <a class="el" href="classKLine.html">KLine</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#duration">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classKLine.html#hostmask_5B_32_30_30_5D">hostmask</a></td><td><a class="el" href="classKLine.html">KLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#n_5Fmatches">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#reason_5BMAXBUF_5D">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#set_5Ftime">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#source_5B_32_35_36_5D">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classKLine.html b/docs/module-doc/classKLine.html
index 88b799a87..6fe7cc184 100644
--- a/docs/module-doc/classKLine.html
+++ b/docs/module-doc/classKLine.html
@@ -1,31 +1,31 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: KLine class Reference</title>
+<title>InspIRCd: KLine Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>KLine Class Reference</h1>KLine class.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>KLine Class Reference</h1><!-- doxytag: class="KLine" --><!-- doxytag: inherits="XLine" -->KLine class.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="xline_8h-source.html">xline.h</a>&gt;</code>
<p>
Inheritance diagram for KLine:<p><center><img src="classKLine__inherit__graph.gif" border="0" usemap="#KLine__inherit__map" alt="Inheritance graph"></center>
<map name="KLine__inherit__map">
-<area href="classXLine.html" shape="rect" coords="20,82,76,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,8,88,34" alt="">
+<area href="classXLine.html" shape="rect" coords="19,81,75,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for KLine:<p><center><img src="classKLine__coll__graph.gif" border="0" usemap="#KLine__coll__map" alt="Collaboration graph"></center>
<map name="KLine__coll__map">
-<area href="classXLine.html" shape="rect" coords="166,205,222,231" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classXLine.html" shape="rect" coords="165,204,221,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,98,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classKLine-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classKLine-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classKLine.html#o0">hostmask</a> [200]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKLine.html#hostmask_5B_32_30_30_5D">hostmask</a> [200]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostmask (ident) to match against May contain wildcards. </em> <a href="#o0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostmask (ident) to match against May contain wildcards. <a href="#hostmask_5B_32_30_30_5D"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
KLine class.
@@ -33,18 +33,19 @@ KLine class.
<p>
Definition at line <a class="el" href="xline_8h-source.html#l00062">62</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>.<hr><h2>Member Data Documentation</h2>
-<a name="o0" doxytag="KLine::hostmask"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="hostmask_5B_32_30_30_5D"></a><!-- doxytag: member="KLine::hostmask" ref="hostmask_5B_32_30_30_5D" args="[200]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classKLine.html#o0">KLine::hostmask</a>[200]
+ <td class="md" nowrap valign="top">char <a class="el" href="classKLine.html#hostmask_5B_32_30_30_5D">KLine::hostmask</a>[200] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -61,9 +62,8 @@ Definition at line <a class="el" href="xline_8h-source.html#l00068">68</a> of fi
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="xline_8h-source.html">xline.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:20 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classKLine__coll__graph.gif b/docs/module-doc/classKLine__coll__graph.gif
index 4a5972817..a67d4f0fa 100644
--- a/docs/module-doc/classKLine__coll__graph.gif
+++ b/docs/module-doc/classKLine__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classKLine__coll__graph.map b/docs/module-doc/classKLine__coll__graph.map
new file mode 100644
index 000000000..25a1b769a
--- /dev/null
+++ b/docs/module-doc/classKLine__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 165,204 221,231
+rect $classclassbase.html 7,98 87,124
diff --git a/docs/module-doc/classKLine__coll__graph.md5 b/docs/module-doc/classKLine__coll__graph.md5
new file mode 100644
index 000000000..fea8aba9c
--- /dev/null
+++ b/docs/module-doc/classKLine__coll__graph.md5
@@ -0,0 +1 @@
+81c2c774112a4711078a8057d08806b5 \ No newline at end of file
diff --git a/docs/module-doc/classKLine__inherit__graph.gif b/docs/module-doc/classKLine__inherit__graph.gif
index ff91267e9..2085f41fe 100644
--- a/docs/module-doc/classKLine__inherit__graph.gif
+++ b/docs/module-doc/classKLine__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classKLine__inherit__graph.map b/docs/module-doc/classKLine__inherit__graph.map
new file mode 100644
index 000000000..37695eb4e
--- /dev/null
+++ b/docs/module-doc/classKLine__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 19,81 75,108
+rect $classclassbase.html 7,7 87,33
diff --git a/docs/module-doc/classKLine__inherit__graph.md5 b/docs/module-doc/classKLine__inherit__graph.md5
new file mode 100644
index 000000000..cf3a8de14
--- /dev/null
+++ b/docs/module-doc/classKLine__inherit__graph.md5
@@ -0,0 +1 @@
+b2ae56c0712c9e2b50e2ab3573543b74 \ No newline at end of file
diff --git a/docs/module-doc/classModeParameter-members.html b/docs/module-doc/classModeParameter-members.html
index 41ce56aed..71145bb65 100644
--- a/docs/module-doc/classModeParameter-members.html
+++ b/docs/module-doc/classModeParameter-members.html
@@ -1,20 +1,19 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ModeParameter Member List</h1>This is the complete list of members for <a class="el" href="classModeParameter.html">ModeParameter</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classModeParameter.html#o2">channel</a></td><td><a class="el" href="classModeParameter.html">ModeParameter</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classModeParameter.html#o0">mode</a></td><td><a class="el" href="classModeParameter.html">ModeParameter</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classModeParameter.html#o1">parameter</a></td><td><a class="el" href="classModeParameter.html">ModeParameter</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:21 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ModeParameter Member List</h1>This is the complete list of members for <a class="el" href="classModeParameter.html">ModeParameter</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModeParameter.html#channel_5BCHANMAX_5D">channel</a></td><td><a class="el" href="classModeParameter.html">ModeParameter</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModeParameter.html#mode">mode</a></td><td><a class="el" href="classModeParameter.html">ModeParameter</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModeParameter.html#parameter_5BMAXBUF_5D">parameter</a></td><td><a class="el" href="classModeParameter.html">ModeParameter</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classModeParameter.html b/docs/module-doc/classModeParameter.html
index 94e160da6..23fafdc0a 100644
--- a/docs/module-doc/classModeParameter.html
+++ b/docs/module-doc/classModeParameter.html
@@ -1,11 +1,11 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ModeParameter class Reference</title>
+<title>InspIRCd: ModeParameter Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ModeParameter Class Reference</h1>Holds a custom parameter to a module-defined channel mode e.g.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ModeParameter Class Reference</h1><!-- doxytag: class="ModeParameter" --><!-- doxytag: inherits="classbase" -->Holds a custom parameter to a module-defined channel mode e.g.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="channels_8h-source.html">channels.h</a>&gt;</code>
@@ -16,38 +16,39 @@ Inheritance diagram for ModeParameter:<p><center><img src="classModeParameter__i
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ModeParameter:<p><center><img src="classModeParameter__coll__graph.gif" border="0" usemap="#ModeParameter__coll__map" alt="Collaboration graph"></center>
<map name="ModeParameter__coll__map">
-<area href="classclassbase.html" shape="rect" coords="7,98,87,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classModeParameter-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classModeParameter-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModeParameter.html#o0">mode</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModeParameter.html#mode">mode</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModeParameter.html#o1">parameter</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModeParameter.html#parameter_5BMAXBUF_5D">parameter</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModeParameter.html#o2">channel</a> [CHANMAX]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModeParameter.html#channel_5BCHANMAX_5D">channel</a> [CHANMAX]</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds a custom parameter to a module-defined channel mode e.g.
<p>
-for +L this would hold the channel name.
+for +L this would hold the channel name.
<p>
<p>
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>.<hr><h2>Member Data Documentation</h2>
-<a name="o2" doxytag="ModeParameter::channel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="channel_5BCHANMAX_5D"></a><!-- doxytag: member="ModeParameter::channel" ref="channel_5BCHANMAX_5D" args="[CHANMAX]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classModeParameter.html#o2">ModeParameter::channel</a>[CHANMAX]
+ <td class="md" nowrap valign="top">char <a class="el" href="classModeParameter.html#channel_5BCHANMAX_5D">ModeParameter::channel</a>[CHANMAX] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -59,21 +60,22 @@ Definition at line <a class="el" href="channels_8h-source.html#l00077">77</a> of
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00082">82</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00144">chanrec::SetCustomModeParam()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00138">chanrec::SetCustomModeParam()</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="ModeParameter::mode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="mode"></a><!-- doxytag: member="ModeParameter::mode" ref="mode" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classModeParameter.html#o0">ModeParameter::mode</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="classModeParameter.html#mode">ModeParameter::mode</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -85,21 +87,22 @@ Referenced by <a class="el" href="channels_8cpp-source.html#l00144">chanrec::Set
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00080">80</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00144">chanrec::SetCustomModeParam()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00138">chanrec::SetCustomModeParam()</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="ModeParameter::parameter"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="parameter_5BMAXBUF_5D"></a><!-- doxytag: member="ModeParameter::parameter" ref="parameter_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classModeParameter.html#o1">ModeParameter::parameter</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classModeParameter.html#parameter_5BMAXBUF_5D">ModeParameter::parameter</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -111,14 +114,13 @@ Referenced by <a class="el" href="channels_8cpp-source.html#l00144">chanrec::Set
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00081">81</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00144">chanrec::SetCustomModeParam()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00138">chanrec::SetCustomModeParam()</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:21 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classModeParameter__coll__graph.gif b/docs/module-doc/classModeParameter__coll__graph.gif
index 10b4bc010..ae0ede4e0 100644
--- a/docs/module-doc/classModeParameter__coll__graph.gif
+++ b/docs/module-doc/classModeParameter__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classModeParameter__coll__graph.map b/docs/module-doc/classModeParameter__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classModeParameter__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classModeParameter__coll__graph.md5 b/docs/module-doc/classModeParameter__coll__graph.md5
new file mode 100644
index 000000000..f32442a8e
--- /dev/null
+++ b/docs/module-doc/classModeParameter__coll__graph.md5
@@ -0,0 +1 @@
+32a9027f3a7ddd405d66343245c392f9 \ No newline at end of file
diff --git a/docs/module-doc/classModeParameter__inherit__graph.gif b/docs/module-doc/classModeParameter__inherit__graph.gif
index ab6a20528..0a8009b82 100644
--- a/docs/module-doc/classModeParameter__inherit__graph.gif
+++ b/docs/module-doc/classModeParameter__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classModeParameter__inherit__graph.map b/docs/module-doc/classModeParameter__inherit__graph.map
new file mode 100644
index 000000000..152ac9587
--- /dev/null
+++ b/docs/module-doc/classModeParameter__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 26,7 106,34
diff --git a/docs/module-doc/classModeParameter__inherit__graph.md5 b/docs/module-doc/classModeParameter__inherit__graph.md5
new file mode 100644
index 000000000..9a26aff0b
--- /dev/null
+++ b/docs/module-doc/classModeParameter__inherit__graph.md5
@@ -0,0 +1 @@
+163da5ee51dd2aa809803557093d11a0 \ No newline at end of file
diff --git a/docs/module-doc/classModule-members.html b/docs/module-doc/classModule-members.html
index 05928e607..ae7b0320c 100644
--- a/docs/module-doc/classModule-members.html
+++ b/docs/module-doc/classModule-members.html
@@ -1,73 +1,72 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Module Member List</h1>This is the complete list of members for <a class="el" href="classModule.html">Module</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classModule.html#a2">GetVersion</a>()</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a0">Module</a>()</td><td><a class="el" href="classModule.html">Module</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a27">On005Numeric</a>(std::string &amp;output)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a24">OnAccessCheck</a>(userrec *source, userrec *dest, chanrec *channel, int access_type)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a50">OnAddBan</a>(userrec *source, chanrec *channel, std::string banmask)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a30">OnBackgroundTimer</a>(time_t curtime)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a42">OnChangeLocalUserGECOS</a>(userrec *user, std::string newhost)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a41">OnChangeLocalUserHost</a>(userrec *user, std::string newhost)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a26">OnChannelSync</a>(chanrec *chan)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a39">OnCheckBan</a>(userrec *user, chanrec *chan)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a36">OnCheckInvite</a>(userrec *user, chanrec *chan)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a37">OnCheckKey</a>(userrec *user, chanrec *chan, std::string keygiven)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a38">OnCheckLimit</a>(userrec *user, chanrec *chan)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a33">OnCheckReady</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a51">OnDelBan</a>(userrec *source, chanrec *channel, std::string banmask)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a45">OnEvent</a>(Event *event)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a12">OnExtendedMode</a>(userrec *user, void *target, char modechar, int type, bool mode_on, string_list &amp;params)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a49">OnGlobalConnect</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a48">OnGlobalOper</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a17">OnInfo</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a28">OnKill</a>(userrec *source, userrec *dest, std::string reason)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a29">OnLoadModule</a>(Module *mod, std::string name)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a43">OnLocalTopicChange</a>(userrec *user, chanrec *chan, std::string topic)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a44">OnMeshToken</a>(char token, string_list params, serverrec *source, serverrec *reply, std::string tcp_host, std::string ipaddr, int port)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a16">OnOper</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a47">OnOperCompare</a>(std::string password, std::string input)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a9">OnPacketReceive</a>(std::string &amp;data, std::string serv)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a8">OnPacketTransmit</a>(std::string &amp;data, std::string serv)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a32">OnPreCommand</a>(std::string command, char **parameters, int pcnt, userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a35">OnRawMode</a>(userrec *user, chanrec *chan, char mode, std::string param, bool adding, int pcnt)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a52">OnRawSocketAccept</a>(int fd, std::string ip, int localport)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a54">OnRawSocketClose</a>(int fd)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a55">OnRawSocketRead</a>(int fd, char *buffer, unsigned int count, int &amp;readresult)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a53">OnRawSocketWrite</a>(int fd, char *buffer, int count)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a10">OnRehash</a>()</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a46">OnRequest</a>(Request *request)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a31">OnSendList</a>(userrec *user, chanrec *channel, char mode)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a11">OnServerRaw</a>(std::string &amp;raw, bool inbound, userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a40">OnStats</a>(char symbol)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a3">OnUserConnect</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a5">OnUserDisconnect</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a6">OnUserJoin</a>(userrec *user, chanrec *channel)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a15">OnUserKick</a>(userrec *source, userrec *user, chanrec *chan, std::string reason)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a7">OnUserPart</a>(userrec *user, chanrec *channel)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a23">OnUserPostNick</a>(userrec *user, std::string oldnick)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a19">OnUserPreInvite</a>(userrec *source, userrec *dest, chanrec *channel)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a13">OnUserPreJoin</a>(userrec *user, chanrec *chan, const char *cname)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a14">OnUserPreKick</a>(userrec *source, userrec *user, chanrec *chan, std::string reason)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a20">OnUserPreMessage</a>(userrec *user, void *dest, int target_type, std::string &amp;text)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a22">OnUserPreNick</a>(userrec *user, std::string newnick)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a21">OnUserPreNotice</a>(userrec *user, void *dest, int target_type, std::string &amp;text)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a4">OnUserQuit</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a34">OnUserRegister</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a25">OnUserSync</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classModule.html#a18">OnWhois</a>(userrec *source, userrec *dest)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:24 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Module Member List</h1>This is the complete list of members for <a class="el" href="classModule.html">Module</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#GetVersion_28_29">GetVersion</a>()</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#Module_28_29">Module</a>()</td><td><a class="el" href="classModule.html">Module</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#On_30_30_35Numeric_28std_3A_3Astring_20_26output_29">On005Numeric</a>(std::string &amp;output)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29">OnAccessCheck</a>(userrec *source, userrec *dest, chanrec *channel, int access_type)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">OnAddBan</a>(userrec *source, chanrec *channel, std::string banmask)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnBackgroundTimer_28time_5Ft_20curtime_29">OnBackgroundTimer</a>(time_t curtime)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">OnChangeLocalUserGECOS</a>(userrec *user, std::string newhost)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">OnChangeLocalUserHost</a>(userrec *user, std::string newhost)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnChannelSync_28chanrec_20_2Achan_29">OnChannelSync</a>(chanrec *chan)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckBan</a>(userrec *user, chanrec *chan)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckInvite</a>(userrec *user, chanrec *chan)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29">OnCheckKey</a>(userrec *user, chanrec *chan, std::string keygiven)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckLimit</a>(userrec *user, chanrec *chan)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnCheckReady_28userrec_20_2Auser_29">OnCheckReady</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">OnDelBan</a>(userrec *source, chanrec *channel, std::string banmask)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnEvent_28Event_20_2Aevent_29">OnEvent</a>(Event *event)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29">OnExtendedMode</a>(userrec *user, void *target, char modechar, int type, bool mode_on, string_list &amp;params)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnGlobalConnect_28userrec_20_2Auser_29">OnGlobalConnect</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnGlobalOper_28userrec_20_2Auser_29">OnGlobalOper</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnInfo_28userrec_20_2Auser_29">OnInfo</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29">OnKill</a>(userrec *source, userrec *dest, std::string reason)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">OnLoadModule</a>(Module *mod, std::string name)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29">OnLocalTopicChange</a>(userrec *user, chanrec *chan, std::string topic)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnOper_28userrec_20_2Auser_29">OnOper</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29">OnOperCompare</a>(std::string password, std::string input)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">OnPacketReceive</a>(std::string &amp;data, std::string serv)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">OnPacketTransmit</a>(std::string &amp;data, std::string serv)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">OnPreCommand</a>(std::string command, char **parameters, int pcnt, userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29">OnRawMode</a>(userrec *user, chanrec *chan, char mode, std::string param, bool adding, int pcnt)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29">OnRawSocketAccept</a>(int fd, std::string ip, int localport)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnRawSocketClose_28int_20fd_29">OnRawSocketClose</a>(int fd)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29">OnRawSocketRead</a>(int fd, char *buffer, unsigned int count, int &amp;readresult)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29">OnRawSocketWrite</a>(int fd, char *buffer, int count)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnRehash_28_29">OnRehash</a>()</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnRequest_28Request_20_2Arequest_29">OnRequest</a>(Request *request)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29">OnSendList</a>(userrec *user, chanrec *channel, char mode)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29">OnServerRaw</a>(std::string &amp;raw, bool inbound, userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnStats_28char_20symbol_29">OnStats</a>(char symbol)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">OnUnloadModule</a>(Module *mod, std::string name)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserConnect_28userrec_20_2Auser_29">OnUserConnect</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserDisconnect_28userrec_20_2Auser_29">OnUserDisconnect</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">OnUserJoin</a>(userrec *user, chanrec *channel)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">OnUserKick</a>(userrec *source, userrec *user, chanrec *chan, std::string reason)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">OnUserPart</a>(userrec *user, chanrec *channel)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29">OnUserPostNick</a>(userrec *user, std::string oldnick)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29">OnUserPreInvite</a>(userrec *source, userrec *dest, chanrec *channel)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29">OnUserPreJoin</a>(userrec *user, chanrec *chan, const char *cname)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">OnUserPreKick</a>(userrec *source, userrec *user, chanrec *chan, std::string reason)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">OnUserPreMessage</a>(userrec *user, void *dest, int target_type, std::string &amp;text)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29">OnUserPreNick</a>(userrec *user, std::string newnick)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">OnUserPreNotice</a>(userrec *user, void *dest, int target_type, std::string &amp;text)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserQuit_28userrec_20_2Auser_29">OnUserQuit</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserRegister_28userrec_20_2Auser_29">OnUserRegister</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnUserSync_28userrec_20_2Auser_29">OnUserSync</a>(userrec *user)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29">OnWhois</a>(userrec *source, userrec *dest)</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModule.html#_7EModule_28_29">~Module</a>()</td><td><a class="el" href="classModule.html">Module</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classModule.html b/docs/module-doc/classModule.html
index 4c034d0d2..a97d7c059 100644
--- a/docs/module-doc/classModule.html
+++ b/docs/module-doc/classModule.html
@@ -1,221 +1,220 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Module class Reference</title>
+<title>InspIRCd: Module Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Module Class Reference</h1>Base class for all InspIRCd modules This class is the base class for InspIRCd modules.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Module Class Reference</h1><!-- doxytag: class="Module" --><!-- doxytag: inherits="classbase" -->Base class for all InspIRCd modules This class is the base class for InspIRCd modules.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for Module:<p><center><img src="classModule__inherit__graph.gif" border="0" usemap="#Module__inherit__map" alt="Inheritance graph"></center>
<map name="Module__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="8,7,88,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Module:<p><center><img src="classModule__coll__graph.gif" border="0" usemap="#Module__coll__map" alt="Collaboration graph"></center>
<map name="Module__coll__map">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classModule-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classModule-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a0">Module</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#Module_28_29">Module</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor creates a module class. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a1">~Module</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor creates a module class. <a href="#Module_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#_7EModule_28_29">~Module</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default destructor destroys a module class. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classVersion.html">Version</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a2">GetVersion</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default destructor destroys a module class. <a href="#_7EModule_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classVersion.html">Version</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#GetVersion_28_29">GetVersion</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the version number of a Module. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a3">OnUserConnect</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the version number of a Module. <a href="#GetVersion_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserConnect_28userrec_20_2Auser_29">OnUserConnect</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a user connects. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a4">OnUserQuit</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a user connects. <a href="#OnUserConnect_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserQuit_28userrec_20_2Auser_29">OnUserQuit</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a user quits. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a5">OnUserDisconnect</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a user quits. <a href="#OnUserQuit_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserDisconnect_28userrec_20_2Auser_29">OnUserDisconnect</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user's socket is closed. </em> <a href="#a5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a6">OnUserJoin</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *channel)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user's socket is closed. <a href="#OnUserDisconnect_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">OnUserJoin</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *channel)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a user joins a channel. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a7">OnUserPart</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *channel)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a user joins a channel. <a href="#OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">OnUserPart</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *channel)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a user parts a channel. </em> <a href="#a7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a8">OnPacketTransmit</a> (std::string &amp;data, std::string serv)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a user parts a channel. <a href="#OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">OnPacketTransmit</a> (<a class="el" href="namespaceirc.html#string">std::string</a> &amp;data, <a class="el" href="namespaceirc.html#string">std::string</a> serv)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called before a packet is transmitted across the irc network between two irc servers. </em> <a href="#a8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a9">OnPacketReceive</a> (std::string &amp;data, std::string serv)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called before a packet is transmitted across the irc network between two irc servers. <a href="#OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">OnPacketReceive</a> (<a class="el" href="namespaceirc.html#string">std::string</a> &amp;data, <a class="el" href="namespaceirc.html#string">std::string</a> serv)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called after a packet is received from another irc server. </em> <a href="#a9"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a10">OnRehash</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called after a packet is received from another irc server. <a href="#OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnRehash_28_29">OnRehash</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called on rehash. </em> <a href="#a10"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a11">OnServerRaw</a> (std::string &amp;raw, bool inbound, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called on rehash. <a href="#OnRehash_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29">OnServerRaw</a> (<a class="el" href="namespaceirc.html#string">std::string</a> &amp;raw, bool inbound, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a raw command is transmitted or received. </em> <a href="#a11"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a12">OnExtendedMode</a> (<a class="el" href="classuserrec.html">userrec</a> *user, void *target, char modechar, int type, bool mode_on, <a class="el" href="modules_8h.html#a32">string_list</a> &amp;params)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a raw command is transmitted or received. <a href="#OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29">OnExtendedMode</a> (<a class="el" href="classuserrec.html">userrec</a> *user, void *target, char modechar, int type, bool mode_on, <a class="el" href="modules_8h.html#string_5Flist">string_list</a> &amp;params)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever an extended mode is to be processed. </em> <a href="#a12"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a13">OnUserPreJoin</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, const char *cname)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever an extended mode is to be processed. <a href="#OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29">OnUserPreJoin</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, const char *cname)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to join a channel, before any processing is done. </em> <a href="#a13"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a14">OnUserPreKick</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, std::string reason)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to join a channel, before any processing is done. <a href="#OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">OnUserPreKick</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, <a class="el" href="namespaceirc.html#string">std::string</a> reason)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to be kicked. </em> <a href="#a14"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a15">OnUserKick</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, std::string reason)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to be kicked. <a href="#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">OnUserKick</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, <a class="el" href="namespaceirc.html#string">std::string</a> reason)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is kicked. </em> <a href="#a15"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a16">OnOper</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is kicked. <a href="#OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnOper_28userrec_20_2Auser_29">OnOper</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user opers locally. </em> <a href="#a16"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a17">OnInfo</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user opers locally. <a href="#OnOper_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnInfo_28userrec_20_2Auser_29">OnInfo</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user types /INFO. </em> <a href="#a17"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a18">OnWhois</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *dest)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user types /INFO. <a href="#OnInfo_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29">OnWhois</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *dest)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a /WHOIS is performed on a local user. </em> <a href="#a18"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a19">OnUserPreInvite</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *dest, <a class="el" href="classchanrec.html">chanrec</a> *channel)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a /WHOIS is performed on a local user. <a href="#OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29">OnUserPreInvite</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *dest, <a class="el" href="classchanrec.html">chanrec</a> *channel)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to invite another user into a channel, before any processing is done. </em> <a href="#a19"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a20">OnUserPreMessage</a> (<a class="el" href="classuserrec.html">userrec</a> *user, void *dest, int target_type, std::string &amp;text)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to invite another user into a channel, before any processing is done. <a href="#OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">OnUserPreMessage</a> (<a class="el" href="classuserrec.html">userrec</a> *user, void *dest, int target_type, <a class="el" href="namespaceirc.html#string">std::string</a> &amp;text)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to PRIVMSG A user or a channel, before any processing is done. </em> <a href="#a20"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a21">OnUserPreNotice</a> (<a class="el" href="classuserrec.html">userrec</a> *user, void *dest, int target_type, std::string &amp;text)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to PRIVMSG A user or a channel, before any processing is done. <a href="#OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">OnUserPreNotice</a> (<a class="el" href="classuserrec.html">userrec</a> *user, void *dest, int target_type, <a class="el" href="namespaceirc.html#string">std::string</a> &amp;text)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to NOTICE A user or a channel, before any processing is done. </em> <a href="#a21"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a22">OnUserPreNick</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string newnick)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to NOTICE A user or a channel, before any processing is done. <a href="#OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29">OnUserPreNick</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> newnick)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called before any nickchange, local or remote. </em> <a href="#a22"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a23">OnUserPostNick</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string oldnick)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called before any nickchange, local or remote. <a href="#OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29">OnUserPostNick</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> oldnick)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called after any nickchange, local or remote. </em> <a href="#a23"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a24">OnAccessCheck</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *dest, <a class="el" href="classchanrec.html">chanrec</a> *channel, int access_type)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called after any nickchange, local or remote. <a href="#OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29">OnAccessCheck</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *dest, <a class="el" href="classchanrec.html">chanrec</a> *channel, int access_type)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called before an action which requires a channel privilage check. </em> <a href="#a24"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="modules_8h.html#a32">string_list</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a25">OnUserSync</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called before an action which requires a channel privilage check. <a href="#OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="modules_8h.html#string_5Flist">string_list</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserSync_28userrec_20_2Auser_29">OnUserSync</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called during a netburst to sync user data. </em> <a href="#a25"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="modules_8h.html#a32">string_list</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a26">OnChannelSync</a> (<a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called during a netburst to sync user data. <a href="#OnUserSync_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="modules_8h.html#string_5Flist">string_list</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnChannelSync_28chanrec_20_2Achan_29">OnChannelSync</a> (<a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called during a netburst to sync channel data. </em> <a href="#a26"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a27">On005Numeric</a> (std::string &amp;output)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called during a netburst to sync channel data. <a href="#OnChannelSync_28chanrec_20_2Achan_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#On_30_30_35Numeric_28std_3A_3Astring_20_26output_29">On005Numeric</a> (<a class="el" href="namespaceirc.html#string">std::string</a> &amp;output)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a 005 numeric is about to be output. </em> <a href="#a27"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a28">OnKill</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *dest, std::string reason)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a 005 numeric is about to be output. <a href="#On_30_30_35Numeric_28std_3A_3Astring_20_26output_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29">OnKill</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classuserrec.html">userrec</a> *dest, <a class="el" href="namespaceirc.html#string">std::string</a> reason)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a client is disconnected by KILL. </em> <a href="#a28"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a29">OnLoadModule</a> (<a class="el" href="classModule.html">Module</a> *mod, std::string name)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called when a client is disconnected by KILL. <a href="#OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">OnLoadModule</a> (<a class="el" href="classModule.html">Module</a> *mod, <a class="el" href="namespaceirc.html#string">std::string</a> name)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a module is loaded. </em> <a href="#a29"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a30">OnBackgroundTimer</a> (time_t curtime)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a module is loaded. <a href="#OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">OnUnloadModule</a> (<a class="el" href="classModule.html">Module</a> *mod, <a class="el" href="namespaceirc.html#string">std::string</a> name)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called once every five seconds for background processing. </em> <a href="#a30"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a31">OnSendList</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *channel, char mode)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a module is unloaded. <a href="#OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnBackgroundTimer_28time_5Ft_20curtime_29">OnBackgroundTimer</a> (time_t curtime)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a list is needed for a listmode. </em> <a href="#a31"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a32">OnPreCommand</a> (std::string command, char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called once every five seconds for background processing. <a href="#OnBackgroundTimer_28time_5Ft_20curtime_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29">OnSendList</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *channel, char mode)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever any command is about to be executed. </em> <a href="#a32"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a33">OnCheckReady</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a list is needed for a listmode. <a href="#OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">OnPreCommand</a> (<a class="el" href="namespaceirc.html#string">std::string</a> command, char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called to check if a user who is connecting can now be allowed to register If any modules return false for this function, the user is held in the waiting state until all modules return true. </em> <a href="#a33"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a34">OnUserRegister</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever any command is about to be executed. <a href="#OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnCheckReady_28userrec_20_2Auser_29">OnCheckReady</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to register their connection (e.g. </em> <a href="#a34"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a35">OnRawMode</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, char mode, std::string param, bool adding, int pcnt)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called to check if a user who is connecting can now be allowed to register If any modules return false for this function, the user is held in the waiting state until all modules return true. <a href="#OnCheckReady_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnUserRegister_28userrec_20_2Auser_29">OnUserRegister</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a mode character is processed. </em> <a href="#a35"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a36">OnCheckInvite</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is about to register their connection (e.g. <a href="#OnUserRegister_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29">OnRawMode</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, char mode, <a class="el" href="namespaceirc.html#string">std::string</a> param, bool adding, int pcnt)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user joins a channel, to determine if invite checks should go ahead or not. </em> <a href="#a36"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a37">OnCheckKey</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, std::string keygiven)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a mode character is processed. <a href="#OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckInvite</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user joins a channel, to determine if key checks should go ahead or not. </em> <a href="#a37"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a38">OnCheckLimit</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user joins a channel, to determine if invite checks should go ahead or not. <a href="#OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29">OnCheckKey</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, <a class="el" href="namespaceirc.html#string">std::string</a> keygiven)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user joins a channel, to determine if channel limit checks should go ahead or not. </em> <a href="#a38"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a39">OnCheckBan</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user joins a channel, to determine if key checks should go ahead or not. <a href="#OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckLimit</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user joins a channel, to determine if banlist checks should go ahead or not. </em> <a href="#a39"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a40">OnStats</a> (char symbol)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user joins a channel, to determine if channel limit checks should go ahead or not. <a href="#OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckBan</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called on all /STATS commands This method is triggered for all /STATS use, including stats symbols handled by the core. </em> <a href="#a40"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a41">OnChangeLocalUserHost</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string newhost)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user joins a channel, to determine if banlist checks should go ahead or not. <a href="#OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnStats_28char_20symbol_29">OnStats</a> (char symbol)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a change of a local users displayed host is attempted. </em> <a href="#a41"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a42">OnChangeLocalUserGECOS</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string newhost)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called on all /STATS commands This method is triggered for all /STATS use, including stats symbols handled by the core. <a href="#OnStats_28char_20symbol_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">OnChangeLocalUserHost</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> newhost)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a change of a local users GECOS (fullname field) is attempted. </em> <a href="#a42"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a43">OnLocalTopicChange</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, std::string topic)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a change of a local users displayed host is attempted. <a href="#OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">OnChangeLocalUserGECOS</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> newhost)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a topic is changed by a local user. </em> <a href="#a43"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a44">OnMeshToken</a> (char token, <a class="el" href="modules_8h.html#a32">string_list</a> params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, std::string tcp_host, std::string ipaddr, int port)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a change of a local users GECOS (fullname field) is attempted. <a href="#OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29">OnLocalTopicChange</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, <a class="el" href="namespaceirc.html#string">std::string</a> topic)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever an unknown token is received in a server to server link. </em> <a href="#a44"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a45">OnEvent</a> (<a class="el" href="classEvent.html">Event</a> *event)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a topic is changed by a local user. <a href="#OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnEvent_28Event_20_2Aevent_29">OnEvent</a> (<a class="el" href="classEvent.html">Event</a> *event)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever an <a class="el" href="classEvent.html">Event</a> class is sent to all module by another module. </em> <a href="#a45"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a46">OnRequest</a> (<a class="el" href="classRequest.html">Request</a> *request)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever an <a class="el" href="classEvent.html">Event</a> class is sent to all module by another module. <a href="#OnEvent_28Event_20_2Aevent_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnRequest_28Request_20_2Arequest_29">OnRequest</a> (<a class="el" href="classRequest.html">Request</a> *request)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a <a class="el" href="classRequest.html">Request</a> class is sent to your module by another module. </em> <a href="#a46"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a47">OnOperCompare</a> (std::string password, std::string input)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a <a class="el" href="classRequest.html">Request</a> class is sent to your module by another module. <a href="#OnRequest_28Request_20_2Arequest_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29">OnOperCompare</a> (<a class="el" href="namespaceirc.html#string">std::string</a> password, <a class="el" href="namespaceirc.html#string">std::string</a> input)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever an oper password is to be compared to what a user has input. </em> <a href="#a47"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a48">OnGlobalOper</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever an oper password is to be compared to what a user has input. <a href="#OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnGlobalOper_28userrec_20_2Auser_29">OnGlobalOper</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is given usermode +o, anywhere on the network. </em> <a href="#a48"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a49">OnGlobalConnect</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user is given usermode +o, anywhere on the network. <a href="#OnGlobalOper_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnGlobalConnect_28userrec_20_2Auser_29">OnGlobalConnect</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user connects, anywhere on the network. </em> <a href="#a49"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a50">OnAddBan</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classchanrec.html">chanrec</a> *channel, std::string banmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a user connects, anywhere on the network. <a href="#OnGlobalConnect_28userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">OnAddBan</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classchanrec.html">chanrec</a> *channel, <a class="el" href="namespaceirc.html#string">std::string</a> banmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a ban is added to a channel's list. </em> <a href="#a50"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a51">OnDelBan</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classchanrec.html">chanrec</a> *channel, std::string banmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a ban is added to a channel's list. <a href="#OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">OnDelBan</a> (<a class="el" href="classuserrec.html">userrec</a> *source, <a class="el" href="classchanrec.html">chanrec</a> *channel, <a class="el" href="namespaceirc.html#string">std::string</a> banmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a ban is removed from a channel's list. </em> <a href="#a51"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a52">OnRawSocketAccept</a> (int fd, std::string ip, int localport)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called whenever a ban is removed from a channel's list. <a href="#OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29">OnRawSocketAccept</a> (int fd, <a class="el" href="namespaceirc.html#string">std::string</a> ip, int localport)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called immediately after any connection is accepted. </em> <a href="#a52"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a53">OnRawSocketWrite</a> (int fd, char *buffer, int count)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called immediately after any connection is accepted. <a href="#OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29">OnRawSocketWrite</a> (int fd, char *buffer, int count)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called immediately before any write() operation on a user's socket in the core. </em> <a href="#a53"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a54">OnRawSocketClose</a> (int fd)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called immediately before any write() operation on a user's socket in the core. <a href="#OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnRawSocketClose_28int_20fd_29">OnRawSocketClose</a> (int fd)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called immediately before any socket is closed. </em> <a href="#a54"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html#a55">OnRawSocketRead</a> (int fd, char *buffer, unsigned int count, int &amp;readresult)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called immediately before any socket is closed. <a href="#OnRawSocketClose_28int_20fd_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html#OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29">OnRawSocketRead</a> (int fd, char *buffer, unsigned int count, int &amp;readresult)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called immediately before any read() operation on a client socket in the core. </em> <a href="#a55"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Called immediately before any read() operation on a client socket in the core. <a href="#OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Base class for all InspIRCd modules This class is the base class for InspIRCd modules.
<p>
-All modules must inherit from this class, its methods will be called when irc server events occur. class inherited from module must be instantiated by the <a class="el" href="classModuleFactory.html">ModuleFactory</a> class (see relevent section) for the plugin to be initialised.
+All modules must inherit from this class, its methods will be called when irc server events occur. class inherited from module must be instantiated by the <a class="el" href="classModuleFactory.html">ModuleFactory</a> class (see relevent section) for the plugin to be initialised.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00236">236</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l00238">238</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="Module_28_29"></a><!-- doxytag: member="Module::Module" ref="Module_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> Module::Module </td>
+ <td class="md" nowrap valign="top">Module::Module </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -227,30 +226,29 @@ Default constructor creates a module class.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00305">305</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#l00306">306</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00306"></a>00306 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00305 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="Module::~Module"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7EModule_28_29"></a><!-- doxytag: member="Module::~Module" ref="_7EModule_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> Module::~<a class="el" href="classModule.html">Module</a> </td>
+ <td class="md" nowrap valign="top">Module::~Module </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -262,31 +260,30 @@ Default destructor destroys a module class.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00306">306</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#l00307">307</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00307"></a>00307 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00306 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a2" doxytag="Module::GetVersion"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetVersion_28_29"></a><!-- doxytag: member="Module::GetVersion" ref="GetVersion_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classVersion.html">Version</a> Module::GetVersion </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classVersion.html">Version</a> Module::GetVersion </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -296,35 +293,34 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00306">306</a>
<p>
Returns the version number of a Module.
<p>
-The method should return a <a class="el" href="classVersion.html">Version</a> object with its version information assigned via <a class="el" href="classVersion.html#a0">Version::Version</a>
+The method should return a <a class="el" href="classVersion.html">Version</a> object with its version information assigned via <a class="el" href="classVersion.html#Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29">Version::Version</a>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00318">318</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#l00319">319</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00054">VF_VENDOR</a>.
+References <a class="el" href="modules_8h-source.html#l00054">VF_VENDOR</a>.<div class="fragment"><pre class="fragment"><a name="l00319"></a>00319 { <span class="keywordflow">return</span> <a class="code" href="classVersion.html">Version</a>(1,0,0,0,<a class="code" href="modules_8h.html#VF_5FVENDOR">VF_VENDOR</a>); }
+</pre></div>
<p>
-<div class="fragment"><pre>00318 { <span class="keywordflow">return</span> <a class="code" href="classVersion.html">Version</a>(1,0,0,0,VF_VENDOR); }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a27" doxytag="Module::On005Numeric"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="On_30_30_35Numeric_28std_3A_3Astring_20_26output_29"></a><!-- doxytag: member="Module::On005Numeric" ref="On_30_30_35Numeric_28std_3A_3Astring_20_26output_29" args="(std::string &amp;output)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::On005Numeric </td>
+ <td class="md" nowrap valign="top">void Module::On005Numeric </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string &amp;&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> &amp;&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>output</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -336,52 +332,51 @@ Called when a 005 numeric is about to be output.
<p>
The module should modify the 005 numeric if needed to indicate its features.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00330">330</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#l00331">331</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00331"></a>00331 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00330 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a24" doxytag="Module::OnAccessCheck"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29"></a><!-- doxytag: member="Module::OnAccessCheck" ref="OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29" args="(userrec *source, userrec *dest, chanrec *channel, int access_type)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnAccessCheck </td>
+ <td class="md" nowrap valign="top">int Module::OnAccessCheck </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> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>channel</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>access_type</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -401,52 +396,50 @@ This function is called before many functions which check a users status on a ch
AC_HALFOP (5) - a user is being halfopped<br>
AC_DEHALFOP (6) - a user is being dehalfopped<br>
AC_INVITE (7) - a user is being invited<br>
- AC_GENERAL_MODE (8) - a user channel mode is being changed<br>
-<br>
+ AC_GENERAL_MODE (8) - a user channel mode is being changed&lt;br&gt;<br>
Upon returning from your function you must return either ACR_DEFAULT, to indicate the module wishes to do nothing, or ACR_DENY where approprate to deny the action, and ACR_ALLOW where appropriate to allow the action. Please note that in the case of some access checks (such as AC_GENERAL_MODE) access may be denied 'upstream' causing other checks such as AC_DEOP to not be reached. Be very careful with use of the AC_GENERAL_MODE type, as it may inadvertently override the behaviour of other modules. When the access_type is AC_GENERAL_MODE, the destination of the mode will be NULL (as it has not yet been determined).
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00327">327</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>
-References <a class="el" href="modules_8h-source.html#l00037">ACR_DEFAULT</a>.
+References <a class="el" href="modules_8h-source.html#l00037">ACR_DEFAULT</a>.<div class="fragment"><pre class="fragment"><a name="l00328"></a>00328 { <span class="keywordflow">return</span> <a class="code" href="modules_8h.html#ACR_5FDEFAULT">ACR_DEFAULT</a>; };
+</pre></div>
<p>
-<div class="fragment"><pre>00327 { <span class="keywordflow">return</span> <a class="code" href="modules_8h.html#a8">ACR_DEFAULT</a>; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a50" doxytag="Module::OnAddBan"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29"></a><!-- doxytag: member="Module::OnAddBan" ref="OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29" args="(userrec *source, chanrec *channel, std::string banmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnAddBan </td>
+ <td class="md" nowrap valign="top">int Module::OnAddBan </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> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>channel</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>banmask</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -458,31 +451,30 @@ Called whenever a ban is added to a channel's list.
<p>
Return a non-zero value to 'eat' the mode change and prevent the ban from being added.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00355">355</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#l00356">356</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00356"></a>00356 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00355 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a30" doxytag="Module::OnBackgroundTimer"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnBackgroundTimer_28time_5Ft_20curtime_29"></a><!-- doxytag: member="Module::OnBackgroundTimer" ref="OnBackgroundTimer_28time_5Ft_20curtime_29" args="(time_t curtime)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnBackgroundTimer </td>
+ <td class="md" nowrap valign="top">void Module::OnBackgroundTimer </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">time_t&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>curtime</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -494,40 +486,39 @@ Called once every five seconds for background processing.
<p>
This timer can be used to control timed features. Its period is not accurate enough to be used as a clock, but it is gauranteed to be called at least once in any five second period, directly from the main loop of the server.
<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#l00335">335</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00335"></a>00335 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00333 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a42" doxytag="Module::OnChangeLocalUserGECOS"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29"></a><!-- doxytag: member="Module::OnChangeLocalUserGECOS" ref="OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29" args="(userrec *user, std::string newhost)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnChangeLocalUserGECOS </td>
+ <td class="md" nowrap valign="top">int Module::OnChangeLocalUserGECOS </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>newhost</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -539,40 +530,39 @@ Called whenever a change of a local users GECOS (fullname field) is attempted.
<p>
return 1 to deny the name change, or 0 to allow it.
<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#l00349">349</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00349"></a>00349 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00347 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a41" doxytag="Module::OnChangeLocalUserHost"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29"></a><!-- doxytag: member="Module::OnChangeLocalUserHost" ref="OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29" args="(userrec *user, std::string newhost)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnChangeLocalUserHost </td>
+ <td class="md" nowrap valign="top">int Module::OnChangeLocalUserHost </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>newhost</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -584,31 +574,30 @@ Called whenever a change of a local users displayed host is attempted.
<p>
Return 1 to deny the host change, or 0 to allow it.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00346">346</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>.<div class="fragment"><pre class="fragment"><a name="l00348"></a>00348 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00346 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a26" doxytag="Module::OnChannelSync"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnChannelSync_28chanrec_20_2Achan_29"></a><!-- doxytag: member="Module::OnChannelSync" ref="OnChannelSync_28chanrec_20_2Achan_29" args="(chanrec *chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8h.html#a32">string_list</a> Module::OnChannelSync </td>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8h.html#string_5Flist">string_list</a> Module::OnChannelSync </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>chan</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -620,42 +609,39 @@ Called during a netburst to sync channel data.
<p>
This is called during the netburst on a per-channel basis. You should use this call to up any special channel-related things which are implemented by your module, e.g. sending listmodes. You may return multiple commands in the string_list.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00329">329</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="modules_8h-source.html#l00068">string_list</a>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00330">330</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00330"></a>00330 { <a class="code" href="modules_8h.html#string_5Flist">string_list</a> empty; <span class="keywordflow">return</span> empty; }
+</pre></div>
<p>
-<div class="fragment"><pre>00329 { <a class="code" href="modules_8h.html#a32">string_list</a> empty; <span class="keywordflow">return</span> empty; }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a39" doxytag="Module::OnCheckBan"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29"></a><!-- doxytag: member="Module::OnCheckBan" ref="OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29" args="(userrec *user, chanrec *chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnCheckBan </td>
+ <td class="md" nowrap valign="top">int Module::OnCheckBan </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -665,42 +651,41 @@ References <a class="el" href="modules_8h-source.html#l00068">string_list</a>.
<p>
Called whenever a user joins a channel, to determine if banlist checks should go ahead or not.
<p>
-This method will always be called for each join, wether or not the user actually matches a channel ban, and determines the outcome of an if statement around the whole section of ban checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
+This method will always be called for each join, wether or not the user actually matches a channel ban, and determines the outcome of an if statement around the whole section of ban checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00344">344</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#l00346">346</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00346"></a>00346 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00344 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a36" doxytag="Module::OnCheckInvite"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29"></a><!-- doxytag: member="Module::OnCheckInvite" ref="OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29" args="(userrec *user, chanrec *chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnCheckInvite </td>
+ <td class="md" nowrap valign="top">int Module::OnCheckInvite </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -712,46 +697,45 @@ Called whenever a user joins a channel, to determine if invite checks should go
<p>
This method will always be called for each join, wether or not the channel is actually +i, and determines the outcome of an if statement around the whole section of invite checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00343">343</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00343"></a>00343 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00341 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a37" doxytag="Module::OnCheckKey"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29"></a><!-- doxytag: member="Module::OnCheckKey" ref="OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29" args="(userrec *user, chanrec *chan, std::string keygiven)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnCheckKey </td>
+ <td class="md" nowrap valign="top">int Module::OnCheckKey </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>keygiven</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -761,42 +745,41 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00341">341</a>
<p>
Called whenever a user joins a channel, to determine if key checks should go ahead or not.
<p>
-This method will always be called for each join, wether or not the channel is actually +k, and determines the outcome of an if statement around the whole section of key checking code. if the user specified no key, the keygiven string will be a valid but empty value. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
+This method will always be called for each join, wether or not the channel is actually +k, and determines the outcome of an if statement around the whole section of key checking code. if the user specified no key, the keygiven string will be a valid but empty value. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00342">342</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#l00344">344</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00344"></a>00344 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00342 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a38" doxytag="Module::OnCheckLimit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29"></a><!-- doxytag: member="Module::OnCheckLimit" ref="OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29" args="(userrec *user, chanrec *chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnCheckLimit </td>
+ <td class="md" nowrap valign="top">int Module::OnCheckLimit </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -806,33 +789,32 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00342">342</a>
<p>
Called whenever a user joins a channel, to determine if channel limit checks should go ahead or not.
<p>
-This method will always be called for each join, wether or not the channel is actually +l, and determines the outcome of an if statement around the whole section of channel limit checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
+This method will always be called for each join, wether or not the channel is actually +l, and determines the outcome of an if statement around the whole section of channel limit checking code. return 1 to explicitly allow the join to go ahead or 0 to ignore the event.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00343">343</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#l00345">345</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00345"></a>00345 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00343 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a33" doxytag="Module::OnCheckReady"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnCheckReady_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnCheckReady" ref="OnCheckReady_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Module::OnCheckReady </td>
+ <td class="md" nowrap valign="top">bool Module::OnCheckReady </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -844,46 +826,45 @@ Called to check if a user who is connecting can now be allowed to register If an
<p>
For example a module which implements ident lookups will continue to return false for a user until their ident lookup is completed. Note that the registration timeout for a user overrides these checks, if the registration timeout is reached, the user is disconnected even if modules report that the user is not ready to connect.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00336">336</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#l00338">338</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00338"></a>00338 { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
+</pre></div>
<p>
-<div class="fragment"><pre>00336 { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a51" doxytag="Module::OnDelBan"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29"></a><!-- doxytag: member="Module::OnDelBan" ref="OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29" args="(userrec *source, chanrec *channel, std::string banmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnDelBan </td>
+ <td class="md" nowrap valign="top">int Module::OnDelBan </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> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>channel</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>banmask</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -895,31 +876,30 @@ Called whenever a ban is removed from a channel's list.
<p>
Return a non-zero value to 'eat' the mode change and prevent the ban from being removed.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00356">356</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#l00357">357</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00357"></a>00357 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00356 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a45" doxytag="Module::OnEvent"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnEvent_28Event_20_2Aevent_29"></a><!-- doxytag: member="Module::OnEvent" ref="OnEvent_28Event_20_2Aevent_29" args="(Event *event)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnEvent </td>
+ <td class="md" nowrap valign="top">void Module::OnEvent </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classEvent.html">Event</a> *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>event</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -929,66 +909,65 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00356">356</a>
<p>
Called whenever an <a class="el" href="classEvent.html">Event</a> class is sent to all module by another module.
<p>
-Please see the documentation of <a class="el" href="classEvent.html#a4">Event::Send()</a> for further information. The <a class="el" href="classEvent.html">Event</a> sent can always be assumed to be non-NULL, you should *always* check the value of <a class="el" href="classEvent.html#a3">Event::GetEventID()</a> before doing anything to the event data, and you should *not* change the event data in any way!
+Please see the documentation of <a class="el" href="classEvent.html#Send_28_29">Event::Send()</a> for further information. The <a class="el" href="classEvent.html">Event</a> sent can always be assumed to be non-NULL, you should *always* check the value of <a class="el" href="classEvent.html#GetEventID_28_29">Event::GetEventID()</a> before doing anything to the event data, and you should *not* change the event data in any way!
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00350">350</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#l00351">351</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00351"></a>00351 { <span class="keywordflow">return</span>; };
+</pre></div>
<p>
-<div class="fragment"><pre>00350 { <span class="keywordflow">return</span>; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a12" doxytag="Module::OnExtendedMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29"></a><!-- doxytag: member="Module::OnExtendedMode" ref="OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29" args="(userrec *user, void *target, char modechar, int type, bool mode_on, string_list &amp;params)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnExtendedMode </td>
+ <td class="md" nowrap valign="top">int Module::OnExtendedMode </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>void *&nbsp;</td>
<td class="mdname" nowrap> <em>target</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>modechar</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>mode_on</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="modules_8h.html#a32">string_list</a> &amp;&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="modules_8h.html#string_5Flist">string_list</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>params</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -998,33 +977,32 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00350">350</a>
<p>
Called whenever an extended mode is to be processed.
<p>
-The type parameter is MT_SERVER, MT_CLIENT or MT_CHANNEL, dependent on where the mode is being changed. mode_on is set when the mode is being set, in which case params contains a list of parameters for the mode as strings. If mode_on is false, the mode is being removed, and parameters may contain the parameters for the mode, dependent on wether they were defined when a mode handler was set up with <a class="el" href="classServer.html#a24">Server::AddExtendedMode</a> If the mode is a channel mode, target is a chanrec*, and if it is a user mode, target is a userrec*. You must cast this value yourself to make use of it.
+The type parameter is MT_SERVER, MT_CLIENT or MT_CHANNEL, dependent on where the mode is being changed. mode_on is set when the mode is being set, in which case params contains a list of parameters for the mode as strings. If mode_on is false, the mode is being removed, and parameters may contain the parameters for the mode, dependent on wether they were defined when a mode handler was set up with <a class="el" href="classServer.html#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29">Server::AddExtendedMode</a> If the mode is a channel mode, target is a chanrec*, and if it is a user mode, target is a userrec*. You must cast this value yourself to make use of it.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00317">317</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#l00318">318</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00318"></a>00318 { <span class="keywordflow">return</span> <span class="keyword">false</span>; }
+</pre></div>
<p>
-<div class="fragment"><pre>00317 { <span class="keywordflow">return</span> <span class="keyword">false</span>; }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a49" doxytag="Module::OnGlobalConnect"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnGlobalConnect_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnGlobalConnect" ref="OnGlobalConnect_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnGlobalConnect </td>
+ <td class="md" nowrap valign="top">void Module::OnGlobalConnect </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1036,31 +1014,30 @@ Called whenever a user connects, anywhere on the network.
<p>
This event is informational only. You should not change any user information in this event. To do so, use the OnUserConnect method to change the state of local users.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00355">355</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00355"></a>00355 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00354 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a48" doxytag="Module::OnGlobalOper"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnGlobalOper_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnGlobalOper" ref="OnGlobalOper_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnGlobalOper </td>
+ <td class="md" nowrap valign="top">void Module::OnGlobalOper </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1072,31 +1049,30 @@ Called whenever a user is given usermode +o, anywhere on the network.
<p>
You cannot override this and prevent it from happening as it is already happened and such a task must be performed by another server. You can however bounce modes by sending servermodes out to reverse mode changes.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00353">353</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>.<div class="fragment"><pre class="fragment"><a name="l00354"></a>00354 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00353 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a17" doxytag="Module::OnInfo"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnInfo_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnInfo" ref="OnInfo_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnInfo </td>
+ <td class="md" nowrap valign="top">void Module::OnInfo </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1109,46 +1085,45 @@ Called whenever a user types /INFO.
The userrec will contain the information of the user who typed the command. Modules may use this method to output their own credits in /INFO (which is the ircd's version of an about box). It is purposefully not possible to modify any info that has already been output, or halt the list. You must write a 371 numeric to the user, containing your info in the following format:<p>
&lt;nick&gt; :information here
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00320">320</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#l00321">321</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00321"></a>00321 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00320 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a28" doxytag="Module::OnKill"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29"></a><!-- doxytag: member="Module::OnKill" ref="OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29" args="(userrec *source, userrec *dest, std::string reason)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnKill </td>
+ <td class="md" nowrap valign="top">int Module::OnKill </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> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1160,40 +1135,39 @@ Called when a client is disconnected by KILL.
<p>
If a client is killed by a server, e.g. a nickname collision or protocol error, source is NULL. Return 1 from this function to prevent the kill, and 0 from this function to allow it as normal. If you prevent the kill no output will be sent to the client, it is down to your module to generate this information. NOTE: It is NOT advisable to stop kills which originate from servers. If you do so youre risking race conditions, desyncs and worse!
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00331">331</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#l00332">332</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00332"></a>00332 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00331 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a29" doxytag="Module::OnLoadModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29"></a><!-- doxytag: member="Module::OnLoadModule" ref="OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29" args="(Module *mod, std::string name)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnLoadModule </td>
+ <td class="md" nowrap valign="top">void Module::OnLoadModule </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>mod</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>name</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1205,46 +1179,45 @@ Called whenever a module is loaded.
<p>
mod will contain a pointer to the module, and string will contain its name, for example m_widgets.so. This function is primary for dependency checking, your module may decide to enable some extra features if it sees that you have for example loaded "m_killwidgets.so" with "m_makewidgets.so". It is highly recommended that modules do *NOT* bail if they cannot satisfy dependencies, but instead operate under reduced functionality, unless the dependency is absolutely neccessary (e.g. a module that extends the features of another module).
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00332">332</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#l00333">333</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00333"></a>00333 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00332 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a43" doxytag="Module::OnLocalTopicChange"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29"></a><!-- doxytag: member="Module::OnLocalTopicChange" ref="OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29" args="(userrec *user, chanrec *chan, std::string topic)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnLocalTopicChange </td>
+ <td class="md" nowrap valign="top">int Module::OnLocalTopicChange </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>topic</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1256,106 +1229,30 @@ Called whenever a topic is changed by a local user.
<p>
Return 1 to deny the topic change, or 0 to allow it.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00350">350</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00350"></a>00350 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00348 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
- </tr>
-</table>
-<a name="a44" doxytag="Module::OnMeshToken"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> int Module::OnMeshToken </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="modules_8h.html#a32">string_list</a>&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>ipaddr</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>int&nbsp;</td>
- <td class="mdname" nowrap> <em>port</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>
-Called whenever an unknown token is received in a server to server link.
-<p>
-The token value is the unknown token -- please check that no other modules are using the token that you use. Returning 1 supresses the 'unknown token type' error which is usually sent to all opers with +s. The params list is a list of parameters, and if any parameters start with a colon (:) it is treated as the whole of the last parameter, identical to how RFC messages are handled. source is the sender of the message, and reply is what should be replied to for a unicast message. Note that there are not many messages in the mesh protocol which require unicast messaging. tcp_host is the server name as a string, ipaddr is its ip address in dotted decimal notation and port is the port number it is using.
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00349">349</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00349 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
</tr>
</table>
-<a name="a16" doxytag="Module::OnOper"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnOper_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnOper" ref="OnOper_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnOper </td>
+ <td class="md" nowrap valign="top">void Module::OnOper </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1367,40 +1264,39 @@ Called whenever a user opers locally.
<p>
The userrec will contain the oper mode 'o' as this function is called after any modifications are made to the user's structure by the core.
<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#l00320">320</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00320"></a>00320 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00319 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a47" doxytag="Module::OnOperCompare"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29"></a><!-- doxytag: member="Module::OnOperCompare" ref="OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29" args="(std::string password, std::string input)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnOperCompare </td>
+ <td class="md" nowrap valign="top">int Module::OnOperCompare </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>password</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>input</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1412,40 +1308,39 @@ Called whenever an oper password is to be compared to what a user has input.
<p>
The password field (from the config file) is in 'password' and is to be compared against 'input'. This method allows for encryption of oper passwords and much more besides. You should return a nonzero value if you want to allow the comparison or zero if you wish to do nothing.
<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#l00353">353</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00353"></a>00353 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00352 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a9" doxytag="Module::OnPacketReceive"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29"></a><!-- doxytag: member="Module::OnPacketReceive" ref="OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29" args="(std::string &amp;data, std::string serv)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnPacketReceive </td>
+ <td class="md" nowrap valign="top">void Module::OnPacketReceive </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string &amp;&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>data</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>serv</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1457,40 +1352,39 @@ Called after a packet is received from another irc server.
<p>
This allows you to easily represent it in the correct ways to implement encryption, compression, digital signatures and anything else you may want to add. This should be regarded as a pre-processor and will be called immediately after the packet is received but before any other operations with the core of the ircd.
<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#l00314">314</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00314"></a>00314 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00313 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a8" doxytag="Module::OnPacketTransmit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29"></a><!-- doxytag: member="Module::OnPacketTransmit" ref="OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29" args="(std::string &amp;data, std::string serv)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnPacketTransmit </td>
+ <td class="md" nowrap valign="top">void Module::OnPacketTransmit </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string &amp;&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>data</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>serv</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1502,52 +1396,51 @@ Called before a packet is transmitted across the irc network between two irc ser
<p>
This allows you to easily represent it in the correct ways to implement encryption, compression, digital signatures and anything else you may want to add. This should be regarded as a pre-processor and will be called before ANY other operations within the ircd core program.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00312">312</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#l00313">313</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00313"></a>00313 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00312 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a32" doxytag="Module::OnPreCommand"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnPreCommand" ref="OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(std::string command, char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnPreCommand </td>
+ <td class="md" nowrap valign="top">int Module::OnPreCommand </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>command</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1557,66 +1450,65 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00312">312</a>
<p>
Called whenever any command is about to be executed.
<p>
-This event occurs for all registered commands, wether they are registered in the core, or another module, but it will not occur for invalid commands (e.g. ones which do not exist within the command table). By returning 1 from this method you may prevent the command being executed. If you do this, no output is created by the core, and it is down to your module to produce any output neccessary. Note that unless you return 1, you should not destroy any structures (e.g. by using <a class="el" href="classServer.html#a32">Server::QuitUser</a>) otherwise when the command's handler function executes after your method returns, it will be passed an invalid pointer to the user object and crash!)
+This event occurs for all registered commands, wether they are registered in the core, or another module, but it will not occur for invalid commands (e.g. ones which do not exist within the command table). By returning 1 from this method you may prevent the command being executed. If you do this, no output is created by the core, and it is down to your module to produce any output neccessary. Note that unless you return 1, you should not destroy any structures (e.g. by using <a class="el" href="classServer.html#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29">Server::QuitUser</a>) otherwise when the command's handler function executes after your method returns, it will be passed an invalid pointer to the user object and crash!)
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00335">335</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#l00337">337</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00337"></a>00337 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00335 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a35" doxytag="Module::OnRawMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29"></a><!-- doxytag: member="Module::OnRawMode" ref="OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29" args="(userrec *user, chanrec *chan, char mode, std::string param, bool adding, int pcnt)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnRawMode </td>
+ <td class="md" nowrap valign="top">int Module::OnRawMode </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>mode</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>param</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>adding</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1628,46 +1520,45 @@ Called whenever a mode character is processed.
<p>
Return 1 from this function to block the mode character from being processed entirely, so that you may perform your own code instead. Note that this method allows you to override modes defined by other modes, but this is NOT RECOMMENDED!
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00340">340</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#l00342">342</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00342"></a>00342 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00340 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a52" doxytag="Module::OnRawSocketAccept"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29"></a><!-- doxytag: member="Module::OnRawSocketAccept" ref="OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29" args="(int fd, std::string ip, int localport)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnRawSocketAccept </td>
+ <td class="md" nowrap valign="top">void Module::OnRawSocketAccept </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>fd</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>ip</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>localport</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1679,31 +1570,30 @@ Called immediately after any connection is accepted.
<p>
This is intended for raw socket processing (e.g. modules which wrap the tcp connection within another library) and provides no information relating to a user record as the connection has not been assigned yet. There are no return values from this call as all modules get an opportunity if required to process the connection.
<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#l00358">358</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00358"></a>00358 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00357 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a54" doxytag="Module::OnRawSocketClose"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnRawSocketClose_28int_20fd_29"></a><!-- doxytag: member="Module::OnRawSocketClose" ref="OnRawSocketClose_28int_20fd_29" args="(int fd)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnRawSocketClose </td>
+ <td class="md" nowrap valign="top">void Module::OnRawSocketClose </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>fd</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1715,52 +1605,51 @@ Called immediately before any socket is closed.
<p>
When this event is called, shutdown() has not yet been called on the socket.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00359">359</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#l00360">360</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00360"></a>00360 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00359 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a55" doxytag="Module::OnRawSocketRead"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29"></a><!-- doxytag: member="Module::OnRawSocketRead" ref="OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29" args="(int fd, char *buffer, unsigned int count, int &amp;readresult)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnRawSocketRead </td>
+ <td class="md" nowrap valign="top">int Module::OnRawSocketRead </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>fd</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>buffer</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>unsigned int&nbsp;</td>
<td class="mdname" nowrap> <em>count</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>readresult</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1772,46 +1661,45 @@ Called immediately before any read() operation on a client socket in the core.
<p>
This occurs AFTER the select() or poll() so there is always data waiting to be read when this event occurs. Your event should return 1 if it has handled the reading itself, which prevents the core just using read(). You should place any data read into buffer, up to but NOT GREATER THAN the value of count. The value of readresult must be identical to an actual result that might be returned from the read() system call, for example, number of bytes read upon success, 0 upon EOF or closed socket, and -1 for error. If your function returns a nonzero value, you MUST set readresult.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00360">360</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#l00361">361</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00361"></a>00361 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00360 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a53" doxytag="Module::OnRawSocketWrite"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29"></a><!-- doxytag: member="Module::OnRawSocketWrite" ref="OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29" args="(int fd, char *buffer, int count)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnRawSocketWrite </td>
+ <td class="md" nowrap valign="top">int Module::OnRawSocketWrite </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>fd</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>buffer</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>count</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1823,30 +1711,29 @@ Called immediately before any write() operation on a user's socket in the core.
<p>
Because this event is a low level event no user information is associated with it. It is intended for use by modules which may wrap connections within another API such as SSL for example. return a non-zero result if you have handled the write operation, in which case the core will not call write().
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00358">358</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#l00359">359</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00359"></a>00359 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00358 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a10" doxytag="Module::OnRehash"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnRehash_28_29"></a><!-- doxytag: member="Module::OnRehash" ref="OnRehash_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnRehash </td>
+ <td class="md" nowrap valign="top">void Module::OnRehash </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1858,31 +1745,30 @@ Called on rehash.
<p>
This method is called prior to a /REHASH or when a SIGHUP is received from the operating system. You should use it to reload any files so that your module keeps in step with the rest of the application.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00314">314</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#l00315">315</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00315"></a>00315 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00314 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a46" doxytag="Module::OnRequest"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnRequest_28Request_20_2Arequest_29"></a><!-- doxytag: member="Module::OnRequest" ref="OnRequest_28Request_20_2Arequest_29" args="(Request *request)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char * Module::OnRequest </td>
+ <td class="md" nowrap valign="top">char * Module::OnRequest </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classRequest.html">Request</a> *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>request</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1892,50 +1778,49 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00314">314</a>
<p>
Called whenever a <a class="el" href="classRequest.html">Request</a> class is sent to your module by another module.
<p>
-Please see the documentation of <a class="el" href="classRequest.html#a4">Request::Send()</a> for further information. The <a class="el" href="classRequest.html">Request</a> sent can always be assumed to be non-NULL, you should not change the request object or its data. Your method may return arbitary data in the char* result which the requesting module may be able to use for pre-determined purposes (e.g. the results of an SQL query, etc).
+Please see the documentation of <a class="el" href="classRequest.html#Send_28_29">Request::Send()</a> for further information. The <a class="el" href="classRequest.html">Request</a> sent can always be assumed to be non-NULL, you should not change the request object or its data. Your method may return arbitary data in the char* result which the requesting module may be able to use for pre-determined purposes (e.g. the results of an SQL query, etc).
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00351">351</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#l00352">352</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00268">Request::Send()</a>.
+Referenced by <a class="el" href="modules_8cpp-source.html#l00269">Request::Send()</a>.<div class="fragment"><pre class="fragment"><a name="l00352"></a>00352 { <span class="keywordflow">return</span> NULL; };
+</pre></div>
<p>
-<div class="fragment"><pre>00351 { <span class="keywordflow">return</span> NULL; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a31" doxytag="Module::OnSendList"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29"></a><!-- doxytag: member="Module::OnSendList" ref="OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29" args="(userrec *user, chanrec *channel, char mode)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnSendList </td>
+ <td class="md" nowrap valign="top">void Module::OnSendList </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>channel</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>mode</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1945,48 +1830,47 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00268">Request::Send
<p>
Called whenever a list is needed for a listmode.
<p>
-For example, when a /MODE #channel +b (without any other parameters) is called, if a module was handling +b this function would be called. The function can then output any lists it wishes to. Please note that all modules will see all mode characters to provide the ability to extend each other, so please only output a list if the mode character given matches the one(s) you want to handle.
+For example, when a /MODE channel +b (without any other parameters) is called, if a module was handling +b this function would be called. The function can then output any lists it wishes to. Please note that all modules will see all mode characters to provide the ability to extend each other, so please only output a list if the mode character given matches the one(s) you want to handle.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00336">336</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00336"></a>00336 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00334 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a11" doxytag="Module::OnServerRaw"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnServerRaw" ref="OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29" args="(std::string &amp;raw, bool inbound, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnServerRaw </td>
+ <td class="md" nowrap valign="top">void Module::OnServerRaw </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string &amp;&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>raw</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>inbound</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1998,31 +1882,30 @@ Called when a raw command is transmitted or received.
<p>
This method is the lowest level of handler available to a module. It will be called with raw data which is passing through a connected socket. If you wish, you may munge this data by changing the string parameter "raw". If you do this, after your function exits it will immediately be cut down to 510 characters plus a carriage return and linefeed. For INBOUND messages only (where inbound is set to true) the value of user will be the userrec of the connection sending the data. This is not possible for outbound data because the data may be being routed to multiple targets.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00315">315</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#l00316">316</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00316"></a>00316 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00315 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a40" doxytag="Module::OnStats"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnStats_28char_20symbol_29"></a><!-- doxytag: member="Module::OnStats" ref="OnStats_28char_20symbol_29" args="(char symbol)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnStats </td>
+ <td class="md" nowrap valign="top">void Module::OnStats </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>symbol</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2034,31 +1917,74 @@ Called on all /STATS commands This method is triggered for all /STATS use, inclu
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00345">345</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#l00347">347</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00347"></a>00347 { };
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29"></a><!-- doxytag: member="Module::OnUnloadModule" ref="OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29" args="(Module *mod, std::string name)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">void Module::OnUnloadModule </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>mod</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>name</em></td>
+ </tr>
+ <tr>
+ <td class="md"></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>
+Called whenever a module is unloaded.
+<p>
+mod will contain a pointer to the module, and string will contain its name, for example m_widgets.so. This function is primary for dependency checking, your module may decide to enable some extra features if it sees that you have for example loaded "m_killwidgets.so" with "m_makewidgets.so". It is highly recommended that modules do *NOT* bail if they cannot satisfy dependencies, but instead operate under reduced functionality, unless the dependency is absolutely neccessary (e.g. a module that extends the features of another module).
+<p>
+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>.<div class="fragment"><pre class="fragment"><a name="l00334"></a>00334 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00345 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a3" doxytag="Module::OnUserConnect"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserConnect_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnUserConnect" ref="OnUserConnect_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnUserConnect </td>
+ <td class="md" nowrap valign="top">void Module::OnUserConnect </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2070,31 +1996,30 @@ Called when a user connects.
<p>
The details of the connecting user are available to you in the parameter userrec *user
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00307">307</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>.<div class="fragment"><pre class="fragment"><a name="l00308"></a>00308 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00307 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a5" doxytag="Module::OnUserDisconnect"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserDisconnect_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnUserDisconnect" ref="OnUserDisconnect_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnUserDisconnect </td>
+ <td class="md" nowrap valign="top">void Module::OnUserDisconnect </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2106,40 +2031,39 @@ Called whenever a user's socket is closed.
<p>
The details of the exiting user are available to you in the parameter userrec *user This event is called for all users, registered or not, as a cleanup method for modules which might assign resources to user, such as dns lookups, objects and sockets.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00309">309</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#l00310">310</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00310"></a>00310 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00309 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a6" doxytag="Module::OnUserJoin"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29"></a><!-- doxytag: member="Module::OnUserJoin" ref="OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29" args="(userrec *user, chanrec *channel)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnUserJoin </td>
+ <td class="md" nowrap valign="top">void Module::OnUserJoin </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>channel</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2151,52 +2075,51 @@ Called when a user joins a channel.
<p>
The details of the joining user are available to you in the parameter userrec *user, and the details of the channel they have joined is available in the variable chanrec *channel
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00310">310</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#l00311">311</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00311"></a>00311 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00310 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a15" doxytag="Module::OnUserKick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29"></a><!-- doxytag: member="Module::OnUserKick" ref="OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29" args="(userrec *source, userrec *user, chanrec *chan, std::string reason)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnUserKick </td>
+ <td class="md" nowrap valign="top">void Module::OnUserKick </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> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2206,42 +2129,41 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00310">310</a>
<p>
Called whenever a user is kicked.
<p>
-If this method is called, the kick is already underway and cannot be prevented, so to prevent a kick, please use <a class="el" href="classModule.html#a14">Module::OnUserPreKick</a> instead of this method.
+If this method is called, the kick is already underway and cannot be prevented, so to prevent a kick, please use <a class="el" href="classModule.html#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">Module::OnUserPreKick</a> instead of this method.
<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#l00341">341</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00341"></a>00341 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00339 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a7" doxytag="Module::OnUserPart"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29"></a><!-- doxytag: member="Module::OnUserPart" ref="OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29" args="(userrec *user, chanrec *channel)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnUserPart </td>
+ <td class="md" nowrap valign="top">void Module::OnUserPart </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>channel</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2253,40 +2175,39 @@ Called when a user parts a channel.
<p>
The details of the leaving user are available to you in the parameter userrec *user, and the details of the channel they have left is available in the variable chanrec *channel
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00311">311</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#l00312">312</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00312"></a>00312 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00311 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a23" doxytag="Module::OnUserPostNick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29"></a><!-- doxytag: member="Module::OnUserPostNick" ref="OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29" args="(userrec *user, std::string oldnick)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnUserPostNick </td>
+ <td class="md" nowrap valign="top">void Module::OnUserPostNick </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>oldnick</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2296,48 +2217,47 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00311">311</a>
<p>
Called after any nickchange, local or remote.
<p>
-This can be used to track users after nickchanges have been applied. Please note that although you can see remote nickchanges through this function, you should NOT make any changes to the userrec if the user is a remote user as this may cause a desnyc. check user-&gt;server before taking any action (including returning nonzero from the method). Because this method is called after the nickchange is taken place, no return values are possible to indicate forbidding of the nick change. Use OnUserPreNick for this.
+This can be used to track users after nickchanges have been applied. Please note that although you can see remote nickchanges through this function, you should NOT make any changes to the userrec if the user is a remote user as this may cause a desnyc. check user-&gt;server before taking any action (including returning nonzero from the method). Because this method is called after the nickchange is taken place, no return values are possible to indicate forbidding of the nick change. Use OnUserPreNick for this.
<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#l00327">327</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00327"></a>00327 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00326 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a19" doxytag="Module::OnUserPreInvite"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29"></a><!-- doxytag: member="Module::OnUserPreInvite" ref="OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29" args="(userrec *source, userrec *dest, chanrec *channel)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnUserPreInvite </td>
+ <td class="md" nowrap valign="top">int Module::OnUserPreInvite </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> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>channel</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2349,46 +2269,45 @@ Called whenever a user is about to invite another user into a channel, before an
<p>
Returning 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter invites to channels.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00322">322</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#l00323">323</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00323"></a>00323 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00322 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a13" doxytag="Module::OnUserPreJoin"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29"></a><!-- doxytag: member="Module::OnUserPreJoin" ref="OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29" args="(userrec *user, chanrec *chan, const char *cname)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnUserPreJoin </td>
+ <td class="md" nowrap valign="top">int Module::OnUserPreJoin </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>cname</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2402,52 +2321,51 @@ Returning a value of 1 from this function stops the process immediately, causing
IMPORTANT NOTE!<p>
If the user joins a NEW channel which does not exist yet, OnUserPreJoin will be called BEFORE the channel record is created. This will cause chanrec* chan to be NULL. There is very little you can do in form of processing on the actual channel record at this point, however the channel NAME will still be passed in char* cname, so that you could for example implement a channel blacklist or whitelist, etc.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00316">316</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#l00317">317</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00317"></a>00317 { <span class="keywordflow">return</span> 0; }
+</pre></div>
<p>
-<div class="fragment"><pre>00316 { <span class="keywordflow">return</span> 0; }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a14" doxytag="Module::OnUserPreKick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29"></a><!-- doxytag: member="Module::OnUserPreKick" ref="OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29" args="(userrec *source, userrec *user, chanrec *chan, std::string reason)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnUserPreKick </td>
+ <td class="md" nowrap valign="top">int Module::OnUserPreKick </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> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2457,54 +2375,53 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00316">316</a>
<p>
Called whenever a user is about to be kicked.
<p>
-Returning a value of 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc.
+Returning a value of 1 from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00338">338</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#l00340">340</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00340"></a>00340 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00338 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a20" doxytag="Module::OnUserPreMessage"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29"></a><!-- doxytag: member="Module::OnUserPreMessage" ref="OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29" args="(userrec *user, void *dest, int target_type, std::string &amp;text)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnUserPreMessage </td>
+ <td class="md" nowrap valign="top">int Module::OnUserPreMessage </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>void *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>target_type</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string &amp;&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>text</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2516,40 +2433,39 @@ Called whenever a user is about to PRIVMSG A user or a channel, before any proce
<p>
Returning any nonzero value from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter or redirect messages. target_type can be one of TYPE_USER or TYPE_CHANNEL. If the target_type value is a user, you must cast dest to a userrec* otherwise you must cast it to a chanrec*, this is the details of where the message is destined to be sent.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00323">323</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#l00324">324</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00324"></a>00324 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00323 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a22" doxytag="Module::OnUserPreNick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29"></a><!-- doxytag: member="Module::OnUserPreNick" ref="OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29" args="(userrec *user, std::string newnick)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnUserPreNick </td>
+ <td class="md" nowrap valign="top">int Module::OnUserPreNick </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>newnick</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2561,52 +2477,51 @@ Called before any nickchange, local or remote.
<p>
This can be used to implement Q-lines etc. Please note that although you can see remote nickchanges through this function, you should NOT make any changes to the userrec if the user is a remote user as this may cause a desnyc. check user-&gt;server before taking any action (including returning nonzero from the method). If your method returns nonzero, the nickchange is silently forbidden, and it is down to your module to generate some meaninful output.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00325">325</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#l00326">326</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00326"></a>00326 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00325 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a21" doxytag="Module::OnUserPreNotice"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29"></a><!-- doxytag: member="Module::OnUserPreNotice" ref="OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29" args="(userrec *user, void *dest, int target_type, std::string &amp;text)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Module::OnUserPreNotice </td>
+ <td class="md" nowrap valign="top">int Module::OnUserPreNotice </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>void *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>target_type</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string &amp;&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>text</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2618,31 +2533,30 @@ Called whenever a user is about to NOTICE A user or a channel, before any proces
<p>
Returning any nonzero value from this function stops the process immediately, causing no output to be sent to the user by the core. If you do this you must produce your own numerics, notices etc. This is useful for modules which may want to filter or redirect messages. target_type can be one of TYPE_USER or TYPE_CHANNEL. If the target_type value is a user, you must cast dest to a userrec* otherwise you must cast it to a chanrec*, this is the details of where the message is destined to be sent. You may alter the message text as you wish before relinquishing control to the next module in the chain, and if no other modules block the text this altered form of the text will be sent out to the user and possibly to other servers.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00324">324</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#l00325">325</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00325"></a>00325 { <span class="keywordflow">return</span> 0; };
+</pre></div>
<p>
-<div class="fragment"><pre>00324 { <span class="keywordflow">return</span> 0; };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="Module::OnUserQuit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserQuit_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnUserQuit" ref="OnUserQuit_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnUserQuit </td>
+ <td class="md" nowrap valign="top">void Module::OnUserQuit </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2654,31 +2568,30 @@ Called when a user quits.
<p>
The details of the exiting user are available to you in the parameter userrec *user This event is only called when the user is fully registered when they quit. To catch raw disconnections, use the OnUserDisconnect method.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00309">309</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00309"></a>00309 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00308 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a34" doxytag="Module::OnUserRegister"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserRegister_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnUserRegister" ref="OnUserRegister_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnUserRegister </td>
+ <td class="md" nowrap valign="top">void Module::OnUserRegister </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2690,31 +2603,30 @@ Called whenever a user is about to register their connection (e.g.
<p>
before the user is sent the MOTD etc). Modules can use this method if they are performing a function which must be done before the actual connection is completed (e.g. ident lookups, dnsbl lookups, etc). Note that you should NOT delete the user record here by causing a disconnection! Use OnUserConnect for that instead.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00337">337</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#l00339">339</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00339"></a>00339 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00337 { };
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a25" doxytag="Module::OnUserSync"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnUserSync_28userrec_20_2Auser_29"></a><!-- doxytag: member="Module::OnUserSync" ref="OnUserSync_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8h.html#a32">string_list</a> Module::OnUserSync </td>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8h.html#string_5Flist">string_list</a> Module::OnUserSync </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2726,42 +2638,39 @@ Called during a netburst to sync user data.
<p>
This is called during the netburst on a per-user basis. You should use this call to up any special user-related things which are implemented by your module, e.g. sending listmodes. You may return multiple commands in the string_list.
<p>
-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>
-References <a class="el" href="modules_8h-source.html#l00068">string_list</a>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00329">329</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00329"></a>00329 { <a class="code" href="modules_8h.html#string_5Flist">string_list</a> empty; <span class="keywordflow">return</span> empty; }
+</pre></div>
<p>
-<div class="fragment"><pre>00328 { <a class="code" href="modules_8h.html#a32">string_list</a> empty; <span class="keywordflow">return</span> empty; }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a18" doxytag="Module::OnWhois"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29"></a><!-- doxytag: member="Module::OnWhois" ref="OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29" args="(userrec *source, userrec *dest)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Module::OnWhois </td>
+ <td class="md" nowrap valign="top">void Module::OnWhois </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> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2773,17 +2682,16 @@ Called whenever a /WHOIS is performed on a local user.
<p>
The source parameter contains the details of the user who issued the WHOIS command, and the dest parameter contains the information of the user they are whoising.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00321">321</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#l00322">322</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00322"></a>00322 { };
+</pre></div>
<p>
-<div class="fragment"><pre>00321 { };
-</pre></div> </td>
+ </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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:24 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classModuleFactory-members.html b/docs/module-doc/classModuleFactory-members.html
index c9066625b..b73bcb781 100644
--- a/docs/module-doc/classModuleFactory-members.html
+++ b/docs/module-doc/classModuleFactory-members.html
@@ -1,20 +1,19 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ModuleFactory Member List</h1>This is the complete list of members for <a class="el" href="classModuleFactory.html">ModuleFactory</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classModuleFactory.html#a2">CreateModule</a>()=0</td><td><a class="el" href="classModuleFactory.html">ModuleFactory</a></td><td><code> [pure virtual]</code></td></tr>
- <tr class="memlist"><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 class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:25 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ModuleFactory Member List</h1>This is the complete list of members for <a class="el" href="classModuleFactory.html">ModuleFactory</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModuleFactory.html#CreateModule_28_29_3D_30">CreateModule</a>()=0</td><td><a class="el" href="classModuleFactory.html">ModuleFactory</a></td><td><code> [pure virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModuleFactory.html#ModuleFactory_28_29">ModuleFactory</a>()</td><td><a class="el" href="classModuleFactory.html">ModuleFactory</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModuleFactory.html#_7EModuleFactory_28_29">~ModuleFactory</a>()</td><td><a class="el" href="classModuleFactory.html">ModuleFactory</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classModuleFactory.html b/docs/module-doc/classModuleFactory.html
index 5696482fb..7c1a7c248 100644
--- a/docs/module-doc/classModuleFactory.html
+++ b/docs/module-doc/classModuleFactory.html
@@ -1,11 +1,11 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ModuleFactory class Reference</title>
+<title>InspIRCd: ModuleFactory Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ModuleFactory Class Reference</h1>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.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ModuleFactory Class Reference</h1><!-- doxytag: class="ModuleFactory" --><!-- doxytag: inherits="classbase" -->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.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
@@ -16,45 +16,44 @@ Inheritance diagram for ModuleFactory:<p><center><img src="classModuleFactory__i
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ModuleFactory:<p><center><img src="classModuleFactory__coll__graph.gif" border="0" usemap="#ModuleFactory__coll__map" alt="Collaboration graph"></center>
<map name="ModuleFactory__coll__map">
-<area href="classclassbase.html" shape="rect" coords="22,98,102,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="22,97,102,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classModuleFactory-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classModuleFactory-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModuleFactory.html#a0">ModuleFactory</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModuleFactory.html#ModuleFactory_28_29">ModuleFactory</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModuleFactory.html#a1">~ModuleFactory</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModuleFactory.html#_7EModuleFactory_28_29">~ModuleFactory</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModuleFactory.html#a2">CreateModule</a> ()=0</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModuleFactory.html#CreateModule_28_29_3D_30">CreateModule</a> ()=0</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new module. </em> <a href="#a2"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new module. <a href="#CreateModule_28_29_3D_30"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
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.
<p>
-This is to allow for modules to create many different variants of <a class="el" href="classModule.html">Module</a>, dependent on architecture, configuration, etc. In most cases, the simple class shown in the example module m_foobar.so will suffice for most modules.
+This is to allow for modules to create many different variants of <a class="el" href="classModule.html">Module</a>, dependent on architecture, configuration, etc. In most cases, the simple class shown in the example module m_foobar.so will suffice for most modules.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01294">1294</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l01265">1265</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="ModuleFactory_28_29"></a><!-- doxytag: member="ModuleFactory::ModuleFactory" ref="ModuleFactory_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> ModuleFactory::ModuleFactory </td>
+ <td class="md" nowrap valign="top">ModuleFactory::ModuleFactory </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -64,30 +63,29 @@ Definition at line <a class="el" href="modules_8h-source.html#l01294">1294</a> o
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01297">1297</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#l01268">1268</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<div class="fragment"><pre class="fragment"><a name="l01268"></a>01268 { }
+</pre></div>
<p>
-<div class="fragment"><pre>01297 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="ModuleFactory::~ModuleFactory"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7EModuleFactory_28_29"></a><!-- doxytag: member="ModuleFactory::~ModuleFactory" ref="_7EModuleFactory_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> virtual ModuleFactory::~<a class="el" href="classModuleFactory.html">ModuleFactory</a> </td>
+ <td class="md" nowrap valign="top">virtual ModuleFactory::~ModuleFactory </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline, virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -97,31 +95,30 @@ Definition at line <a class="el" href="modules_8h-source.html#l01297">1297</a> o
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01298">1298</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#l01269">1269</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<div class="fragment"><pre class="fragment"><a name="l01269"></a>01269 { }
+</pre></div>
<p>
-<div class="fragment"><pre>01298 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a2" doxytag="ModuleFactory::CreateModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CreateModule_28_29_3D_30"></a><!-- doxytag: member="ModuleFactory::CreateModule" ref="CreateModule_28_29_3D_30" args="()=0" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> virtual <a class="el" href="classModule.html">Module</a>* ModuleFactory::CreateModule </td>
+ <td class="md" nowrap valign="top">virtual <a class="el" href="classModule.html">Module</a>* ModuleFactory::CreateModule </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [pure virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -136,9 +133,8 @@ 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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:25 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classModuleFactory__coll__graph.gif b/docs/module-doc/classModuleFactory__coll__graph.gif
index 40387e7f3..1cb0fe5f1 100644
--- a/docs/module-doc/classModuleFactory__coll__graph.gif
+++ b/docs/module-doc/classModuleFactory__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classModuleFactory__coll__graph.map b/docs/module-doc/classModuleFactory__coll__graph.map
new file mode 100644
index 000000000..9eb3655c2
--- /dev/null
+++ b/docs/module-doc/classModuleFactory__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 22,97 102,124
diff --git a/docs/module-doc/classModuleFactory__coll__graph.md5 b/docs/module-doc/classModuleFactory__coll__graph.md5
new file mode 100644
index 000000000..fc323e944
--- /dev/null
+++ b/docs/module-doc/classModuleFactory__coll__graph.md5
@@ -0,0 +1 @@
+9dcff27f0b2b6c10f56cb9bd64ee6b74 \ No newline at end of file
diff --git a/docs/module-doc/classModuleFactory__inherit__graph.gif b/docs/module-doc/classModuleFactory__inherit__graph.gif
index 238a4927c..75ee256c7 100644
--- a/docs/module-doc/classModuleFactory__inherit__graph.gif
+++ b/docs/module-doc/classModuleFactory__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classModuleFactory__inherit__graph.map b/docs/module-doc/classModuleFactory__inherit__graph.map
new file mode 100644
index 000000000..72a2ad2d2
--- /dev/null
+++ b/docs/module-doc/classModuleFactory__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 22,7 102,34
diff --git a/docs/module-doc/classModuleFactory__inherit__graph.md5 b/docs/module-doc/classModuleFactory__inherit__graph.md5
new file mode 100644
index 000000000..00d312373
--- /dev/null
+++ b/docs/module-doc/classModuleFactory__inherit__graph.md5
@@ -0,0 +1 @@
+39255dae702fdbc6009033a563f97830 \ No newline at end of file
diff --git a/docs/module-doc/classModuleMessage-members.html b/docs/module-doc/classModuleMessage-members.html
index 4249074f2..b632b3a31 100644
--- a/docs/module-doc/classModuleMessage-members.html
+++ b/docs/module-doc/classModuleMessage-members.html
@@ -1,18 +1,18 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ModuleMessage Member List</h1>This is the complete list of members for <a class="el" href="classModuleMessage.html">ModuleMessage</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classModuleMessage.html#a0">Send</a>()=0</td><td><a class="el" href="classModuleMessage.html">ModuleMessage</a></td><td><code> [pure virtual]</code></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:27 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ModuleMessage Member List</h1>This is the complete list of members for <a class="el" href="classModuleMessage.html">ModuleMessage</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModuleMessage.html#Send_28_29_3D_30">Send</a>()=0</td><td><a class="el" href="classModuleMessage.html">ModuleMessage</a></td><td><code> [pure virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModuleMessage.html#_7EModuleMessage_28_29">~ModuleMessage</a>()</td><td><a class="el" href="classModuleMessage.html">ModuleMessage</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classModuleMessage.html b/docs/module-doc/classModuleMessage.html
index d194e7af9..4c1211a7b 100644
--- a/docs/module-doc/classModuleMessage.html
+++ b/docs/module-doc/classModuleMessage.html
@@ -1,56 +1,90 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ModuleMessage class Reference</title>
+<title>InspIRCd: ModuleMessage Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ModuleMessage Class Reference</h1>The ModuleMessage class is the base class of <a class="el" href="classRequest.html">Request</a> and <a class="el" href="classEvent.html">Event</a> This class is used to represent a basic data structure which is passed between modules for safe inter-module communications.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ModuleMessage Class Reference</h1><!-- doxytag: class="ModuleMessage" --><!-- doxytag: inherits="classbase" -->The ModuleMessage class is the base class of <a class="el" href="classRequest.html">Request</a> and <a class="el" href="classEvent.html">Event</a> This class is used to represent a basic data structure which is passed between modules for safe inter-module communications.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for ModuleMessage:<p><center><img src="classModuleMessage__inherit__graph.gif" border="0" usemap="#ModuleMessage__inherit__map" alt="Inheritance graph"></center>
<map name="ModuleMessage__inherit__map">
-<area href="classEvent.html" shape="rect" coords="8,157,64,184" alt="">
-<area href="classRequest.html" shape="rect" coords="88,157,160,184" alt="">
-<area href="classclassbase.html" shape="rect" coords="40,8,120,34" alt="">
+<area href="classEvent.html" shape="rect" coords="7,156,63,183" alt="">
+<area href="classRequest.html" shape="rect" coords="87,156,159,183" alt="">
+<area href="classclassbase.html" shape="rect" coords="39,7,119,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ModuleMessage:<p><center><img src="classModuleMessage__coll__graph.gif" border="0" usemap="#ModuleMessage__coll__map" alt="Collaboration graph"></center>
<map name="ModuleMessage__coll__map">
-<area href="classclassbase.html" shape="rect" coords="28,98,108,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="27,97,107,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classModuleMessage-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classModuleMessage-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 class="memItemLeft" nowrap align=right valign=top>virtual char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModuleMessage.html#a0">Send</a> ()=0</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModuleMessage.html#Send_28_29_3D_30">Send</a> ()=0</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class is pure virtual and must be inherited. <a href="#Send_28_29_3D_30"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModuleMessage.html#_7EModuleMessage_28_29">~ModuleMessage</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class is pure virtual and must be inherited. </em> <a href="#a0"></a><em><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The ModuleMessage class is the base class of <a class="el" href="classRequest.html">Request</a> and <a class="el" href="classEvent.html">Event</a> This class is used to represent a basic data structure which is passed between modules for safe inter-module communications.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00141">141</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Member Function Documentation</h2>
-<a name="a0" doxytag="ModuleMessage::Send"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l00142">142</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="_7EModuleMessage_28_29"></a><!-- doxytag: member="ModuleMessage::~ModuleMessage" ref="_7EModuleMessage_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> virtual char* ModuleMessage::Send </td>
+ <td class="md" nowrap valign="top">virtual ModuleMessage::~ModuleMessage </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
- <td class="md" nowrap><code> [pure virtual]</code></td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
</tr>
+ </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="modules_8h-source.html#l00148">148</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<div class="fragment"><pre class="fragment"><a name="l00148"></a>00148 {};
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="Send_28_29_3D_30"></a><!-- doxytag: member="ModuleMessage::Send" ref="Send_28_29_3D_30" args="()=0" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">virtual char* ModuleMessage::Send </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [pure virtual]</code></td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -62,14 +96,13 @@ This class is pure virtual and must be inherited.
<p>
<p>
-Implemented in <a class="el" href="classRequest.html#a4">Request</a>, and <a class="el" href="classEvent.html#a4">Event</a>. </td>
+Implemented in <a class="el" href="classRequest.html#Send_28_29">Request</a>, and <a class="el" href="classEvent.html#Send_28_29">Event</a>. </td>
</tr>
</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:27 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classModuleMessage__coll__graph.gif b/docs/module-doc/classModuleMessage__coll__graph.gif
index fd42f3522..4ebbb17f9 100644
--- a/docs/module-doc/classModuleMessage__coll__graph.gif
+++ b/docs/module-doc/classModuleMessage__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classModuleMessage__coll__graph.map b/docs/module-doc/classModuleMessage__coll__graph.map
new file mode 100644
index 000000000..bad1a1f99
--- /dev/null
+++ b/docs/module-doc/classModuleMessage__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 27,97 107,124
diff --git a/docs/module-doc/classModuleMessage__coll__graph.md5 b/docs/module-doc/classModuleMessage__coll__graph.md5
new file mode 100644
index 000000000..aa6a07c97
--- /dev/null
+++ b/docs/module-doc/classModuleMessage__coll__graph.md5
@@ -0,0 +1 @@
+5c42f12f5b426d989c7e75ac013ed369 \ No newline at end of file
diff --git a/docs/module-doc/classModuleMessage__inherit__graph.gif b/docs/module-doc/classModuleMessage__inherit__graph.gif
index 2c9bc3e21..42588ac6b 100644
--- a/docs/module-doc/classModuleMessage__inherit__graph.gif
+++ b/docs/module-doc/classModuleMessage__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classModuleMessage__inherit__graph.map b/docs/module-doc/classModuleMessage__inherit__graph.map
new file mode 100644
index 000000000..b8be28a28
--- /dev/null
+++ b/docs/module-doc/classModuleMessage__inherit__graph.map
@@ -0,0 +1,4 @@
+base referer
+rect $classEvent.html 7,156 63,183
+rect $classRequest.html 87,156 159,183
+rect $classclassbase.html 39,7 119,33
diff --git a/docs/module-doc/classModuleMessage__inherit__graph.md5 b/docs/module-doc/classModuleMessage__inherit__graph.md5
new file mode 100644
index 000000000..f911f90ca
--- /dev/null
+++ b/docs/module-doc/classModuleMessage__inherit__graph.md5
@@ -0,0 +1 @@
+da616c73965dd83233223320178e1259 \ No newline at end of file
diff --git a/docs/module-doc/classModule__coll__graph.gif b/docs/module-doc/classModule__coll__graph.gif
index 88bc140ca..677aae159 100644
--- a/docs/module-doc/classModule__coll__graph.gif
+++ b/docs/module-doc/classModule__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classModule__coll__graph.map b/docs/module-doc/classModule__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classModule__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classModule__coll__graph.md5 b/docs/module-doc/classModule__coll__graph.md5
new file mode 100644
index 000000000..734a15309
--- /dev/null
+++ b/docs/module-doc/classModule__coll__graph.md5
@@ -0,0 +1 @@
+60bd8f55ffe57aff1fdd74400fc04a9c \ No newline at end of file
diff --git a/docs/module-doc/classModule__inherit__graph.gif b/docs/module-doc/classModule__inherit__graph.gif
index ef0aef6e2..77c059c20 100644
--- a/docs/module-doc/classModule__inherit__graph.gif
+++ b/docs/module-doc/classModule__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classModule__inherit__graph.map b/docs/module-doc/classModule__inherit__graph.map
new file mode 100644
index 000000000..8b1d85be3
--- /dev/null
+++ b/docs/module-doc/classModule__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,7 87,34
diff --git a/docs/module-doc/classModule__inherit__graph.md5 b/docs/module-doc/classModule__inherit__graph.md5
new file mode 100644
index 000000000..36433ad9c
--- /dev/null
+++ b/docs/module-doc/classModule__inherit__graph.md5
@@ -0,0 +1 @@
+1a9b43f472b611b45110c0c43a496d3b \ No newline at end of file
diff --git a/docs/module-doc/classQLine-members.html b/docs/module-doc/classQLine-members.html
index a03e71840..e1497bcbe 100644
--- a/docs/module-doc/classQLine-members.html
+++ b/docs/module-doc/classQLine-members.html
@@ -1,24 +1,23 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>QLine Member List</h1>This is the complete list of members for <a class="el" href="classQLine.html">QLine</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classXLine.html#o1">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classQLine.html#o1">is_global</a></td><td><a class="el" href="classQLine.html">QLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o4">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classQLine.html#o0">nick</a></td><td><a class="el" href="classQLine.html">QLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o3">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o0">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o2">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:28 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>QLine Member List</h1>This is the complete list of members for <a class="el" href="classQLine.html">QLine</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#duration">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classQLine.html#is_5Fglobal">is_global</a></td><td><a class="el" href="classQLine.html">QLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#n_5Fmatches">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classQLine.html#nick_5B_36_34_5D">nick</a></td><td><a class="el" href="classQLine.html">QLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#reason_5BMAXBUF_5D">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#set_5Ftime">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#source_5B_32_35_36_5D">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classQLine.html b/docs/module-doc/classQLine.html
index a6cf3b6fa..589abe351 100644
--- a/docs/module-doc/classQLine.html
+++ b/docs/module-doc/classQLine.html
@@ -1,34 +1,34 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: QLine class Reference</title>
+<title>InspIRCd: QLine Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>QLine Class Reference</h1>QLine class.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>QLine Class Reference</h1><!-- doxytag: class="QLine" --><!-- doxytag: inherits="XLine" -->QLine class.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="xline_8h-source.html">xline.h</a>&gt;</code>
<p>
Inheritance diagram for QLine:<p><center><img src="classQLine__inherit__graph.gif" border="0" usemap="#QLine__inherit__map" alt="Inheritance graph"></center>
<map name="QLine__inherit__map">
-<area href="classXLine.html" shape="rect" coords="20,82,76,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,8,88,34" alt="">
+<area href="classXLine.html" shape="rect" coords="19,81,75,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for QLine:<p><center><img src="classQLine__coll__graph.gif" border="0" usemap="#QLine__coll__map" alt="Collaboration graph"></center>
<map name="QLine__coll__map">
-<area href="classXLine.html" shape="rect" coords="109,205,165,232" alt="">
-<area href="classclassbase.html" shape="rect" coords="80,98,160,125" alt="">
+<area href="classXLine.html" shape="rect" coords="108,204,164,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="79,97,159,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classQLine-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classQLine-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classQLine.html#o0">nick</a> [64]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classQLine.html#nick_5B_36_34_5D">nick</a> [64]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Nickname to match against. </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classQLine.html#o1">is_global</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Nickname to match against. <a href="#nick_5B_36_34_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classQLine.html#is_5Fglobal">is_global</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set if this is a global Z:line (e.g. </em> <a href="#o1"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set if this is a global Z:line (e.g. <a href="#is_5Fglobal"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
QLine class.
@@ -36,18 +36,19 @@ QLine class.
<p>
Definition at line <a class="el" href="xline_8h-source.html#l00108">108</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>.<hr><h2>Member Data Documentation</h2>
-<a name="o1" doxytag="QLine::is_global"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="is_5Fglobal"></a><!-- doxytag: member="QLine::is_global" ref="is_5Fglobal" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool <a class="el" href="classQLine.html#o1">QLine::is_global</a>
+ <td class="md" nowrap valign="top">bool <a class="el" href="classQLine.html#is_5Fglobal">QLine::is_global</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -62,18 +63,19 @@ it came from another server)
Definition at line <a class="el" href="xline_8h-source.html#l00118">118</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="QLine::nick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="nick_5B_36_34_5D"></a><!-- doxytag: member="QLine::nick" ref="nick_5B_36_34_5D" args="[64]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classQLine.html#o0">QLine::nick</a>[64]
+ <td class="md" nowrap valign="top">char <a class="el" href="classQLine.html#nick_5B_36_34_5D">QLine::nick</a>[64] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -90,9 +92,8 @@ Definition at line <a class="el" href="xline_8h-source.html#l00114">114</a> of f
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="xline_8h-source.html">xline.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:28 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classQLine__coll__graph.gif b/docs/module-doc/classQLine__coll__graph.gif
index 767cb03f4..cd509e2d4 100644
--- a/docs/module-doc/classQLine__coll__graph.gif
+++ b/docs/module-doc/classQLine__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classQLine__coll__graph.map b/docs/module-doc/classQLine__coll__graph.map
new file mode 100644
index 000000000..028f82a6e
--- /dev/null
+++ b/docs/module-doc/classQLine__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 108,204 164,231
+rect $classclassbase.html 79,97 159,124
diff --git a/docs/module-doc/classQLine__coll__graph.md5 b/docs/module-doc/classQLine__coll__graph.md5
new file mode 100644
index 000000000..524d350e8
--- /dev/null
+++ b/docs/module-doc/classQLine__coll__graph.md5
@@ -0,0 +1 @@
+ceaac849094845256faf8b33ad6f197e \ No newline at end of file
diff --git a/docs/module-doc/classQLine__inherit__graph.gif b/docs/module-doc/classQLine__inherit__graph.gif
index ebb68b47e..7129de9a4 100644
--- a/docs/module-doc/classQLine__inherit__graph.gif
+++ b/docs/module-doc/classQLine__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classQLine__inherit__graph.map b/docs/module-doc/classQLine__inherit__graph.map
new file mode 100644
index 000000000..37695eb4e
--- /dev/null
+++ b/docs/module-doc/classQLine__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 19,81 75,108
+rect $classclassbase.html 7,7 87,33
diff --git a/docs/module-doc/classQLine__inherit__graph.md5 b/docs/module-doc/classQLine__inherit__graph.md5
new file mode 100644
index 000000000..f8ab20af2
--- /dev/null
+++ b/docs/module-doc/classQLine__inherit__graph.md5
@@ -0,0 +1 @@
+1e1892777c1af1702ebc41518c8faf00 \ No newline at end of file
diff --git a/docs/module-doc/classRequest-members.html b/docs/module-doc/classRequest-members.html
index bad7f7120..05f160ddc 100644
--- a/docs/module-doc/classRequest-members.html
+++ b/docs/module-doc/classRequest-members.html
@@ -1,25 +1,25 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Request Member List</h1>This is the complete list of members for <a class="el" href="classRequest.html">Request</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classRequest.html#p0">data</a></td><td><a class="el" href="classRequest.html">Request</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classRequest.html#p2">dest</a></td><td><a class="el" href="classRequest.html">Request</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classRequest.html#a1">GetData</a>()</td><td><a class="el" href="classRequest.html">Request</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classRequest.html#a3">GetDest</a>()</td><td><a class="el" href="classRequest.html">Request</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classRequest.html#a2">GetSource</a>()</td><td><a class="el" href="classRequest.html">Request</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classRequest.html#a0">Request</a>(char *anydata, Module *src, Module *dst)</td><td><a class="el" href="classRequest.html">Request</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classRequest.html#a4">Send</a>()</td><td><a class="el" href="classRequest.html">Request</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classRequest.html#p1">source</a></td><td><a class="el" href="classRequest.html">Request</a></td><td><code> [protected]</code></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:30 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Request Member List</h1>This is the complete list of members for <a class="el" href="classRequest.html">Request</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classRequest.html#data">data</a></td><td><a class="el" href="classRequest.html">Request</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classRequest.html#dest">dest</a></td><td><a class="el" href="classRequest.html">Request</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classRequest.html#GetData_28_29">GetData</a>()</td><td><a class="el" href="classRequest.html">Request</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classRequest.html#GetDest_28_29">GetDest</a>()</td><td><a class="el" href="classRequest.html">Request</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classRequest.html#GetSource_28_29">GetSource</a>()</td><td><a class="el" href="classRequest.html">Request</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classRequest.html#Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29">Request</a>(char *anydata, Module *src, Module *dst)</td><td><a class="el" href="classRequest.html">Request</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classRequest.html#Send_28_29">Send</a>()</td><td><a class="el" href="classRequest.html">Request</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classRequest.html#source">source</a></td><td><a class="el" href="classRequest.html">Request</a></td><td><code> [protected]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classModuleMessage.html#_7EModuleMessage_28_29">~ModuleMessage</a>()</td><td><a class="el" href="classModuleMessage.html">ModuleMessage</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classRequest.html b/docs/module-doc/classRequest.html
index be396252c..a65615678 100644
--- a/docs/module-doc/classRequest.html
+++ b/docs/module-doc/classRequest.html
@@ -1,97 +1,96 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Request class Reference</title>
+<title>InspIRCd: Request Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Request Class Reference</h1>The Request class is a unicast message directed at a given module.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Request Class Reference</h1><!-- doxytag: class="Request" --><!-- doxytag: inherits="ModuleMessage" -->The Request class is a unicast message directed at a given module.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for Request:<p><center><img src="classRequest__inherit__graph.gif" border="0" usemap="#Request__inherit__map" alt="Inheritance graph"></center>
<map name="Request__inherit__map">
-<area href="classModuleMessage.html" shape="rect" coords="8,82,128,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="28,8,108,34" alt="">
+<area href="classModuleMessage.html" shape="rect" coords="7,81,127,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="27,7,107,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Request:<p><center><img src="classRequest__coll__graph.gif" border="0" usemap="#Request__coll__map" alt="Collaboration graph"></center>
<map name="Request__coll__map">
-<area href="classModuleMessage.html" shape="rect" coords="8,175,128,202" alt="">
-<area href="classclassbase.html" shape="rect" coords="96,98,176,125" alt="">
-<area href="classModule.html" shape="rect" coords="152,175,218,202" alt="">
+<area href="classModuleMessage.html" shape="rect" coords="7,175,127,202" alt="">
+<area href="classclassbase.html" shape="rect" coords="95,98,175,124" alt="">
+<area href="classModule.html" shape="rect" coords="151,175,217,202" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classRequest-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classRequest-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html#a0">Request</a> (char *anydata, <a class="el" href="classModule.html">Module</a> *src, <a class="el" href="classModule.html">Module</a> *dst)</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html#Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29">Request</a> (char *anydata, <a class="el" href="classModule.html">Module</a> *src, <a class="el" href="classModule.html">Module</a> *dst)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new Request. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html#a1">GetData</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new Request. <a href="#Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html#GetData_28_29">GetData</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetch the Request data. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html#a2">GetSource</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetch the Request data. <a href="#GetData_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html#GetSource_28_29">GetSource</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetch the request source. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html#a3">GetDest</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetch the request source. <a href="#GetSource_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html#GetDest_28_29">GetDest</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetch the request destination (should be 'this' in the receiving module). </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html#a4">Send</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetch the request destination (should be 'this' in the receiving module). <a href="#GetDest_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html#Send_28_29">Send</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send the Request. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html#p0">data</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send the Request. <a href="#Send_28_29"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html#data">data</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This member holds a pointer to arbitary data set by the emitter of the message. </em> <a href="#p0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html#p1">source</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This member holds a pointer to arbitary data set by the emitter of the message. <a href="#data"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html#source">source</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply. </em> <a href="#p1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html#p2">dest</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is a pointer to the sender of the message, which can be used to directly trigger events, or to create a reply. <a href="#source"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html#dest">dest</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The single destination of the Request. </em> <a href="#p2"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The single destination of the Request. <a href="#dest"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The Request class is a unicast message directed at a given module.
<p>
-When this class is properly instantiated it may be sent to a module using the <a class="el" href="classRequest.html#a4">Send()</a> method, which will call the given module's OnRequest method with this class as its parameter.
+When this class is properly instantiated it may be sent to a module using the <a class="el" href="classRequest.html#Send_28_29">Send()</a> method, which will call the given module's OnRequest method with this class as its parameter.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00154">154</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="Request::Request"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l00156">156</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29"></a><!-- doxytag: member="Request::Request" ref="Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29" args="(char *anydata, Module *src, Module *dst)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> Request::Request </td>
+ <td class="md" nowrap valign="top">Request::Request </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap> <em>anydata</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classModule.html">Module</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>src</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classModule.html">Module</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>dst</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -103,31 +102,30 @@ Create a new Request.
<p>
<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#l00252">252</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00252"></a>00252 : <a class="code" href="classRequest.html#data">data</a>(anydata), <a class="code" href="classRequest.html#source">source</a>(src), <a class="code" href="classRequest.html#dest">dest</a>(dst) { };
+</pre></div>
<p>
-<div class="fragment"><pre>00251 : <a class="code" href="classRequest.html#p0">data</a>(anydata), <a class="code" href="classRequest.html#p1">source</a>(src), <a class="code" href="classRequest.html#p2">dest</a>(dst) { };
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a1" doxytag="Request::GetData"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetData_28_29"></a><!-- doxytag: member="Request::GetData" ref="GetData_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char * Request::GetData </td>
+ <td class="md" nowrap valign="top">char * Request::GetData </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -139,34 +137,33 @@ Fetch the Request data.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00253">253</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#l00254">254</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00159">data</a>.
+References <a class="el" href="modules_8h-source.html#l00161">data</a>.<div class="fragment"><pre class="fragment"><a name="l00255"></a>00255 {
+<a name="l00256"></a>00256 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#data">data</a>;
+<a name="l00257"></a>00257 }
+</pre></div>
<p>
-<div class="fragment"><pre>00254 {
-00255 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#p0">data</a>;
-00256 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a3" doxytag="Request::GetDest"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetDest_28_29"></a><!-- doxytag: member="Request::GetDest" ref="GetDest_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classModule.html">Module</a> * Request::GetDest </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a> * Request::GetDest </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -178,34 +175,33 @@ Fetch the request destination (should be 'this' in the receiving module).
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00263">263</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#l00264">264</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00166">dest</a>.
+References <a class="el" href="modules_8h-source.html#l00168">dest</a>.<div class="fragment"><pre class="fragment"><a name="l00265"></a>00265 {
+<a name="l00266"></a>00266 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#dest">dest</a>;
+<a name="l00267"></a>00267 }
+</pre></div>
<p>
-<div class="fragment"><pre>00264 {
-00265 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#p2">dest</a>;
-00266 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a2" doxytag="Request::GetSource"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetSource_28_29"></a><!-- doxytag: member="Request::GetSource" ref="GetSource_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classModule.html">Module</a> * Request::GetSource </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a> * Request::GetSource </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -217,34 +213,33 @@ Fetch the request source.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00258">258</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#l00259">259</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00163">source</a>.
+References <a class="el" href="modules_8h-source.html#l00165">source</a>.<div class="fragment"><pre class="fragment"><a name="l00260"></a>00260 {
+<a name="l00261"></a>00261 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#source">source</a>;
+<a name="l00262"></a>00262 }
+</pre></div>
<p>
-<div class="fragment"><pre>00259 {
-00260 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#p1">source</a>;
-00261 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="Request::Send"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Send_28_29"></a><!-- doxytag: member="Request::Send" ref="Send_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char * Request::Send </td>
+ <td class="md" nowrap valign="top">char * Request::Send </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -254,40 +249,41 @@ References <a class="el" href="modules_8h-source.html#l00163">source</a>.
<p>
Send the Request.
<p>
-Upon returning the result will be arbitary data returned by the module you sent the request to. It is up to your module to know what this data is and how to deal with it.
+Upon returning the result will be arbitary data returned by the module you sent the request to. It is up to your module to know what this data is and how to deal with it.
<p>
-Implements <a class="el" href="classModuleMessage.html#a0">ModuleMessage</a>.
+Implements <a class="el" href="classModuleMessage.html#Send_28_29_3D_30">ModuleMessage</a>.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00268">268</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#l00269">269</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00166">dest</a>, and <a class="el" href="modules_8cpp-source.html#l00351">Module::OnRequest()</a>.
+References <a class="el" href="modules_8h-source.html#l00168">dest</a>, and <a class="el" href="modules_8cpp-source.html#l00352">Module::OnRequest()</a>.<div class="fragment"><pre class="fragment"><a name="l00270"></a>00270 {
+<a name="l00271"></a>00271 <span class="keywordflow">if</span> (this-&gt;dest)
+<a name="l00272"></a>00272 {
+<a name="l00273"></a>00273 <span class="keywordflow">return</span> <a class="code" href="classRequest.html#dest">dest</a>-&gt;<a class="code" href="classModule.html#OnRequest_28Request_20_2Arequest_29">OnRequest</a>(<span class="keyword">this</span>);
+<a name="l00274"></a>00274 }
+<a name="l00275"></a>00275 <span class="keywordflow">else</span>
+<a name="l00276"></a>00276 {
+<a name="l00277"></a>00277 <span class="keywordflow">return</span> NULL;
+<a name="l00278"></a>00278 }
+<a name="l00279"></a>00279 }
+</pre></div>
<p>
-<div class="fragment"><pre>00269 {
-00270 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classRequest.html#p2">dest</a>)
-00271 {
-00272 <span class="keywordflow">return</span> <a class="code" href="classRequest.html#p2">dest</a>-&gt;<a class="code" href="classModule.html#a46">OnRequest</a>(<span class="keyword">this</span>);
-00273 }
-00274 <span class="keywordflow">else</span>
-00275 {
-00276 <span class="keywordflow">return</span> NULL;
-00277 }
-00278 }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="p0" doxytag="Request::data"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="data"></a><!-- doxytag: member="Request::data" ref="data" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* <a class="el" href="classRequest.html#p0">Request::data</a><code> [protected]</code>
+ <td class="md" nowrap valign="top">char* <a class="el" href="classRequest.html#data">Request::data</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -299,23 +295,24 @@ This member holds a pointer to arbitary data set by the emitter of the message.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00159">159</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#l00161">161</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#l00253">GetData()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00254">GetData()</a>. </td>
</tr>
</table>
-<a name="p2" doxytag="Request::dest"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dest"></a><!-- doxytag: member="Request::dest" ref="dest" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classModule.html">Module</a>* <a class="el" href="classRequest.html#p2">Request::dest</a><code> [protected]</code>
+ <td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a>* <a class="el" href="classRequest.html#dest">Request::dest</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -327,23 +324,24 @@ The single destination of the Request.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00166">166</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#l00168">168</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#l00263">GetDest()</a>, and <a class="el" href="modules_8cpp-source.html#l00268">Send()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00264">GetDest()</a>, and <a class="el" href="modules_8cpp-source.html#l00269">Send()</a>. </td>
</tr>
</table>
-<a name="p1" doxytag="Request::source"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="source"></a><!-- doxytag: member="Request::source" ref="source" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classModule.html">Module</a>* <a class="el" href="classRequest.html#p1">Request::source</a><code> [protected]</code>
+ <td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a>* <a class="el" href="classRequest.html#source">Request::source</a><code> [protected]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -355,16 +353,15 @@ This is a pointer to the sender of the message, which can be used to directly tr
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00163">163</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
+Definition at line <a class="el" href="modules_8h-source.html#l00165">165</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00258">GetSource()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00259">GetSource()</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:30 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classRequest__coll__graph.gif b/docs/module-doc/classRequest__coll__graph.gif
index 293dd03e1..75f00e3de 100644
--- a/docs/module-doc/classRequest__coll__graph.gif
+++ b/docs/module-doc/classRequest__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classRequest__coll__graph.map b/docs/module-doc/classRequest__coll__graph.map
new file mode 100644
index 000000000..1b4799fbe
--- /dev/null
+++ b/docs/module-doc/classRequest__coll__graph.map
@@ -0,0 +1,4 @@
+base referer
+rect $classModuleMessage.html 7,175 127,202
+rect $classclassbase.html 95,98 175,124
+rect $classModule.html 151,175 217,202
diff --git a/docs/module-doc/classRequest__coll__graph.md5 b/docs/module-doc/classRequest__coll__graph.md5
new file mode 100644
index 000000000..c0a60fb28
--- /dev/null
+++ b/docs/module-doc/classRequest__coll__graph.md5
@@ -0,0 +1 @@
+5510328010b7765dbe242836ad9f7846 \ No newline at end of file
diff --git a/docs/module-doc/classRequest__inherit__graph.gif b/docs/module-doc/classRequest__inherit__graph.gif
index 4ebc85250..792e0e65e 100644
--- a/docs/module-doc/classRequest__inherit__graph.gif
+++ b/docs/module-doc/classRequest__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classRequest__inherit__graph.map b/docs/module-doc/classRequest__inherit__graph.map
new file mode 100644
index 000000000..f3f281b15
--- /dev/null
+++ b/docs/module-doc/classRequest__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classModuleMessage.html 7,81 127,108
+rect $classclassbase.html 27,7 107,33
diff --git a/docs/module-doc/classRequest__inherit__graph.md5 b/docs/module-doc/classRequest__inherit__graph.md5
new file mode 100644
index 000000000..704aab881
--- /dev/null
+++ b/docs/module-doc/classRequest__inherit__graph.md5
@@ -0,0 +1 @@
+23bf4b24d7a45be28b312c0ac827a9d3 \ No newline at end of file
diff --git a/docs/module-doc/classServer-members.html b/docs/module-doc/classServer-members.html
index 3556406cd..f620cf802 100644
--- a/docs/module-doc/classServer-members.html
+++ b/docs/module-doc/classServer-members.html
@@ -1,78 +1,72 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Server Member List</h1>This is the complete list of members for <a class="el" href="classServer.html">Server</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classServer.html#a26">AddCommand</a>(char *cmd, handlerfunc f, char flags, int minparams, char *source)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a45">AddELine</a>(long duration, std::string source, std::string reason, std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a25">AddExtendedListMode</a>(char modechar)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a24">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 class="memlist"><td><a class="el" href="classServer.html#a41">AddGLine</a>(long duration, std::string source, std::string reason, std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a44">AddKLine</a>(long duration, std::string source, std::string reason, std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a42">AddQLine</a>(long duration, std::string source, std::string reason, std::string nickname)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a43">AddZLine</a>(long duration, std::string source, std::string reason, std::string ipaddr)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a51">CalcDuration</a>(std::string duration)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a34">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 class="memlist"><td><a class="el" href="classServer.html#a36">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 class="memlist"><td><a class="el" href="classServer.html#a35">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 class="memlist"><td><a class="el" href="classServer.html#a31">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 class="memlist"><td><a class="el" href="classServer.html#a18">ChanMode</a>(userrec *User, chanrec *Chan)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classServer.html#a10">CommonChannels</a>(userrec *u1, userrec *u2)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a14">CountUsers</a>(chanrec *c)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a50">DelELine</a>(std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a46">DelGLine</a>(std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a49">DelKLine</a>(std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a47">DelQLine</a>(std::string nickname)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a48">DelZLine</a>(std::string ipaddr)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a17">FindChannel</a>(std::string channel)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a16">FindDescriptor</a>(int socket)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a60">FindModule</a>(std::string name)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a15">FindNick</a>(std::string nick)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a23">GetAdmin</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a21">GetNetworkName</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a22">GetServerDescription</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a20">GetServerName</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a38">GetUsers</a>(chanrec *chan)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a13">IsNick</a>(std::string nick)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a19">IsOnChannel</a>(userrec *User, chanrec *Chan)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a37">IsUlined</a>(std::string server)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a52">IsValidMask</a>(std::string mask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a29">JoinUserToChannel</a>(userrec *user, std::string cname, std::string key)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a3">Log</a>(int level, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a33">MatchText</a>(std::string sliteral, std::string spattern)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a58">MeshCheckChan</a>(chanrec *c, std::string servername)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a59">MeshCheckCommon</a>(userrec *u, std::string servername)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a53">MeshSendAll</a>(std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a55">MeshSendAllAlive</a>(std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a57">MeshSendAllExcept</a>(std::string target, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a54">MeshSendCommon</a>(userrec *user, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a56">MeshSendUnicast</a>(std::string destination, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a30">PartUserFromChannel</a>(userrec *user, std::string cname, std::string reason)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a40">PseudoToUser</a>(userrec *alive, userrec *zombie, std::string message)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a32">QuitUser</a>(userrec *user, std::string reason)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a4">Send</a>(int Socket, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a9">SendChannel</a>(userrec *User, chanrec *Channel, std::string s, bool IncludeSender)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a6">SendChannelServerNotice</a>(std::string ServName, chanrec *Channel, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a11">SendCommon</a>(userrec *User, std::string text, bool IncludeSender)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a7">SendFrom</a>(int Socket, userrec *User, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a27">SendMode</a>(char **parameters, int pcnt, userrec *user)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a2">SendOpers</a>(std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a5">SendServ</a>(int Socket, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a8">SendTo</a>(userrec *Source, userrec *Dest, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a28">SendToModeMask</a>(std::string modes, int flags, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="classServer.html#a12">SendWallops</a>(userrec *User, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classServer.html#a39">UserToPseudo</a>(userrec *user, std::string message)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:33 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Server Member List</h1>This is the complete list of members for <a class="el" href="classServer.html">Server</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classServer.html#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">AddCommand</a>(char *cmd, handlerfunc f, char flags, int minparams, char *source)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddELine</a>(long duration, std::string source, std::string reason, std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#AddExtendedListMode_28char_20modechar_29">AddExtendedListMode</a>(char modechar)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29">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 class="memlist"><td><a class="el" href="classServer.html#AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddGLine</a>(long duration, std::string source, std::string reason, std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddKLine</a>(long duration, std::string source, std::string reason, std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29">AddQLine</a>(long duration, std::string source, std::string reason, std::string nickname)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#AddSocket_28InspSocket_20_2Asock_29">AddSocket</a>(InspSocket *sock)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29">AddZLine</a>(long duration, std::string source, std::string reason, std::string ipaddr)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">CalcDuration</a>(std::string duration)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">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 class="memlist"><td><a class="el" href="classServer.html#ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29">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 class="memlist"><td><a class="el" href="classServer.html#ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29">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 class="memlist"><td><a class="el" href="classServer.html#ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29">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 class="memlist"><td><a class="el" href="classServer.html#ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">ChanMode</a>(userrec *User, chanrec *Chan)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29">CommonChannels</a>(userrec *u1, userrec *u2)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#CountUsers_28chanrec_20_2Ac_29">CountUsers</a>(chanrec *c)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#DelELine_28std_3A_3Astring_20hostmask_29">DelELine</a>(std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#DelGLine_28std_3A_3Astring_20hostmask_29">DelGLine</a>(std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#DelKLine_28std_3A_3Astring_20hostmask_29">DelKLine</a>(std::string hostmask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#DelQLine_28std_3A_3Astring_20nickname_29">DelQLine</a>(std::string nickname)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#DelSocket_28InspSocket_20_2Asock_29">DelSocket</a>(InspSocket *sock)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#DelZLine_28std_3A_3Astring_20ipaddr_29">DelZLine</a>(std::string ipaddr)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#FindChannel_28std_3A_3Astring_20channel_29">FindChannel</a>(std::string channel)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#FindDescriptor_28int_20socket_29">FindDescriptor</a>(int socket)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#FindModule_28std_3A_3Astring_20name_29">FindModule</a>(std::string name)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#FindNick_28std_3A_3Astring_20nick_29">FindNick</a>(std::string nick)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#GetAdmin_28_29">GetAdmin</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#GetNetworkName_28_29">GetNetworkName</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#GetServerDescription_28_29">GetServerDescription</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#GetServerName_28_29">GetServerName</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#GetUsers_28chanrec_20_2Achan_29">GetUsers</a>(chanrec *chan)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#IsNick_28std_3A_3Astring_20nick_29">IsNick</a>(std::string nick)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">IsOnChannel</a>(userrec *User, chanrec *Chan)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#IsUlined_28std_3A_3Astring_20server_29">IsUlined</a>(std::string server)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#IsValidMask_28std_3A_3Astring_20mask_29">IsValidMask</a>(std::string mask)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29">JoinUserToChannel</a>(userrec *user, std::string cname, std::string key)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#Log_28int_20level_2C_20std_3A_3Astring_20s_29">Log</a>(int level, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29">MatchText</a>(std::string sliteral, std::string spattern)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29">PartUserFromChannel</a>(userrec *user, std::string cname, std::string reason)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29">PseudoToUser</a>(userrec *alive, userrec *zombie, std::string message)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29">QuitUser</a>(userrec *user, std::string reason)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#Send_28int_20Socket_2C_20std_3A_3Astring_20s_29">Send</a>(int Socket, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29">SendChannel</a>(userrec *User, chanrec *Channel, std::string s, bool IncludeSender)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29">SendChannelServerNotice</a>(std::string ServName, chanrec *Channel, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29">SendCommon</a>(userrec *User, std::string text, bool IncludeSender)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29">SendFrom</a>(int Socket, userrec *User, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">SendMode</a>(char **parameters, int pcnt, userrec *user)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendOpers_28std_3A_3Astring_20s_29">SendOpers</a>(std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29">SendServ</a>(int Socket, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29">SendTo</a>(userrec *Source, userrec *Dest, std::string s)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29">SendToModeMask</a>(std::string modes, int flags, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29">SendWallops</a>(userrec *User, std::string text)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#Server_28_29">Server</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29">UserToPseudo</a>(userrec *user, std::string message)</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classServer.html#_7EServer_28_29">~Server</a>()</td><td><a class="el" href="classServer.html">Server</a></td><td><code> [virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classServer.html b/docs/module-doc/classServer.html
index b53879f8d..8285fb2d6 100644
--- a/docs/module-doc/classServer.html
+++ b/docs/module-doc/classServer.html
@@ -1,236 +1,220 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Server class Reference</title>
+<title>InspIRCd: Server Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Server Class Reference</h1>Allows server output and query functions This class contains methods which allow a module to query the state of the irc server, and produce output to users and other servers.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Server Class Reference</h1><!-- doxytag: class="Server" --><!-- doxytag: inherits="classbase" -->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.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for Server:<p><center><img src="classServer__inherit__graph.gif" border="0" usemap="#Server__inherit__map" alt="Inheritance graph"></center>
<map name="Server__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="8,7,88,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Server:<p><center><img src="classServer__coll__graph.gif" border="0" usemap="#Server__coll__map" alt="Collaboration graph"></center>
<map name="Server__coll__map">
-<area href="classclassbase.html" shape="rect" coords="8,98,88,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classServer-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classServer-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a0">Server</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#Server_28_29">Server</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a1">~Server</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <a href="#Server_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#_7EServer_28_29">~Server</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default destructor. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a2">SendOpers</a> (std::string s)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default destructor. <a href="#_7EServer_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendOpers_28std_3A_3Astring_20s_29">SendOpers</a> (<a class="el" href="namespaceirc.html#string">std::string</a> s)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text to all opers. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a3">Log</a> (int level, std::string s)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text to all opers. <a href="#SendOpers_28std_3A_3Astring_20s_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#Log_28int_20level_2C_20std_3A_3Astring_20s_29">Log</a> (int level, <a class="el" href="namespaceirc.html#string">std::string</a> s)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes a log string. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a4">Send</a> (int Socket, std::string s)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes a log string. <a href="#Log_28int_20level_2C_20std_3A_3Astring_20s_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#Send_28int_20Socket_2C_20std_3A_3Astring_20s_29">Send</a> (int Socket, <a class="el" href="namespaceirc.html#string">std::string</a> s)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends a line of text down a TCP/IP socket. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a5">SendServ</a> (int Socket, std::string s)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends a line of text down a TCP/IP socket. <a href="#Send_28int_20Socket_2C_20std_3A_3Astring_20s_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29">SendServ</a> (int Socket, <a class="el" href="namespaceirc.html#string">std::string</a> s)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from the server to a socket. </em> <a href="#a5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a6">SendChannelServerNotice</a> (std::string ServName, <a class="el" href="classchanrec.html">chanrec</a> *Channel, std::string text)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from the server to a socket. <a href="#SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29">SendChannelServerNotice</a> (<a class="el" href="namespaceirc.html#string">std::string</a> ServName, <a class="el" href="classchanrec.html">chanrec</a> *Channel, <a class="el" href="namespaceirc.html#string">std::string</a> text)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes text to a channel, but from a server, including all. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a7">SendFrom</a> (int Socket, <a class="el" href="classuserrec.html">userrec</a> *User, std::string s)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Writes text to a channel, but from a server, including all. <a href="#SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29">SendFrom</a> (int Socket, <a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="namespaceirc.html#string">std::string</a> s)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from a user to a socket. </em> <a href="#a7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a8">SendTo</a> (<a class="el" href="classuserrec.html">userrec</a> *Source, <a class="el" href="classuserrec.html">userrec</a> *Dest, std::string s)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from a user to a socket. <a href="#SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29">SendTo</a> (<a class="el" href="classuserrec.html">userrec</a> *Source, <a class="el" href="classuserrec.html">userrec</a> *Dest, <a class="el" href="namespaceirc.html#string">std::string</a> s)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from a user to another user. </em> <a href="#a8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a9">SendChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="classchanrec.html">chanrec</a> *Channel, std::string s, bool IncludeSender)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from a user to another user. <a href="#SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29">SendChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="classchanrec.html">chanrec</a> *Channel, <a class="el" href="namespaceirc.html#string">std::string</a> s, bool IncludeSender)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from a user to a channel (mulicast). </em> <a href="#a9"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a10">CommonChannels</a> (<a class="el" href="classuserrec.html">userrec</a> *u1, <a class="el" href="classuserrec.html">userrec</a> *u2)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from a user to a channel (mulicast). <a href="#SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29">CommonChannels</a> (<a class="el" href="classuserrec.html">userrec</a> *u1, <a class="el" href="classuserrec.html">userrec</a> *u2)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if two users share a common channel. </em> <a href="#a10"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a11">SendCommon</a> (<a class="el" href="classuserrec.html">userrec</a> *User, std::string text, bool IncludeSender)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if two users share a common channel. <a href="#CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29">SendCommon</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="namespaceirc.html#string">std::string</a> text, bool IncludeSender)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from a user to one or more channels (mulicast). </em> <a href="#a11"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a12">SendWallops</a> (<a class="el" href="classuserrec.html">userrec</a> *User, std::string text)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends text from a user to one or more channels (mulicast). <a href="#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29">SendWallops</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="namespaceirc.html#string">std::string</a> text)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends a WALLOPS message. </em> <a href="#a12"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a13">IsNick</a> (std::string nick)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends a WALLOPS message. <a href="#SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#IsNick_28std_3A_3Astring_20nick_29">IsNick</a> (<a class="el" href="namespaceirc.html#string">std::string</a> nick)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a nick is valid. </em> <a href="#a13"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a14">CountUsers</a> (<a class="el" href="classchanrec.html">chanrec</a> *c)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a nick is valid. <a href="#IsNick_28std_3A_3Astring_20nick_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#CountUsers_28chanrec_20_2Ac_29">CountUsers</a> (<a class="el" href="classchanrec.html">chanrec</a> *c)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a count of the number of users on a channel. </em> <a href="#a14"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a15">FindNick</a> (std::string nick)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a count of the number of users on a channel. <a href="#CountUsers_28chanrec_20_2Ac_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#FindNick_28std_3A_3Astring_20nick_29">FindNick</a> (<a class="el" href="namespaceirc.html#string">std::string</a> nick)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to look up a nick and return a pointer to it. </em> <a href="#a15"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a16">FindDescriptor</a> (int socket)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to look up a nick and return a pointer to it. <a href="#FindNick_28std_3A_3Astring_20nick_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#FindDescriptor_28int_20socket_29">FindDescriptor</a> (int socket)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to look up a nick using the file descriptor associated with that nick. </em> <a href="#a16"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a17">FindChannel</a> (std::string channel)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to look up a nick using the file descriptor associated with that nick. <a href="#FindDescriptor_28int_20socket_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#FindChannel_28std_3A_3Astring_20channel_29">FindChannel</a> (<a class="el" href="namespaceirc.html#string">std::string</a> channel)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to look up a channel and return a pointer to it. </em> <a href="#a17"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a18">ChanMode</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="classchanrec.html">chanrec</a> *Chan)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to look up a channel and return a pointer to it. <a href="#FindChannel_28std_3A_3Astring_20channel_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">ChanMode</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="classchanrec.html">chanrec</a> *Chan)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to look up a user's privilages on a channel. </em> <a href="#a18"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a19">IsOnChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="classchanrec.html">chanrec</a> *Chan)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Attempts to look up a user's privilages on a channel. <a href="#ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">IsOnChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *User, <a class="el" href="classchanrec.html">chanrec</a> *Chan)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks if a user is on a channel. </em> <a href="#a19"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a20">GetServerName</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks if a user is on a channel. <a href="#IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#GetServerName_28_29">GetServerName</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the server name of the server where the module is loaded. </em> <a href="#a20"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a21">GetNetworkName</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the server name of the server where the module is loaded. <a href="#GetServerName_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#GetNetworkName_28_29">GetNetworkName</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the network name, global to all linked servers. </em> <a href="#a21"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a22">GetServerDescription</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the network name, global to all linked servers. <a href="#GetNetworkName_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#GetServerDescription_28_29">GetServerDescription</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the server description string of the local server. </em> <a href="#a22"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classAdmin.html">Admin</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a23">GetAdmin</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the server description string of the local server. <a href="#GetServerDescription_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classAdmin.html">Admin</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#GetAdmin_28_29">GetAdmin</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the information of the server as returned by the /ADMIN command. </em> <a href="#a23"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a24">AddExtendedMode</a> (char modechar, int type, bool requires_oper, int params_when_on, int params_when_off)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the information of the server as returned by the /ADMIN command. <a href="#GetAdmin_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29">AddExtendedMode</a> (char modechar, int type, bool requires_oper, int params_when_on, int params_when_off)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds an extended mode letter which is parsed by a module. </em> <a href="#a24"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a25">AddExtendedListMode</a> (char modechar)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds an extended mode letter which is parsed by a module. <a href="#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddExtendedListMode_28char_20modechar_29">AddExtendedListMode</a> (char modechar)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds an extended mode letter which is parsed by a module and handled in a list fashion. </em> <a href="#a25"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a26">AddCommand</a> (char *cmd, handlerfunc f, char flags, int minparams, char *source)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds an extended mode letter which is parsed by a module and handled in a list fashion. <a href="#AddExtendedListMode_28char_20modechar_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">AddCommand</a> (char *cmd, handlerfunc f, char flags, int minparams, char *source)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a command to the command table. </em> <a href="#a26"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a27">SendMode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a command to the command table. <a href="#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">SendMode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends a servermode. </em> <a href="#a27"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a28">SendToModeMask</a> (std::string modes, int flags, std::string text)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends a servermode. <a href="#SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29">SendToModeMask</a> (<a class="el" href="namespaceirc.html#string">std::string</a> modes, int flags, <a class="el" href="namespaceirc.html#string">std::string</a> text)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends to all users matching a mode mask You must specify one or more usermodes as the first parameter. </em> <a href="#a28"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a29">JoinUserToChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string cname, std::string key)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends to all users matching a mode mask You must specify one or more usermodes as the first parameter. <a href="#SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29">JoinUserToChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> cname, <a class="el" href="namespaceirc.html#string">std::string</a> key)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forces a user to join a channel. </em> <a href="#a29"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a30">PartUserFromChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string cname, std::string reason)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forces a user to join a channel. <a href="#JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29">PartUserFromChannel</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> cname, <a class="el" href="namespaceirc.html#string">std::string</a> reason)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forces a user to part a channel. </em> <a href="#a30"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a31">ChangeUserNick</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string nickname)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forces a user to part a channel. <a href="#PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29">ChangeUserNick</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> nickname)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forces a user nickchange. </em> <a href="#a31"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a32">QuitUser</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string reason)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forces a user nickchange. <a href="#ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29">QuitUser</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> reason)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forces a user to quit with the specified reason. </em> <a href="#a32"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a33">MatchText</a> (std::string sliteral, std::string spattern)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Forces a user to quit with the specified reason. <a href="#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29">MatchText</a> (<a class="el" href="namespaceirc.html#string">std::string</a> sliteral, <a class="el" href="namespaceirc.html#string">std::string</a> spattern)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matches text against a glob pattern. </em> <a href="#a33"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a34">CallCommandHandler</a> (std::string commandname, char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matches text against a glob pattern. <a href="#MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">CallCommandHandler</a> (<a class="el" href="namespaceirc.html#string">std::string</a> commandname, char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calls the handler for a command, either implemented by the core or by another module. </em> <a href="#a34"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a35">ChangeHost</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string host)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calls the handler for a command, either implemented by the core or by another module. <a href="#CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29">ChangeHost</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> host)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change displayed hostname of a user. </em> <a href="#a35"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a36">ChangeGECOS</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string gecos)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change displayed hostname of a user. <a href="#ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29">ChangeGECOS</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> gecos)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change GECOS (fullname) of a user. </em> <a href="#a36"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a37">IsUlined</a> (std::string server)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change GECOS (fullname) of a user. <a href="#ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#IsUlined_28std_3A_3Astring_20server_29">IsUlined</a> (<a class="el" href="namespaceirc.html#string">std::string</a> server)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if the servername you give is ulined. </em> <a href="#a37"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="modules_8h.html#a33">chanuserlist</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a38">GetUsers</a> (<a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if the servername you give is ulined. <a href="#IsUlined_28std_3A_3Astring_20server_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="modules_8h.html#chanuserlist">chanuserlist</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#GetUsers_28chanrec_20_2Achan_29">GetUsers</a> (<a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetches the userlist of a channel. </em> <a href="#a38"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a39">UserToPseudo</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string message)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetches the userlist of a channel. <a href="#GetUsers_28chanrec_20_2Achan_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29">UserToPseudo</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="namespaceirc.html#string">std::string</a> message)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a user's connection to the irc server, but leave their client in existence in the user hash. </em> <a href="#a39"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a40">PseudoToUser</a> (<a class="el" href="classuserrec.html">userrec</a> *alive, <a class="el" href="classuserrec.html">userrec</a> *zombie, std::string message)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a user's connection to the irc server, but leave their client in existence in the user hash. <a href="#UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29">PseudoToUser</a> (<a class="el" href="classuserrec.html">userrec</a> *alive, <a class="el" href="classuserrec.html">userrec</a> *zombie, <a class="el" href="namespaceirc.html#string">std::string</a> message)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This user takes one user, and switches their file descriptor with another user, so that one user "becomes" the other. </em> <a href="#a40"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a41">AddGLine</a> (long duration, std::string source, std::string reason, std::string hostmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This user takes one user, and switches their file descriptor with another user, so that one user "becomes" the other. <a href="#PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddGLine</a> (long duration, <a class="el" href="namespaceirc.html#string">std::string</a> source, <a class="el" href="namespaceirc.html#string">std::string</a> reason, <a class="el" href="namespaceirc.html#string">std::string</a> hostmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a G-line The G-line is propogated to all of the servers in the mesh and enforced as soon as it is added. </em> <a href="#a41"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a42">AddQLine</a> (long duration, std::string source, std::string reason, std::string nickname)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a G-line The G-line is propogated to all of the servers in the mesh and enforced as soon as it is added. <a href="#AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29">AddQLine</a> (long duration, <a class="el" href="namespaceirc.html#string">std::string</a> source, <a class="el" href="namespaceirc.html#string">std::string</a> reason, <a class="el" href="namespaceirc.html#string">std::string</a> nickname)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a Q-line The Q-line is propogated to all of the servers in the mesh and enforced as soon as it is added. </em> <a href="#a42"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a43">AddZLine</a> (long duration, std::string source, std::string reason, std::string ipaddr)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a Q-line The Q-line is propogated to all of the servers in the mesh and enforced as soon as it is added. <a href="#AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29">AddZLine</a> (long duration, <a class="el" href="namespaceirc.html#string">std::string</a> source, <a class="el" href="namespaceirc.html#string">std::string</a> reason, <a class="el" href="namespaceirc.html#string">std::string</a> ipaddr)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a Z-line The Z-line is propogated to all of the servers in the mesh and enforced as soon as it is added. </em> <a href="#a43"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a44">AddKLine</a> (long duration, std::string source, std::string reason, std::string hostmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a Z-line The Z-line is propogated to all of the servers in the mesh and enforced as soon as it is added. <a href="#AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddKLine</a> (long duration, <a class="el" href="namespaceirc.html#string">std::string</a> source, <a class="el" href="namespaceirc.html#string">std::string</a> reason, <a class="el" href="namespaceirc.html#string">std::string</a> hostmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a K-line The K-line is enforced as soon as it is added. </em> <a href="#a44"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a45">AddELine</a> (long duration, std::string source, std::string reason, std::string hostmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a K-line The K-line is enforced as soon as it is added. <a href="#AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddELine</a> (long duration, <a class="el" href="namespaceirc.html#string">std::string</a> source, <a class="el" href="namespaceirc.html#string">std::string</a> reason, <a class="el" href="namespaceirc.html#string">std::string</a> hostmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a E-line The E-line is enforced as soon as it is added. </em> <a href="#a45"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a46">DelGLine</a> (std::string hostmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a E-line The E-line is enforced as soon as it is added. <a href="#AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#DelGLine_28std_3A_3Astring_20hostmask_29">DelGLine</a> (<a class="el" href="namespaceirc.html#string">std::string</a> hostmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a G-Line from all servers on the mesh. </em> <a href="#a46"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a47">DelQLine</a> (std::string nickname)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a G-Line from all servers on the mesh. <a href="#DelGLine_28std_3A_3Astring_20hostmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#DelQLine_28std_3A_3Astring_20nickname_29">DelQLine</a> (<a class="el" href="namespaceirc.html#string">std::string</a> nickname)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a Q-Line from all servers on the mesh. </em> <a href="#a47"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a48">DelZLine</a> (std::string ipaddr)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a Q-Line from all servers on the mesh. <a href="#DelQLine_28std_3A_3Astring_20nickname_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#DelZLine_28std_3A_3Astring_20ipaddr_29">DelZLine</a> (<a class="el" href="namespaceirc.html#string">std::string</a> ipaddr)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a Z-Line from all servers on the mesh. </em> <a href="#a48"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a49">DelKLine</a> (std::string hostmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a Z-Line from all servers on the mesh. <a href="#DelZLine_28std_3A_3Astring_20ipaddr_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#DelKLine_28std_3A_3Astring_20hostmask_29">DelKLine</a> (<a class="el" href="namespaceirc.html#string">std::string</a> hostmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a local K-Line. </em> <a href="#a49"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a50">DelELine</a> (std::string hostmask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a local K-Line. <a href="#DelKLine_28std_3A_3Astring_20hostmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#DelELine_28std_3A_3Astring_20hostmask_29">DelELine</a> (<a class="el" href="namespaceirc.html#string">std::string</a> hostmask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a local E-Line. </em> <a href="#a50"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a51">CalcDuration</a> (std::string duration)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a local E-Line. <a href="#DelELine_28std_3A_3Astring_20hostmask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">CalcDuration</a> (<a class="el" href="namespaceirc.html#string">std::string</a> duration)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculates a duration This method will take a string containing a formatted duration (e.g. </em> <a href="#a51"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a52">IsValidMask</a> (std::string mask)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculates a duration This method will take a string containing a formatted duration (e.g. <a href="#CalcDuration_28std_3A_3Astring_20duration_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#IsValidMask_28std_3A_3Astring_20mask_29">IsValidMask</a> (<a class="el" href="namespaceirc.html#string">std::string</a> mask)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a nick!ident string is correctly formatted, false if otherwise. </em> <a href="#a52"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a53">MeshSendAll</a> (std::string text)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a nick!ident string is correctly formatted, false if otherwise. <a href="#IsValidMask_28std_3A_3Astring_20mask_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#FindModule_28std_3A_3Astring_20name_29">FindModule</a> (<a class="el" href="namespaceirc.html#string">std::string</a> name)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sends a line of text to all connected servers. </em> <a href="#a53"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a54">MeshSendCommon</a> (<a class="el" href="classuserrec.html">userrec</a> *user, std::string text)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function finds a module by name. <a href="#FindModule_28std_3A_3Astring_20name_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#AddSocket_28InspSocket_20_2Asock_29">AddSocket</a> (<a class="el" href="classInspSocket.html">InspSocket</a> *sock)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method sends a line of text to all servers who have users which share common channels with the user you provide. </em> <a href="#a54"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a55">MeshSendAllAlive</a> (std::string text)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a class derived from <a class="el" href="classInspSocket.html">InspSocket</a> to the server's socket engine. <a href="#AddSocket_28InspSocket_20_2Asock_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html#DelSocket_28InspSocket_20_2Asock_29">DelSocket</a> (<a class="el" href="classInspSocket.html">InspSocket</a> *sock)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function is equivalent to Server::MeshSendToAll except it will only route to servers which are directly routable. </em> <a href="#a55"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a56">MeshSendUnicast</a> (std::string destination, std::string text)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function sends a line of text directly to a server. </em> <a href="#a56"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a57">MeshSendAllExcept</a> (std::string target, std::string text)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function sends to all servers EXCEPT the one you specify. </em> <a href="#a57"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a58">MeshCheckChan</a> (<a class="el" href="classchanrec.html">chanrec</a> *c, std::string servername)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function is used to check if any users on channel c are on server servername. </em> <a href="#a58"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a59">MeshCheckCommon</a> (<a class="el" href="classuserrec.html">userrec</a> *u, std::string servername)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function is used to check if user u has any channels in common with users on servername. </em> <a href="#a59"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classModule.html">Module</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html#a60">FindModule</a> (std::string name)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function finds a module by name. </em> <a href="#a60"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deletes a class derived from <a class="el" href="classInspSocket.html">InspSocket</a> from the server's socket engine. <a href="#DelSocket_28InspSocket_20_2Asock_29"></a><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.
<p>
-All modules should instantiate at least one copy of this class, and use its member functions to perform their tasks.
+All modules should instantiate at least one copy of this class, and use its member functions to perform their tasks.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00694">694</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l00696">696</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="Server_28_29"></a><!-- doxytag: member="Server::Server" ref="Server_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> Server::Server </td>
+ <td class="md" nowrap valign="top">Server::Server </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -242,31 +226,30 @@ Default constructor.
<p>
Creates a Server object.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00366">366</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>.<div class="fragment"><pre class="fragment"><a name="l00368"></a>00368 {
+<a name="l00369"></a>00369 }
+</pre></div>
<p>
-<div class="fragment"><pre>00367 {
-00368 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="Server::~Server"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7EServer_28_29"></a><!-- doxytag: member="Server::~Server" ref="_7EServer_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> Server::~<a class="el" href="classServer.html">Server</a> </td>
+ <td class="md" nowrap valign="top">Server::~Server </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -278,60 +261,59 @@ Default destructor.
<p>
Destroys a Server object.
<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#l00371">371</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00372"></a>00372 {
+<a name="l00373"></a>00373 }
+</pre></div>
<p>
-<div class="fragment"><pre>00371 {
-00372 }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a26" doxytag="Server::AddCommand"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29"></a><!-- doxytag: member="Server::AddCommand" ref="AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29" args="(char *cmd, handlerfunc f, char flags, int minparams, char *source)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::AddCommand </td>
+ <td class="md" nowrap valign="top">void Server::AddCommand </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap> <em>cmd</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>handlerfunc&nbsp;</td>
<td class="mdname" nowrap> <em>f</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>flags</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>minparams</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -342,59 +324,58 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00370">370</a>
Adds a command to the command table.
<p>
This allows modules to add extra commands into the command table. You must place a function within your module which is is of type handlerfunc:<p>
-typedef void (handlerfunc) (char**, int, userrec*); ... void <a class="el" href="commands_8h.html#a5">handle_kill(char **parameters, int pcnt, userrec *user)</a><p>
+typedef void (handlerfunc) (char**, int, userrec*); ... void <a class="el" href="commands_8h.html#handle_5Fkill_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_kill(char **parameters, int pcnt, userrec *user)</a><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'. The source parameter is used for resource tracking, and should contain the name of your module (with file extension) e.g. "m_blarp.so". If you place the wrong identifier here, you can cause crashes if your module is unloaded.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00439">439</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#l00457">457</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h.html#a35">createcommand()</a>.
+References <a class="el" href="modules_8h.html#createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">createcommand()</a>.<div class="fragment"><pre class="fragment"><a name="l00458"></a>00458 {
+<a name="l00459"></a>00459 <a class="code" href="modules_8h.html#createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">createcommand</a>(cmd,f,flags,minparams,source);
+<a name="l00460"></a>00460 }
+</pre></div>
<p>
-<div class="fragment"><pre>00440 {
-00441 <a class="code" href="modules_8h.html#a35">createcommand</a>(cmd,f,flags,minparams,source);
-00442 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a45" doxytag="Server::AddELine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29"></a><!-- doxytag: member="Server::AddELine" ref="AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29" args="(long duration, std::string source, std::string reason, std::string hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::AddELine </td>
+ <td class="md" nowrap valign="top">void Server::AddELine </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>hostmask</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -404,37 +385,36 @@ References <a class="el" href="modules_8h.html#a35">createcommand()</a>.
<p>
Adds a E-line The E-line is enforced as soon as it is added.
<p>
-The duration must be in seconds, however you can use the <a class="el" href="classServer.html#a51">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+The duration must be in seconds, however you can use the <a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00701">701</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#l00720">720</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a5">add_eline()</a>, and <a class="el" href="commands_8h.html#a76">duration()</a>.
+References <a class="el" href="xline_8h.html#add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_eline()</a>.<div class="fragment"><pre class="fragment"><a name="l00721"></a>00721 {
+<a name="l00722"></a>00722 <a class="code" href="xline_8h.html#add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_eline</a>(<a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, source.c_str(), reason.c_str(), hostmask.c_str());
+<a name="l00723"></a>00723 }
+</pre></div>
<p>
-<div class="fragment"><pre>00702 {
-00703 <a class="code" href="xline_8h.html#a5">add_eline</a>(duration, source.c_str(), reason.c_str(), hostmask.c_str());
-00704 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a25" doxytag="Server::AddExtendedListMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddExtendedListMode_28char_20modechar_29"></a><!-- doxytag: member="Server::AddExtendedListMode" ref="AddExtendedListMode_28char_20modechar_29" args="(char modechar)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::AddExtendedListMode </td>
+ <td class="md" nowrap valign="top">bool Server::AddExtendedListMode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>modechar</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -451,65 +431,64 @@ This call is used to implement modes like +q and +a. The characteristics of thes
(4) The mode and its parameter are NOT stored in the channels modes structure<p>
It is down to the module handling the mode to maintain state and determine what 'items' (e.g. users, or a banlist) have the mode set on them, and process the modes at the correct times, e.g. during access checks on channels, etc. When the extended mode is triggered the OnExtendedMode method will be triggered as above. Note that the target you are given will be a channel, if for example your mode is set 'on a user' (in for example +a) you must use Server::Find to locate the user the mode is operating on. Your mode handler may return 1 to handle the mode AND tell the core to display the mode change, e.g. '+aaa one two three' in the case of the mode for 'two', or it may return -1 to 'eat' the mode change, so the above example would become '+aa one three' after processing.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00607">607</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#l00625">625</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8cpp-source.html#l00220">DoAddExtendedMode()</a>, <a class="el" href="modules_8cpp-source.html#l00230">ModeMakeList()</a>, and <a class="el" href="modules_8h-source.html#l00031">MT_CHANNEL</a>.
+References <a class="el" href="modules_8cpp-source.html#l00221">DoAddExtendedMode()</a>, <a class="el" href="modules_8cpp-source.html#l00231">ModeMakeList()</a>, and <a class="el" href="modules_8h-source.html#l00031">MT_CHANNEL</a>.<div class="fragment"><pre class="fragment"><a name="l00626"></a>00626 {
+<a name="l00627"></a>00627 <span class="keywordtype">bool</span> res = <a class="code" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">DoAddExtendedMode</a>(modechar,<a class="code" href="modules_8h.html#MT_5FCHANNEL">MT_CHANNEL</a>,<span class="keyword">false</span>,1,1);
+<a name="l00628"></a>00628 <span class="keywordflow">if</span> (res)
+<a name="l00629"></a>00629 <a class="code" href="modules_8cpp.html#ModeMakeList_28char_20modechar_29">ModeMakeList</a>(modechar);
+<a name="l00630"></a>00630 <span class="keywordflow">return</span> res;
+<a name="l00631"></a>00631 }
+</pre></div>
<p>
-<div class="fragment"><pre>00608 {
-00609 <span class="keywordtype">bool</span> res = <a class="code" href="modules_8cpp.html#a58">DoAddExtendedMode</a>(modechar,MT_CHANNEL,<span class="keyword">false</span>,1,1);
-00610 <span class="keywordflow">if</span> (res)
-00611 <a class="code" href="modules_8cpp.html#a59">ModeMakeList</a>(modechar);
-00612 <span class="keywordflow">return</span> res;
-00613 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a24" doxytag="Server::AddExtendedMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29"></a><!-- doxytag: member="Server::AddExtendedMode" ref="AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29" args="(char modechar, int type, bool requires_oper, int params_when_on, int params_when_off)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::AddExtendedMode </td>
+ <td class="md" nowrap valign="top">bool Server::AddExtendedMode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>modechar</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>requires_oper</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>params_when_on</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>params_when_off</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -521,79 +500,78 @@ Adds an extended mode letter which is parsed by a module.
<p>
This allows modules to add extra mode letters, e.g. +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#l00579">579</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="modules_8cpp-source.html#l00220">DoAddExtendedMode()</a>, <a class="el" href="modules_8h-source.html#l00032">MT_CLIENT</a>, and <a class="el" href="modules_8h-source.html#l00033">MT_SERVER</a>.
-<p>
-<div class="fragment"><pre>00580 {
-00581 <span class="keywordflow">if</span> (((modechar &gt;= <span class="charliteral">'A'</span>) &amp;&amp; (modechar &lt;= 'Z')) || ((modechar &gt;= <span class="charliteral">'a'</span>) &amp;&amp; (modechar &lt;= <span class="charliteral">'z'</span>)))
-00582 {
-00583 <span class="keywordflow">if</span> (type == <a class="code" href="modules_8h.html#a7">MT_SERVER</a>)
-00584 {
-00585 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion"</span>);
-00586 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00587 }
-00588 <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>))
-00589 {
-00590 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Parameters on MT_CLIENT modes are not supported"</span>);
-00591 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00592 }
-00593 <span class="keywordflow">if</span> ((params_when_on&gt;1) || (params_when_off&gt;1))
-00594 {
-00595 log(DEBUG,<span class="stringliteral">"*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported"</span>);
-00596 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00597 }
-00598 <span class="keywordflow">return</span> <a class="code" href="modules_8cpp.html#a58">DoAddExtendedMode</a>(modechar,type,requires_oper,params_when_on,params_when_off);
-00599 }
-00600 <span class="keywordflow">else</span>
-00601 {
-00602 log(DEBUG,<span class="stringliteral">"*** API ERROR *** Muppet modechar detected."</span>);
-00603 }
-00604 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00605 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a41" doxytag="Server::AddGLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8cpp-source.html#l00597">597</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="modules_8cpp-source.html#l00221">DoAddExtendedMode()</a>, <a class="el" href="modules_8h-source.html#l00032">MT_CLIENT</a>, and <a class="el" href="modules_8h-source.html#l00033">MT_SERVER</a>.<div class="fragment"><pre class="fragment"><a name="l00598"></a>00598 {
+<a name="l00599"></a>00599 <span class="keywordflow">if</span> (((modechar &gt;= <span class="charliteral">'A'</span>) &amp;&amp; (modechar &lt;= <span class="charliteral">'Z'</span>)) || ((modechar &gt;= <span class="charliteral">'a'</span>) &amp;&amp; (modechar &lt;= <span class="charliteral">'z'</span>)))
+<a name="l00600"></a>00600 {
+<a name="l00601"></a>00601 <span class="keywordflow">if</span> (type == <a class="code" href="modules_8h.html#MT_5FSERVER">MT_SERVER</a>)
+<a name="l00602"></a>00602 {
+<a name="l00603"></a>00603 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion"</span>);
+<a name="l00604"></a>00604 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00605"></a>00605 }
+<a name="l00606"></a>00606 <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#MT_5FCLIENT">MT_CLIENT</a>))
+<a name="l00607"></a>00607 {
+<a name="l00608"></a>00608 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Parameters on MT_CLIENT modes are not supported"</span>);
+<a name="l00609"></a>00609 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00610"></a>00610 }
+<a name="l00611"></a>00611 <span class="keywordflow">if</span> ((params_when_on&gt;1) || (params_when_off&gt;1))
+<a name="l00612"></a>00612 {
+<a name="l00613"></a>00613 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported"</span>);
+<a name="l00614"></a>00614 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00615"></a>00615 }
+<a name="l00616"></a>00616 <span class="keywordflow">return</span> <a class="code" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">DoAddExtendedMode</a>(modechar,type,requires_oper,params_when_on,params_when_off);
+<a name="l00617"></a>00617 }
+<a name="l00618"></a>00618 <span class="keywordflow">else</span>
+<a name="l00619"></a>00619 {
+<a name="l00620"></a>00620 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Muppet modechar detected."</span>);
+<a name="l00621"></a>00621 }
+<a name="l00622"></a>00622 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00623"></a>00623 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29"></a><!-- doxytag: member="Server::AddGLine" ref="AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29" args="(long duration, std::string source, std::string reason, std::string hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::AddGLine </td>
+ <td class="md" nowrap valign="top">void Server::AddGLine </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>hostmask</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -603,58 +581,57 @@ References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a clas
<p>
Adds a G-line The G-line is propogated to all of the servers in the mesh and enforced as soon as it is added.
<p>
-The duration must be in seconds, however you can use the <a class="el" href="classServer.html#a51">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+The duration must be in seconds, however you can use the <a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00681">681</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#l00700">700</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a1">add_gline()</a>, and <a class="el" href="commands_8h.html#a76">duration()</a>.
+References <a class="el" href="xline_8h.html#add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_gline()</a>.<div class="fragment"><pre class="fragment"><a name="l00701"></a>00701 {
+<a name="l00702"></a>00702 <a class="code" href="xline_8h.html#add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_gline</a>(<a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, source.c_str(), reason.c_str(), hostmask.c_str());
+<a name="l00703"></a>00703 }
+</pre></div>
<p>
-<div class="fragment"><pre>00682 {
-00683 <a class="code" href="xline_8h.html#a1">add_gline</a>(duration, source.c_str(), reason.c_str(), hostmask.c_str());
-00684 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a44" doxytag="Server::AddKLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29"></a><!-- doxytag: member="Server::AddKLine" ref="AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29" args="(long duration, std::string source, std::string reason, std::string hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::AddKLine </td>
+ <td class="md" nowrap valign="top">void Server::AddKLine </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>hostmask</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -664,58 +641,57 @@ References <a class="el" href="xline_8h.html#a1">add_gline()</a>, and <a class="
<p>
Adds a K-line The K-line is enforced as soon as it is added.
<p>
-The duration must be in seconds, however you can use the <a class="el" href="classServer.html#a51">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+The duration must be in seconds, however you can use the <a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00696">696</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#l00715">715</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a4">add_kline()</a>, and <a class="el" href="commands_8h.html#a76">duration()</a>.
+References <a class="el" href="xline_8h.html#add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_kline()</a>.<div class="fragment"><pre class="fragment"><a name="l00716"></a>00716 {
+<a name="l00717"></a>00717 <a class="code" href="xline_8h.html#add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_kline</a>(<a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, source.c_str(), reason.c_str(), hostmask.c_str());
+<a name="l00718"></a>00718 }
+</pre></div>
<p>
-<div class="fragment"><pre>00697 {
-00698 <a class="code" href="xline_8h.html#a4">add_kline</a>(duration, source.c_str(), reason.c_str(), hostmask.c_str());
-00699 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a42" doxytag="Server::AddQLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29"></a><!-- doxytag: member="Server::AddQLine" ref="AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29" args="(long duration, std::string source, std::string reason, std::string nickname)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::AddQLine </td>
+ <td class="md" nowrap valign="top">void Server::AddQLine </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>nickname</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -725,58 +701,96 @@ References <a class="el" href="xline_8h.html#a4">add_kline()</a>, and <a class="
<p>
Adds a Q-line The Q-line is propogated to all of the servers in the mesh and enforced as soon as it is added.
<p>
-The duration must be in seconds, however you can use the <a class="el" href="classServer.html#a51">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+The duration must be in seconds, however you can use the <a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+<p>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00705">705</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="xline_8h.html#add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29">add_qline()</a>.<div class="fragment"><pre class="fragment"><a name="l00706"></a>00706 {
+<a name="l00707"></a>00707 <a class="code" href="xline_8h.html#add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29">add_qline</a>(<a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, source.c_str(), reason.c_str(), nickname.c_str());
+<a name="l00708"></a>00708 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="AddSocket_28InspSocket_20_2Asock_29"></a><!-- doxytag: member="Server::AddSocket" ref="AddSocket_28InspSocket_20_2Asock_29" args="(InspSocket *sock)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">void Server::AddSocket </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="classInspSocket.html">InspSocket</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>sock</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Adds a class derived from <a class="el" href="classInspSocket.html">InspSocket</a> to the server's socket engine.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00686">686</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+
+<p>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00375">375</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a2">add_qline()</a>, and <a class="el" href="commands_8h.html#a76">duration()</a>.
+References <a class="el" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.<div class="fragment"><pre class="fragment"><a name="l00376"></a>00376 {
+<a name="l00377"></a>00377 <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.push_back(sock);
+<a name="l00378"></a>00378 }
+</pre></div>
<p>
-<div class="fragment"><pre>00687 {
-00688 <a class="code" href="xline_8h.html#a2">add_qline</a>(duration, source.c_str(), reason.c_str(), nickname.c_str());
-00689 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a43" doxytag="Server::AddZLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29"></a><!-- doxytag: member="Server::AddZLine" ref="AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29" args="(long duration, std::string source, std::string reason, std::string ipaddr)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::AddZLine </td>
+ <td class="md" nowrap valign="top">void Server::AddZLine </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>ipaddr</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -786,37 +800,36 @@ References <a class="el" href="xline_8h.html#a2">add_qline()</a>, and <a class="
<p>
Adds a Z-line The Z-line is propogated to all of the servers in the mesh and enforced as soon as it is added.
<p>
-The duration must be in seconds, however you can use the <a class="el" href="classServer.html#a51">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
+The duration must be in seconds, however you can use the <a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">Server::CalcDuration</a> method to convert durations into the 1w2d3h3m6s format used by /GLINE etc. The source is an arbitary string used to indicate who or what sent the data, usually this is the nickname of a person, or a server name.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00691">691</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#l00710">710</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a3">add_zline()</a>, and <a class="el" href="commands_8h.html#a76">duration()</a>.
+References <a class="el" href="xline_8h.html#add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29">add_zline()</a>.<div class="fragment"><pre class="fragment"><a name="l00711"></a>00711 {
+<a name="l00712"></a>00712 <a class="code" href="xline_8h.html#add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29">add_zline</a>(<a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, source.c_str(), reason.c_str(), ipaddr.c_str());
+<a name="l00713"></a>00713 }
+</pre></div>
<p>
-<div class="fragment"><pre>00692 {
-00693 <a class="code" href="xline_8h.html#a3">add_zline</a>(duration, source.c_str(), reason.c_str(), ipaddr.c_str());
-00694 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a51" doxytag="Server::CalcDuration"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CalcDuration_28std_3A_3Astring_20duration_29"></a><!-- doxytag: member="Server::CalcDuration" ref="CalcDuration_28std_3A_3Astring_20duration_29" args="(std::string duration)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long Server::CalcDuration </td>
+ <td class="md" nowrap valign="top">long Server::CalcDuration </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>duration</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -828,56 +841,55 @@ Calculates a duration This method will take a string containing a formatted dura
<p>
"1w2d") and return its value as a total number of seconds. This is the same function used internally by /GLINE etc to set the ban times.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00731">731</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#l00750">750</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="commands_8h.html#a76">duration()</a>.
+References <a class="el" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration()</a>.<div class="fragment"><pre class="fragment"><a name="l00751"></a>00751 {
+<a name="l00752"></a>00752 <span class="keywordflow">return</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>(delta.c_str());
+<a name="l00753"></a>00753 }
+</pre></div>
<p>
-<div class="fragment"><pre>00732 {
-00733 <span class="keywordflow">return</span> <a class="code" href="commands_8h.html#a76">duration</a>(delta.c_str());
-00734 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a34" doxytag="Server::CallCommandHandler"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="Server::CallCommandHandler" ref="CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(std::string commandname, char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::CallCommandHandler </td>
+ <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="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>commandname</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -888,44 +900,43 @@ References <a class="el" href="commands_8h.html#a76">duration()</a>.
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#a26">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.
+) 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#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">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#l00429">429</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#l00447">447</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00448"></a>00448 {
+<a name="l00449"></a>00449 call_handler(commandname.c_str(),parameters,pcnt,user);
+<a name="l00450"></a>00450 }
+</pre></div>
<p>
-<div class="fragment"><pre>00430 {
-00431 call_handler(commandname.c_str(),parameters,pcnt,user);
-00432 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a36" doxytag="Server::ChangeGECOS"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29"></a><!-- doxytag: member="Server::ChangeGECOS" ref="ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29" args="(userrec *user, std::string gecos)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::ChangeGECOS </td>
+ <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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>gecos</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -937,44 +948,43 @@ 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#l00522">522</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#l00540">540</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="message_8h.html#a8">ChangeName()</a>.
+References <a class="el" href="message_8h.html#ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29">ChangeName()</a>.<div class="fragment"><pre class="fragment"><a name="l00541"></a>00541 {
+<a name="l00542"></a>00542 <a class="code" href="message_8h.html#ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29">ChangeName</a>(user,gecos.c_str());
+<a name="l00543"></a>00543 }
+</pre></div>
<p>
-<div class="fragment"><pre>00523 {
-00524 <a class="code" href="message_8h.html#a8">ChangeName</a>(user,gecos.c_str());
-00525 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a35" doxytag="Server::ChangeHost"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29"></a><!-- doxytag: member="Server::ChangeHost" ref="ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29" args="(userrec *user, std::string host)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::ChangeHost </td>
+ <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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>host</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -986,44 +996,43 @@ 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#l00517">517</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#l00535">535</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="message_8h.html#a9">ChangeDisplayedHost()</a>.
+References <a class="el" href="message_8h.html#ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29">ChangeDisplayedHost()</a>.<div class="fragment"><pre class="fragment"><a name="l00536"></a>00536 {
+<a name="l00537"></a>00537 <a class="code" href="message_8h.html#ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29">ChangeDisplayedHost</a>(user,host.c_str());
+<a name="l00538"></a>00538 }
+</pre></div>
<p>
-<div class="fragment"><pre>00518 {
-00519 <a class="code" href="message_8h.html#a9">ChangeDisplayedHost</a>(user,host.c_str());
-00520 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a31" doxytag="Server::ChangeUserNick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29"></a><!-- doxytag: member="Server::ChangeUserNick" ref="ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29" args="(userrec *user, std::string nickname)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::ChangeUserNick </td>
+ <td class="md" nowrap valign="top">void Server::ChangeUserNick </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>nickname</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1035,42 +1044,41 @@ Forces a user nickchange.
<p>
This command works similarly to SVSNICK, and can be used to implement Q-lines etc. If you specify an invalid nickname, the nick change will be dropped and the target user will receive the error numeric for it.
<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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00432">432</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00433"></a>00433 {
+<a name="l00434"></a>00434 force_nickchange(user,nickname.c_str());
+<a name="l00435"></a>00435 }
+</pre></div>
<p>
-<div class="fragment"><pre>00415 {
-00416 force_nickchange(user,nickname.c_str());
-00417 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a18" doxytag="Server::ChanMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29"></a><!-- doxytag: member="Server::ChanMode" ref="ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29" args="(userrec *User, chanrec *Chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string Server::ChanMode </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> Server::ChanMode </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> <em>User</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>Chan</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1080,46 +1088,45 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00414">414</a>
<p>
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.
+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#l00547">547</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#l00565">565</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="message_8h.html#a12">cmode()</a>.
+References <a class="el" href="message_8h.html#cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">cmode()</a>.<div class="fragment"><pre class="fragment"><a name="l00566"></a>00566 {
+<a name="l00567"></a>00567 <span class="keywordflow">return</span> <a class="code" href="message_8h.html#cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">cmode</a>(User,Chan);
+<a name="l00568"></a>00568 }
+</pre></div>
<p>
-<div class="fragment"><pre>00548 {
-00549 <span class="keywordflow">return</span> <a class="code" href="message_8h.html#a12">cmode</a>(User,Chan);
-00550 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a10" doxytag="Server::CommonChannels"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29"></a><!-- doxytag: member="Server::CommonChannels" ref="CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29" args="(userrec *u1, userrec *u2)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::CommonChannels </td>
+ <td class="md" nowrap valign="top">bool Server::CommonChannels </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> <em>u1</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>u2</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1129,37 +1136,36 @@ References <a class="el" href="message_8h.html#a12">cmode()</a>.
<p>
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#a11">Server::SendCommon</a> method.
+This method is used internally by the NICK and QUIT commands, and the <a class="el" href="classServer.html#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29">Server::SendCommon</a> method.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00495">495</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#l00513">513</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="message_8h.html#a0">common_channels()</a>.
+References <a class="el" href="message_8h.html#common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29">common_channels()</a>.<div class="fragment"><pre class="fragment"><a name="l00514"></a>00514 {
+<a name="l00515"></a>00515 <span class="keywordflow">return</span> (<a class="code" href="message_8h.html#common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29">common_channels</a>(u1,u2) != 0);
+<a name="l00516"></a>00516 }
+</pre></div>
<p>
-<div class="fragment"><pre>00496 {
-00497 <span class="keywordflow">return</span> (<a class="code" href="message_8h.html#a0">common_channels</a>(u1,u2) != 0);
-00498 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a14" doxytag="Server::CountUsers"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CountUsers_28chanrec_20_2Ac_29"></a><!-- doxytag: member="Server::CountUsers" ref="CountUsers_28chanrec_20_2Ac_29" args="(chanrec *c)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int Server::CountUsers </td>
+ <td class="md" nowrap valign="top">int Server::CountUsers </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>c</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1171,33 +1177,32 @@ 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#l00615">615</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#l00633">633</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00634"></a>00634 {
+<a name="l00635"></a>00635 <span class="keywordflow">return</span> usercount(c);
+<a name="l00636"></a>00636 }
+</pre></div>
<p>
-<div class="fragment"><pre>00616 {
-00617 <span class="keywordflow">return</span> usercount(c);
-00618 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a50" doxytag="Server::DelELine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DelELine_28std_3A_3Astring_20hostmask_29"></a><!-- doxytag: member="Server::DelELine" ref="DelELine_28std_3A_3Astring_20hostmask_29" args="(std::string hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::DelELine </td>
+ <td class="md" nowrap valign="top">bool Server::DelELine </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>hostmask</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1209,35 +1214,34 @@ Deletes a local E-Line.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00726">726</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#l00745">745</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a10">del_eline()</a>.
+References <a class="el" href="xline_8h.html#del_5Feline_28const_20char_20_2Ahostmask_29">del_eline()</a>.<div class="fragment"><pre class="fragment"><a name="l00746"></a>00746 {
+<a name="l00747"></a>00747 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Feline_28const_20char_20_2Ahostmask_29">del_eline</a>(hostmask.c_str());
+<a name="l00748"></a>00748 }
+</pre></div>
<p>
-<div class="fragment"><pre>00727 {
-00728 <a class="code" href="xline_8h.html#a10">del_eline</a>(hostmask.c_str());
-00729 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a46" doxytag="Server::DelGLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DelGLine_28std_3A_3Astring_20hostmask_29"></a><!-- doxytag: member="Server::DelGLine" ref="DelGLine_28std_3A_3Astring_20hostmask_29" args="(std::string hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::DelGLine </td>
+ <td class="md" nowrap valign="top">bool Server::DelGLine </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>hostmask</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1249,35 +1253,34 @@ Deletes a G-Line from all servers on the mesh.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00706">706</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#l00725">725</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a6">del_gline()</a>.
+References <a class="el" href="xline_8h.html#del_5Fgline_28const_20char_20_2Ahostmask_29">del_gline()</a>.<div class="fragment"><pre class="fragment"><a name="l00726"></a>00726 {
+<a name="l00727"></a>00727 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Fgline_28const_20char_20_2Ahostmask_29">del_gline</a>(hostmask.c_str());
+<a name="l00728"></a>00728 }
+</pre></div>
<p>
-<div class="fragment"><pre>00707 {
-00708 <a class="code" href="xline_8h.html#a6">del_gline</a>(hostmask.c_str());
-00709 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a49" doxytag="Server::DelKLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DelKLine_28std_3A_3Astring_20hostmask_29"></a><!-- doxytag: member="Server::DelKLine" ref="DelKLine_28std_3A_3Astring_20hostmask_29" args="(std::string hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::DelKLine </td>
+ <td class="md" nowrap valign="top">bool Server::DelKLine </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>hostmask</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1289,35 +1292,34 @@ Deletes a local K-Line.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00721">721</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#l00740">740</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a9">del_kline()</a>.
+References <a class="el" href="xline_8h.html#del_5Fkline_28const_20char_20_2Ahostmask_29">del_kline()</a>.<div class="fragment"><pre class="fragment"><a name="l00741"></a>00741 {
+<a name="l00742"></a>00742 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Fkline_28const_20char_20_2Ahostmask_29">del_kline</a>(hostmask.c_str());
+<a name="l00743"></a>00743 }
+</pre></div>
<p>
-<div class="fragment"><pre>00722 {
-00723 <a class="code" href="xline_8h.html#a9">del_kline</a>(hostmask.c_str());
-00724 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a47" doxytag="Server::DelQLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DelQLine_28std_3A_3Astring_20nickname_29"></a><!-- doxytag: member="Server::DelQLine" ref="DelQLine_28std_3A_3Astring_20nickname_29" args="(std::string nickname)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::DelQLine </td>
+ <td class="md" nowrap valign="top">bool Server::DelQLine </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>nickname</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1329,35 +1331,80 @@ Deletes a Q-Line from all servers on the mesh.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00711">711</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#l00730">730</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a7">del_qline()</a>.
+References <a class="el" href="xline_8h.html#del_5Fqline_28const_20char_20_2Anickname_29">del_qline()</a>.<div class="fragment"><pre class="fragment"><a name="l00731"></a>00731 {
+<a name="l00732"></a>00732 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Fqline_28const_20char_20_2Anickname_29">del_qline</a>(nickname.c_str());
+<a name="l00733"></a>00733 }
+</pre></div>
<p>
-<div class="fragment"><pre>00712 {
-00713 <a class="code" href="xline_8h.html#a7">del_qline</a>(nickname.c_str());
-00714 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a48" doxytag="Server::DelZLine"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DelSocket_28InspSocket_20_2Asock_29"></a><!-- doxytag: member="Server::DelSocket" ref="DelSocket_28InspSocket_20_2Asock_29" args="(InspSocket *sock)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::DelZLine </td>
+ <td class="md" nowrap valign="top">void Server::DelSocket </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
- <td class="mdname1" valign="top" nowrap> <em>ipaddr</em> </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classInspSocket.html">InspSocket</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>sock</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+<p>
+Deletes a class derived from <a class="el" href="classInspSocket.html">InspSocket</a> from the server's socket engine.
+<p>
+
+<p>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00380">380</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.<div class="fragment"><pre class="fragment"><a name="l00381"></a>00381 {
+<a name="l00382"></a>00382 <span class="keywordflow">for</span> (std::vector&lt;InspSocket*&gt;::iterator a = <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.begin(); a &lt; <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.end(); a++)
+<a name="l00383"></a>00383 {
+<a name="l00384"></a>00384 <span class="keywordflow">if</span> (*a == sock)
+<a name="l00385"></a>00385 {
+<a name="l00386"></a>00386 <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.erase(a);
+<a name="l00387"></a>00387 <span class="keywordflow">return</span>;
+<a name="l00388"></a>00388 }
+<a name="l00389"></a>00389 }
+<a name="l00390"></a>00390 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="DelZLine_28std_3A_3Astring_20ipaddr_29"></a><!-- doxytag: member="Server::DelZLine" ref="DelZLine_28std_3A_3Astring_20ipaddr_29" args="(std::string ipaddr)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">bool Server::DelZLine </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ipaddr</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1369,35 +1416,34 @@ Deletes a Z-Line from all servers on the mesh.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00716">716</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#l00735">735</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="xline_8h.html#a8">del_zline()</a>.
+References <a class="el" href="xline_8h.html#del_5Fzline_28const_20char_20_2Aipaddr_29">del_zline()</a>.<div class="fragment"><pre class="fragment"><a name="l00736"></a>00736 {
+<a name="l00737"></a>00737 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Fzline_28const_20char_20_2Aipaddr_29">del_zline</a>(ipaddr.c_str());
+<a name="l00738"></a>00738 }
+</pre></div>
<p>
-<div class="fragment"><pre>00717 {
-00718 <a class="code" href="xline_8h.html#a8">del_zline</a>(ipaddr.c_str());
-00719 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a17" doxytag="Server::FindChannel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FindChannel_28std_3A_3Astring_20channel_29"></a><!-- doxytag: member="Server::FindChannel" ref="FindChannel_28std_3A_3Astring_20channel_29" args="(std::string channel)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classchanrec.html">chanrec</a> * Server::FindChannel </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classchanrec.html">chanrec</a> * Server::FindChannel </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>channel</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1409,33 +1455,32 @@ 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#l00542">542</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#l00560">560</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00561"></a>00561 {
+<a name="l00562"></a>00562 <span class="keywordflow">return</span> FindChan(channel.c_str());
+<a name="l00563"></a>00563 }
+</pre></div>
<p>
-<div class="fragment"><pre>00543 {
-00544 <span class="keywordflow">return</span> FindChan(channel.c_str());
-00545 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a16" doxytag="Server::FindDescriptor"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FindDescriptor_28int_20socket_29"></a><!-- doxytag: member="Server::FindDescriptor" ref="FindDescriptor_28int_20socket_29" args="(int socket)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classuserrec.html">userrec</a> * Server::FindDescriptor </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> * Server::FindDescriptor </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>socket</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1447,35 +1492,32 @@ Attempts to look up a nick using the file descriptor associated with that nick.
<p>
This function will return NULL if the file descriptor is not associated with a valid user.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00537">537</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#l00555">555</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00556"></a>00556 {
+<a name="l00557"></a>00557 <span class="keywordflow">return</span> (socket &lt; 65536 ? fd_ref_table[socket] : NULL);
+<a name="l00558"></a>00558 }
+</pre></div>
<p>
-References <a class="el" href="modules_8cpp-source.html#l00118">fd_ref_table</a>.
-<p>
-<div class="fragment"><pre>00538 {
-00539 <span class="keywordflow">return</span> (socket &lt; 65536 ? <a class="code" href="modules_8cpp.html#a37">fd_ref_table</a>[socket] : NULL);
-00540 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a60" doxytag="Server::FindModule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FindModule_28std_3A_3Astring_20name_29"></a><!-- doxytag: member="Server::FindModule" ref="FindModule_28std_3A_3Astring_20name_29" args="(std::string name)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classModule.html">Module</a> * Server::FindModule </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classModule.html">Module</a> * Server::FindModule </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>name</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1487,42 +1529,41 @@ This function finds a module by name.
<p>
You must provide the filename of the module. If the module cannot be found (is not loaded) the function will return NULL.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00809">809</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#l00784">784</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8cpp-source.html#l01019">MODCOUNT</a>, <a class="el" href="channels_8cpp-source.html#l00086">module_names</a>, and <a class="el" href="channels_8cpp-source.html#l00059">modules</a>.
+References <a class="el" href="modules_8cpp-source.html#l00994">MODCOUNT</a>, <a class="el" href="channels_8cpp.html#module_5Fnames">module_names</a>, and <a class="el" href="channels_8cpp.html#modules">modules</a>.<div class="fragment"><pre class="fragment"><a name="l00785"></a>00785 {
+<a name="l00786"></a>00786 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= <a class="code" href="channels_8cpp.html#MODCOUNT">MODCOUNT</a>; i++)
+<a name="l00787"></a>00787 {
+<a name="l00788"></a>00788 <span class="keywordflow">if</span> (module_names[i] == name)
+<a name="l00789"></a>00789 {
+<a name="l00790"></a>00790 <span class="keywordflow">return</span> <a class="code" href="channels_8cpp.html#modules">modules</a>[i];
+<a name="l00791"></a>00791 }
+<a name="l00792"></a>00792 }
+<a name="l00793"></a>00793 <span class="keywordflow">return</span> NULL;
+<a name="l00794"></a>00794 }
+</pre></div>
<p>
-<div class="fragment"><pre>00810 {
-00811 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= <a class="code" href="modules_8cpp.html#a1">MODCOUNT</a>; i++)
-00812 {
-00813 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a26">module_names</a>[i] == name)
-00814 {
-00815 <span class="keywordflow">return</span> <a class="code" href="channels_8cpp.html#a2">modules</a>[i];
-00816 }
-00817 }
-00818 <span class="keywordflow">return</span> NULL;
-00819 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a15" doxytag="Server::FindNick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FindNick_28std_3A_3Astring_20nick_29"></a><!-- doxytag: member="Server::FindNick" ref="FindNick_28std_3A_3Astring_20nick_29" args="(std::string nick)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classuserrec.html">userrec</a> * Server::FindNick </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a> * Server::FindNick </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>nick</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1534,32 +1575,31 @@ 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#l00532">532</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#l00550">550</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00551"></a>00551 {
+<a name="l00552"></a>00552 <span class="keywordflow">return</span> Find(nick);
+<a name="l00553"></a>00553 }
+</pre></div>
<p>
-<div class="fragment"><pre>00533 {
-00534 <span class="keywordflow">return</span> Find(nick);
-00535 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a23" doxytag="Server::GetAdmin"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetAdmin_28_29"></a><!-- doxytag: member="Server::GetAdmin" ref="GetAdmin_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classAdmin.html">Admin</a> Server::GetAdmin </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classAdmin.html">Admin</a> Server::GetAdmin </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1569,34 +1609,33 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00532">532</a>
<p>
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#o2">Admin::Nick</a>, <a class="el" href="classAdmin.html#o1">Admin::Email</a> and <a class="el" href="classAdmin.html#o0">Admin::Name</a> contain the information for the server where the module is loaded.
+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#Nick">Admin::Nick</a>, <a class="el" href="classAdmin.html#Email">Admin::Email</a> and <a class="el" href="classAdmin.html#Name">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#l00572">572</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#l00590">590</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00591"></a>00591 {
+<a name="l00592"></a>00592 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
+<a name="l00593"></a>00593 }
+</pre></div>
<p>
-<div class="fragment"><pre>00573 {
-00574 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
-00575 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a21" doxytag="Server::GetNetworkName"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetNetworkName_28_29"></a><!-- doxytag: member="Server::GetNetworkName" ref="GetNetworkName_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string Server::GetNetworkName </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> Server::GetNetworkName </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1608,32 +1647,31 @@ Returns the network name, global to all linked servers.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00562">562</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#l00580">580</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00581"></a>00581 {
+<a name="l00582"></a>00582 <span class="keywordflow">return</span> getnetworkname();
+<a name="l00583"></a>00583 }
+</pre></div>
<p>
-<div class="fragment"><pre>00563 {
-00564 <span class="keywordflow">return</span> getnetworkname();
-00565 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a22" doxytag="Server::GetServerDescription"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetServerDescription_28_29"></a><!-- doxytag: member="Server::GetServerDescription" ref="GetServerDescription_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string Server::GetServerDescription </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> Server::GetServerDescription </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1645,32 +1683,31 @@ Returns the server description string of the local server.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00567">567</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#l00585">585</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00586"></a>00586 {
+<a name="l00587"></a>00587 <span class="keywordflow">return</span> getserverdesc();
+<a name="l00588"></a>00588 }
+</pre></div>
<p>
-<div class="fragment"><pre>00568 {
-00569 <span class="keywordflow">return</span> getserverdesc();
-00570 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a20" doxytag="Server::GetServerName"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetServerName_28_29"></a><!-- doxytag: member="Server::GetServerName" ref="GetServerName_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string Server::GetServerName </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> Server::GetServerName </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1682,33 +1719,32 @@ 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#l00557">557</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#l00575">575</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00576"></a>00576 {
+<a name="l00577"></a>00577 <span class="keywordflow">return</span> getservername();
+<a name="l00578"></a>00578 }
+</pre></div>
<p>
-<div class="fragment"><pre>00558 {
-00559 <span class="keywordflow">return</span> getservername();
-00560 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a38" doxytag="Server::GetUsers"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetUsers_28chanrec_20_2Achan_29"></a><!-- doxytag: member="Server::GetUsers" ref="GetUsers_28chanrec_20_2Achan_29" args="(chanrec *chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8h.html#a33">chanuserlist</a> Server::GetUsers </td>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8h.html#chanuserlist">chanuserlist</a> Server::GetUsers </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>chan</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1720,43 +1756,42 @@ Fetches the userlist of a channel.
<p>
This function must be here and not a member of userrec or chanrec due to include constraints.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00402">402</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#l00072">chanuserlist</a>, <a class="el" href="channels_8cpp-source.html#l00221">chanrec::GetUsers()</a>, and <a class="el" href="channels_8cpp-source.html#l00073">list</a>.
+References <a class="el" href="channels_8cpp-source.html#l00215">chanrec::GetUsers()</a>, and <a class="el" href="channels_8cpp.html#list_5BMAXBUF_5D">list</a>.<div class="fragment"><pre class="fragment"><a name="l00421"></a>00421 {
+<a name="l00422"></a>00422 <a class="code" href="modules_8h.html#chanuserlist">chanuserlist</a> userl;
+<a name="l00423"></a>00423 userl.clear();
+<a name="l00424"></a>00424 std::vector&lt;char*&gt; *<a class="code" href="channels_8cpp.html#list_5BMAXBUF_5D">list</a> = chan-&gt;<a class="code" href="classchanrec.html#GetUsers_28_29">GetUsers</a>();
+<a name="l00425"></a>00425 <span class="keywordflow">for</span> (std::vector&lt;char*&gt;::iterator i = list-&gt;begin(); i != list-&gt;end(); i++)
+<a name="l00426"></a>00426 {
+<a name="l00427"></a>00427 <span class="keywordtype">char</span>* o = *i;
+<a name="l00428"></a>00428 userl.push_back((<a class="code" href="classuserrec.html">userrec</a>*)o);
+<a name="l00429"></a>00429 }
+<a name="l00430"></a>00430 <span class="keywordflow">return</span> userl;
+<a name="l00431"></a>00431 }
+</pre></div>
<p>
-<div class="fragment"><pre>00403 {
-00404 <a class="code" href="modules_8h.html#a33">chanuserlist</a> userl;
-00405 userl.clear();
-00406 std::vector&lt;char*&gt; *<a class="code" href="channels_8cpp.html#a15">list</a> = chan-&gt;<a class="code" href="classchanrec.html#a7">GetUsers</a>();
-00407 <span class="keywordflow">for</span> (std::vector&lt;char*&gt;::iterator i = <a class="code" href="channels_8cpp.html#a15">list</a>-&gt;begin(); i != <a class="code" href="channels_8cpp.html#a15">list</a>-&gt;end(); i++)
-00408 {
-00409 <span class="keywordtype">char</span>* o = *i;
-00410 userl.push_back((<a class="code" href="classuserrec.html">userrec</a>*)o);
-00411 }
-00412 <span class="keywordflow">return</span> userl;
-00413 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a13" doxytag="Server::IsNick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="IsNick_28std_3A_3Astring_20nick_29"></a><!-- doxytag: member="Server::IsNick" ref="IsNick_28std_3A_3Astring_20nick_29" args="(std::string nick)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::IsNick </td>
+ <td class="md" nowrap valign="top">bool Server::IsNick </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>nick</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1768,44 +1803,43 @@ 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#l00527">527</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#l00545">545</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="message_8h.html#a11">isnick()</a>.
+References <a class="el" href="message_8h.html#isnick_28const_20char_20_2An_29">isnick()</a>.<div class="fragment"><pre class="fragment"><a name="l00546"></a>00546 {
+<a name="l00547"></a>00547 <span class="keywordflow">return</span> (<a class="code" href="message_8h.html#isnick_28const_20char_20_2An_29">isnick</a>(nick.c_str()) != 0);
+<a name="l00548"></a>00548 }
+</pre></div>
<p>
-<div class="fragment"><pre>00528 {
-00529 <span class="keywordflow">return</span> (<a class="code" href="message_8h.html#a11">isnick</a>(nick.c_str()) != 0);
-00530 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a19" doxytag="Server::IsOnChannel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29"></a><!-- doxytag: member="Server::IsOnChannel" ref="IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29" args="(userrec *User, chanrec *Chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::IsOnChannel </td>
+ <td class="md" nowrap valign="top">bool Server::IsOnChannel </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> <em>User</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>Chan</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1817,35 +1851,34 @@ Checks if a user is on a channel.
<p>
This function will return true or false to indicate if user 'User' is on channel 'Chan'.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00552">552</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#l00570">570</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="message_8h.html#a14">has_channel()</a>.
+References <a class="el" href="message_8h.html#has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29">has_channel()</a>.<div class="fragment"><pre class="fragment"><a name="l00571"></a>00571 {
+<a name="l00572"></a>00572 <span class="keywordflow">return</span> <a class="code" href="message_8h.html#has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29">has_channel</a>(User,Chan);
+<a name="l00573"></a>00573 }
+</pre></div>
<p>
-<div class="fragment"><pre>00553 {
-00554 <span class="keywordflow">return</span> <a class="code" href="message_8h.html#a14">has_channel</a>(User,Chan);
-00555 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a37" doxytag="Server::IsUlined"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="IsUlined_28std_3A_3Astring_20server_29"></a><!-- doxytag: member="Server::IsUlined" ref="IsUlined_28std_3A_3Astring_20server_29" args="(std::string server)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::IsUlined </td>
+ <td class="md" nowrap valign="top">bool Server::IsUlined </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>server</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1857,35 +1890,34 @@ Returns true if the servername you give is ulined.
<p>
ULined servers have extra privilages. They are allowed to change nicknames on remote servers, change modes of clients which are on remote servers and set modes of channels where there are no channel operators for that channel on the ulined server, amongst other things. Ulined server data is also broadcast across the mesh at all times as opposed to selectively messaged in the case of normal servers, as many ulined server types (such as services) do not support meshed links and must operate in this manner.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00424">424</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#l00442">442</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="commands_8h.html#a75">is_uline()</a>.
+References <a class="el" href="commands_8h.html#is_5Fuline_28const_20char_20_2Aserver_29">is_uline()</a>.<div class="fragment"><pre class="fragment"><a name="l00443"></a>00443 {
+<a name="l00444"></a>00444 <span class="keywordflow">return</span> <a class="code" href="commands_8h.html#is_5Fuline_28const_20char_20_2Aserver_29">is_uline</a>(server.c_str());
+<a name="l00445"></a>00445 }
+</pre></div>
<p>
-<div class="fragment"><pre>00425 {
-00426 <span class="keywordflow">return</span> <a class="code" href="commands_8h.html#a75">is_uline</a>(server.c_str());
-00427 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a52" doxytag="Server::IsValidMask"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="IsValidMask_28std_3A_3Astring_20mask_29"></a><!-- doxytag: member="Server::IsValidMask" ref="IsValidMask_28std_3A_3Astring_20mask_29" args="(std::string mask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::IsValidMask </td>
+ <td class="md" nowrap valign="top">bool Server::IsValidMask </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>mask</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1897,72 +1929,71 @@ Returns true if a nick!ident string is correctly formatted, false if otherwise.
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00736">736</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00737 {
-00738 <span class="keyword">const</span> <span class="keywordtype">char</span>* dest = mask.c_str();
-00739 <span class="keywordflow">if</span> (strchr(dest,<span class="charliteral">'!'</span>)==0)
-00740 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00741 <span class="keywordflow">if</span> (strchr(dest,<span class="charliteral">'@'</span>)==0)
-00742 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00743 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
-00744 <span class="keywordflow">if</span> (dest[i] &lt; 32)
-00745 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00746 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
-00747 <span class="keywordflow">if</span> (dest[i] &gt; 126)
-00748 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00749 <span class="keywordtype">int</span> c = 0;
-00750 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
-00751 <span class="keywordflow">if</span> (dest[i] == <span class="charliteral">'!'</span>)
-00752 c++;
-00753 <span class="keywordflow">if</span> (c&gt;1)
-00754 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00755 c = 0;
-00756 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
-00757 <span class="keywordflow">if</span> (dest[i] == <span class="charliteral">'@'</span>)
-00758 c++;
-00759 <span class="keywordflow">if</span> (c&gt;1)
-00760 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00761
-00762 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00763 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a29" doxytag="Server::JoinUserToChannel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8cpp-source.html#l00755">755</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00756"></a>00756 {
+<a name="l00757"></a>00757 <span class="keyword">const</span> <span class="keywordtype">char</span>* dest = mask.c_str();
+<a name="l00758"></a>00758 <span class="keywordflow">if</span> (strchr(dest,<span class="charliteral">'!'</span>)==0)
+<a name="l00759"></a>00759 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00760"></a>00760 <span class="keywordflow">if</span> (strchr(dest,<span class="charliteral">'@'</span>)==0)
+<a name="l00761"></a>00761 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00762"></a>00762 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
+<a name="l00763"></a>00763 <span class="keywordflow">if</span> (dest[i] &lt; 32)
+<a name="l00764"></a>00764 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00765"></a>00765 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
+<a name="l00766"></a>00766 <span class="keywordflow">if</span> (dest[i] &gt; 126)
+<a name="l00767"></a>00767 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00768"></a>00768 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> c = 0;
+<a name="l00769"></a>00769 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
+<a name="l00770"></a>00770 <span class="keywordflow">if</span> (dest[i] == <span class="charliteral">'!'</span>)
+<a name="l00771"></a>00771 c++;
+<a name="l00772"></a>00772 <span class="keywordflow">if</span> (c&gt;1)
+<a name="l00773"></a>00773 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00774"></a>00774 c = 0;
+<a name="l00775"></a>00775 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
+<a name="l00776"></a>00776 <span class="keywordflow">if</span> (dest[i] == <span class="charliteral">'@'</span>)
+<a name="l00777"></a>00777 c++;
+<a name="l00778"></a>00778 <span class="keywordflow">if</span> (c&gt;1)
+<a name="l00779"></a>00779 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00780"></a>00780
+<a name="l00781"></a>00781 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00782"></a>00782 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29"></a><!-- doxytag: member="Server::JoinUserToChannel" ref="JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29" args="(userrec *user, std::string cname, std::string key)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classchanrec.html">chanrec</a> * Server::JoinUserToChannel </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classchanrec.html">chanrec</a> * Server::JoinUserToChannel </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>cname</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>key</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1974,42 +2005,41 @@ Forces a user to join a channel.
<p>
This is similar to svsjoin and can be used to implement redirection, etc. On success, the return value is a valid pointer to a chanrec* of the channel the user was joined to. On failure, the result is NULL.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00392">392</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#l00410">410</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00411"></a>00411 {
+<a name="l00412"></a>00412 <span class="keywordflow">return</span> add_channel(user,cname.c_str(),key.c_str(),<span class="keyword">false</span>);
+<a name="l00413"></a>00413 }
+</pre></div>
<p>
-<div class="fragment"><pre>00393 {
-00394 <span class="keywordflow">return</span> add_channel(user,cname.c_str(),key.c_str(),<span class="keyword">false</span>);
-00395 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a3" doxytag="Server::Log"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Log_28int_20level_2C_20std_3A_3Astring_20s_29"></a><!-- doxytag: member="Server::Log" ref="Log_28int_20level_2C_20std_3A_3Astring_20s_29" args="(int level, std::string s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::Log </td>
+ <td class="md" nowrap valign="top">void Server::Log </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>level</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>s</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2021,42 +2051,41 @@ 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#l00434">434</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#l00452">452</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00453"></a>00453 {
+<a name="l00454"></a>00454 log(level,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00455"></a>00455 }
+</pre></div>
<p>
-<div class="fragment"><pre>00435 {
-00436 log(level,<span class="stringliteral">"%s"</span>,s.c_str());
-00437 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a33" doxytag="Server::MatchText"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29"></a><!-- doxytag: member="Server::MatchText" ref="MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29" args="(std::string sliteral, std::string spattern)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::MatchText </td>
+ <td class="md" nowrap valign="top">bool Server::MatchText </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>sliteral</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>spattern</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2068,371 +2097,50 @@ Matches text against a glob pattern.
<p>
Uses the ircd's internal matching function to match string against a globbing pattern, e.g. *!*@*.com Returns true if the literal successfully matches the pattern, false if otherwise.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00379">379</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>.<div class="fragment"><pre class="fragment"><a name="l00398"></a>00398 {
+<a name="l00399"></a>00399 <span class="keywordtype">char</span> literal[MAXBUF],pattern[MAXBUF];
+<a name="l00400"></a>00400 strlcpy(literal,sliteral.c_str(),MAXBUF);
+<a name="l00401"></a>00401 strlcpy(pattern,spattern.c_str(),MAXBUF);
+<a name="l00402"></a>00402 <span class="keywordflow">return</span> match(literal,pattern);
+<a name="l00403"></a>00403 }
+</pre></div>
<p>
-<div class="fragment"><pre>00380 {
-00381 <span class="keywordtype">char</span> literal[MAXBUF],pattern[MAXBUF];
-00382 strlcpy(literal,sliteral.c_str(),MAXBUF);
-00383 strlcpy(pattern,spattern.c_str(),MAXBUF);
-00384 <span class="keywordflow">return</span> match(literal,pattern);
-00385 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a58" doxytag="Server::MeshCheckChan"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> bool Server::MeshCheckChan </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top"><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>c</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>servername</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>
-This function is used to check if any users on channel c are on server servername.
-<p>
-This is used internally by PRIVMSG etc. You should not need to use it.
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00791">791</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00792 {
-00793 <span class="keywordflow">if</span> (c)
-00794 {
-00795 <span class="keywordflow">return</span> ChanAnyOnThisServer(c,(<span class="keywordtype">char</span>*)servername.c_str());
-00796 }
-00797 <span class="keywordflow">else</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00798 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a59" doxytag="Server::MeshCheckCommon"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29"></a><!-- doxytag: member="Server::PartUserFromChannel" ref="PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29" args="(userrec *user, std::string cname, std::string reason)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::MeshCheckCommon </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> <em>u</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>servername</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>
-This function is used to check if user u has any channels in common with users on servername.
-<p>
-This is used internally by <a class="el" href="classServer.html#a54">Server::MeshSendCommon</a>. You should very rarely need to use it.
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00800">800</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00801 {
-00802 <span class="keywordflow">if</span> (u)
-00803 {
-00804 <span class="keywordflow">return</span> CommonOnThisServer(u,(<span class="keywordtype">char</span>*)servername.c_str());
-00805 }
-00806 <span class="keywordflow">else</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00807 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a53" doxytag="Server::MeshSendAll"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void Server::MeshSendAll </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
- <td class="mdname1" valign="top" nowrap> <em>text</em> </td>
- <td class="md" valign="top">&nbsp;)&nbsp;</td>
- <td class="md" nowrap><code> [virtual]</code></td>
- </tr>
-
- </table>
- </td>
- </tr>
-</table>
-<table cellspacing=5 cellpadding=0 border=0>
- <tr>
- <td>
- &nbsp;
- </td>
- <td>
-
-<p>
-Sends a line of text to all connected servers.
-<p>
-If a server is not directly reachable, the core deals with routing the message, and will also deal with failures transparently.
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00765">765</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00766 {
-00767 NetSendToAll((<span class="keywordtype">char</span>*)text.c_str());
-00768 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a55" doxytag="Server::MeshSendAllAlive"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void Server::MeshSendAllAlive </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
- <td class="mdname1" valign="top" nowrap> <em>text</em> </td>
- <td class="md" valign="top">&nbsp;)&nbsp;</td>
- <td class="md" nowrap><code> [virtual]</code></td>
- </tr>
-
- </table>
- </td>
- </tr>
-</table>
-<table cellspacing=5 cellpadding=0 border=0>
- <tr>
- <td>
- &nbsp;
- </td>
- <td>
-
-<p>
-This function is equivalent to Server::MeshSendToAll except it will only route to servers which are directly routable.
-<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00776">776</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00777 {
-00778 NetSendToAllAlive((<span class="keywordtype">char</span>*)text.c_str());
-00779 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a57" doxytag="Server::MeshSendAllExcept"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void Server::MeshSendAllExcept </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>target</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>text</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>
-This function sends to all servers EXCEPT the one you specify.
-<p>
-You should usually use this function to send messages, specifying the SENDER of your message as 'target'. This will prevent message loops.
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00786">786</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00787 {
-00788 NetSendToAllExcept(target.c_str(),(<span class="keywordtype">char</span>*)text.c_str());
-00789 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a54" doxytag="Server::MeshSendCommon"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void Server::MeshSendCommon </td>
+ <td class="md" nowrap valign="top"><a class="el" href="classchanrec.html">chanrec</a> * Server::PartUserFromChannel </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>text</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>
-This method sends a line of text to all servers who have users which share common channels with the user you provide.
-<p>
-For example, if user A is on server A, and they are on channels #one and #two, and user B is on server B, and also on channel #one, but user C is on server C and on neither #one or #two, this function will cause the text to only be sent to server B. However, if server B is only reachable via C, it will route it to C (you do not have to worry about this routing, it is done transparently, but its good to know how things work!)
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00770">770</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00771 {
-00772 <span class="keywordflow">if</span> (user)
-00773 NetSendToCommon(user,(<span class="keywordtype">char</span>*)text.c_str());
-00774 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a56" doxytag="Server::MeshSendUnicast"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void Server::MeshSendUnicast </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>destination</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
- <td class="mdname" nowrap> <em>text</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>
-This function sends a line of text directly to a server.
-<p>
-If the server is not directly routable at this time, the server attempts to route text through the mesh.
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00781">781</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-<div class="fragment"><pre>00782 {
-00783 NetSendToOne((<span class="keywordtype">char</span>*)destination.c_str(),(<span class="keywordtype">char</span>*)text.c_str());
-00784 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a30" doxytag="Server::PartUserFromChannel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classchanrec.html">chanrec</a> * Server::PartUserFromChannel </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> <em>user</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>cname</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2444,48 +2152,47 @@ Forces a user to part a channel.
<p>
This is similar to svspart and can be used to implement redirection, etc. Although the return value of this function is a pointer to a channel record, the returned data is undefined and should not be read or written to. This behaviour may be changed in a future version.
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00415">415</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00416"></a>00416 {
+<a name="l00417"></a>00417 <span class="keywordflow">return</span> del_channel(user,cname.c_str(),reason.c_str(),<span class="keyword">false</span>);
+<a name="l00418"></a>00418 }
+</pre></div>
<p>
-<div class="fragment"><pre>00398 {
-00399 <span class="keywordflow">return</span> del_channel(user,cname.c_str(),reason.c_str(),<span class="keyword">false</span>);
-00400 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a40" doxytag="Server::PseudoToUser"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29"></a><!-- doxytag: member="Server::PseudoToUser" ref="PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29" args="(userrec *alive, userrec *zombie, std::string message)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::PseudoToUser </td>
+ <td class="md" nowrap valign="top">bool Server::PseudoToUser </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> <em>alive</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>zombie</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>message</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2497,69 +2204,68 @@ This user takes one user, and switches their file descriptor with another user,
<p>
The user in 'alive' is booted off the server with the given message. The user referred to by 'zombie' should have previously been locked with Server::ZombifyUser, otherwise stale sockets and file descriptor leaks can occur. After this call, the pointer to alive will be invalid, and the pointer to zombie will be equivalent in effect to the old pointer to alive.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00651">651</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="channels_8h-source.html#l00252">ucrec::channel</a>, <a class="el" href="users_8h-source.html#l00146">userrec::chans</a>, <a class="el" href="users_8cpp-source.html#l00226">userrec::ClearBuffer()</a>, <a class="el" href="connection_8h-source.html#l00301">connection::fd</a>, <a class="el" href="modules_8h-source.html#l00099">FD_MAGIC_NUMBER</a>, <a class="el" href="modules_8cpp-source.html#l00118">fd_ref_table</a>, <a class="el" href="connection_8h-source.html#l00305">connection::host</a>, <a class="el" href="users_8h-source.html#l00126">userrec::ident</a>, <a class="el" href="channels_8h-source.html#l00106">chanrec::name</a>, <a class="el" href="users_8h-source.html#l00121">userrec::nick</a>, <a class="el" href="channels_8h-source.html#l00131">chanrec::setby</a>, <a class="el" href="channels_8h-source.html#l00120">chanrec::topic</a>, and <a class="el" href="channels_8h-source.html#l00127">chanrec::topicset</a>.
-<p>
-<div class="fragment"><pre>00652 {
-00653 zombie-&gt;<a class="code" href="classconnection.html#o0">fd</a> = alive-&gt;<a class="code" href="classconnection.html#o0">fd</a>;
-00654 alive-&gt;<a class="code" href="classconnection.html#o0">fd</a> = <a class="code" href="modules_8h.html#a26">FD_MAGIC_NUMBER</a>;
-00655 alive-&gt;<a class="code" href="classuserrec.html#a11">ClearBuffer</a>();
-00656 Write(zombie-&gt;<a class="code" href="classconnection.html#o0">fd</a>,<span class="stringliteral">":%s!%s@%s NICK %s"</span>,alive-&gt;<a class="code" href="classuserrec.html#o0">nick</a>,alive-&gt;<a class="code" href="classuserrec.html#o1">ident</a>,alive-&gt;<a class="code" href="classconnection.html#o1">host</a>,zombie-&gt;<a class="code" href="classuserrec.html#o0">nick</a>);
-00657 kill_link(alive,message.c_str());
-00658 <a class="code" href="modules_8cpp.html#a37">fd_ref_table</a>[zombie-&gt;<a class="code" href="classconnection.html#o0">fd</a>] = zombie;
-00659 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i != MAXCHANS; i++)
-00660 {
-00661 <span class="keywordflow">if</span> (zombie-&gt;chans[i].channel != NULL)
-00662 {
-00663 <span class="keywordflow">if</span> (zombie-&gt;chans[i].channel-&gt;name)
-00664 {
-00665 <a class="code" href="classchanrec.html">chanrec</a>* Ptr = zombie-&gt;<a class="code" href="classuserrec.html#o5">chans</a>[i].<a class="code" href="classucrec.html#o1">channel</a>;
-00666 WriteFrom(zombie-&gt;fd,zombie,<span class="stringliteral">"JOIN %s"</span>,Ptr-&gt;<a class="code" href="classchanrec.html#o0">name</a>);
-00667 <span class="keywordflow">if</span> (Ptr-&gt;<a class="code" href="classchanrec.html#o5">topicset</a>)
-00668 {
-00669 WriteServ(zombie-&gt;fd,<span class="stringliteral">"332 %s %s :%s"</span>, zombie-&gt;nick, Ptr-&gt;<a class="code" href="classchanrec.html#o0">name</a>, Ptr-&gt;<a class="code" href="classchanrec.html#o3">topic</a>);
-00670 WriteServ(zombie-&gt;fd,<span class="stringliteral">"333 %s %s %s %d"</span>, zombie-&gt;nick, Ptr-&gt;<a class="code" href="classchanrec.html#o0">name</a>, Ptr-&gt;<a class="code" href="classchanrec.html#o6">setby</a>, Ptr-&gt;<a class="code" href="classchanrec.html#o5">topicset</a>);
-00671 }
-00672 userlist(zombie,Ptr);
-00673 WriteServ(zombie-&gt;fd,<span class="stringliteral">"366 %s %s :End of /NAMES list."</span>, zombie-&gt;nick, Ptr-&gt;<a class="code" href="classchanrec.html#o0">name</a>);
-00674
-00675 }
-00676 }
-00677 }
-00678
-00679 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a32" doxytag="Server::QuitUser"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8cpp-source.html#l00670">670</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="channels_8h-source.html#l00252">ucrec::channel</a>, <a class="el" href="users_8h-source.html#l00146">userrec::chans</a>, <a class="el" href="users_8cpp-source.html#l00228">userrec::ClearBuffer()</a>, <a class="el" href="connection_8h-source.html#l00042">connection::fd</a>, <a class="el" href="modules_8h-source.html#l00100">FD_MAGIC_NUMBER</a>, <a class="el" href="connection_8h-source.html#l00046">connection::host</a>, <a class="el" href="users_8h-source.html#l00126">userrec::ident</a>, <a class="el" href="channels_8h-source.html#l00106">chanrec::name</a>, <a class="el" href="users_8h-source.html#l00121">userrec::nick</a>, <a class="el" href="channels_8h-source.html#l00131">chanrec::setby</a>, <a class="el" href="channels_8h-source.html#l00120">chanrec::topic</a>, and <a class="el" href="channels_8h-source.html#l00127">chanrec::topicset</a>.<div class="fragment"><pre class="fragment"><a name="l00671"></a>00671 {
+<a name="l00672"></a>00672 zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a> = alive-&gt;<a class="code" href="classconnection.html#fd">fd</a>;
+<a name="l00673"></a>00673 alive-&gt;<a class="code" href="classconnection.html#fd">fd</a> = <a class="code" href="modules_8h.html#FD_5FMAGIC_5FNUMBER">FD_MAGIC_NUMBER</a>;
+<a name="l00674"></a>00674 alive-&gt;<a class="code" href="classuserrec.html#ClearBuffer_28_29">ClearBuffer</a>();
+<a name="l00675"></a>00675 Write(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">":%s!%s@%s NICK %s"</span>,alive-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,alive-&gt;<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,alive-&gt;<a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>,zombie-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>);
+<a name="l00676"></a>00676 kill_link(alive,message.c_str());
+<a name="l00677"></a>00677 <a class="code" href="modules_8cpp.html#fd_5Fref_5Ftable_5B_36_35_35_33_36_5D">fd_ref_table</a>[zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>] = zombie;
+<a name="l00678"></a>00678 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i != MAXCHANS; i++)
+<a name="l00679"></a>00679 {
+<a name="l00680"></a>00680 <span class="keywordflow">if</span> (zombie-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#channel">channel</a> != NULL)
+<a name="l00681"></a>00681 {
+<a name="l00682"></a>00682 <span class="keywordflow">if</span> (zombie-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#channel">channel</a>-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>)
+<a name="l00683"></a>00683 {
+<a name="l00684"></a>00684 <a class="code" href="classchanrec.html">chanrec</a>* Ptr = zombie-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#channel">channel</a>;
+<a name="l00685"></a>00685 WriteFrom(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,zombie,<span class="stringliteral">"JOIN %s"</span>,Ptr-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>);
+<a name="l00686"></a>00686 <span class="keywordflow">if</span> (Ptr-&gt;<a class="code" href="classchanrec.html#topicset">topicset</a>)
+<a name="l00687"></a>00687 {
+<a name="l00688"></a>00688 WriteServ(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"332 %s %s :%s"</span>, zombie-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>, Ptr-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>, Ptr-&gt;<a class="code" href="classchanrec.html#topic_5BMAXBUF_5D">topic</a>);
+<a name="l00689"></a>00689 WriteServ(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"333 %s %s %s %d"</span>, zombie-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>, Ptr-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>, Ptr-&gt;<a class="code" href="classchanrec.html#setby_5BNICKMAX_5D">setby</a>, Ptr-&gt;<a class="code" href="classchanrec.html#topicset">topicset</a>);
+<a name="l00690"></a>00690 }
+<a name="l00691"></a>00691 userlist(zombie,Ptr);
+<a name="l00692"></a>00692 WriteServ(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"366 %s %s :End of /NAMES list."</span>, zombie-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>, Ptr-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>);
+<a name="l00693"></a>00693
+<a name="l00694"></a>00694 }
+<a name="l00695"></a>00695 }
+<a name="l00696"></a>00696 }
+<a name="l00697"></a>00697 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00698"></a>00698 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29"></a><!-- doxytag: member="Server::QuitUser" ref="QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29" args="(userrec *user, std::string reason)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::QuitUser </td>
+ <td class="md" nowrap valign="top">void Server::QuitUser </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2573,42 +2279,41 @@ To the user, it will appear as if they typed /QUIT themselves, except for the fa
WARNING!<p>
Once you call this function, userrec* user will immediately become INVALID. You MUST NOT write to, or read from this pointer after calling the QuitUser method UNDER ANY CIRCUMSTANCES! The best course of action after calling this method is to immediately bail from your handler.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00419">419</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#l00437">437</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00438"></a>00438 {
+<a name="l00439"></a>00439 kill_link(user,reason.c_str());
+<a name="l00440"></a>00440 }
+</pre></div>
<p>
-<div class="fragment"><pre>00420 {
-00421 kill_link(user,reason.c_str());
-00422 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="Server::Send"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Send_28int_20Socket_2C_20std_3A_3Astring_20s_29"></a><!-- doxytag: member="Server::Send" ref="Send_28int_20Socket_2C_20std_3A_3Astring_20s_29" args="(int Socket, std::string s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::Send </td>
+ <td class="md" nowrap valign="top">void Server::Send </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>Socket</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>s</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2620,54 +2325,53 @@ 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#l00449">449</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#l00467">467</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00468"></a>00468 {
+<a name="l00469"></a>00469 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00470"></a>00470 }
+</pre></div>
<p>
-<div class="fragment"><pre>00450 {
-00451 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
-00452 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a9" doxytag="Server::SendChannel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29"></a><!-- doxytag: member="Server::SendChannel" ref="SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29" args="(userrec *User, chanrec *Channel, std::string s, bool IncludeSender)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendChannel </td>
+ <td class="md" nowrap valign="top">void Server::SendChannel </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> <em>User</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>Channel</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>s</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>IncludeSender</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2679,55 +2383,54 @@ 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#l00483">483</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#l00501">501</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00502"></a>00502 {
+<a name="l00503"></a>00503 <span class="keywordflow">if</span> (IncludeSender)
+<a name="l00504"></a>00504 {
+<a name="l00505"></a>00505 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00506"></a>00506 }
+<a name="l00507"></a>00507 <span class="keywordflow">else</span>
+<a name="l00508"></a>00508 {
+<a name="l00509"></a>00509 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00510"></a>00510 }
+<a name="l00511"></a>00511 }
+</pre></div>
<p>
-<div class="fragment"><pre>00484 {
-00485 <span class="keywordflow">if</span> (IncludeSender)
-00486 {
-00487 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00488 }
-00489 <span class="keywordflow">else</span>
-00490 {
-00491 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00492 }
-00493 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a6" doxytag="Server::SendChannelServerNotice"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29"></a><!-- doxytag: member="Server::SendChannelServerNotice" ref="SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29" args="(std::string ServName, chanrec *Channel, std::string text)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendChannelServerNotice </td>
+ <td class="md" nowrap valign="top">void Server::SendChannelServerNotice </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>ServName</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>Channel</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>text</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2739,48 +2442,47 @@ Writes text to a channel, but from a server, including all.
<p>
This can be used to send server notices to a group of users.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00478">478</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#l00496">496</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00497"></a>00497 {
+<a name="l00498"></a>00498 WriteChannelWithServ((<span class="keywordtype">char</span>*)ServName.c_str(), Channel, <span class="stringliteral">"%s"</span>, text.c_str());
+<a name="l00499"></a>00499 }
+</pre></div>
<p>
-<div class="fragment"><pre>00479 {
-00480 WriteChannelWithServ((<span class="keywordtype">char</span>*)ServName.c_str(), Channel, <span class="stringliteral">"%s"</span>, text.c_str());
-00481 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a11" doxytag="Server::SendCommon"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29"></a><!-- doxytag: member="Server::SendCommon" ref="SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29" args="(userrec *User, std::string text, bool IncludeSender)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendCommon </td>
+ <td class="md" nowrap valign="top">void Server::SendCommon </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> <em>User</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>text</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>IncludeSender</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2792,55 +2494,54 @@ 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#l00500">500</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#l00518">518</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00519"></a>00519 {
+<a name="l00520"></a>00520 <span class="keywordflow">if</span> (IncludeSender)
+<a name="l00521"></a>00521 {
+<a name="l00522"></a>00522 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
+<a name="l00523"></a>00523 }
+<a name="l00524"></a>00524 <span class="keywordflow">else</span>
+<a name="l00525"></a>00525 {
+<a name="l00526"></a>00526 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
+<a name="l00527"></a>00527 }
+<a name="l00528"></a>00528 }
+</pre></div>
<p>
-<div class="fragment"><pre>00501 {
-00502 <span class="keywordflow">if</span> (IncludeSender)
-00503 {
-00504 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00505 }
-00506 <span class="keywordflow">else</span>
-00507 {
-00508 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00509 }
-00510 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a7" doxytag="Server::SendFrom"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29"></a><!-- doxytag: member="Server::SendFrom" ref="SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29" args="(int Socket, userrec *User, std::string s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendFrom </td>
+ <td class="md" nowrap valign="top">void Server::SendFrom </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>Socket</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>User</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>s</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2852,48 +2553,47 @@ 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#l00459">459</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#l00477">477</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00478"></a>00478 {
+<a name="l00479"></a>00479 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00480"></a>00480 }
+</pre></div>
<p>
-<div class="fragment"><pre>00460 {
-00461 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00462 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a27" doxytag="Server::SendMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="Server::SendMode" ref="SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendMode </td>
+ <td class="md" nowrap valign="top">void Server::SendMode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2912,35 +2612,34 @@ 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#l00444">444</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#l00462">462</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8h.html#a36">server_mode()</a>.
+References <a class="el" href="mode_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">server_mode()</a>.<div class="fragment"><pre class="fragment"><a name="l00463"></a>00463 {
+<a name="l00464"></a>00464 <a class="code" href="mode_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">server_mode</a>(parameters,pcnt,user);
+<a name="l00465"></a>00465 }
+</pre></div>
<p>
-<div class="fragment"><pre>00445 {
-00446 <a class="code" href="modules_8h.html#a36">server_mode</a>(parameters,pcnt,user);
-00447 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a2" doxytag="Server::SendOpers"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendOpers_28std_3A_3Astring_20s_29"></a><!-- doxytag: member="Server::SendOpers" ref="SendOpers_28std_3A_3Astring_20s_29" args="(std::string s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendOpers </td>
+ <td class="md" nowrap valign="top">void Server::SendOpers </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>s</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2952,42 +2651,41 @@ Sends text to all opers.
<p>
This method sends a server notice to all opers with the usermode +s.
<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#l00392">392</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00393"></a>00393 {
+<a name="l00394"></a>00394 WriteOpers(<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00395"></a>00395 }
+</pre></div>
<p>
-<div class="fragment"><pre>00375 {
-00376 WriteOpers(<span class="stringliteral">"%s"</span>,s.c_str());
-00377 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a5" doxytag="Server::SendServ"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29"></a><!-- doxytag: member="Server::SendServ" ref="SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29" args="(int Socket, std::string s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendServ </td>
+ <td class="md" nowrap valign="top">void Server::SendServ </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>Socket</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>s</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2999,48 +2697,47 @@ 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#l00454">454</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#l00472">472</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00473"></a>00473 {
+<a name="l00474"></a>00474 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00475"></a>00475 }
+</pre></div>
<p>
-<div class="fragment"><pre>00455 {
-00456 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
-00457 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a8" doxytag="Server::SendTo"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29"></a><!-- doxytag: member="Server::SendTo" ref="SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29" args="(userrec *Source, userrec *Dest, std::string s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendTo </td>
+ <td class="md" nowrap valign="top">void Server::SendTo </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> <em>Source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>Dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>s</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3056,59 +2753,58 @@ 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#l00464">464</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#l00482">482</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="connection_8h-source.html#l00301">connection::fd</a>.
+References <a class="el" href="connection_8h-source.html#l00042">connection::fd</a>.<div class="fragment"><pre class="fragment"><a name="l00483"></a>00483 {
+<a name="l00484"></a>00484 <span class="keywordflow">if</span> (!Source)
+<a name="l00485"></a>00485 {
+<a name="l00486"></a>00486 <span class="comment">// if source is NULL, then the message originates from the local server</span>
+<a name="l00487"></a>00487 Write(Dest-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">":%s %s"</span>,this-&gt;GetServerName().c_str(),s.c_str());
+<a name="l00488"></a>00488 }
+<a name="l00489"></a>00489 <span class="keywordflow">else</span>
+<a name="l00490"></a>00490 {
+<a name="l00491"></a>00491 <span class="comment">// otherwise it comes from the user specified</span>
+<a name="l00492"></a>00492 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00493"></a>00493 }
+<a name="l00494"></a>00494 }
+</pre></div>
<p>
-<div class="fragment"><pre>00465 {
-00466 <span class="keywordflow">if</span> (!Source)
-00467 {
-00468 <span class="comment">// if source is NULL, then the message originates from the local server</span>
-00469 Write(Dest-&gt;<a class="code" href="classconnection.html#o0">fd</a>,<span class="stringliteral">":%s %s"</span>,this-&gt;GetServerName().c_str(),s.c_str());
-00470 }
-00471 <span class="keywordflow">else</span>
-00472 {
-00473 <span class="comment">// otherwise it comes from the user specified</span>
-00474 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
-00475 }
-00476 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a28" doxytag="Server::SendToModeMask"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29"></a><!-- doxytag: member="Server::SendToModeMask" ref="SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29" args="(std::string modes, int flags, std::string text)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendToModeMask </td>
+ <td class="md" nowrap valign="top">void Server::SendToModeMask </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>modes</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>flags</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>text</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3122,42 +2818,41 @@ These can be RFC specified modes such as +i, or module provided modes, including
Serv-&gt;SendToModeMask("xi", WM_OR, "m00");<p>
Then the text 'm00' will be sent to all users with EITHER mode x or i. Conversely if you used WM_AND, the user must have both modes set to receive the message.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00387">387</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#l00405">405</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00406"></a>00406 {
+<a name="l00407"></a>00407 WriteMode(modes.c_str(),flags,<span class="stringliteral">"%s"</span>,text.c_str());
+<a name="l00408"></a>00408 }
+</pre></div>
<p>
-<div class="fragment"><pre>00388 {
-00389 WriteMode(modes.c_str(),flags,<span class="stringliteral">"%s"</span>,text.c_str());
-00390 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a12" doxytag="Server::SendWallops"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29"></a><!-- doxytag: member="Server::SendWallops" ref="SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29" args="(userrec *User, std::string text)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Server::SendWallops </td>
+ <td class="md" nowrap valign="top">void Server::SendWallops </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> <em>User</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>text</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3169,42 +2864,41 @@ 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#l00512">512</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#l00530">530</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00531"></a>00531 {
+<a name="l00532"></a>00532 WriteWallOps(User,<span class="keyword">false</span>,<span class="stringliteral">"%s"</span>,text.c_str());
+<a name="l00533"></a>00533 }
+</pre></div>
<p>
-<div class="fragment"><pre>00513 {
-00514 WriteWallOps(User,<span class="keyword">false</span>,<span class="stringliteral">"%s"</span>,text.c_str());
-00515 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a39" doxytag="Server::UserToPseudo"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29"></a><!-- doxytag: member="Server::UserToPseudo" ref="UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29" args="(userrec *user, std::string message)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool Server::UserToPseudo </td>
+ <td class="md" nowrap valign="top">bool Server::UserToPseudo </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>std::string&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname" nowrap> <em>message</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3216,46 +2910,46 @@ Remove a user's connection to the irc server, but leave their client in existenc
<p>
When you call this function, the user's file descriptor will be replaced with the value of FD_MAGIC_NUMBER and their old file descriptor will be closed. This idle client will remain until it is restored with a valid file descriptor, or is removed from IRC by an operator After this call, the pointer to user will be invalid.
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00621">621</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-References <a class="el" href="users_8cpp-source.html#l00226">userrec::ClearBuffer()</a>, <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="connection_8h-source.html#l00301">connection::fd</a>, <a class="el" href="modules_8h-source.html#l00099">FD_MAGIC_NUMBER</a>, <a class="el" href="connection_8h-source.html#l00305">connection::host</a>, and <a class="el" href="users_8h-source.html#l00126">userrec::ident</a>.
-<p>
-<div class="fragment"><pre>00622 {
-00623 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> old_fd = user-&gt;<a class="code" href="classconnection.html#o0">fd</a>;
-00624 user-&gt;<a class="code" href="classconnection.html#o0">fd</a> = <a class="code" href="modules_8h.html#a26">FD_MAGIC_NUMBER</a>;
-00625 user-&gt;<a class="code" href="classuserrec.html#a11">ClearBuffer</a>();
-00626 Write(old_fd,<span class="stringliteral">"ERROR :Closing link (%s@%s) [%s]"</span>,user-&gt;<a class="code" href="classuserrec.html#o1">ident</a>,user-&gt;<a class="code" href="classconnection.html#o1">host</a>,message.c_str());
-00627 <span class="preprocessor">#ifdef USE_KQUEUE</span>
-00628 <span class="preprocessor"></span> <span class="keyword">struct </span>kevent ke;
-00629 EV_SET(&amp;ke, old_fd, EVFILT_READ, EV_DELETE, 0, 0, NULL);
-00630 <span class="keywordtype">int</span> i = kevent(kq, &amp;ke, 1, 0, 0, NULL);
-00631 <span class="keywordflow">if</span> (i == -1)
-00632 {
-00633 log(DEBUG,<span class="stringliteral">"kqueue: Failed to remove user from queue!"</span>);
-00634 }
-00635 <span class="preprocessor">#endif</span>
-00636 <span class="preprocessor"></span><span class="preprocessor">#ifdef USE_EPOLL</span>
-00637 <span class="preprocessor"></span> <span class="keyword">struct </span>epoll_event ev;
-00638 ev.events = EPOLLIN | EPOLLET;
-00639 ev.data.fd = old_fd;
-00640 <span class="keywordtype">int</span> i = epoll_ctl(ep, EPOLL_CTL_DEL, old_fd, &amp;ev);
-00641 <span class="keywordflow">if</span> (i &lt; 0)
-00642 {
-00643 log(DEBUG,<span class="stringliteral">"epoll: List deletion failure!"</span>);
-00644 }
-00645 <span class="preprocessor">#endif</span>
-00646 <span class="preprocessor"></span>
-00647 shutdown(old_fd,2);
-00648 close(old_fd);
-00649 }
-</pre></div> </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00639">639</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+<p>
+References <a class="el" href="users_8cpp-source.html#l00228">userrec::ClearBuffer()</a>, <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="connection_8h-source.html#l00042">connection::fd</a>, <a class="el" href="modules_8h-source.html#l00100">FD_MAGIC_NUMBER</a>, <a class="el" href="connection_8h-source.html#l00046">connection::host</a>, and <a class="el" href="users_8h-source.html#l00126">userrec::ident</a>.<div class="fragment"><pre class="fragment"><a name="l00640"></a>00640 {
+<a name="l00641"></a>00641 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> old_fd = user-&gt;<a class="code" href="classconnection.html#fd">fd</a>;
+<a name="l00642"></a>00642 user-&gt;<a class="code" href="classconnection.html#fd">fd</a> = <a class="code" href="modules_8h.html#FD_5FMAGIC_5FNUMBER">FD_MAGIC_NUMBER</a>;
+<a name="l00643"></a>00643 user-&gt;<a class="code" href="classuserrec.html#ClearBuffer_28_29">ClearBuffer</a>();
+<a name="l00644"></a>00644 Write(old_fd,<span class="stringliteral">"ERROR :Closing link (%s@%s) [%s]"</span>,user-&gt;<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,user-&gt;<a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>,message.c_str());
+<a name="l00645"></a>00645 <span class="preprocessor">#ifdef USE_KQUEUE</span>
+<a name="l00646"></a>00646 <span class="preprocessor"></span> <span class="keyword">struct </span>kevent ke;
+<a name="l00647"></a>00647 EV_SET(&amp;ke, old_fd, EVFILT_READ, EV_DELETE, 0, 0, NULL);
+<a name="l00648"></a>00648 <span class="keywordtype">int</span> i = kevent(kq, &amp;ke, 1, 0, 0, NULL);
+<a name="l00649"></a>00649 <span class="keywordflow">if</span> (i == -1)
+<a name="l00650"></a>00650 {
+<a name="l00651"></a>00651 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"kqueue: Failed to remove user from queue!"</span>);
+<a name="l00652"></a>00652 }
+<a name="l00653"></a>00653 <span class="preprocessor">#endif</span>
+<a name="l00654"></a>00654 <span class="preprocessor"></span><span class="preprocessor">#ifdef USE_EPOLL</span>
+<a name="l00655"></a>00655 <span class="preprocessor"></span> <span class="keyword">struct </span>epoll_event ev;
+<a name="l00656"></a>00656 ev.events = EPOLLIN | EPOLLET;
+<a name="l00657"></a>00657 ev.data.fd = old_fd;
+<a name="l00658"></a>00658 <span class="keywordtype">int</span> i = epoll_ctl(ep, EPOLL_CTL_DEL, old_fd, &amp;ev);
+<a name="l00659"></a>00659 <span class="keywordflow">if</span> (i &lt; 0)
+<a name="l00660"></a>00660 {
+<a name="l00661"></a>00661 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"epoll: List deletion failure!"</span>);
+<a name="l00662"></a>00662 }
+<a name="l00663"></a>00663 <span class="preprocessor">#endif</span>
+<a name="l00664"></a>00664 <span class="preprocessor"></span>
+<a name="l00665"></a>00665 shutdown(old_fd,2);
+<a name="l00666"></a>00666 close(old_fd);
+<a name="l00667"></a>00667 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00668"></a>00668 }
+</pre></div>
+<p>
+ </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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:32 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classServer__coll__graph.gif b/docs/module-doc/classServer__coll__graph.gif
index b33352f63..82a02230d 100644
--- a/docs/module-doc/classServer__coll__graph.gif
+++ b/docs/module-doc/classServer__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classServer__coll__graph.map b/docs/module-doc/classServer__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classServer__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classServer__coll__graph.md5 b/docs/module-doc/classServer__coll__graph.md5
new file mode 100644
index 000000000..b3a85952f
--- /dev/null
+++ b/docs/module-doc/classServer__coll__graph.md5
@@ -0,0 +1 @@
+d7b2c974d98c31619189da65cb01c6a4 \ No newline at end of file
diff --git a/docs/module-doc/classServer__inherit__graph.gif b/docs/module-doc/classServer__inherit__graph.gif
index b86b4b57e..f88c80980 100644
--- a/docs/module-doc/classServer__inherit__graph.gif
+++ b/docs/module-doc/classServer__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classServer__inherit__graph.map b/docs/module-doc/classServer__inherit__graph.map
new file mode 100644
index 000000000..8b1d85be3
--- /dev/null
+++ b/docs/module-doc/classServer__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,7 87,34
diff --git a/docs/module-doc/classServer__inherit__graph.md5 b/docs/module-doc/classServer__inherit__graph.md5
new file mode 100644
index 000000000..76fb1d5ca
--- /dev/null
+++ b/docs/module-doc/classServer__inherit__graph.md5
@@ -0,0 +1 @@
+5ce04eb90ca9c0c01335daa7c092c0f0 \ No newline at end of file
diff --git a/docs/module-doc/classVersion-members.html b/docs/module-doc/classVersion-members.html
index e4a6ab61b..641098da6 100644
--- a/docs/module-doc/classVersion-members.html
+++ b/docs/module-doc/classVersion-members.html
@@ -1,23 +1,22 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Version Member List</h1>This is the complete list of members for <a class="el" href="classVersion.html">Version</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classVersion.html#o3">Build</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classVersion.html#o4">Flags</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classVersion.html#o0">Major</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classVersion.html#o1">Minor</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classVersion.html#o2">Revision</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classVersion.html#a0">Version</a>(int major, int minor, int revision, int build, int flags)</td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:45 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Version Member List</h1>This is the complete list of members for <a class="el" href="classVersion.html">Version</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classVersion.html#Build">Build</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classVersion.html#Flags">Flags</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classVersion.html#Major">Major</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classVersion.html#Minor">Minor</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classVersion.html#Revision">Revision</a></td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classVersion.html#Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29">Version</a>(int major, int minor, int revision, int build, int flags)</td><td><a class="el" href="classVersion.html">Version</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classVersion.html b/docs/module-doc/classVersion.html
index 712ebc942..c2caf8f31 100644
--- a/docs/module-doc/classVersion.html
+++ b/docs/module-doc/classVersion.html
@@ -1,94 +1,93 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Version class Reference</title>
+<title>InspIRCd: Version Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>Version Class Reference</h1>Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>Version Class Reference</h1><!-- doxytag: class="Version" --><!-- doxytag: inherits="classbase" -->Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="modules_8h-source.html">modules.h</a>&gt;</code>
<p>
Inheritance diagram for Version:<p><center><img src="classVersion__inherit__graph.gif" border="0" usemap="#Version__inherit__map" alt="Inheritance graph"></center>
<map name="Version__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="8,7,88,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Version:<p><center><img src="classVersion__coll__graph.gif" border="0" usemap="#Version__coll__map" alt="Collaboration graph"></center>
<map name="Version__coll__map">
-<area href="classclassbase.html" shape="rect" coords="7,98,87,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,97,87,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classVersion-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classVersion-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classVersion.html#a0">Version</a> (int major, int minor, int revision, int build, int flags)</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVersion.html#Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29">Version</a> (int major, int minor, int revision, int build, int flags)</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classVersion.html#o0">Major</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVersion.html#Major">Major</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classVersion.html#o1">Minor</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVersion.html#Minor">Minor</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classVersion.html#o2">Revision</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVersion.html#Revision">Revision</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classVersion.html#o3">Build</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVersion.html#Build">Build</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classVersion.html#o4">Flags</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVersion.html#Flags">Flags</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module.
<p>
-A class of type Version is returned by the GetVersion method of the <a class="el" href="classModule.html">Module</a> class.
+A class of type Version is returned by the GetVersion method of the <a class="el" href="classModule.html">Module</a> class.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00111">111</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="modules_8h-source.html#l00112">112</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29"></a><!-- doxytag: member="Version::Version" ref="Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29" args="(int major, int minor, int revision, int build, int flags)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> Version::Version </td>
+ <td class="md" nowrap valign="top">Version::Version </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname" nowrap> <em>major</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>minor</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>revision</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>build</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>flags</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -98,25 +97,26 @@ Definition at line <a class="el" href="modules_8h-source.html#l00111">111</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00245">245</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#l00246">246</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00246"></a>00246 : <a class="code" href="classVersion.html#Major">Major</a>(major), <a class="code" href="classVersion.html#Minor">Minor</a>(minor), <a class="code" href="classVersion.html#Revision">Revision</a>(revision), <a class="code" href="classVersion.html#Build">Build</a>(build), <a class="code" href="classVersion.html#Flags">Flags</a>(flags) { };
+</pre></div>
<p>
-<div class="fragment"><pre>00245 : <a class="code" href="classVersion.html#o0">Major</a>(major), <a class="code" href="classVersion.html#o1">Minor</a>(minor), <a class="code" href="classVersion.html#o2">Revision</a>(revision), <a class="code" href="classVersion.html#o3">Build</a>(build), <a class="code" href="classVersion.html#o4">Flags</a>(flags) { };
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o3" doxytag="Version::Build"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Build"></a><!-- doxytag: member="Version::Build" ref="Build" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const int <a class="el" href="classVersion.html#o3">Version::Build</a>
+ <td class="md" nowrap valign="top">const int <a class="el" href="classVersion.html#Build">Version::Build</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -126,21 +126,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00245">245</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00114">114</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#l00115">115</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="Version::Flags"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Flags"></a><!-- doxytag: member="Version::Flags" ref="Flags" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const int <a class="el" href="classVersion.html#o4">Version::Flags</a>
+ <td class="md" nowrap valign="top">const int <a class="el" href="classVersion.html#Flags">Version::Flags</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -150,21 +151,22 @@ Definition at line <a class="el" href="modules_8h-source.html#l00114">114</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00114">114</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#l00115">115</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="Version::Major"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Major"></a><!-- doxytag: member="Version::Major" ref="Major" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const int <a class="el" href="classVersion.html#o0">Version::Major</a>
+ <td class="md" nowrap valign="top">const int <a class="el" href="classVersion.html#Major">Version::Major</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -174,21 +176,22 @@ Definition at line <a class="el" href="modules_8h-source.html#l00114">114</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00114">114</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#l00115">115</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="Version::Minor"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Minor"></a><!-- doxytag: member="Version::Minor" ref="Minor" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const int <a class="el" href="classVersion.html#o1">Version::Minor</a>
+ <td class="md" nowrap valign="top">const int <a class="el" href="classVersion.html#Minor">Version::Minor</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -198,21 +201,22 @@ Definition at line <a class="el" href="modules_8h-source.html#l00114">114</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00114">114</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#l00115">115</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="o2" doxytag="Version::Revision"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Revision"></a><!-- doxytag: member="Version::Revision" ref="Revision" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const int <a class="el" href="classVersion.html#o2">Version::Revision</a>
+ <td class="md" nowrap valign="top">const int <a class="el" href="classVersion.html#Revision">Version::Revision</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -222,14 +226,13 @@ Definition at line <a class="el" href="modules_8h-source.html#l00114">114</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00114">114</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#l00115">115</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:45 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classVersion__coll__graph.gif b/docs/module-doc/classVersion__coll__graph.gif
index f5f25b493..50ee9702d 100644
--- a/docs/module-doc/classVersion__coll__graph.gif
+++ b/docs/module-doc/classVersion__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classVersion__coll__graph.map b/docs/module-doc/classVersion__coll__graph.map
new file mode 100644
index 000000000..f3b09806a
--- /dev/null
+++ b/docs/module-doc/classVersion__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,97 87,124
diff --git a/docs/module-doc/classVersion__coll__graph.md5 b/docs/module-doc/classVersion__coll__graph.md5
new file mode 100644
index 000000000..0adad4c34
--- /dev/null
+++ b/docs/module-doc/classVersion__coll__graph.md5
@@ -0,0 +1 @@
+fefba61fe52901a468a48889da2a441a \ No newline at end of file
diff --git a/docs/module-doc/classVersion__inherit__graph.gif b/docs/module-doc/classVersion__inherit__graph.gif
index ccf9ff1f7..319126975 100644
--- a/docs/module-doc/classVersion__inherit__graph.gif
+++ b/docs/module-doc/classVersion__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classVersion__inherit__graph.map b/docs/module-doc/classVersion__inherit__graph.map
new file mode 100644
index 000000000..8b1d85be3
--- /dev/null
+++ b/docs/module-doc/classVersion__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,7 87,34
diff --git a/docs/module-doc/classVersion__inherit__graph.md5 b/docs/module-doc/classVersion__inherit__graph.md5
new file mode 100644
index 000000000..01df9c106
--- /dev/null
+++ b/docs/module-doc/classVersion__inherit__graph.md5
@@ -0,0 +1 @@
+5251e2652b8ea61fa066d57081a1dee5 \ No newline at end of file
diff --git a/docs/module-doc/classWhoWasUser-members.html b/docs/module-doc/classWhoWasUser-members.html
index 59188e399..7708132ee 100644
--- a/docs/module-doc/classWhoWasUser-members.html
+++ b/docs/module-doc/classWhoWasUser-members.html
@@ -1,21 +1,20 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>WhoWasUser Member List</h1>This is the complete list of members for <a class="el" href="classWhoWasUser.html">WhoWasUser</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#o2">dhost</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#o4">fullname</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#o3">host</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#o1">ident</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#o0">nick</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#o5">server</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#o6">signon</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
-</table><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:45 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>WhoWasUser Member List</h1>This is the complete list of members for <a class="el" href="classWhoWasUser.html">WhoWasUser</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#dhost_5B_31_36_30_5D">dhost</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#fullname_5BMAXGECOS_2B_31_5D">fullname</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#host_5B_31_36_30_5D">host</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#ident_5BIDENTMAX_2B_31_5D">ident</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#nick_5BNICKMAX_5D">nick</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#server_5B_32_35_36_5D">server</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classWhoWasUser.html#signon">signon</a></td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classWhoWasUser.html b/docs/module-doc/classWhoWasUser.html
index 726707548..aa182b7a0 100644
--- a/docs/module-doc/classWhoWasUser.html
+++ b/docs/module-doc/classWhoWasUser.html
@@ -1,32 +1,32 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: WhoWasUser class Reference</title>
+<title>InspIRCd: WhoWasUser Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>WhoWasUser Class Reference</h1>A lightweight userrec used by WHOWAS.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>WhoWasUser Class Reference</h1><!-- doxytag: class="WhoWasUser" -->A lightweight userrec used by WHOWAS.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="users_8h-source.html">users.h</a>&gt;</code>
<p>
Collaboration diagram for WhoWasUser:<p><center><img src="classWhoWasUser__coll__graph.gif" border="0" usemap="#WhoWasUser__coll__map" alt="Collaboration graph"></center>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classWhoWasUser-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classWhoWasUser-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classWhoWasUser.html#o0">nick</a> [NICKMAX]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWhoWasUser.html#nick_5BNICKMAX_5D">nick</a> [NICKMAX]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classWhoWasUser.html#o1">ident</a> [IDENTMAX+1]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWhoWasUser.html#ident_5BIDENTMAX_2B_31_5D">ident</a> [IDENTMAX+1]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classWhoWasUser.html#o2">dhost</a> [160]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWhoWasUser.html#dhost_5B_31_36_30_5D">dhost</a> [160]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classWhoWasUser.html#o3">host</a> [160]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWhoWasUser.html#host_5B_31_36_30_5D">host</a> [160]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classWhoWasUser.html#o4">fullname</a> [MAXGECOS+1]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWhoWasUser.html#fullname_5BMAXGECOS_2B_31_5D">fullname</a> [MAXGECOS+1]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classWhoWasUser.html#o5">server</a> [256]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWhoWasUser.html#server_5B_32_35_36_5D">server</a> [256]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classWhoWasUser.html#o6">signon</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWhoWasUser.html#signon">signon</a></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -35,18 +35,19 @@ A lightweight userrec used by WHOWAS.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00325">325</a> of file <a class="el" href="users_8h-source.html">users.h</a>.<hr><h2>Member Data Documentation</h2>
-<a name="o2" doxytag="WhoWasUser::dhost"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dhost_5B_31_36_30_5D"></a><!-- doxytag: member="WhoWasUser::dhost" ref="dhost_5B_31_36_30_5D" args="[160]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classWhoWasUser.html#o2">WhoWasUser::dhost</a>[160]
+ <td class="md" nowrap valign="top">char <a class="el" href="classWhoWasUser.html#dhost_5B_31_36_30_5D">WhoWasUser::dhost</a>[160] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -59,18 +60,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00325">325</a> of f
Definition at line <a class="el" href="users_8h-source.html#l00330">330</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="WhoWasUser::fullname"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="fullname_5BMAXGECOS_2B_31_5D"></a><!-- doxytag: member="WhoWasUser::fullname" ref="fullname_5BMAXGECOS_2B_31_5D" args="[MAXGECOS+1]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classWhoWasUser.html#o4">WhoWasUser::fullname</a>[MAXGECOS+1]
+ <td class="md" nowrap valign="top">char <a class="el" href="classWhoWasUser.html#fullname_5BMAXGECOS_2B_31_5D">WhoWasUser::fullname</a>[MAXGECOS+1] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -83,18 +85,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00330">330</a> of f
Definition at line <a class="el" href="users_8h-source.html#l00332">332</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o3" doxytag="WhoWasUser::host"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="host_5B_31_36_30_5D"></a><!-- doxytag: member="WhoWasUser::host" ref="host_5B_31_36_30_5D" args="[160]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classWhoWasUser.html#o3">WhoWasUser::host</a>[160]
+ <td class="md" nowrap valign="top">char <a class="el" href="classWhoWasUser.html#host_5B_31_36_30_5D">WhoWasUser::host</a>[160] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -107,18 +110,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00332">332</a> of f
Definition at line <a class="el" href="users_8h-source.html#l00331">331</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="WhoWasUser::ident"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ident_5BIDENTMAX_2B_31_5D"></a><!-- doxytag: member="WhoWasUser::ident" ref="ident_5BIDENTMAX_2B_31_5D" args="[IDENTMAX+1]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classWhoWasUser.html#o1">WhoWasUser::ident</a>[IDENTMAX+1]
+ <td class="md" nowrap valign="top">char <a class="el" href="classWhoWasUser.html#ident_5BIDENTMAX_2B_31_5D">WhoWasUser::ident</a>[IDENTMAX+1] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -131,18 +135,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00331">331</a> of f
Definition at line <a class="el" href="users_8h-source.html#l00329">329</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="WhoWasUser::nick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="nick_5BNICKMAX_5D"></a><!-- doxytag: member="WhoWasUser::nick" ref="nick_5BNICKMAX_5D" args="[NICKMAX]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classWhoWasUser.html#o0">WhoWasUser::nick</a>[NICKMAX]
+ <td class="md" nowrap valign="top">char <a class="el" href="classWhoWasUser.html#nick_5BNICKMAX_5D">WhoWasUser::nick</a>[NICKMAX] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -155,18 +160,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00329">329</a> of f
Definition at line <a class="el" href="users_8h-source.html#l00328">328</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o5" doxytag="WhoWasUser::server"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="server_5B_32_35_36_5D"></a><!-- doxytag: member="WhoWasUser::server" ref="server_5B_32_35_36_5D" args="[256]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classWhoWasUser.html#o5">WhoWasUser::server</a>[256]
+ <td class="md" nowrap valign="top">char <a class="el" href="classWhoWasUser.html#server_5B_32_35_36_5D">WhoWasUser::server</a>[256] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -179,18 +185,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00328">328</a> of f
Definition at line <a class="el" href="users_8h-source.html#l00333">333</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o6" doxytag="WhoWasUser::signon"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="signon"></a><!-- doxytag: member="WhoWasUser::signon" ref="signon" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classWhoWasUser.html#o6">WhoWasUser::signon</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classWhoWasUser.html#signon">WhoWasUser::signon</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -205,9 +212,8 @@ Definition at line <a class="el" href="users_8h-source.html#l00334">334</a> of f
</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:45 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classWhoWasUser__coll__graph.gif b/docs/module-doc/classWhoWasUser__coll__graph.gif
index 75bc7196c..1322c5865 100644
--- a/docs/module-doc/classWhoWasUser__coll__graph.gif
+++ b/docs/module-doc/classWhoWasUser__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classWhoWasUser__coll__graph.map b/docs/module-doc/classWhoWasUser__coll__graph.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/classWhoWasUser__coll__graph.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/classWhoWasUser__coll__graph.md5 b/docs/module-doc/classWhoWasUser__coll__graph.md5
new file mode 100644
index 000000000..68ba38fc7
--- /dev/null
+++ b/docs/module-doc/classWhoWasUser__coll__graph.md5
@@ -0,0 +1 @@
+5ef57f5c0e57327876d095482c1729ea \ No newline at end of file
diff --git a/docs/module-doc/classXLine-members.html b/docs/module-doc/classXLine-members.html
index 159aeda02..5bef18732 100644
--- a/docs/module-doc/classXLine-members.html
+++ b/docs/module-doc/classXLine-members.html
@@ -1,22 +1,21 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>XLine Member List</h1>This is the complete list of members for <a class="el" href="classXLine.html">XLine</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classXLine.html#o1">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o4">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o3">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o0">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o2">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:47 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>XLine Member List</h1>This is the complete list of members for <a class="el" href="classXLine.html">XLine</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#duration">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#n_5Fmatches">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#reason_5BMAXBUF_5D">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#set_5Ftime">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#source_5B_32_35_36_5D">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classXLine.html b/docs/module-doc/classXLine.html
index 2c470752c..45d896e8c 100644
--- a/docs/module-doc/classXLine.html
+++ b/docs/module-doc/classXLine.html
@@ -1,46 +1,46 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: XLine class Reference</title>
+<title>InspIRCd: XLine Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>XLine Class Reference</h1>XLine is the base class for ban lines such as G lines and K lines.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>XLine Class Reference</h1><!-- doxytag: class="XLine" --><!-- doxytag: inherits="classbase" -->XLine is the base class for ban lines such as G lines and K lines.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="xline_8h-source.html">xline.h</a>&gt;</code>
<p>
Inheritance diagram for XLine:<p><center><img src="classXLine__inherit__graph.gif" border="0" usemap="#XLine__inherit__map" alt="Inheritance graph"></center>
<map name="XLine__inherit__map">
-<area href="classELine.html" shape="rect" coords="7,157,63,184" alt="">
-<area href="classGLine.html" shape="rect" coords="87,157,146,184" alt="">
-<area href="classKLine.html" shape="rect" coords="170,157,226,184" alt="">
-<area href="classQLine.html" shape="rect" coords="250,157,309,184" alt="">
-<area href="classZLine.html" shape="rect" coords="333,157,389,184" alt="">
-<area href="classclassbase.html" shape="rect" coords="158,8,238,34" alt="">
+<area href="classELine.html" shape="rect" coords="7,156,63,183" alt="">
+<area href="classGLine.html" shape="rect" coords="87,156,146,183" alt="">
+<area href="classKLine.html" shape="rect" coords="170,156,226,183" alt="">
+<area href="classQLine.html" shape="rect" coords="250,156,308,183" alt="">
+<area href="classZLine.html" shape="rect" coords="332,156,388,183" alt="">
+<area href="classclassbase.html" shape="rect" coords="158,7,238,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for XLine:<p><center><img src="classXLine__coll__graph.gif" border="0" usemap="#XLine__coll__map" alt="Collaboration graph"></center>
<map name="XLine__coll__map">
-<area href="classclassbase.html" shape="rect" coords="108,98,188,125" alt="">
+<area href="classclassbase.html" shape="rect" coords="107,97,187,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classXLine-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classXLine-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classXLine.html#o0">set_time</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXLine.html#set_5Ftime">set_time</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The time the line was added. </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classXLine.html#o1">duration</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The time the line was added. <a href="#set_5Ftime"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXLine.html#duration">duration</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The duration of the ban, or 0 if permenant. </em> <a href="#o1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classXLine.html#o2">source</a> [256]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The duration of the ban, or 0 if permenant. <a href="#duration"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXLine.html#source_5B_32_35_36_5D">source</a> [256]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Source of the ban. </em> <a href="#o2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classXLine.html#o3">reason</a> [MAXBUF]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Source of the ban. <a href="#source_5B_32_35_36_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXLine.html#reason_5BMAXBUF_5D">reason</a> [MAXBUF]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reason for the ban. </em> <a href="#o3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classXLine.html#o4">n_matches</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reason for the ban. <a href="#reason_5BMAXBUF_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXLine.html#n_5Fmatches">n_matches</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of times the core matches the ban, for statistics. </em> <a href="#o4"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of times the core matches the ban, for statistics. <a href="#n_5Fmatches"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
XLine is the base class for ban lines such as G lines and K lines.
@@ -48,18 +48,19 @@ XLine is the base class for ban lines such as G lines and K lines.
<p>
Definition at line <a class="el" href="xline_8h-source.html#l00034">34</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>.<hr><h2>Member Data Documentation</h2>
-<a name="o1" doxytag="XLine::duration"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="duration"></a><!-- doxytag: member="XLine::duration" ref="duration" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classXLine.html#o1">XLine::duration</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classXLine.html#duration">XLine::duration</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -74,18 +75,19 @@ The duration of the ban, or 0 if permenant.
Definition at line <a class="el" href="xline_8h-source.html#l00044">44</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="XLine::n_matches"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="n_5Fmatches"></a><!-- doxytag: member="XLine::n_matches" ref="n_5Fmatches" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classXLine.html#o4">XLine::n_matches</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classXLine.html#n_5Fmatches">XLine::n_matches</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -100,18 +102,19 @@ Number of times the core matches the ban, for statistics.
Definition at line <a class="el" href="xline_8h-source.html#l00056">56</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>. </td>
</tr>
</table>
-<a name="o3" doxytag="XLine::reason"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="reason_5BMAXBUF_5D"></a><!-- doxytag: member="XLine::reason" ref="reason_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classXLine.html#o3">XLine::reason</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classXLine.html#reason_5BMAXBUF_5D">XLine::reason</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -126,18 +129,19 @@ Reason for the ban.
Definition at line <a class="el" href="xline_8h-source.html#l00052">52</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="XLine::set_time"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="set_5Ftime"></a><!-- doxytag: member="XLine::set_time" ref="set_5Ftime" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classXLine.html#o0">XLine::set_time</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classXLine.html#set_5Ftime">XLine::set_time</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -152,18 +156,19 @@ The time the line was added.
Definition at line <a class="el" href="xline_8h-source.html#l00040">40</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>. </td>
</tr>
</table>
-<a name="o2" doxytag="XLine::source"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="source_5B_32_35_36_5D"></a><!-- doxytag: member="XLine::source" ref="source_5B_32_35_36_5D" args="[256]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classXLine.html#o2">XLine::source</a>[256]
+ <td class="md" nowrap valign="top">char <a class="el" href="classXLine.html#source_5B_32_35_36_5D">XLine::source</a>[256] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -180,9 +185,8 @@ Definition at line <a class="el" href="xline_8h-source.html#l00048">48</a> of fi
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="xline_8h-source.html">xline.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:47 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classXLine__coll__graph.gif b/docs/module-doc/classXLine__coll__graph.gif
index c8915d9cf..1c7669eb4 100644
--- a/docs/module-doc/classXLine__coll__graph.gif
+++ b/docs/module-doc/classXLine__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classXLine__coll__graph.map b/docs/module-doc/classXLine__coll__graph.map
new file mode 100644
index 000000000..64f9b3a84
--- /dev/null
+++ b/docs/module-doc/classXLine__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 107,97 187,124
diff --git a/docs/module-doc/classXLine__coll__graph.md5 b/docs/module-doc/classXLine__coll__graph.md5
new file mode 100644
index 000000000..51fbebe96
--- /dev/null
+++ b/docs/module-doc/classXLine__coll__graph.md5
@@ -0,0 +1 @@
+82db31fd0088117dc738aeaae0cdb2c0 \ No newline at end of file
diff --git a/docs/module-doc/classXLine__inherit__graph.gif b/docs/module-doc/classXLine__inherit__graph.gif
index 8889992a8..ae65b5000 100644
--- a/docs/module-doc/classXLine__inherit__graph.gif
+++ b/docs/module-doc/classXLine__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classXLine__inherit__graph.map b/docs/module-doc/classXLine__inherit__graph.map
new file mode 100644
index 000000000..7a144f968
--- /dev/null
+++ b/docs/module-doc/classXLine__inherit__graph.map
@@ -0,0 +1,7 @@
+base referer
+rect $classELine.html 7,156 63,183
+rect $classGLine.html 87,156 146,183
+rect $classKLine.html 170,156 226,183
+rect $classQLine.html 250,156 308,183
+rect $classZLine.html 332,156 388,183
+rect $classclassbase.html 158,7 238,33
diff --git a/docs/module-doc/classXLine__inherit__graph.md5 b/docs/module-doc/classXLine__inherit__graph.md5
new file mode 100644
index 000000000..2219ff62f
--- /dev/null
+++ b/docs/module-doc/classXLine__inherit__graph.md5
@@ -0,0 +1 @@
+cddf36af1a2c6a2fd34d1894fa3811da \ No newline at end of file
diff --git a/docs/module-doc/classZLine-members.html b/docs/module-doc/classZLine-members.html
index 9718d503f..25b5a6b34 100644
--- a/docs/module-doc/classZLine-members.html
+++ b/docs/module-doc/classZLine-members.html
@@ -1,24 +1,23 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ZLine Member List</h1>This is the complete list of members for <a class="el" href="classZLine.html">ZLine</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classXLine.html#o1">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classZLine.html#o0">ipaddr</a></td><td><a class="el" href="classZLine.html">ZLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classZLine.html#o1">is_global</a></td><td><a class="el" href="classZLine.html">ZLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o4">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o3">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o0">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classXLine.html#o2">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:49 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ZLine Member List</h1>This is the complete list of members for <a class="el" href="classZLine.html">ZLine</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#duration">duration</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classZLine.html#ipaddr_5B_34_30_5D">ipaddr</a></td><td><a class="el" href="classZLine.html">ZLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classZLine.html#is_5Fglobal">is_global</a></td><td><a class="el" href="classZLine.html">ZLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#n_5Fmatches">n_matches</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#reason_5BMAXBUF_5D">reason</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#set_5Ftime">set_time</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classXLine.html#source_5B_32_35_36_5D">source</a></td><td><a class="el" href="classXLine.html">XLine</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classZLine.html b/docs/module-doc/classZLine.html
index c30da86a9..af5bdfbe5 100644
--- a/docs/module-doc/classZLine.html
+++ b/docs/module-doc/classZLine.html
@@ -1,34 +1,34 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ZLine class Reference</title>
+<title>InspIRCd: ZLine Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ZLine Class Reference</h1>ZLine class.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ZLine Class Reference</h1><!-- doxytag: class="ZLine" --><!-- doxytag: inherits="XLine" -->ZLine class.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="xline_8h-source.html">xline.h</a>&gt;</code>
<p>
Inheritance diagram for ZLine:<p><center><img src="classZLine__inherit__graph.gif" border="0" usemap="#ZLine__inherit__map" alt="Inheritance graph"></center>
<map name="ZLine__inherit__map">
-<area href="classXLine.html" shape="rect" coords="20,82,76,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,8,88,34" alt="">
+<area href="classXLine.html" shape="rect" coords="19,81,75,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ZLine:<p><center><img src="classZLine__coll__graph.gif" border="0" usemap="#ZLine__coll__map" alt="Collaboration graph"></center>
<map name="ZLine__coll__map">
-<area href="classXLine.html" shape="rect" coords="109,205,165,232" alt="">
-<area href="classclassbase.html" shape="rect" coords="80,98,160,125" alt="">
+<area href="classXLine.html" shape="rect" coords="108,204,164,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="79,97,159,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classZLine-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classZLine-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classZLine.html#o0">ipaddr</a> [40]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classZLine.html#ipaddr_5B_34_30_5D">ipaddr</a> [40]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">IP Address (xx.yy.zz.aa) to match against May contain wildcards. </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classZLine.html#o1">is_global</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">IP Address (xx.yy.zz.aa) to match against May contain wildcards. <a href="#ipaddr_5B_34_30_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classZLine.html#is_5Fglobal">is_global</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set if this is a global Z:line (e.g. </em> <a href="#o1"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set if this is a global Z:line (e.g. <a href="#is_5Fglobal"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
ZLine class.
@@ -36,18 +36,19 @@ ZLine class.
<p>
Definition at line <a class="el" href="xline_8h-source.html#l00093">93</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>.<hr><h2>Member Data Documentation</h2>
-<a name="o0" doxytag="ZLine::ipaddr"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ipaddr_5B_34_30_5D"></a><!-- doxytag: member="ZLine::ipaddr" ref="ipaddr_5B_34_30_5D" args="[40]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classZLine.html#o0">ZLine::ipaddr</a>[40]
+ <td class="md" nowrap valign="top">char <a class="el" href="classZLine.html#ipaddr_5B_34_30_5D">ZLine::ipaddr</a>[40] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -62,18 +63,19 @@ IP Address (xx.yy.zz.aa) to match against May contain wildcards.
Definition at line <a class="el" href="xline_8h-source.html#l00099">99</a> of file <a class="el" href="xline_8h-source.html">xline.h</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="ZLine::is_global"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="is_5Fglobal"></a><!-- doxytag: member="ZLine::is_global" ref="is_5Fglobal" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool <a class="el" href="classZLine.html#o1">ZLine::is_global</a>
+ <td class="md" nowrap valign="top">bool <a class="el" href="classZLine.html#is_5Fglobal">ZLine::is_global</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -90,9 +92,8 @@ Definition at line <a class="el" href="xline_8h-source.html#l00103">103</a> of f
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="xline_8h-source.html">xline.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:49 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classZLine__coll__graph.gif b/docs/module-doc/classZLine__coll__graph.gif
index 65c12625a..943e7c896 100644
--- a/docs/module-doc/classZLine__coll__graph.gif
+++ b/docs/module-doc/classZLine__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classZLine__coll__graph.map b/docs/module-doc/classZLine__coll__graph.map
new file mode 100644
index 000000000..028f82a6e
--- /dev/null
+++ b/docs/module-doc/classZLine__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 108,204 164,231
+rect $classclassbase.html 79,97 159,124
diff --git a/docs/module-doc/classZLine__coll__graph.md5 b/docs/module-doc/classZLine__coll__graph.md5
new file mode 100644
index 000000000..43b1d4a38
--- /dev/null
+++ b/docs/module-doc/classZLine__coll__graph.md5
@@ -0,0 +1 @@
+af58e7a846694641fbe05011643006a9 \ No newline at end of file
diff --git a/docs/module-doc/classZLine__inherit__graph.gif b/docs/module-doc/classZLine__inherit__graph.gif
index 3f69fa320..411796d74 100644
--- a/docs/module-doc/classZLine__inherit__graph.gif
+++ b/docs/module-doc/classZLine__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classZLine__inherit__graph.map b/docs/module-doc/classZLine__inherit__graph.map
new file mode 100644
index 000000000..37695eb4e
--- /dev/null
+++ b/docs/module-doc/classZLine__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classXLine.html 19,81 75,108
+rect $classclassbase.html 7,7 87,33
diff --git a/docs/module-doc/classZLine__inherit__graph.md5 b/docs/module-doc/classZLine__inherit__graph.md5
new file mode 100644
index 000000000..565dfc233
--- /dev/null
+++ b/docs/module-doc/classZLine__inherit__graph.md5
@@ -0,0 +1 @@
+2100aaebeee27bb7ee02f038fdd48ad5 \ No newline at end of file
diff --git a/docs/module-doc/classchanrec-members.html b/docs/module-doc/classchanrec-members.html
index 2e2a013ca..3e93502dc 100644
--- a/docs/module-doc/classchanrec-members.html
+++ b/docs/module-doc/classchanrec-members.html
@@ -1,41 +1,40 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>chanrec Member List</h1>This is the complete list of members for <a class="el" href="classchanrec.html">chanrec</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a5">AddUser</a>(char *castuser)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o10">bans</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o9">binarymodes</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a8">chanrec</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classchanrec.html#o4">created</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o1">custom_modes</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a6">DelUser</a>(char *castuser)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a0">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a2">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a3">GetModeParameter</a>(char mode)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a4">GetUserCounter</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a7">GetUsers</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o2">internal_userlist</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a2">IsCustomModeSet</a>(char mode)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o8">key</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o7">limit</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o0">name</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o6">setby</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a0">SetCustomMode</a>(char mode, bool mode_on)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a1">SetCustomModeParam</a>(char mode, char *parameter, bool mode_on)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a1">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o3">topic</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#o5">topicset</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classchanrec.html#a9">~chanrec</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td><code> [inline, virtual]</code></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:32 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>chanrec Member List</h1>This is the complete list of members for <a class="el" href="classchanrec.html">chanrec</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#AddUser_28char_20_2Acastuser_29">AddUser</a>(char *castuser)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#bans">bans</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#binarymodes">binarymodes</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#chanrec_28_29">chanrec</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#created">created</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#DelUser_28char_20_2Acastuser_29">DelUser</a>(char *castuser)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#GetModeParameter_28char_20mode_29">GetModeParameter</a>(char mode)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#GetUserCounter_28_29">GetUserCounter</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#GetUsers_28_29">GetUsers</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#IsCustomModeSet_28char_20mode_29">IsCustomModeSet</a>(char mode)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#key_5B_33_32_5D">key</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#limit">limit</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#name_5BCHANMAX_5D">name</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#setby_5BNICKMAX_5D">setby</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29">SetCustomMode</a>(char mode, bool mode_on)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">SetCustomModeParam</a>(char mode, char *parameter, bool mode_on)</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#topic_5BMAXBUF_5D">topic</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#topicset">topicset</a></td><td><a class="el" href="classchanrec.html">chanrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classchanrec.html#_7Echanrec_28_29">~chanrec</a>()</td><td><a class="el" href="classchanrec.html">chanrec</a></td><td><code> [inline, virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classchanrec.html b/docs/module-doc/classchanrec.html
index 610a0043e..f332e4510 100644
--- a/docs/module-doc/classchanrec.html
+++ b/docs/module-doc/classchanrec.html
@@ -1,118 +1,117 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: chanrec class Reference</title>
+<title>InspIRCd: chanrec Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>chanrec Class Reference</h1>Holds all relevent information for a channel.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>chanrec Class Reference</h1><!-- doxytag: class="chanrec" --><!-- doxytag: inherits="Extensible" -->Holds all relevent information for a channel.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="channels_8h-source.html">channels.h</a>&gt;</code>
<p>
Inheritance diagram for chanrec:<p><center><img src="classchanrec__inherit__graph.gif" border="0" usemap="#chanrec__inherit__map" alt="Inheritance graph"></center>
<map name="chanrec__inherit__map">
-<area href="classExtensible.html" shape="rect" coords="8,82,90,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="9,8,89,34" alt="">
+<area href="classExtensible.html" shape="rect" coords="7,81,89,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="8,7,88,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for chanrec:<p><center><img src="classchanrec__coll__graph.gif" border="0" usemap="#chanrec__coll__map" alt="Collaboration graph"></center>
<map name="chanrec__coll__map">
-<area href="classExtensible.html" shape="rect" coords="69,205,152,232" alt="">
-<area href="classclassbase.html" shape="rect" coords="69,98,149,125" alt="">
+<area href="classExtensible.html" shape="rect" coords="68,204,151,231" alt="">
+<area href="classclassbase.html" shape="rect" coords="68,97,148,124" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classchanrec-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classchanrec-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 class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a0">SetCustomMode</a> (char mode, bool mode_on)</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29">SetCustomMode</a> (char mode, bool mode_on)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets or unsets a custom mode in the channels info. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a1">SetCustomModeParam</a> (char mode, char *parameter, bool mode_on)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets or unsets a custom mode in the channels info. <a href="#SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">SetCustomModeParam</a> (char mode, char *parameter, bool mode_on)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets or unsets the parameters for a custom mode in a channels info. </em> <a href="#a1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a2">IsCustomModeSet</a> (char mode)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets or unsets the parameters for a custom mode in a channels info. <a href="#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#IsCustomModeSet_28char_20mode_29">IsCustomModeSet</a> (char mode)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a custom mode is set on a channel. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a3">GetModeParameter</a> (char mode)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a custom mode is set on a channel. <a href="#IsCustomModeSet_28char_20mode_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#GetModeParameter_28char_20mode_29">GetModeParameter</a> (char mode)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the parameter for a custom mode on a channel. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a4">GetUserCounter</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the parameter for a custom mode on a channel. <a href="#GetModeParameter_28char_20mode_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#GetUserCounter_28_29">GetUserCounter</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Obtain the channel "user counter" This returns the channel reference counter, which is initialized to 0 when the channel is created and incremented/decremented upon joins, parts quits and kicks. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a5">AddUser</a> (char *castuser)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Obtain the channel "user counter" This returns the channel reference counter, which is initialized to 0 when the channel is created and incremented/decremented upon joins, parts quits and kicks. <a href="#GetUserCounter_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#AddUser_28char_20_2Acastuser_29">AddUser</a> (char *castuser)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a user pointer to the internal reference list. </em> <a href="#a5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a6">DelUser</a> (char *castuser)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a user pointer to the internal reference list. <a href="#AddUser_28char_20_2Acastuser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#DelUser_28char_20_2Acastuser_29">DelUser</a> (char *castuser)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Delete a user pointer to the internal reference list. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; char * &gt; *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a7">GetUsers</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Delete a user pointer to the internal reference list. <a href="#DelUser_28char_20_2Acastuser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; char * &gt; *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#GetUsers_28_29">GetUsers</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Obrain the internal reference list The internal reference list contains a list of userrec* cast to char*. </em> <a href="#a7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a8">chanrec</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Obrain the internal reference list The internal reference list contains a list of userrec* cast to char*. <a href="#GetUsers_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#chanrec_28_29">chanrec</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a channel record and initialises it with default values. </em> <a href="#a8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#a9">~chanrec</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a channel record and initialises it with default values. <a href="#chanrec_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#_7Echanrec_28_29">~chanrec</a> ()</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o0">name</a> [CHANMAX]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#name_5BCHANMAX_5D">name</a> [CHANMAX]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The channels name. </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o1">custom_modes</a> [MAXMODES]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The channels name. <a href="#name_5BCHANMAX_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a> [MAXMODES]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Custom modes for the channel. </em> <a href="#o1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; char * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o2">internal_userlist</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Custom modes for the channel. <a href="#custom_5Fmodes_5BMAXMODES_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; char * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User list (casted to char*'s to stop forward declaration stuff) (chicken and egg scenario!). </em> <a href="#o2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o3">topic</a> [MAXBUF]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User list (casted to char*'s to stop forward declaration stuff) (chicken and egg scenario!). <a href="#internal_5Fuserlist"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#topic_5BMAXBUF_5D">topic</a> [MAXBUF]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Channel topic. </em> <a href="#o3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o4">created</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Channel topic. <a href="#topic_5BMAXBUF_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#created">created</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creation time. </em> <a href="#o4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o5">topicset</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creation time. <a href="#created"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#topicset">topicset</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time topic was set. </em> <a href="#o5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o6">setby</a> [NICKMAX]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time topic was set. <a href="#topicset"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#setby_5BNICKMAX_5D">setby</a> [NICKMAX]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The last user to set the topic. </em> <a href="#o6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>short int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o7">limit</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The last user to set the topic. <a href="#setby_5BNICKMAX_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">short int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#limit">limit</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains the channel user limit. </em> <a href="#o7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o8">key</a> [32]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains the channel user limit. <a href="#limit"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#key_5B_33_32_5D">key</a> [32]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains the channel key. </em> <a href="#o8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o9">binarymodes</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains the channel key. <a href="#key_5B_33_32_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#binarymodes">binarymodes</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains a bitmask of the CM_* builtin (RFC) binary mode symbols. </em> <a href="#o9"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="channels_8h.html#a11">BanList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classchanrec.html#o10">bans</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains a bitmask of the CM_* builtin (RFC) binary mode symbols. <a href="#binarymodes"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="channels_8h.html#BanList">BanList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classchanrec.html#bans">bans</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The list of all bans set on the channel. </em> <a href="#o10"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The list of all bans set on the channel. <a href="#bans"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds all relevent information for a channel.
<p>
-This class represents a channel, and contains its name, modes, time created, topic, topic set time, etc, and an instance of the BanList type.
+This class represents a channel, and contains its name, modes, time created, topic, topic set time, etc, and an instance of the BanList type.
<p>
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00101">101</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a8" doxytag="chanrec::chanrec"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="chanrec_28_29"></a><!-- doxytag: member="chanrec::chanrec" ref="chanrec_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> chanrec::chanrec </td>
+ <td class="md" nowrap valign="top">chanrec::chanrec </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -124,41 +123,40 @@ Creates a channel record and initialises it with default values.
<p>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00107">107</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+Definition at line <a class="el" href="channels_8cpp-source.html#l00101">101</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
<p>
-References <a class="el" href="channels_8h-source.html#l00145">binarymodes</a>, <a class="el" href="channels_8h-source.html#l00123">created</a>, <a class="el" href="channels_8h-source.html#l00110">custom_modes</a>, <a class="el" href="channels_8h-source.html#l00115">internal_userlist</a>, <a class="el" href="channels_8h-source.html#l00141">key</a>, <a class="el" href="channels_8h-source.html#l00136">limit</a>, <a class="el" href="channels_8h-source.html#l00106">name</a>, <a class="el" href="channels_8h-source.html#l00131">setby</a>, <a class="el" href="channels_8h-source.html#l00120">topic</a>, and <a class="el" href="channels_8h-source.html#l00127">topicset</a>.
+References <a class="el" href="channels_8h-source.html#l00145">binarymodes</a>, <a class="el" href="channels_8h-source.html#l00123">created</a>, <a class="el" href="channels_8h-source.html#l00110">custom_modes</a>, <a class="el" href="channels_8h-source.html#l00115">internal_userlist</a>, <a class="el" href="channels_8h-source.html#l00141">key</a>, <a class="el" href="channels_8h-source.html#l00136">limit</a>, <a class="el" href="channels_8h-source.html#l00106">name</a>, <a class="el" href="channels_8h-source.html#l00131">setby</a>, <a class="el" href="channels_8h-source.html#l00120">topic</a>, and <a class="el" href="channels_8h-source.html#l00127">topicset</a>.<div class="fragment"><pre class="fragment"><a name="l00102"></a>00102 {
+<a name="l00103"></a>00103 strcpy(<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>,<span class="stringliteral">""</span>);
+<a name="l00104"></a>00104 strcpy(<a class="code" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a>,<span class="stringliteral">""</span>);
+<a name="l00105"></a>00105 strcpy(<a class="code" href="classchanrec.html#topic_5BMAXBUF_5D">topic</a>,<span class="stringliteral">""</span>);
+<a name="l00106"></a>00106 strcpy(<a class="code" href="classchanrec.html#setby_5BNICKMAX_5D">setby</a>,<span class="stringliteral">""</span>);
+<a name="l00107"></a>00107 strcpy(<a class="code" href="classchanrec.html#key_5B_33_32_5D">key</a>,<span class="stringliteral">""</span>);
+<a name="l00108"></a>00108 <a class="code" href="classchanrec.html#created">created</a> = <a class="code" href="classchanrec.html#topicset">topicset</a> = <a class="code" href="classchanrec.html#limit">limit</a> = 0;
+<a name="l00109"></a>00109 <a class="code" href="classchanrec.html#binarymodes">binarymodes</a> = 0;
+<a name="l00110"></a>00110 <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.clear();
+<a name="l00111"></a>00111 }
+</pre></div>
<p>
-<div class="fragment"><pre>00108 {
-00109 strcpy(name,<span class="stringliteral">""</span>);
-00110 strcpy(custom_modes,<span class="stringliteral">""</span>);
-00111 strcpy(topic,<span class="stringliteral">""</span>);
-00112 strcpy(setby,<span class="stringliteral">""</span>);
-00113 strcpy(key,<span class="stringliteral">""</span>);
-00114 <a class="code" href="classchanrec.html#o4">created</a> = <a class="code" href="classchanrec.html#o5">topicset</a> = <a class="code" href="classchanrec.html#o7">limit</a> = 0;
-00115 <a class="code" href="classchanrec.html#o9">binarymodes</a> = 0;
-00116 <a class="code" href="classchanrec.html#o2">internal_userlist</a>.clear();
-00117 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a9" doxytag="chanrec::~chanrec"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7Echanrec_28_29"></a><!-- doxytag: member="chanrec::~chanrec" ref="_7Echanrec_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> virtual chanrec::~<a class="el" href="classchanrec.html">chanrec</a> </td>
+ <td class="md" nowrap valign="top">virtual chanrec::~chanrec </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline, virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -168,32 +166,31 @@ References <a class="el" href="channels_8h-source.html#l00145">binarymodes</a>,
<p>
<p>
-Definition at line <a class="el" href="channels_8h-source.html#l00224">224</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
+Definition at line <a class="el" href="channels_8h-source.html#l00224">224</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<div class="fragment"><pre class="fragment"><a name="l00224"></a>00224 { <span class="comment">/* stub */</span> }
+</pre></div>
<p>
-<div class="fragment"><pre>00224 { <span class="comment">/* stub */</span> }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a5" doxytag="chanrec::AddUser"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddUser_28char_20_2Acastuser_29"></a><!-- doxytag: member="chanrec::AddUser" ref="AddUser_28char_20_2Acastuser_29" args="(char *castuser)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void chanrec::AddUser </td>
+ <td class="md" nowrap valign="top">void chanrec::AddUser </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>castuser</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -205,41 +202,40 @@ Add a user pointer to the internal reference list.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>castuser</em>&nbsp;</td><td>This should be a pointer to a userrec, casted to char*</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>castuser</em>&nbsp;</td><td>This should be a pointer to a userrec, casted to char*</td></tr>
</table>
</dl>
The data inserted into the reference list is a table as it is an arbitary pointer compared to other users by its memory address, as this is a very fast 32 or 64 bit integer comparison.
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00201">201</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+Definition at line <a class="el" href="channels_8cpp-source.html#l00195">195</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="channels_8h-source.html#l00115">internal_userlist</a>.
+References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="channels_8h-source.html#l00115">internal_userlist</a>.<div class="fragment"><pre class="fragment"><a name="l00196"></a>00196 {
+<a name="l00197"></a>00197 <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.push_back(castuser);
+<a name="l00198"></a>00198 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Added casted user to channel's internal list"</span>);
+<a name="l00199"></a>00199 }
+</pre></div>
<p>
-<div class="fragment"><pre>00202 {
-00203 <a class="code" href="classchanrec.html#o2">internal_userlist</a>.push_back(castuser);
-00204 log(DEBUG,<span class="stringliteral">"Added casted user to channel's internal list"</span>);
-00205 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a6" doxytag="chanrec::DelUser"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DelUser_28char_20_2Acastuser_29"></a><!-- doxytag: member="chanrec::DelUser" ref="DelUser_28char_20_2Acastuser_29" args="(char *castuser)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void chanrec::DelUser </td>
+ <td class="md" nowrap valign="top">void chanrec::DelUser </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>castuser</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -251,49 +247,48 @@ Delete a user pointer to the internal reference list.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>castuser</em>&nbsp;</td><td>This should be a pointer to a userrec, casted to char*</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>castuser</em>&nbsp;</td><td>This should be a pointer to a userrec, casted to char*</td></tr>
</table>
</dl>
-The data removed from the reference list is a table as it is an arbitary pointer compared to other users by its memory address, as this is a very fast 32 or 64 bit integer comparison.
+The data removed from the reference list is a table as it is an arbitary pointer compared to other users by its memory address, as this is a very fast 32 or 64 bit integer comparison.
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00207">207</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+Definition at line <a class="el" href="channels_8cpp-source.html#l00201">201</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="channels_8h-source.html#l00115">internal_userlist</a>, and <a class="el" href="channels_8h-source.html#l00106">name</a>.
+References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="channels_8h-source.html#l00115">internal_userlist</a>, and <a class="el" href="channels_8h-source.html#l00106">name</a>.<div class="fragment"><pre class="fragment"><a name="l00202"></a>00202 {
+<a name="l00203"></a>00203 <span class="keywordflow">for</span> (std::vector&lt;char*&gt;::iterator a = <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.begin(); a &lt; <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.end(); a++)
+<a name="l00204"></a>00204 {
+<a name="l00205"></a>00205 <span class="keywordflow">if</span> (*a == castuser)
+<a name="l00206"></a>00206 {
+<a name="l00207"></a>00207 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Removed casted user from channel's internal list"</span>);
+<a name="l00208"></a>00208 <a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>.erase(a);
+<a name="l00209"></a>00209 <span class="keywordflow">return</span>;
+<a name="l00210"></a>00210 }
+<a name="l00211"></a>00211 }
+<a name="l00212"></a>00212 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"BUG BUG BUG! Attempt to remove an uncasted user from the internal list of %s!"</span>,<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>);
+<a name="l00213"></a>00213 }
+</pre></div>
<p>
-<div class="fragment"><pre>00208 {
-00209 <span class="keywordflow">for</span> (std::vector&lt;char*&gt;::iterator a = <a class="code" href="classchanrec.html#o2">internal_userlist</a>.begin(); a &lt; <a class="code" href="classchanrec.html#o2">internal_userlist</a>.end(); a++)
-00210 {
-00211 <span class="keywordflow">if</span> (*a == castuser)
-00212 {
-00213 log(DEBUG,<span class="stringliteral">"Removed casted user from channel's internal list"</span>);
-00214 <a class="code" href="classchanrec.html#o2">internal_userlist</a>.erase(a);
-00215 <span class="keywordflow">return</span>;
-00216 }
-00217 }
-00218 log(DEBUG,<span class="stringliteral">"BUG BUG BUG! Attempt to remove an uncasted user from the internal list of %s!"</span>,name);
-00219 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a3" doxytag="chanrec::GetModeParameter"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetModeParameter_28char_20mode_29"></a><!-- doxytag: member="chanrec::GetModeParameter" ref="GetModeParameter_28char_20mode_29" args="(char mode)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string chanrec::GetModeParameter </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> chanrec::GetModeParameter </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>mode</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -305,51 +300,50 @@ Returns the parameter for a custom mode on a channel.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>mode</em>&nbsp;</td><td>The mode character you wish to query</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>The mode character you wish to query</td></tr>
</table>
</dl>
-For example if "+L #foo" is set, and you pass this method 'L', it will return '#foo'. If the mode is not set on the channel, or the mode has no parameters associated with it, it will return an empty string.<p>
+For example if "+L #foo" is set, and you pass this method 'L', it will return 'foo'. If the mode is not set on the channel, or the mode has no parameters associated with it, it will return an empty string.<p>
<dl compact><dt><b>Returns:</b></dt><dd>The parameter for this mode is returned, or an empty string</dd></dl>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00181">181</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+Definition at line <a class="el" href="channels_8cpp-source.html#l00175">175</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
<p>
-References <a class="el" href="channels_8cpp-source.html#l00105">custom_mode_params</a>.
+References <a class="el" href="channels_8cpp-source.html#l00099">custom_mode_params</a>.<div class="fragment"><pre class="fragment"><a name="l00176"></a>00176 {
+<a name="l00177"></a>00177 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.size())
+<a name="l00178"></a>00178 {
+<a name="l00179"></a>00179 <span class="keywordflow">for</span> (vector&lt;ModeParameter&gt;::iterator i = <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.begin(); i &lt; <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.end(); i++)
+<a name="l00180"></a>00180 {
+<a name="l00181"></a>00181 <span class="keywordflow">if</span> ((i-&gt;mode == mode) &amp;&amp; (!strcasecmp(this-&gt;name,i-&gt;channel)))
+<a name="l00182"></a>00182 {
+<a name="l00183"></a>00183 <span class="keywordflow">return</span> i-&gt;parameter;
+<a name="l00184"></a>00184 }
+<a name="l00185"></a>00185 }
+<a name="l00186"></a>00186 }
+<a name="l00187"></a>00187 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+<a name="l00188"></a>00188 }
+</pre></div>
<p>
-<div class="fragment"><pre>00182 {
-00183 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.size())
-00184 {
-00185 <span class="keywordflow">for</span> (vector&lt;ModeParameter&gt;::iterator i = <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.begin(); i &lt; <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.end(); i++)
-00186 {
-00187 <span class="keywordflow">if</span> ((i-&gt;mode == mode) &amp;&amp; (!strcasecmp(this-&gt;name,i-&gt;channel)))
-00188 {
-00189 <span class="keywordflow">return</span> i-&gt;parameter;
-00190 }
-00191 }
-00192 }
-00193 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-00194 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="chanrec::GetUserCounter"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetUserCounter_28_29"></a><!-- doxytag: member="chanrec::GetUserCounter" ref="GetUserCounter_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long chanrec::GetUserCounter </td>
+ <td class="md" nowrap valign="top">long chanrec::GetUserCounter </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -362,34 +356,31 @@ Obtain the channel "user counter" This returns the channel reference counter, wh
<dl compact><dt><b>Returns:</b></dt><dd>The number of users on this channel</dd></dl>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00196">196</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-References <a class="el" href="channels_8h-source.html#l00115">internal_userlist</a>.
+Definition at line <a class="el" href="channels_8cpp-source.html#l00190">190</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00191"></a>00191 {
+<a name="l00192"></a>00192 <span class="keywordflow">return</span> (this-&gt;internal_userlist.size());
+<a name="l00193"></a>00193 }
+</pre></div>
<p>
-<div class="fragment"><pre>00197 {
-00198 <span class="keywordflow">return</span> (this-&gt;<a class="code" href="classchanrec.html#o2">internal_userlist</a>.size());
-00199 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a7" doxytag="chanrec::GetUsers"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetUsers_28_29"></a><!-- doxytag: member="chanrec::GetUsers" ref="GetUsers_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt; char * &gt; * chanrec::GetUsers </td>
+ <td class="md" nowrap valign="top">std::vector&lt; char * &gt; * chanrec::GetUsers </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -403,37 +394,36 @@ These are used for rapid comparison to determine channel membership for PRIVMSG,
<dl compact><dt><b>Returns:</b></dt><dd>This function returns a vector of userrec pointers, each of which has been casted to char* to prevent circular references</dd></dl>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00221">221</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+Definition at line <a class="el" href="channels_8cpp-source.html#l00215">215</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
<p>
References <a class="el" href="channels_8h-source.html#l00115">internal_userlist</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00402">Server::GetUsers()</a>.
+Referenced by <a class="el" href="modules_8cpp-source.html#l00420">Server::GetUsers()</a>.<div class="fragment"><pre class="fragment"><a name="l00216"></a>00216 {
+<a name="l00217"></a>00217 <span class="keywordflow">return</span> &amp;<a class="code" href="classchanrec.html#internal_5Fuserlist">internal_userlist</a>;
+<a name="l00218"></a>00218 }
+</pre></div>
<p>
-<div class="fragment"><pre>00222 {
-00223 <span class="keywordflow">return</span> &amp;<a class="code" href="classchanrec.html#o2">internal_userlist</a>;
-00224 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a2" doxytag="chanrec::IsCustomModeSet"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="IsCustomModeSet_28char_20mode_29"></a><!-- doxytag: member="chanrec::IsCustomModeSet" ref="IsCustomModeSet_28char_20mode_29" args="(char mode)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool chanrec::IsCustomModeSet </td>
+ <td class="md" nowrap valign="top">bool chanrec::IsCustomModeSet </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>mode</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -445,51 +435,50 @@ Returns true if a custom mode is set on a channel.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>mode</em>&nbsp;</td><td>The mode character you wish to query </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>The mode character you wish to query </td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>True if the custom mode is set, false if otherwise</dd></dl>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00175">175</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+Definition at line <a class="el" href="channels_8cpp-source.html#l00169">169</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
<p>
-References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>.
+References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>.<div class="fragment"><pre class="fragment"><a name="l00170"></a>00170 {
+<a name="l00171"></a>00171 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Checking ISCustomModeSet: %c %s"</span>,mode,this-&gt;custom_modes);
+<a name="l00172"></a>00172 <span class="keywordflow">return</span> (strchr(this-&gt;custom_modes,mode) != 0);
+<a name="l00173"></a>00173 }
+</pre></div>
<p>
-<div class="fragment"><pre>00176 {
-00177 log(DEBUG,<span class="stringliteral">"Checking ISCustomModeSet: %c %s"</span>,mode,this-&gt;custom_modes);
-00178 <span class="keywordflow">return</span> (strchr(this-&gt;custom_modes,mode) != 0);
-00179 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a0" doxytag="chanrec::SetCustomMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29"></a><!-- doxytag: member="chanrec::SetCustomMode" ref="SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29" args="(char mode, bool mode_on)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void chanrec::SetCustomMode </td>
+ <td class="md" nowrap valign="top">void chanrec::SetCustomMode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>mode</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>mode_on</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -501,75 +490,74 @@ Sets or unsets a custom mode in the channels info.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>mode</em>&nbsp;</td><td>The mode character to set or unset </td></tr>
- <tr><td valign=top><em>mode_on</em>&nbsp;</td><td>True if you want to set the mode or false if you want to remove it</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>The mode character to set or unset </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mode_on</em>&nbsp;</td><td>True if you want to set the mode or false if you want to remove it</td></tr>
</table>
</dl>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00119">119</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-References <a class="el" href="channels_8h-source.html#l00110">custom_modes</a>, <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="channels_8cpp-source.html#l00144">SetCustomModeParam()</a>.
-<p>
-<div class="fragment"><pre>00120 {
-00121 <span class="keywordflow">if</span> (mode_on) {
-00122 <span class="keyword">static</span> <span class="keywordtype">char</span> m[3];
-00123 m[0] = mode;
-00124 m[1] = <span class="charliteral">'\0'</span>;
-00125 <span class="keywordflow">if</span> (!strchr(this-&gt;custom_modes,mode))
-00126 {
-00127 strlcat(custom_modes,m,MAXMODES);
-00128 }
-00129 log(DEBUG,<span class="stringliteral">"Custom mode %c set"</span>,mode);
-00130 }
-00131 <span class="keywordflow">else</span> {
-00132
-00133 std::string a = this-&gt;<a class="code" href="classchanrec.html#o1">custom_modes</a>;
-00134 <span class="keywordtype">int</span> pos = a.find(mode);
-00135 a.erase(pos,1);
-00136 strncpy(this-&gt;custom_modes,a.c_str(),MAXMODES);
-00137
-00138 log(DEBUG,<span class="stringliteral">"Custom mode %c removed: modelist='%s'"</span>,mode,this-&gt;custom_modes);
-00139 this-&gt;<a class="code" href="classchanrec.html#a1">SetCustomModeParam</a>(mode,<span class="stringliteral">""</span>,<span class="keyword">false</span>);
-00140 }
-00141 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a1" doxytag="chanrec::SetCustomModeParam"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="channels_8cpp-source.html#l00113">113</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+<p>
+References <a class="el" href="channels_8h-source.html#l00110">custom_modes</a>, <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="channels_8cpp-source.html#l00138">SetCustomModeParam()</a>.<div class="fragment"><pre class="fragment"><a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 <span class="keywordflow">if</span> (mode_on) {
+<a name="l00116"></a>00116 <span class="keyword">static</span> <span class="keywordtype">char</span> m[3];
+<a name="l00117"></a>00117 m[0] = mode;
+<a name="l00118"></a>00118 m[1] = <span class="charliteral">'\0'</span>;
+<a name="l00119"></a>00119 <span class="keywordflow">if</span> (!strchr(this-&gt;custom_modes,mode))
+<a name="l00120"></a>00120 {
+<a name="l00121"></a>00121 strlcat(<a class="code" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a>,m,MAXMODES);
+<a name="l00122"></a>00122 }
+<a name="l00123"></a>00123 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Custom mode %c set"</span>,mode);
+<a name="l00124"></a>00124 }
+<a name="l00125"></a>00125 <span class="keywordflow">else</span> {
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127 <a class="code" href="namespaceirc.html#string">std::string</a> a = this-&gt;<a class="code" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">custom_modes</a>;
+<a name="l00128"></a>00128 <span class="keywordtype">int</span> pos = a.find(mode);
+<a name="l00129"></a>00129 a.erase(pos,1);
+<a name="l00130"></a>00130 strncpy(this-&gt;custom_modes,a.c_str(),MAXMODES);
+<a name="l00131"></a>00131
+<a name="l00132"></a>00132 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Custom mode %c removed: modelist='%s'"</span>,mode,this-&gt;custom_modes);
+<a name="l00133"></a>00133 this-&gt;<a class="code" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">SetCustomModeParam</a>(mode,<span class="stringliteral">""</span>,<span class="keyword">false</span>);
+<a name="l00134"></a>00134 }
+<a name="l00135"></a>00135 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29"></a><!-- doxytag: member="chanrec::SetCustomModeParam" ref="SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29" args="(char mode, char *parameter, bool mode_on)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void chanrec::SetCustomModeParam </td>
+ <td class="md" nowrap valign="top">void chanrec::SetCustomModeParam </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>mode</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>parameter</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>mode_on</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -581,64 +569,65 @@ Sets or unsets the parameters for a custom mode in a channels info.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign=top><em>mode</em>&nbsp;</td><td>The mode character to set or unset </td></tr>
- <tr><td valign=top><em>parameter</em>&nbsp;</td><td>The parameter string to associate with this mode character </td></tr>
- <tr><td valign=top><em>mode_on</em>&nbsp;</td><td>True if you want to set the mode or false if you want to remove it</td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>The mode character to set or unset </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>parameter</em>&nbsp;</td><td>The parameter string to associate with this mode character </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>mode_on</em>&nbsp;</td><td>True if you want to set the mode or false if you want to remove it</td></tr>
</table>
</dl>
<p>
-Definition at line <a class="el" href="channels_8cpp-source.html#l00144">144</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
-<p>
-References <a class="el" href="channels_8h-source.html#l00082">ModeParameter::channel</a>, <a class="el" href="channels_8cpp-source.html#l00105">custom_mode_params</a>, <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="channels_8h-source.html#l00080">ModeParameter::mode</a>, and <a class="el" href="channels_8h-source.html#l00081">ModeParameter::parameter</a>.
-<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00119">SetCustomMode()</a>.
-<p>
-<div class="fragment"><pre>00145 {
-00146
-00147 log(DEBUG,<span class="stringliteral">"SetCustomModeParam called"</span>);
-00148 <a class="code" href="classModeParameter.html">ModeParameter</a> M;
-00149 M.<a class="code" href="classModeParameter.html#o0">mode</a> = mode;
-00150 strlcpy(M.<a class="code" href="classModeParameter.html#o2">channel</a>,this-&gt;name,CHANMAX);
-00151 strlcpy(M.<a class="code" href="classModeParameter.html#o1">parameter</a>,parameter,MAXBUF);
-00152 <span class="keywordflow">if</span> (mode_on)
-00153 {
-00154 log(DEBUG,<span class="stringliteral">"Custom mode parameter %c %s added"</span>,mode,parameter);
-00155 <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.push_back(M);
-00156 }
-00157 <span class="keywordflow">else</span>
-00158 {
-00159 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.size())
-00160 {
-00161 <span class="keywordflow">for</span> (vector&lt;ModeParameter&gt;::iterator i = <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.begin(); i &lt; <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.end(); i++)
-00162 {
-00163 <span class="keywordflow">if</span> ((i-&gt;mode == mode) &amp;&amp; (!strcasecmp(this-&gt;name,i-&gt;channel)))
-00164 {
-00165 log(DEBUG,<span class="stringliteral">"Custom mode parameter %c %s removed"</span>,mode,parameter);
-00166 <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.erase(i);
-00167 <span class="keywordflow">return</span>;
-00168 }
-00169 }
-00170 }
-00171 log(DEBUG,<span class="stringliteral">"*** BUG *** Attempt to remove non-existent mode parameter!"</span>);
-00172 }
-00173 }
-</pre></div> </td>
+Definition at line <a class="el" href="channels_8cpp-source.html#l00138">138</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>.
+<p>
+References <a class="el" href="channels_8h-source.html#l00082">ModeParameter::channel</a>, <a class="el" href="channels_8cpp-source.html#l00099">custom_mode_params</a>, <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, <a class="el" href="channels_8h-source.html#l00080">ModeParameter::mode</a>, and <a class="el" href="channels_8h-source.html#l00081">ModeParameter::parameter</a>.
+<p>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00113">SetCustomMode()</a>.<div class="fragment"><pre class="fragment"><a name="l00139"></a>00139 {
+<a name="l00140"></a>00140
+<a name="l00141"></a>00141 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"SetCustomModeParam called"</span>);
+<a name="l00142"></a>00142 <a class="code" href="classModeParameter.html">ModeParameter</a> M;
+<a name="l00143"></a>00143 M.<a class="code" href="classModeParameter.html#mode">mode</a> = mode;
+<a name="l00144"></a>00144 strlcpy(M.<a class="code" href="classModeParameter.html#channel_5BCHANMAX_5D">channel</a>,this-&gt;name,CHANMAX);
+<a name="l00145"></a>00145 strlcpy(M.<a class="code" href="classModeParameter.html#parameter_5BMAXBUF_5D">parameter</a>,parameter,MAXBUF);
+<a name="l00146"></a>00146 <span class="keywordflow">if</span> (mode_on)
+<a name="l00147"></a>00147 {
+<a name="l00148"></a>00148 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s added"</span>,mode,parameter);
+<a name="l00149"></a>00149 <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.push_back(M);
+<a name="l00150"></a>00150 }
+<a name="l00151"></a>00151 <span class="keywordflow">else</span>
+<a name="l00152"></a>00152 {
+<a name="l00153"></a>00153 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.size())
+<a name="l00154"></a>00154 {
+<a name="l00155"></a>00155 <span class="keywordflow">for</span> (vector&lt;ModeParameter&gt;::iterator i = <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.begin(); i &lt; <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.end(); i++)
+<a name="l00156"></a>00156 {
+<a name="l00157"></a>00157 <span class="keywordflow">if</span> ((i-&gt;mode == mode) &amp;&amp; (!strcasecmp(this-&gt;name,i-&gt;channel)))
+<a name="l00158"></a>00158 {
+<a name="l00159"></a>00159 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s removed"</span>,mode,parameter);
+<a name="l00160"></a>00160 <a class="code" href="channels_8cpp.html#custom_5Fmode_5Fparams">custom_mode_params</a>.erase(i);
+<a name="l00161"></a>00161 <span class="keywordflow">return</span>;
+<a name="l00162"></a>00162 }
+<a name="l00163"></a>00163 }
+<a name="l00164"></a>00164 }
+<a name="l00165"></a>00165 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** BUG *** Attempt to remove non-existent mode parameter!"</span>);
+<a name="l00166"></a>00166 }
+<a name="l00167"></a>00167 }
+</pre></div>
+<p>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o10" doxytag="chanrec::bans"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="bans"></a><!-- doxytag: member="chanrec::bans" ref="bans" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="channels_8h.html#a11">BanList</a> <a class="el" href="classchanrec.html#o10">chanrec::bans</a>
+ <td class="md" nowrap valign="top"><a class="el" href="channels_8h.html#BanList">BanList</a> <a class="el" href="classchanrec.html#bans">chanrec::bans</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -653,18 +642,19 @@ The list of all bans set on the channel.
Definition at line <a class="el" href="channels_8h-source.html#l00149">149</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>. </td>
</tr>
</table>
-<a name="o9" doxytag="chanrec::binarymodes"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="binarymodes"></a><!-- doxytag: member="chanrec::binarymodes" ref="binarymodes" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classchanrec.html#o9">chanrec::binarymodes</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="classchanrec.html#binarymodes">chanrec::binarymodes</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -678,21 +668,22 @@ Contains a bitmask of the CM_* builtin (RFC) binary mode symbols.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00145">145</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="chanrec::created"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="created"></a><!-- doxytag: member="chanrec::created" ref="created" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classchanrec.html#o4">chanrec::created</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classchanrec.html#created">chanrec::created</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -706,21 +697,22 @@ Creation time.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00123">123</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="chanrec::custom_modes"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="custom_5Fmodes_5BMAXMODES_5D"></a><!-- doxytag: member="chanrec::custom_modes" ref="custom_5Fmodes_5BMAXMODES_5D" args="[MAXMODES]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classchanrec.html#o1">chanrec::custom_modes</a>[MAXMODES]
+ <td class="md" nowrap valign="top">char <a class="el" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">chanrec::custom_modes</a>[MAXMODES] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -734,21 +726,22 @@ Plugins may use this field in any way they see fit.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00110">110</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>, and <a class="el" href="channels_8cpp-source.html#l00119">SetCustomMode()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>, and <a class="el" href="channels_8cpp-source.html#l00113">SetCustomMode()</a>. </td>
</tr>
</table>
-<a name="o2" doxytag="chanrec::internal_userlist"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="internal_5Fuserlist"></a><!-- doxytag: member="chanrec::internal_userlist" ref="internal_5Fuserlist" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;char*&gt; <a class="el" href="classchanrec.html#o2">chanrec::internal_userlist</a>
+ <td class="md" nowrap valign="top">std::vector&lt;char*&gt; <a class="el" href="classchanrec.html#internal_5Fuserlist">chanrec::internal_userlist</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -762,21 +755,22 @@ User list (casted to char*'s to stop forward declaration stuff) (chicken and egg
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00115">115</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00201">AddUser()</a>, <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>, <a class="el" href="channels_8cpp-source.html#l00207">DelUser()</a>, <a class="el" href="channels_8cpp-source.html#l00196">GetUserCounter()</a>, and <a class="el" href="channels_8cpp-source.html#l00221">GetUsers()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00195">AddUser()</a>, <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>, <a class="el" href="channels_8cpp-source.html#l00201">DelUser()</a>, and <a class="el" href="channels_8cpp-source.html#l00215">GetUsers()</a>. </td>
</tr>
</table>
-<a name="o8" doxytag="chanrec::key"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="key_5B_33_32_5D"></a><!-- doxytag: member="chanrec::key" ref="key_5B_33_32_5D" args="[32]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classchanrec.html#o8">chanrec::key</a>[32]
+ <td class="md" nowrap valign="top">char <a class="el" href="classchanrec.html#key_5B_33_32_5D">chanrec::key</a>[32] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -790,21 +784,22 @@ If this value is an empty string, there is no channel key in place.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00141">141</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>. </td>
</tr>
</table>
-<a name="o7" doxytag="chanrec::limit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="limit"></a><!-- doxytag: member="chanrec::limit" ref="limit" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> short int <a class="el" href="classchanrec.html#o7">chanrec::limit</a>
+ <td class="md" nowrap valign="top">short int <a class="el" href="classchanrec.html#limit">chanrec::limit</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -818,21 +813,22 @@ If this value is zero, there is no limit in place.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00136">136</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="chanrec::name"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="name_5BCHANMAX_5D"></a><!-- doxytag: member="chanrec::name" ref="name_5BCHANMAX_5D" args="[CHANMAX]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classchanrec.html#o0">chanrec::name</a>[CHANMAX]
+ <td class="md" nowrap valign="top">char <a class="el" href="classchanrec.html#name_5BCHANMAX_5D">chanrec::name</a>[CHANMAX] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -846,21 +842,22 @@ The channels name.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00106">106</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>, <a class="el" href="channels_8cpp-source.html#l00207">DelUser()</a>, and <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>, <a class="el" href="channels_8cpp-source.html#l00201">DelUser()</a>, and <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>. </td>
</tr>
</table>
-<a name="o6" doxytag="chanrec::setby"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="setby_5BNICKMAX_5D"></a><!-- doxytag: member="chanrec::setby" ref="setby_5BNICKMAX_5D" args="[NICKMAX]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classchanrec.html#o6">chanrec::setby</a>[NICKMAX]
+ <td class="md" nowrap valign="top">char <a class="el" href="classchanrec.html#setby_5BNICKMAX_5D">chanrec::setby</a>[NICKMAX] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -874,21 +871,22 @@ If this member is an empty string, no topic was ever set.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00131">131</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>. </td>
</tr>
</table>
-<a name="o3" doxytag="chanrec::topic"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="topic_5BMAXBUF_5D"></a><!-- doxytag: member="chanrec::topic" ref="topic_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classchanrec.html#o3">chanrec::topic</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classchanrec.html#topic_5BMAXBUF_5D">chanrec::topic</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -902,21 +900,22 @@ If this is an empty string, no channel topic is set.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00120">120</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>. </td>
</tr>
</table>
-<a name="o5" doxytag="chanrec::topicset"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="topicset"></a><!-- doxytag: member="chanrec::topicset" ref="topicset" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classchanrec.html#o5">chanrec::topicset</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classchanrec.html#topicset">chanrec::topicset</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -926,18 +925,17 @@ Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a
<p>
Time topic was set.
<p>
-If no topic was ever set, this will be equal to <a class="el" href="classchanrec.html#o4">chanrec::created</a>
+If no topic was ever set, this will be equal to <a class="el" href="classchanrec.html#created">chanrec::created</a>
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00127">127</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="channels_8cpp-source.html#l00107">chanrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>. </td>
+Referenced by <a class="el" href="channels_8cpp-source.html#l00101">chanrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>. </td>
</tr>
</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:32 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classchanrec__coll__graph.gif b/docs/module-doc/classchanrec__coll__graph.gif
index 46f5ef538..906eb0a7b 100644
--- a/docs/module-doc/classchanrec__coll__graph.gif
+++ b/docs/module-doc/classchanrec__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classchanrec__coll__graph.map b/docs/module-doc/classchanrec__coll__graph.map
new file mode 100644
index 000000000..de880759f
--- /dev/null
+++ b/docs/module-doc/classchanrec__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classExtensible.html 68,204 151,231
+rect $classclassbase.html 68,97 148,124
diff --git a/docs/module-doc/classchanrec__coll__graph.md5 b/docs/module-doc/classchanrec__coll__graph.md5
new file mode 100644
index 000000000..39918d0c9
--- /dev/null
+++ b/docs/module-doc/classchanrec__coll__graph.md5
@@ -0,0 +1 @@
+c0e1d49d19e3941fdfebb1c3d1c52727 \ No newline at end of file
diff --git a/docs/module-doc/classchanrec__inherit__graph.gif b/docs/module-doc/classchanrec__inherit__graph.gif
index 312418ade..47c60cec1 100644
--- a/docs/module-doc/classchanrec__inherit__graph.gif
+++ b/docs/module-doc/classchanrec__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classchanrec__inherit__graph.map b/docs/module-doc/classchanrec__inherit__graph.map
new file mode 100644
index 000000000..f8823aa1b
--- /dev/null
+++ b/docs/module-doc/classchanrec__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classExtensible.html 7,81 89,108
+rect $classclassbase.html 8,7 88,33
diff --git a/docs/module-doc/classchanrec__inherit__graph.md5 b/docs/module-doc/classchanrec__inherit__graph.md5
new file mode 100644
index 000000000..49b9ccc27
--- /dev/null
+++ b/docs/module-doc/classchanrec__inherit__graph.md5
@@ -0,0 +1 @@
+9b119318df1cf9f708f4d7e96dbb9083 \ No newline at end of file
diff --git a/docs/module-doc/classclassbase-members.html b/docs/module-doc/classclassbase-members.html
index 0b2f5cf09..3cc34fdbc 100644
--- a/docs/module-doc/classclassbase-members.html
+++ b/docs/module-doc/classclassbase-members.html
@@ -1,17 +1,16 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>classbase Member List</h1>This is the complete list of members for <a class="el" href="classclassbase.html">classbase</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:37 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>classbase Member List</h1>This is the complete list of members for <a class="el" href="classclassbase.html">classbase</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classclassbase.html b/docs/module-doc/classclassbase.html
index ab2130a72..4f065424f 100644
--- a/docs/module-doc/classclassbase.html
+++ b/docs/module-doc/classclassbase.html
@@ -1,47 +1,47 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: classbase class Reference</title>
+<title>InspIRCd: classbase Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>classbase Class Reference</h1>The base class for all inspircd classes.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>classbase Class Reference</h1><!-- doxytag: class="classbase" -->The base class for all inspircd classes.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="base_8h-source.html">base.h</a>&gt;</code>
<p>
Inheritance diagram for classbase:<p><center><img src="classclassbase__inherit__graph.gif" border="0" usemap="#classbase__inherit__map" alt="Inheritance graph"></center>
<map name="classbase__inherit__map">
-<area href="classAdmin.html" shape="rect" coords="168,8,229,34" alt="">
-<area href="classConfigReader.html" shape="rect" coords="146,58,250,85" alt="">
-<area href="classConnectClass.html" shape="rect" coords="146,109,250,136" alt="">
-<area href="classExtensible.html" shape="rect" coords="157,160,240,186" alt="">
-<area href="classExtMode.html" shape="rect" coords="161,210,236,237" alt="">
-<area href="classFileReader.html" shape="rect" coords="154,261,242,288" alt="">
-<area href="classHostItem.html" shape="rect" coords="161,312,236,338" alt="">
-<area href="classInvited.html" shape="rect" coords="168,362,229,389" alt="">
-<area href="classModeParameter.html" shape="rect" coords="140,413,257,440" alt="">
-<area href="classModule.html" shape="rect" coords="165,464,232,490" alt="">
-<area href="classModuleFactory.html" shape="rect" coords="144,514,253,541" alt="">
-<area href="classModuleMessage.html" shape="rect" coords="138,565,258,592" alt="">
-<area href="classServer.html" shape="rect" coords="168,616,229,642" alt="">
-<area href="classucrec.html" shape="rect" coords="172,666,225,693" alt="">
-<area href="classVersion.html" shape="rect" coords="165,717,232,744" alt="">
-<area href="classXLine.html" shape="rect" coords="170,768,226,794" alt="">
+<area href="classAdmin.html" shape="rect" coords="167,7,228,33" alt="">
+<area href="classConfigReader.html" shape="rect" coords="145,57,249,84" alt="">
+<area href="classConnectClass.html" shape="rect" coords="145,108,249,135" alt="">
+<area href="classExtensible.html" shape="rect" coords="156,159,239,185" alt="">
+<area href="classExtMode.html" shape="rect" coords="160,209,235,236" alt="">
+<area href="classFileReader.html" shape="rect" coords="153,260,241,287" alt="">
+<area href="classHostItem.html" shape="rect" coords="160,311,235,337" alt="">
+<area href="classInvited.html" shape="rect" coords="167,361,228,388" alt="">
+<area href="classModeParameter.html" shape="rect" coords="139,412,256,439" alt="">
+<area href="classModule.html" shape="rect" coords="164,463,231,489" alt="">
+<area href="classModuleFactory.html" shape="rect" coords="143,513,252,540" alt="">
+<area href="classModuleMessage.html" shape="rect" coords="137,564,257,591" alt="">
+<area href="classServer.html" shape="rect" coords="167,615,228,641" alt="">
+<area href="classucrec.html" shape="rect" coords="171,665,224,692" alt="">
+<area href="classVersion.html" shape="rect" coords="164,716,231,743" alt="">
+<area href="classXLine.html" shape="rect" coords="169,767,225,793" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for classbase:<p><center><img src="classclassbase__coll__graph.gif" border="0" usemap="#classbase__coll__map" alt="Collaboration graph"></center>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classclassbase-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classclassbase-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classclassbase.html#a0">classbase</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classclassbase.html#classbase_28_29">classbase</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor, Sets the object's time. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classclassbase.html#a1">~classbase</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor, Sets the object's time. <a href="#classbase_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a> ()</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classclassbase.html#o0">age</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classclassbase.html#age">age</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time that the object was instantiated (used for TS calculation etc). </em> <a href="#o0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time that the object was instantiated (used for TS calculation etc). <a href="#age"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The base class for all inspircd classes.
@@ -49,24 +49,23 @@ The base class for all inspircd classes.
<p>
Definition at line <a class="el" href="base_8h-source.html#l00029">29</a> of file <a class="el" href="base_8h-source.html">base.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a0" doxytag="classbase::classbase"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="classbase_28_29"></a><!-- doxytag: member="classbase::classbase" ref="classbase_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> classbase::classbase </td>
+ <td class="md" nowrap valign="top">classbase::classbase </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -80,30 +79,29 @@ Constructor, Sets the object's time.
<p>
Definition at line <a class="el" href="base_8h-source.html#l00039">39</a> of file <a class="el" href="base_8h-source.html">base.h</a>.
<p>
-References <a class="el" href="base_8h-source.html#l00034">age</a>.
+References <a class="el" href="base_8h-source.html#l00034">age</a>.<div class="fragment"><pre class="fragment"><a name="l00039"></a>00039 { <a class="code" href="classclassbase.html#age">age</a> = time(NULL); }
+</pre></div>
<p>
-<div class="fragment"><pre>00039 { <a class="code" href="classclassbase.html#o0">age</a> = time(NULL); }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="classbase::~classbase"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7Eclassbase_28_29"></a><!-- doxytag: member="classbase::~classbase" ref="_7Eclassbase_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> classbase::~<a class="el" href="classclassbase.html">classbase</a> </td>
+ <td class="md" nowrap valign="top">classbase::~classbase </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -113,25 +111,26 @@ References <a class="el" href="base_8h-source.html#l00034">age</a>.
<p>
<p>
-Definition at line <a class="el" href="base_8h-source.html#l00040">40</a> of file <a class="el" href="base_8h-source.html">base.h</a>.
+Definition at line <a class="el" href="base_8h-source.html#l00040">40</a> of file <a class="el" href="base_8h-source.html">base.h</a>.<div class="fragment"><pre class="fragment"><a name="l00040"></a>00040 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00040 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o0" doxytag="classbase::age"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="age"></a><!-- doxytag: member="classbase::age" ref="age" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classclassbase.html#o0">classbase::age</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classclassbase.html#age">classbase::age</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -150,9 +149,8 @@ Referenced by <a class="el" href="base_8h-source.html#l00039">classbase()</a>.
</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:37 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classclassbase__coll__graph.gif b/docs/module-doc/classclassbase__coll__graph.gif
index e3d9a4976..b0d8ed452 100644
--- a/docs/module-doc/classclassbase__coll__graph.gif
+++ b/docs/module-doc/classclassbase__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classclassbase__coll__graph.map b/docs/module-doc/classclassbase__coll__graph.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/classclassbase__coll__graph.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/classclassbase__coll__graph.md5 b/docs/module-doc/classclassbase__coll__graph.md5
new file mode 100644
index 000000000..b4f319b22
--- /dev/null
+++ b/docs/module-doc/classclassbase__coll__graph.md5
@@ -0,0 +1 @@
+619a64a1115cc48fd790f5e46cad7ebd \ No newline at end of file
diff --git a/docs/module-doc/classclassbase__inherit__graph.gif b/docs/module-doc/classclassbase__inherit__graph.gif
index 233ffb57c..f31018bb8 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/classclassbase__inherit__graph.map b/docs/module-doc/classclassbase__inherit__graph.map
new file mode 100644
index 000000000..60738fc27
--- /dev/null
+++ b/docs/module-doc/classclassbase__inherit__graph.map
@@ -0,0 +1,17 @@
+base referer
+rect $classAdmin.html 167,7 228,33
+rect $classConfigReader.html 145,57 249,84
+rect $classConnectClass.html 145,108 249,135
+rect $classExtensible.html 156,159 239,185
+rect $classExtMode.html 160,209 235,236
+rect $classFileReader.html 153,260 241,287
+rect $classHostItem.html 160,311 235,337
+rect $classInvited.html 167,361 228,388
+rect $classModeParameter.html 139,412 256,439
+rect $classModule.html 164,463 231,489
+rect $classModuleFactory.html 143,513 252,540
+rect $classModuleMessage.html 137,564 257,591
+rect $classServer.html 167,615 228,641
+rect $classucrec.html 171,665 224,692
+rect $classVersion.html 164,716 231,743
+rect $classXLine.html 169,767 225,793
diff --git a/docs/module-doc/classclassbase__inherit__graph.md5 b/docs/module-doc/classclassbase__inherit__graph.md5
new file mode 100644
index 000000000..6f7c9a558
--- /dev/null
+++ b/docs/module-doc/classclassbase__inherit__graph.md5
@@ -0,0 +1 @@
+9ba08cccc68a6425b7a7fee87f20249b \ No newline at end of file
diff --git a/docs/module-doc/classcommand__t-members.html b/docs/module-doc/classcommand__t-members.html
index 8fe5098a1..947d15e3a 100644
--- a/docs/module-doc/classcommand__t-members.html
+++ b/docs/module-doc/classcommand__t-members.html
@@ -1,27 +1,26 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>command_t Member List</h1>This is the complete list of members for <a class="el" href="classcommand__t.html">command_t</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classcommand__t.html#o0">command</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a0">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classcommand__t.html#o2">flags_needed</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a2">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classcommand__t.html#o1">handler_function</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classcommand__t.html#o3">min_params</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a1">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classcommand__t.html#o6">source</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classcommand__t.html#o5">total_bytes</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classcommand__t.html#o4">use_count</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:40 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>command_t Member List</h1>This is the complete list of members for <a class="el" href="classcommand__t.html">command_t</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classcommand__t.html#command_5BMAXBUF_5D">command</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classcommand__t.html#flags_5Fneeded">flags_needed</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classcommand__t.html#handler_5Ffunction">handler_function</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classcommand__t.html#min_5Fparams">min_params</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classcommand__t.html#source_5BMAXBUF_5D">source</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classcommand__t.html#total_5Fbytes">total_bytes</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classcommand__t.html#use_5Fcount">use_count</a></td><td><a class="el" href="classcommand__t.html">command_t</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classcommand__t.html b/docs/module-doc/classcommand__t.html
index 81278b3ca..ce2282e17 100644
--- a/docs/module-doc/classcommand__t.html
+++ b/docs/module-doc/classcommand__t.html
@@ -1,49 +1,49 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: command_t class Reference</title>
+<title>InspIRCd: command_t Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>command_t Class Reference</h1>A structure that defines a command.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>command_t Class Reference</h1><!-- doxytag: class="command_t" --><!-- doxytag: inherits="Extensible" -->A structure that defines a command.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="ctables_8h-source.html">ctables.h</a>&gt;</code>
<p>
Inheritance diagram for command_t:<p><center><img src="classcommand__t__inherit__graph.gif" border="0" usemap="#command__t__inherit__map" alt="Inheritance graph"></center>
<map name="command__t__inherit__map">
-<area href="classExtensible.html" shape="rect" coords="12,82,94,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="13,8,93,34" alt="">
+<area href="classExtensible.html" shape="rect" coords="11,81,93,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="12,7,92,33" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for command_t:<p><center><img src="classcommand__t__coll__graph.gif" border="0" usemap="#command__t__coll__map" alt="Collaboration graph"></center>
<map name="command__t__coll__map">
-<area href="classExtensible.html" shape="rect" coords="81,98,164,125" alt="">
-<area href="classclassbase.html" shape="rect" coords="8,8,88,34" alt="">
+<area href="classExtensible.html" shape="rect" coords="80,97,163,124" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,33" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classcommand__t-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classcommand__t-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classcommand__t.html#o0">command</a> [MAXBUF]</td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcommand__t.html#command_5BMAXBUF_5D">command</a> [MAXBUF]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Command name. </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>handlerfunc *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classcommand__t.html#o1">handler_function</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Command name. <a href="#command_5BMAXBUF_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">handlerfunc *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcommand__t.html#handler_5Ffunction">handler_function</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Handler function as in typedef. </em> <a href="#o1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classcommand__t.html#o2">flags_needed</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Handler function as in typedef. <a href="#handler_5Ffunction"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcommand__t.html#flags_5Fneeded">flags_needed</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User flags needed to execute the command or 0. </em> <a href="#o2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classcommand__t.html#o3">min_params</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User flags needed to execute the command or 0. <a href="#flags_5Fneeded"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcommand__t.html#min_5Fparams">min_params</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Minimum number of parameters command takes. </em> <a href="#o3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classcommand__t.html#o4">use_count</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Minimum number of parameters command takes. <a href="#min_5Fparams"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcommand__t.html#use_5Fcount">use_count</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">used by /stats m </em> <a href="#o4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classcommand__t.html#o5">total_bytes</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">used by /stats m <a href="#use_5Fcount"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcommand__t.html#total_5Fbytes">total_bytes</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">used by /stats m </em> <a href="#o5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classcommand__t.html#o6">source</a> [MAXBUF]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">used by /stats m <a href="#total_5Fbytes"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcommand__t.html#source_5BMAXBUF_5D">source</a> [MAXBUF]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">used for resource tracking between modules </em> <a href="#o6"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">used for resource tracking between modules <a href="#source_5BMAXBUF_5D"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A structure that defines a command.
@@ -51,18 +51,19 @@ A structure that defines a command.
<p>
Definition at line <a class="el" href="ctables_8h-source.html#l00026">26</a> of file <a class="el" href="ctables_8h-source.html">ctables.h</a>.<hr><h2>Member Data Documentation</h2>
-<a name="o0" doxytag="command_t::command"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="command_5BMAXBUF_5D"></a><!-- doxytag: member="command_t::command" ref="command_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classcommand__t.html#o0">command_t::command</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classcommand__t.html#command_5BMAXBUF_5D">command_t::command</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -77,18 +78,19 @@ Command name.
Definition at line <a class="el" href="ctables_8h-source.html#l00031">31</a> of file <a class="el" href="ctables_8h-source.html">ctables.h</a>. </td>
</tr>
</table>
-<a name="o2" doxytag="command_t::flags_needed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="flags_5Fneeded"></a><!-- doxytag: member="command_t::flags_needed" ref="flags_5Fneeded" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classcommand__t.html#o2">command_t::flags_needed</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="classcommand__t.html#flags_5Fneeded">command_t::flags_needed</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -103,18 +105,19 @@ User flags needed to execute the command or 0.
Definition at line <a class="el" href="ctables_8h-source.html#l00037">37</a> of file <a class="el" href="ctables_8h-source.html">ctables.h</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="command_t::handler_function"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handler_5Ffunction"></a><!-- doxytag: member="command_t::handler_function" ref="handler_5Ffunction" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> handlerfunc* <a class="el" href="classcommand__t.html#o1">command_t::handler_function</a>
+ <td class="md" nowrap valign="top">handlerfunc* <a class="el" href="classcommand__t.html#handler_5Ffunction">command_t::handler_function</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -129,18 +132,19 @@ Handler function as in typedef.
Definition at line <a class="el" href="ctables_8h-source.html#l00034">34</a> of file <a class="el" href="ctables_8h-source.html">ctables.h</a>. </td>
</tr>
</table>
-<a name="o3" doxytag="command_t::min_params"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="min_5Fparams"></a><!-- doxytag: member="command_t::min_params" ref="min_5Fparams" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classcommand__t.html#o3">command_t::min_params</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classcommand__t.html#min_5Fparams">command_t::min_params</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -155,18 +159,19 @@ Minimum number of parameters command takes.
Definition at line <a class="el" href="ctables_8h-source.html#l00040">40</a> of file <a class="el" href="ctables_8h-source.html">ctables.h</a>. </td>
</tr>
</table>
-<a name="o6" doxytag="command_t::source"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="source_5BMAXBUF_5D"></a><!-- doxytag: member="command_t::source" ref="source_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classcommand__t.html#o6">command_t::source</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classcommand__t.html#source_5BMAXBUF_5D">command_t::source</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -181,18 +186,19 @@ used for resource tracking between modules
Definition at line <a class="el" href="ctables_8h-source.html#l00049">49</a> of file <a class="el" href="ctables_8h-source.html">ctables.h</a>. </td>
</tr>
</table>
-<a name="o5" doxytag="command_t::total_bytes"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="total_5Fbytes"></a><!-- doxytag: member="command_t::total_bytes" ref="total_5Fbytes" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classcommand__t.html#o5">command_t::total_bytes</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classcommand__t.html#total_5Fbytes">command_t::total_bytes</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -207,18 +213,19 @@ used by /stats m
Definition at line <a class="el" href="ctables_8h-source.html#l00046">46</a> of file <a class="el" href="ctables_8h-source.html">ctables.h</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="command_t::use_count"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="use_5Fcount"></a><!-- doxytag: member="command_t::use_count" ref="use_5Fcount" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classcommand__t.html#o4">command_t::use_count</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classcommand__t.html#use_5Fcount">command_t::use_count</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -235,9 +242,8 @@ Definition at line <a class="el" href="ctables_8h-source.html#l00043">43</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:39 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classcommand__t__coll__graph.gif b/docs/module-doc/classcommand__t__coll__graph.gif
index 47887a43c..24aec3470 100644
--- a/docs/module-doc/classcommand__t__coll__graph.gif
+++ b/docs/module-doc/classcommand__t__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classcommand__t__coll__graph.map b/docs/module-doc/classcommand__t__coll__graph.map
new file mode 100644
index 000000000..cc88b53ff
--- /dev/null
+++ b/docs/module-doc/classcommand__t__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classExtensible.html 80,97 163,124
+rect $classclassbase.html 7,7 87,33
diff --git a/docs/module-doc/classcommand__t__coll__graph.md5 b/docs/module-doc/classcommand__t__coll__graph.md5
new file mode 100644
index 000000000..312c9417b
--- /dev/null
+++ b/docs/module-doc/classcommand__t__coll__graph.md5
@@ -0,0 +1 @@
+c1351289da2fb0e69df5517d601b50d5 \ No newline at end of file
diff --git a/docs/module-doc/classcommand__t__inherit__graph.gif b/docs/module-doc/classcommand__t__inherit__graph.gif
index c4ae06751..c5945effd 100644
--- a/docs/module-doc/classcommand__t__inherit__graph.gif
+++ b/docs/module-doc/classcommand__t__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classcommand__t__inherit__graph.map b/docs/module-doc/classcommand__t__inherit__graph.map
new file mode 100644
index 000000000..f7ab96c5d
--- /dev/null
+++ b/docs/module-doc/classcommand__t__inherit__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classExtensible.html 11,81 93,108
+rect $classclassbase.html 12,7 92,33
diff --git a/docs/module-doc/classcommand__t__inherit__graph.md5 b/docs/module-doc/classcommand__t__inherit__graph.md5
new file mode 100644
index 000000000..9c538143f
--- /dev/null
+++ b/docs/module-doc/classcommand__t__inherit__graph.md5
@@ -0,0 +1 @@
+f184248fba7e0bab49a632a5b1d29a64 \ No newline at end of file
diff --git a/docs/module-doc/classconnection-members.html b/docs/module-doc/classconnection-members.html
index 1ff85057d..6dbe2d41d 100644
--- a/docs/module-doc/classconnection-members.html
+++ b/docs/module-doc/classconnection-members.html
@@ -1,35 +1,34 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<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 class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o3">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o4">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classconnection.html#o5">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o6">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classExtensible.html#a0">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o0">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a2">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o7">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o1">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o12">idle_lastmsg</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o2">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o10">lastping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o13">nping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o8">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o9">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a1">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o11">signon</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:47 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<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.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#bytes_5Fin">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#bytes_5Fout">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#cmds_5Fin">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#cmds_5Fout">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#connection_28_29">connection</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#fd">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#haspassed">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#host_5B_31_36_30_5D">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#idle_5Flastmsg">idle_lastmsg</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#ip_5B_31_36_5D">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#lastping">lastping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#nping">nping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#port">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#registered">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#signon">signon</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classconnection.html b/docs/module-doc/classconnection.html
index 36140e975..76ef16db8 100644
--- a/docs/module-doc/classconnection.html
+++ b/docs/module-doc/classconnection.html
@@ -1,101 +1,99 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: connection class Reference</title>
+<title>InspIRCd: connection Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>connection Class Reference</h1>Please note: classes serverrec and userrec both inherit from class connection.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>connection Class Reference</h1><!-- doxytag: class="connection" --><!-- doxytag: inherits="Extensible" -->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">
-<area href="classserverrec.html" shape="rect" coords="8,232,85,258" alt="">
-<area href="classuserrec.html" shape="rect" coords="109,232,176,258" alt="">
-<area href="classExtensible.html" shape="rect" coords="53,82,136,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="54,8,134,34" alt="">
+<area href="classuserrec.html" shape="rect" coords="16,231,83,257" alt="">
+<area href="classExtensible.html" shape="rect" coords="8,81,91,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="10,7,90,33" alt="">
</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="classExtensible.html" shape="rect" coords="86,237,169,264" alt="">
-<area href="classclassbase.html" shape="rect" coords="69,98,149,125" alt="">
+<area href="classExtensible.html" shape="rect" coords="86,236,168,263" alt="">
+<area href="classclassbase.html" shape="rect" coords="68,97,148,124" 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>
+<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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a0">connection</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#connection_28_29">connection</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o0">fd</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <a href="#connection_28_29"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#fd">fd</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">File descriptor of the connection. </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o1">host</a> [160]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">File descriptor of the connection. <a href="#fd"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#host_5B_31_36_30_5D">host</a> [160]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostname of connection. </em> <a href="#o1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o2">ip</a> [16]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostname of connection. <a href="#host_5B_31_36_30_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#ip_5B_31_36_5D">ip</a> [16]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">IP of connection. </em> <a href="#o2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o3">bytes_in</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">IP of connection. <a href="#ip_5B_31_36_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#bytes_5Fin">bytes_in</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for bytes inbound. </em> <a href="#o3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o4">bytes_out</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for bytes inbound. <a href="#bytes_5Fin"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#bytes_5Fout">bytes_out</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for bytes outbound. </em> <a href="#o4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o5">cmds_in</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for bytes outbound. <a href="#bytes_5Fout"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#cmds_5Fin">cmds_in</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for commands inbound. </em> <a href="#o5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o6">cmds_out</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for commands inbound. <a href="#cmds_5Fin"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#cmds_5Fout">cmds_out</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for commands outbound. </em> <a href="#o6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o7">haspassed</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for commands outbound. <a href="#cmds_5Fout"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#haspassed">haspassed</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">True if server/user has authenticated, false if otherwise. </em> <a href="#o7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o8">port</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">True if server/user has authenticated, false if otherwise. <a href="#haspassed"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#port">port</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Port number For a userrec, this is the port they connected to the network on. </em> <a href="#o8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o9">registered</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Port number For a userrec, this is the port they connected to the network on. <a href="#port"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#registered">registered</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used by userrec to indicate the registration status of the connection. </em> <a href="#o9"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o10">lastping</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used by userrec to indicate the registration status of the connection. <a href="#registered"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#lastping">lastping</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time the connection was last pinged. </em> <a href="#o10"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o11">signon</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time the connection was last pinged. <a href="#lastping"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#signon">signon</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time the connection was created, set in the constructor. </em> <a href="#o11"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o12">idle_lastmsg</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time the connection was created, set in the constructor. <a href="#signon"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#idle_5Flastmsg">idle_lastmsg</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time that the connection last sent data, used to calculate idle time. </em> <a href="#o12"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o13">nping</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time that the connection last sent data, used to calculate idle time. <a href="#idle_5Flastmsg"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html#nping">nping</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used by PING checks with clients. </em> <a href="#o13"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used by PING checks with clients. <a href="#nping"></a><br></td></tr>
</table>
<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#l00296">296</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="connection_8h-source.html#l00037">37</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="connection_28_29"></a><!-- doxytag: member="connection::connection" ref="connection_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> connection::connection </td>
+ <td class="md" nowrap valign="top">connection::connection </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
- <td class="md" nowrap></td>
+ <td class="md" nowrap><code> [inline]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -105,22 +103,32 @@ Definition at line <a class="el" href="connection_8h-source.html#l00296">296</a>
<p>
Default constructor.
<p>
+
+<p>
+Definition at line <a class="el" href="connection_8h-source.html#l00100">100</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
+<p>
+References <a class="el" href="connection_8h-source.html#l00042">fd</a>.<div class="fragment"><pre class="fragment"><a name="l00101"></a>00101 {
+<a name="l00102"></a>00102 this-&gt;<a class="code" href="classconnection.html#fd">fd</a> = -1;
+<a name="l00103"></a>00103 }
+</pre></div>
+<p>
</td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o3" doxytag="connection::bytes_in"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="bytes_5Fin"></a><!-- doxytag: member="connection::bytes_in" ref="bytes_5Fin" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classconnection.html#o3">connection::bytes_in</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classconnection.html#bytes_5Fin">connection::bytes_in</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -132,23 +140,24 @@ Stats counter for bytes inbound.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00313">313</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#l00054">54</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#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="connection::bytes_out"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="bytes_5Fout"></a><!-- doxytag: member="connection::bytes_out" ref="bytes_5Fout" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classconnection.html#o4">connection::bytes_out</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classconnection.html#bytes_5Fout">connection::bytes_out</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -160,23 +169,24 @@ Stats counter for bytes outbound.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00317">317</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#l00058">58</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#l00264">userrec::FlushWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00266">userrec::FlushWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o5" doxytag="connection::cmds_in"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="cmds_5Fin"></a><!-- doxytag: member="connection::cmds_in" ref="cmds_5Fin" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classconnection.html#o5">connection::cmds_in</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classconnection.html#cmds_5Fin">connection::cmds_in</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -188,23 +198,24 @@ Stats counter for commands inbound.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00321">321</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#l00062">62</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#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o6" doxytag="connection::cmds_out"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="cmds_5Fout"></a><!-- doxytag: member="connection::cmds_out" ref="cmds_5Fout" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classconnection.html#o6">connection::cmds_out</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classconnection.html#cmds_5Fout">connection::cmds_out</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -216,23 +227,24 @@ Stats counter for commands outbound.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00325">325</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#l00066">66</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#l00264">userrec::FlushWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00266">userrec::FlushWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="connection::fd"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="fd"></a><!-- doxytag: member="connection::fd" ref="fd" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classconnection.html#o0">connection::fd</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classconnection.html#fd">connection::fd</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -244,23 +256,24 @@ File descriptor of the connection.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00301">301</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#l00042">42</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#l00142">serverrec::BeginLink()</a>, <a class="el" href="servers_8cpp-source.html#l00081">serverrec::CreateListener()</a>, <a class="el" href="modules_8cpp-source.html#l00919">ConfigReader::DumpErrors()</a>, <a class="el" href="servers_8cpp-source.html#l00182">serverrec::MeshCookie()</a>, <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>, <a class="el" href="users_8cpp-source.html#l00075">userrec::ReadData()</a>, <a class="el" href="modules_8cpp-source.html#l00464">Server::SendTo()</a>, <a class="el" href="servers_8cpp-source.html#l00046">serverrec::serverrec()</a>, <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00621">Server::UserToPseudo()</a>. </td>
+Referenced by <a class="el" href="connection_8h-source.html#l00100">connection()</a>, <a class="el" href="modules_8cpp-source.html#l00894">ConfigReader::DumpErrors()</a>, <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>, <a class="el" href="modules_8cpp-source.html#l00482">Server::SendTo()</a>, <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00639">Server::UserToPseudo()</a>. </td>
</tr>
</table>
-<a name="o7" doxytag="connection::haspassed"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="haspassed"></a><!-- doxytag: member="connection::haspassed" ref="haspassed" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool <a class="el" href="classconnection.html#o7">connection::haspassed</a>
+ <td class="md" nowrap valign="top">bool <a class="el" href="classconnection.html#haspassed">connection::haspassed</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -272,23 +285,24 @@ True if server/user has authenticated, false if otherwise.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00329">329</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#l00070">70</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#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="connection::host"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="host_5B_31_36_30_5D"></a><!-- doxytag: member="connection::host" ref="host_5B_31_36_30_5D" args="[160]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classconnection.html#o1">connection::host</a>[160]
+ <td class="md" nowrap valign="top">char <a class="el" href="classconnection.html#host_5B_31_36_30_5D">connection::host</a>[160] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -300,23 +314,24 @@ Hostname of connection.
<p>
Not used if this is a serverrec
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00305">305</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#l00046">46</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#l00085">userrec::GetFullRealHost()</a>, <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>, <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00621">Server::UserToPseudo()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00087">userrec::GetFullRealHost()</a>, <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>, <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00639">Server::UserToPseudo()</a>. </td>
</tr>
</table>
-<a name="o12" doxytag="connection::idle_lastmsg"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="idle_5Flastmsg"></a><!-- doxytag: member="connection::idle_lastmsg" ref="idle_5Flastmsg" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classconnection.html#o12">connection::idle_lastmsg</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classconnection.html#idle_5Flastmsg">connection::idle_lastmsg</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -328,23 +343,24 @@ 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#l00351">351</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#l00092">92</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#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o2" doxytag="connection::ip"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ip_5B_31_36_5D"></a><!-- doxytag: member="connection::ip" ref="ip_5B_31_36_5D" args="[16]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classconnection.html#o2">connection::ip</a>[16]
+ <td class="md" nowrap valign="top">char <a class="el" href="classconnection.html#ip_5B_31_36_5D">connection::ip</a>[16] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -356,23 +372,24 @@ IP of connection.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00309">309</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#l00050">50</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#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o10" doxytag="connection::lastping"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="lastping"></a><!-- doxytag: member="connection::lastping" ref="lastping" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classconnection.html#o10">connection::lastping</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classconnection.html#lastping">connection::lastping</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -384,23 +401,24 @@ Time the connection was last pinged.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00343">343</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#l00084">84</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#l00046">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o13" doxytag="connection::nping"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="nping"></a><!-- doxytag: member="connection::nping" ref="nping" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classconnection.html#o13">connection::nping</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classconnection.html#nping">connection::nping</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -412,23 +430,24 @@ Used by PING checks with clients.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00355">355</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#l00096">96</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#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o8" doxytag="connection::port"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="port"></a><!-- doxytag: member="connection::port" ref="port" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classconnection.html#o8">connection::port</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classconnection.html#port">connection::port</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -440,23 +459,24 @@ 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#l00335">335</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#l00076">76</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#l00081">serverrec::CreateListener()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o9" doxytag="connection::registered"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="registered"></a><!-- doxytag: member="connection::registered" ref="registered" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classconnection.html#o9">connection::registered</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="classconnection.html#registered">connection::registered</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -468,23 +488,24 @@ Used by userrec to indicate the registration status of the connection.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00339">339</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#l00080">80</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#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o11" doxytag="connection::signon"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="signon"></a><!-- doxytag: member="connection::signon" ref="signon" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classconnection.html#o11">connection::signon</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classconnection.html#signon">connection::signon</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -496,16 +517,15 @@ Time the connection was created, set in the constructor.
<p>
<p>
-Definition at line <a class="el" href="connection_8h-source.html#l00347">347</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#l00088">88</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#l00046">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:47 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classconnection__coll__graph.gif b/docs/module-doc/classconnection__coll__graph.gif
index 12d07f356..a6b5a6bec 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/classconnection__coll__graph.map b/docs/module-doc/classconnection__coll__graph.map
new file mode 100644
index 000000000..75c36a9e9
--- /dev/null
+++ b/docs/module-doc/classconnection__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classExtensible.html 86,236 168,263
+rect $classclassbase.html 68,97 148,124
diff --git a/docs/module-doc/classconnection__coll__graph.md5 b/docs/module-doc/classconnection__coll__graph.md5
new file mode 100644
index 000000000..d87f68626
--- /dev/null
+++ b/docs/module-doc/classconnection__coll__graph.md5
@@ -0,0 +1 @@
+f35feb2763df91938dc9b523e5feded3 \ No newline at end of file
diff --git a/docs/module-doc/classconnection__inherit__graph.gif b/docs/module-doc/classconnection__inherit__graph.gif
index 9d423ffad..846cdf38c 100644
--- a/docs/module-doc/classconnection__inherit__graph.gif
+++ b/docs/module-doc/classconnection__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classconnection__inherit__graph.map b/docs/module-doc/classconnection__inherit__graph.map
new file mode 100644
index 000000000..0eaacf386
--- /dev/null
+++ b/docs/module-doc/classconnection__inherit__graph.map
@@ -0,0 +1,4 @@
+base referer
+rect $classuserrec.html 16,231 83,257
+rect $classExtensible.html 8,81 91,108
+rect $classclassbase.html 10,7 90,33
diff --git a/docs/module-doc/classconnection__inherit__graph.md5 b/docs/module-doc/classconnection__inherit__graph.md5
new file mode 100644
index 000000000..1234dd82a
--- /dev/null
+++ b/docs/module-doc/classconnection__inherit__graph.md5
@@ -0,0 +1 @@
+3199229d3dcf3119d7eac4a7ce792577 \ No newline at end of file
diff --git a/docs/module-doc/classes.html b/docs/module-doc/classes.html
index 718291856..1d3d77251 100644
--- a/docs/module-doc/classes.html
+++ b/docs/module-doc/classes.html
@@ -1,34 +1,34 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Alphabetical index</title>
+<title>InspIRCd: Alphabetical List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindexHL" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<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><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;D&nbsp;&nbsp;</div></td></tr></table>
-</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="classModuleFactory.html">ModuleFactory</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structirc_1_1StrHashComp.html">StrHashComp</a> (<a class="el" href="namespaceirc.html">irc</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="classDNS.html">DNS</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classHostItem.html">HostItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classModuleMessage.html">ModuleMessage</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><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="structdns__ip4list.html">dns_ip4list</a>&nbsp;&nbsp;&nbsp;</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;N&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classucrec.html">ucrec</a>&nbsp;&nbsp;&nbsp;</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><a class="el" href="structirc_1_1InAddr__HashComp.html">InAddr_HashComp</a> (<a class="el" href="namespaceirc.html">irc</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html">nspace::hash&lt; in_addr &gt;</a> (<a class="el" href="namespacenspace.html">nspace</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classuserrec.html">userrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classELine.html">ELine</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classInvited.html">Invited</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html">nspace::hash&lt; string &gt;</a> (<a class="el" href="namespacenspace.html">nspace</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><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="classEvent.html">Event</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;Q&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="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="structirc_1_1irc__char__traits.html">irc_char_traits</a> (<a class="el" href="namespaceirc.html">irc</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classQLine.html">QLine</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;W&nbsp;&nbsp;</div></td></tr></table>
-</td></tr><tr><td><a class="el" href="classstd_1_1char__traits.html">char_traits</a> (<a class="el" href="namespacestd.html">std</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classExtensible.html">Extensible</a>&nbsp;&nbsp;&nbsp;</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;R&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a>&nbsp;&nbsp;&nbsp;</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><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;K&nbsp;&nbsp;</div></td></tr></table>
-</td><td><a class="el" href="classRequest.html">Request</a>&nbsp;&nbsp;&nbsp;</td><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;X&nbsp;&nbsp;</div></td></tr></table>
-</td></tr><tr><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><a class="el" href="classKLine.html">KLine</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="classXLine.html">XLine</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><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><td><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;Z&nbsp;&nbsp;</div></td></tr></table>
-</td></tr><tr><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;G&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><td><a class="el" href="classZLine.html">ZLine</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classconnection.html">connection</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classGLine.html">GLine</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classModule.html">Module</a>&nbsp;&nbsp;&nbsp;</td></tr></table><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:22 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindexHL" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>InspIRCd Class Index</h1><p><div class="qindex"><a class="qindex" href="#letter_A">A</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_B">B</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_C">C</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_D">D</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_E">E</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_F">F</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_G">G</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_H">H</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_I">I</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_K">K</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_M">M</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_Q">Q</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_R">R</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_S">S</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_U">U</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_V">V</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_W">W</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_X">X</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_Z">Z</a></div><p>
+<table align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
+<tr><td><a name="letter_A"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;A&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;D&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classGLine.html">GLine</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classKLine.html">KLine</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structirc_1_1StrHashComp.html">StrHashComp</a> (<a class="el" href="namespaceirc.html">irc</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="classDNS.html">DNS</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_H"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;H&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;M&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_U"></a><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 name="letter_B"></a><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="structdns__ip4list.html">dns_ip4list</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html">hash&lt; in_addr &gt;</a> (<a class="el" href="namespacenspace.html">nspace</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classModeParameter.html">ModeParameter</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classucrec.html">ucrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classBanItem.html">BanItem</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_E"></a><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="structnspace_1_1hash_3_01string_01_4.html">hash&lt; string &gt;</a> (<a class="el" href="namespacenspace.html">nspace</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classModule.html">Module</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classuserrec.html">userrec</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classBoolSet.html">BoolSet</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classELine.html">ELine</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 name="letter_V"></a><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 name="letter_C"></a><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="classEvent.html">Event</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;I&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classModuleMessage.html">ModuleMessage</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classVersion.html">Version</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="structirc_1_1InAddr__HashComp.html">InAddr_HashComp</a> (<a class="el" href="namespaceirc.html">irc</a>)&nbsp;&nbsp;&nbsp;</td><td><a name="letter_Q"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;Q&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;W&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classstd_1_1char__traits.html">char_traits</a> (<a class="el" href="namespacestd.html">std</a>)&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classExtensible.html">Extensible</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classInspSocket.html">InspSocket</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classQLine.html">QLine</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classWhoWasUser.html">WhoWasUser</a>&nbsp;&nbsp;&nbsp;</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="classInvited.html">Invited</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;R&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_X"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;X&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classcommand__t.html">command_t</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_F"></a><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="classInviteItem.html">InviteItem</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classRequest.html">Request</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classXLine.html">XLine</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><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="structirc_1_1irc__char__traits.html">irc_char_traits</a> (<a class="el" href="namespaceirc.html">irc</a>)&nbsp;&nbsp;&nbsp;</td><td><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;S&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_Z"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;Z&nbsp;&nbsp;</div></td></tr></table>
+</td></tr><tr><td><a class="el" href="classConnectClass.html">ConnectClass</a>&nbsp;&nbsp;&nbsp;</td><td><a name="letter_G"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;G&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a name="letter_K"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&nbsp;&nbsp;K&nbsp;&nbsp;</div></td></tr></table>
+</td><td><a class="el" href="classServer.html">Server</a>&nbsp;&nbsp;&nbsp;</td><td><a class="el" href="classZLine.html">ZLine</a>&nbsp;&nbsp;&nbsp;</td></tr><tr><td><a class="el" href="classconnection.html">connection</a>&nbsp;&nbsp;&nbsp;</td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_A">A</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_B">B</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_C">C</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_D">D</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_E">E</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_F">F</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_G">G</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_H">H</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_I">I</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_K">K</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_M">M</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_Q">Q</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_R">R</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_S">S</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_U">U</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_V">V</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_W">W</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_X">X</a>&nbsp;|&nbsp;<a class="qindex" href="#letter_Z">Z</a></div><p>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classstd_1_1char__traits.html b/docs/module-doc/classstd_1_1char__traits.html
index 198368101..c91c33065 100644
--- a/docs/module-doc/classstd_1_1char__traits.html
+++ b/docs/module-doc/classstd_1_1char__traits.html
@@ -1,22 +1,21 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: char_traits class Reference</title>
+<title>InspIRCd: char_traits Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>char_traits Class Reference</h1>Inheritance diagram for char_traits:<p><center><img src="classstd_1_1char__traits__inherit__graph.gif" border="0" usemap="#char__traits__inherit__map" alt="Inheritance graph"></center>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>char_traits Class Reference</h1><!-- doxytag: class="std::char_traits" -->Inheritance diagram for char_traits:<p><center><img src="classstd_1_1char__traits__inherit__graph.gif" border="0" usemap="#char__traits__inherit__map" alt="Inheritance graph"></center>
<map name="char__traits__inherit__map">
-<area href="structirc_1_1irc__char__traits.html" shape="rect" coords="8,82,186,109" alt="">
+<area href="structirc_1_1irc__char__traits.html" shape="rect" coords="7,82,185,108" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="hashcomp_8h-source.html">hashcomp.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:33 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classstd_1_1char__traits__inherit__graph.gif b/docs/module-doc/classstd_1_1char__traits__inherit__graph.gif
index f8ae3419b..5928e8485 100644
--- a/docs/module-doc/classstd_1_1char__traits__inherit__graph.gif
+++ b/docs/module-doc/classstd_1_1char__traits__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classstd_1_1char__traits__inherit__graph.map b/docs/module-doc/classstd_1_1char__traits__inherit__graph.map
new file mode 100644
index 000000000..4f58100de
--- /dev/null
+++ b/docs/module-doc/classstd_1_1char__traits__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $structirc_1_1irc__char__traits.html 7,82 185,108
diff --git a/docs/module-doc/classstd_1_1char__traits__inherit__graph.md5 b/docs/module-doc/classstd_1_1char__traits__inherit__graph.md5
new file mode 100644
index 000000000..f839e280c
--- /dev/null
+++ b/docs/module-doc/classstd_1_1char__traits__inherit__graph.md5
@@ -0,0 +1 @@
+fb053a0129941b003b2a9b44035051d6 \ No newline at end of file
diff --git a/docs/module-doc/classucrec-members.html b/docs/module-doc/classucrec-members.html
index 3eb9e08bf..630eeec48 100644
--- a/docs/module-doc/classucrec-members.html
+++ b/docs/module-doc/classucrec-members.html
@@ -1,21 +1,20 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ucrec Member List</h1>This is the complete list of members for <a class="el" href="classucrec.html">ucrec</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classucrec.html#o1">channel</a></td><td><a class="el" href="classucrec.html">ucrec</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classucrec.html#o0">uc_modes</a></td><td><a class="el" href="classucrec.html">ucrec</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:38 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ucrec Member List</h1>This is the complete list of members for <a class="el" href="classucrec.html">ucrec</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classucrec.html#channel">channel</a></td><td><a class="el" href="classucrec.html">ucrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classucrec.html#uc_5Fmodes">uc_modes</a></td><td><a class="el" href="classucrec.html">ucrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classucrec.html#ucrec_28_29">ucrec</a>()</td><td><a class="el" href="classucrec.html">ucrec</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classucrec.html#_7Eucrec_28_29">~ucrec</a>()</td><td><a class="el" href="classucrec.html">ucrec</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classucrec.html b/docs/module-doc/classucrec.html
index 000120d15..22589f797 100644
--- a/docs/module-doc/classucrec.html
+++ b/docs/module-doc/classucrec.html
@@ -1,65 +1,64 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: ucrec class Reference</title>
+<title>InspIRCd: ucrec Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ucrec Class Reference</h1>Holds a user's modes on a channel This class associates a users privilages with a channel by creating a pointer link between a userrec and chanrec class.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>ucrec Class Reference</h1><!-- doxytag: class="ucrec" --><!-- doxytag: inherits="classbase" -->Holds a user's modes on a channel This class associates a users privilages with a channel by creating a pointer link between a userrec and chanrec class.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="channels_8h-source.html">channels.h</a>&gt;</code>
<p>
Inheritance diagram for ucrec:<p><center><img src="classucrec__inherit__graph.gif" border="0" usemap="#ucrec__inherit__map" alt="Inheritance graph"></center>
<map name="ucrec__inherit__map">
-<area href="classclassbase.html" shape="rect" coords="8,7,88,34" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,7,87,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ucrec:<p><center><img src="classucrec__coll__graph.gif" border="0" usemap="#ucrec__coll__map" alt="Collaboration graph"></center>
<map name="ucrec__coll__map">
-<area href="classclassbase.html" shape="rect" coords="8,178,88,205" alt="">
-<area href="classchanrec.html" shape="rect" coords="222,178,292,205" alt="">
+<area href="classclassbase.html" shape="rect" coords="7,177,87,204" alt="">
+<area href="classchanrec.html" shape="rect" coords="221,177,291,204" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classucrec-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classucrec-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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classucrec.html#a0">ucrec</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classucrec.html#ucrec_28_29">ucrec</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classucrec.html#a1">~ucrec</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classucrec.html#_7Eucrec_28_29">~ucrec</a> ()</td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classucrec.html#o0">uc_modes</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classucrec.html#uc_5Fmodes">uc_modes</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains a bitmask of the UCMODE_OP ... </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classucrec.html#o1">channel</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains a bitmask of the UCMODE_OP . <a href="#uc_5Fmodes"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classucrec.html#channel">channel</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Points to the channel record where the given modes apply. </em> <a href="#o1"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Points to the channel record where the given modes apply. <a href="#channel"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds a user's modes on a channel This class associates a users privilages with a channel by creating a pointer link between a userrec and chanrec class.
<p>
-The uc_modes member holds a bitmask of which privilages the user has on the channel, such as op, voice, etc.
+The uc_modes member holds a bitmask of which privilages the user has on the channel, such as op, voice, etc.
<p>
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00241">241</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
-<a name="a0" doxytag="ucrec::ucrec"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ucrec_28_29"></a><!-- doxytag: member="ucrec::ucrec" ref="ucrec_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> ucrec::ucrec </td>
+ <td class="md" nowrap valign="top">ucrec::ucrec </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -69,30 +68,29 @@ Definition at line <a class="el" href="channels_8h-source.html#l00241">241</a> o
<p>
<p>
-Definition at line <a class="el" href="channels_8h-source.html#l00254">254</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
+Definition at line <a class="el" href="channels_8h-source.html#l00254">254</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<div class="fragment"><pre class="fragment"><a name="l00254"></a>00254 { <span class="comment">/* stub */</span> }
+</pre></div>
<p>
-<div class="fragment"><pre>00254 { <span class="comment">/* stub */</span> }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="ucrec::~ucrec"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7Eucrec_28_29"></a><!-- doxytag: member="ucrec::~ucrec" ref="_7Eucrec_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> virtual ucrec::~<a class="el" href="classucrec.html">ucrec</a> </td>
+ <td class="md" nowrap valign="top">virtual ucrec::~ucrec </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline, virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -102,25 +100,26 @@ Definition at line <a class="el" href="channels_8h-source.html#l00254">254</a> o
<p>
<p>
-Definition at line <a class="el" href="channels_8h-source.html#l00255">255</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
+Definition at line <a class="el" href="channels_8h-source.html#l00255">255</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.<div class="fragment"><pre class="fragment"><a name="l00255"></a>00255 { <span class="comment">/* stub */</span> }
+</pre></div>
<p>
-<div class="fragment"><pre>00255 { <span class="comment">/* stub */</span> }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o1" doxytag="ucrec::channel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="channel"></a><!-- doxytag: member="ucrec::channel" ref="channel" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classchanrec.html">chanrec</a>* <a class="el" href="classucrec.html#o1">ucrec::channel</a>
+ <td class="md" nowrap valign="top"><a class="el" href="classchanrec.html">chanrec</a>* <a class="el" href="classucrec.html#channel">ucrec::channel</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -134,21 +133,22 @@ If the record is not in use, this value will be NULL.
<p>
Definition at line <a class="el" href="channels_8h-source.html#l00252">252</a> of file <a class="el" href="channels_8h-source.html">channels.h</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec::userrec()</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="ucrec::uc_modes"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="uc_5Fmodes"></a><!-- doxytag: member="ucrec::uc_modes" ref="uc_5Fmodes" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classucrec.html#o0">ucrec::uc_modes</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="classucrec.html#uc_5Fmodes">ucrec::uc_modes</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -156,20 +156,19 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00651">Server::Pseud
<td>
<p>
-Contains a bitmask of the UCMODE_OP ...
+Contains a bitmask of the UCMODE_OP .
<p>
-UCMODE_FOUNDER values. If this value is zero, the user has no privilages upon the channel.
+.. 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#l00247">247</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#l00032">userrec::userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:38 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classucrec__coll__graph.gif b/docs/module-doc/classucrec__coll__graph.gif
index 31b8c384d..e932389b2 100644
--- a/docs/module-doc/classucrec__coll__graph.gif
+++ b/docs/module-doc/classucrec__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/classucrec__coll__graph.map b/docs/module-doc/classucrec__coll__graph.map
new file mode 100644
index 000000000..af737e7f3
--- /dev/null
+++ b/docs/module-doc/classucrec__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classclassbase.html 7,177 87,204
+rect $classchanrec.html 221,177 291,204
diff --git a/docs/module-doc/classucrec__coll__graph.md5 b/docs/module-doc/classucrec__coll__graph.md5
new file mode 100644
index 000000000..7e9e941c2
--- /dev/null
+++ b/docs/module-doc/classucrec__coll__graph.md5
@@ -0,0 +1 @@
+706c63fd96074c4a0518e46eb7b6b76a \ No newline at end of file
diff --git a/docs/module-doc/classucrec__inherit__graph.gif b/docs/module-doc/classucrec__inherit__graph.gif
index 601b61b45..8cafd8f8a 100644
--- a/docs/module-doc/classucrec__inherit__graph.gif
+++ b/docs/module-doc/classucrec__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classucrec__inherit__graph.map b/docs/module-doc/classucrec__inherit__graph.map
new file mode 100644
index 000000000..8b1d85be3
--- /dev/null
+++ b/docs/module-doc/classucrec__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classclassbase.html 7,7 87,34
diff --git a/docs/module-doc/classucrec__inherit__graph.md5 b/docs/module-doc/classucrec__inherit__graph.md5
new file mode 100644
index 000000000..6e04d789d
--- /dev/null
+++ b/docs/module-doc/classucrec__inherit__graph.md5
@@ -0,0 +1 @@
+2b8403e912c911fe8172382e6f43f2ea \ No newline at end of file
diff --git a/docs/module-doc/classuserrec-members.html b/docs/module-doc/classuserrec-members.html
index 8e2584e0c..03f0cdccd 100644
--- a/docs/module-doc/classuserrec-members.html
+++ b/docs/module-doc/classuserrec-members.html
@@ -1,77 +1,76 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<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 class="memlist"><td><a class="el" href="classuserrec.html#a9">AddBuffer</a>(std::string a)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a15">AddWriteBuf</a>(std::string data)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classclassbase.html#o0">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o7">awaymsg</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a10">BufferIsReady</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o3">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o4">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o5">chans</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classuserrec.html#a11">ClearBuffer</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a18">CloseSocket</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o5">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o6">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classuserrec.html#o2">dhost</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o11">dns_done</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a0">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o0">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o8">flood</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a16">FlushWriteBuf</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o3">fullname</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a12">GetBuffer</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a2">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 class="memlist"><td><a class="el" href="classuserrec.html#a17">GetInviteList</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a14">GetWriteError</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o7">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a7">HasPermission</a>(char *command)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o1">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o1">ident</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o12">idle_lastmsg</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#r0">invites</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [private]</code></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classconnection.html#o2">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classconnection.html#o10">lastping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o16">lines_in</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o4">modes</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o0">nick</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o13">nping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o10">oper</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o13">password</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o12">pingmax</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o8">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a8">ReadData</a>(void *buffer, size_t size)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o14">recvq</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o21">recvqmax</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o9">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classuserrec.html#o17">reset_due</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o15">sendq</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o20">sendqmax</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o6">server</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#a13">SetWriteError</a>(std::string error)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classExtensible.html#a1">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classconnection.html#o11">signon</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o18">threshold</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="classuserrec.html#o9">timeout</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><td><a class="el" href="classuserrec.html#o19">WriteError</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
- <tr class="memlist"><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 class="memlist"><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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:43 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<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.<p><table>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#AddBuffer_28std_3A_3Astring_20a_29">AddBuffer</a>(std::string a)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#AddWriteBuf_28std_3A_3Astring_20data_29">AddWriteBuf</a>(std::string data)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#age">age</a></td><td><a class="el" href="classclassbase.html">classbase</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">awaymsg</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#BufferIsReady_28_29">BufferIsReady</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#bytes_5Fin">bytes_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#bytes_5Fout">bytes_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#classbase_28_29">classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#ClearBuffer_28_29">ClearBuffer</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#CloseSocket_28_29">CloseSocket</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#cmds_5Fin">cmds_in</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#cmds_5Fout">cmds_out</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#connection_28_29">connection</a>()</td><td><a class="el" href="classconnection.html">connection</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#dhost_5B_31_36_30_5D">dhost</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#dns_5Fdone">dns_done</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extend</a>(std::string key, char *p)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#fd">fd</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#flood">flood</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#FlushWriteBuf_28_29">FlushWriteBuf</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">fullname</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#GetBuffer_28_29">GetBuffer</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">GetExt</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#GetFullHost_28_29">GetFullHost</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#GetFullRealHost_28_29">GetFullRealHost</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#GetInviteList_28_29">GetInviteList</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#GetWriteError_28_29">GetWriteError</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#haspassed">haspassed</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#HasPermission_28char_20_2Acommand_29">HasPermission</a>(char *command)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#host_5B_31_36_30_5D">host</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#idle_5Flastmsg">idle_lastmsg</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#invites">invites</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [private]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#InviteTo_28char_20_2Achannel_29">InviteTo</a>(char *channel)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#ip_5B_31_36_5D">ip</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#IsInvited_28char_20_2Achannel_29">IsInvited</a>(char *channel)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#lastping">lastping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#lines_5Fin">lines_in</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#modes_5B_35_34_5D">modes</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#nping">nping</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#oper_5BNICKMAX_5D">oper</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#password_5BMAXBUF_5D">password</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#pingmax">pingmax</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#port">port</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29">ReadData</a>(void *buffer, size_t size)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#recvq">recvq</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#recvqmax">recvqmax</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#registered">registered</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#RemoveInvite_28char_20_2Achannel_29">RemoveInvite</a>(char *channel)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [virtual]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#reset_5Fdue">reset_due</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#sendq">sendq</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#sendqmax">sendqmax</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#server">server</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a>(std::string error)</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Shrink</a>(std::string key)</td><td><a class="el" href="classExtensible.html">Extensible</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classconnection.html#signon">signon</a></td><td><a class="el" href="classconnection.html">connection</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#threshold">threshold</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#timeout">timeout</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#userrec_28_29">userrec</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#WriteError">WriteError</a></td><td><a class="el" href="classuserrec.html">userrec</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="classclassbase.html#_7Eclassbase_28_29">~classbase</a>()</td><td><a class="el" href="classclassbase.html">classbase</a></td><td><code> [inline]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="classuserrec.html#_7Euserrec_28_29">~userrec</a>()</td><td><a class="el" href="classuserrec.html">userrec</a></td><td><code> [inline, virtual]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classuserrec.html b/docs/module-doc/classuserrec.html
index c96dc5009..9c47c4518 100644
--- a/docs/module-doc/classuserrec.html
+++ b/docs/module-doc/classuserrec.html
@@ -1,178 +1,177 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: userrec class Reference</title>
+<title>InspIRCd: userrec Class Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>userrec Class Reference</h1>Holds all information about a user This class stores all information about a user connected to the irc server.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>userrec Class Reference</h1><!-- doxytag: class="userrec" --><!-- doxytag: inherits="connection" -->Holds all information about a user This class stores all information about a user connected to the irc server.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="users_8h-source.html">users.h</a>&gt;</code>
<p>
Inheritance diagram for userrec:<p><center><img src="classuserrec__inherit__graph.gif" border="0" usemap="#userrec__inherit__map" alt="Inheritance graph"></center>
<map name="userrec__inherit__map">
-<area href="classconnection.html" shape="rect" coords="7,157,93,184" alt="">
-<area href="classExtensible.html" shape="rect" coords="9,82,91,109" alt="">
-<area href="classclassbase.html" shape="rect" coords="10,8,90,34" alt="">
+<area href="classconnection.html" shape="rect" coords="7,156,92,183" alt="">
+<area href="classExtensible.html" shape="rect" coords="8,81,91,108" alt="">
+<area href="classclassbase.html" shape="rect" coords="10,7,90,33" alt="">
</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="199,430,285,457" alt="">
-<area href="classucrec.html" shape="rect" coords="215,8,269,34" alt="">
+<area href="classconnection.html" shape="rect" coords="199,429,284,456" alt="">
+<area href="classucrec.html" shape="rect" coords="215,7,268,33" 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>
+<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>
-<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a0">userrec</a> ()</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#userrec_28_29">userrec</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a1">~userrec</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#_7Euserrec_28_29">~userrec</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a2">GetFullHost</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#GetFullHost_28_29">GetFullHost</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the full displayed host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. </em> <a href="#a2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a3">GetFullRealHost</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the full displayed host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. <a href="#GetFullHost_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#GetFullRealHost_28_29">GetFullRealHost</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the full real host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. </em> <a href="#a3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a4">IsInvited</a> (char *channel)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the full real host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. <a href="#GetFullRealHost_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#IsInvited_28char_20_2Achannel_29">IsInvited</a> (char *channel)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a user is invited to a channel. </em> <a href="#a4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a5">InviteTo</a> (char *channel)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if a user is invited to a channel. <a href="#IsInvited_28char_20_2Achannel_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#InviteTo_28char_20_2Achannel_29">InviteTo</a> (char *channel)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a channel to a users invite list (invites them to a channel). </em> <a href="#a5"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a6">RemoveInvite</a> (char *channel)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a channel to a users invite list (invites them to a channel). <a href="#InviteTo_28char_20_2Achannel_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#RemoveInvite_28char_20_2Achannel_29">RemoveInvite</a> (char *channel)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes a channel from a users invite list. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a7">HasPermission</a> (char *command)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes a channel from a users invite list. <a href="#RemoveInvite_28char_20_2Achannel_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#HasPermission_28char_20_2Acommand_29">HasPermission</a> (char *command)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true or false for if a user can execute a privilaged oper command. </em> <a href="#a7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a8">ReadData</a> (void *buffer, size_t size)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true or false for if a user can execute a privilaged oper command. <a href="#HasPermission_28char_20_2Acommand_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29">ReadData</a> (void *buffer, size_t size)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calls read() to read some data for this user using their fd. </em> <a href="#a8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a9">AddBuffer</a> (std::string a)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calls read() to read some data for this user using their fd. <a href="#ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#AddBuffer_28std_3A_3Astring_20a_29">AddBuffer</a> (<a class="el" href="namespaceirc.html#string">std::string</a> a)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method adds data to the buffer of the user. </em> <a href="#a9"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a10">BufferIsReady</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method adds data to the buffer of the user. <a href="#AddBuffer_28std_3A_3Astring_20a_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#BufferIsReady_28_29">BufferIsReady</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns true if the buffer contains at least one carriage return character (e.g. </em> <a href="#a10"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a11">ClearBuffer</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns true if the buffer contains at least one carriage return character (e.g. <a href="#BufferIsReady_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#ClearBuffer_28_29">ClearBuffer</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function clears the entire buffer by setting it to an empty string. </em> <a href="#a11"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a12">GetBuffer</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function clears the entire buffer by setting it to an empty string. <a href="#ClearBuffer_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#GetBuffer_28_29">GetBuffer</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the first available string at the tail end of the buffer and advances the tail end of the buffer past the string. </em> <a href="#a12"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a13">SetWriteError</a> (std::string error)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the first available string at the tail end of the buffer and advances the tail end of the buffer past the string. <a href="#GetBuffer_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a> (<a class="el" href="namespaceirc.html#string">std::string</a> error)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the write error for a connection. </em> <a href="#a13"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a14">GetWriteError</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the write error for a connection. <a href="#SetWriteError_28std_3A_3Astring_20error_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#GetWriteError_28_29">GetWriteError</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the write error which last occured on this connection or an empty string if none occured. </em> <a href="#a14"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a15">AddWriteBuf</a> (std::string data)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the write error which last occured on this connection or an empty string if none occured. <a href="#GetWriteError_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#AddWriteBuf_28std_3A_3Astring_20data_29">AddWriteBuf</a> (<a class="el" href="namespaceirc.html#string">std::string</a> data)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds to the user's write buffer. </em> <a href="#a15"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a16">FlushWriteBuf</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds to the user's write buffer. <a href="#AddWriteBuf_28std_3A_3Astring_20data_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#FlushWriteBuf_28_29">FlushWriteBuf</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Flushes as much of the user's buffer to the file descriptor as possible. </em> <a href="#a16"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="users_8h.html#a6">InvitedList</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a17">GetInviteList</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Flushes as much of the user's buffer to the file descriptor as possible. <a href="#FlushWriteBuf_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="users_8h.html#InvitedList">InvitedList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#GetInviteList_28_29">GetInviteList</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the list of channels this user has been invited to but has not yet joined. </em> <a href="#a17"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#a18">CloseSocket</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the list of channels this user has been invited to but has not yet joined. <a href="#GetInviteList_28_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#CloseSocket_28_29">CloseSocket</a> ()</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shuts down and closes the user's socket. </em> <a href="#a18"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o0">nick</a> [NICKMAX]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Shuts down and closes the user's socket. <a href="#CloseSocket_28_29"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a> [NICKMAX]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The users nickname. </em> <a href="#o0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o1">ident</a> [IDENTMAX+2]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The users nickname. <a href="#nick_5BNICKMAX_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a> [IDENTMAX+2]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The users ident reply. </em> <a href="#o1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o2">dhost</a> [160]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The users ident reply. <a href="#ident_5BIDENTMAX_2B_32_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#dhost_5B_31_36_30_5D">dhost</a> [160]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The host displayed to non-opers (used for cloaking etc). </em> <a href="#o2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o3">fullname</a> [MAXGECOS+1]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The host displayed to non-opers (used for cloaking etc). <a href="#dhost_5B_31_36_30_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">fullname</a> [MAXGECOS+1]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The users full name. </em> <a href="#o3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o4">modes</a> [54]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The users full name. <a href="#fullname_5BMAXGECOS_2B_31_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#modes_5B_35_34_5D">modes</a> [54]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The user's mode string. </em> <a href="#o4"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classucrec.html">ucrec</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o5">chans</a> [MAXCHANS]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The user's mode string. <a href="#modes_5B_35_34_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classucrec.html">ucrec</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a> [MAXCHANS]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o6">server</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#server">server</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The server the user is connected to. </em> <a href="#o6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o7">awaymsg</a> [MAXAWAY+1]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The server the user is connected to. <a href="#server"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">awaymsg</a> [MAXAWAY+1]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The user's away message. </em> <a href="#o7"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o8">flood</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The user's away message. <a href="#awaymsg_5BMAXAWAY_2B_31_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#flood">flood</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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="#o8"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o9">timeout</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of lines the user can place into the buffer (up to the global NetBufferSize bytes) before they are disconnected for excess flood. <a href="#flood"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#timeout">timeout</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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="#o9"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o10">oper</a> [NICKMAX]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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. <a href="#timeout"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#oper_5BNICKMAX_5D">oper</a> [NICKMAX]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The oper type they logged in as, if they are an oper. </em> <a href="#o10"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o11">dns_done</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The oper type they logged in as, if they are an oper. <a href="#oper_5BNICKMAX_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#dns_5Fdone">dns_done</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">True when <a class="el" href="classDNS.html">DNS</a> lookups are completed. </em> <a href="#o11"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o12">pingmax</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">True when <a class="el" href="classDNS.html">DNS</a> lookups are completed. <a href="#dns_5Fdone"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#pingmax">pingmax</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of seconds between PINGs for this user (set from &lt;connect:allow&gt; tag. </em> <a href="#o12"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o13">password</a> [MAXBUF]</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Number of seconds between PINGs for this user (set from &lt;connect:allow&gt; tag. <a href="#pingmax"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#password_5BMAXBUF_5D">password</a> [MAXBUF]</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Password specified by the user when they registered. </em> <a href="#o13"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o14">recvq</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Password specified by the user when they registered. <a href="#password_5BMAXBUF_5D"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#recvq">recvq</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User's receive queue. </em> <a href="#o14"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o15">sendq</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User's receive queue. <a href="#recvq"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#sendq">sendq</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User's send queue. </em> <a href="#o15"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o16">lines_in</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">User's send queue. <a href="#sendq"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#lines_5Fin">lines_in</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Flood counters. </em> <a href="#o16"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o17">reset_due</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Flood counters. <a href="#lines_5Fin"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#reset_5Fdue">reset_due</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o18">threshold</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#threshold">threshold</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o19">WriteError</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#WriteError">WriteError</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o20">sendqmax</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#sendqmax">sendqmax</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum size this user's sendq can become. </em> <a href="#o20"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#o21">recvqmax</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum size this user's sendq can become. <a href="#sendqmax"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#recvqmax">recvqmax</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum size this user's recvq can become. </em> <a href="#o21"></a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="users_8h.html#a6">InvitedList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html#r0">invites</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Maximum size this user's recvq can become. <a href="#recvqmax"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="users_8h.html#InvitedList">InvitedList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html#invites">invites</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A list of channels the user has a pending invite to. </em> <a href="#r0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A list of channels the user has a pending invite to. <a href="#invites"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Holds all information about a user This class stores all information about a user connected to the irc server.
<p>
-Everything about a connection is stored here primarily, from the user's socket ID (file descriptor) through to the user's nickname and hostname. Use the Find method of the server class to locate a specific user by nickname.
+Everything about a connection is stored here primarily, from the user's socket ID (file descriptor) through to the user's nickname and hostname. Use the Find method of the server class to locate a specific user by nickname.
<p>
<p>
Definition at line <a class="el" href="users_8h-source.html#l00108">108</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="userrec_28_29"></a><!-- doxytag: member="userrec::userrec" ref="userrec_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> userrec::userrec </td>
+ <td class="md" nowrap valign="top">userrec::userrec </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -182,59 +181,58 @@ Definition at line <a class="el" href="users_8h-source.html#l00108">108</a> of f
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00032">32</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#l00033">33</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00155">awaymsg</a>, <a class="el" href="connection_8h-source.html#l00313">connection::bytes_in</a>, <a class="el" href="connection_8h-source.html#l00317">connection::bytes_out</a>, <a class="el" href="channels_8h-source.html#l00252">ucrec::channel</a>, <a class="el" href="users_8h-source.html#l00146">chans</a>, <a class="el" href="connection_8h-source.html#l00321">connection::cmds_in</a>, <a class="el" href="connection_8h-source.html#l00325">connection::cmds_out</a>, <a class="el" href="users_8h-source.html#l00131">dhost</a>, <a class="el" href="users_8h-source.html#l00178">dns_done</a>, <a class="el" href="connection_8h-source.html#l00301">connection::fd</a>, <a class="el" href="users_8h-source.html#l00161">flood</a>, <a class="el" href="users_8h-source.html#l00135">fullname</a>, <a class="el" href="connection_8h-source.html#l00329">connection::haspassed</a>, <a class="el" href="connection_8h-source.html#l00305">connection::host</a>, <a class="el" href="users_8h-source.html#l00126">ident</a>, <a class="el" href="connection_8h-source.html#l00351">connection::idle_lastmsg</a>, <a class="el" href="users_8h-source.html#l00114">invites</a>, <a class="el" href="connection_8h-source.html#l00309">connection::ip</a>, <a class="el" href="connection_8h-source.html#l00343">connection::lastping</a>, <a class="el" href="users_8h-source.html#l00203">lines_in</a>, <a class="el" href="users_8h-source.html#l00144">modes</a>, <a class="el" href="users_8h-source.html#l00121">nick</a>, <a class="el" href="connection_8h-source.html#l00355">connection::nping</a>, <a class="el" href="users_8h-source.html#l00174">oper</a>, <a class="el" href="connection_8h-source.html#l00335">connection::port</a>, <a class="el" href="users_8h-source.html#l00194">recvq</a>, <a class="el" href="connection_8h-source.html#l00339">connection::registered</a>, <a class="el" href="users_8h-source.html#l00204">reset_due</a>, <a class="el" href="users_8h-source.html#l00199">sendq</a>, <a class="el" href="users_8h-source.html#l00150">server</a>, <a class="el" href="channels_8cpp-source.html#l00063">ServerName</a>, <a class="el" href="connection_8h-source.html#l00347">connection::signon</a>, <a class="el" href="channels_8cpp-source.html#l00101">TIME</a>, <a class="el" href="users_8h-source.html#l00167">timeout</a>, and <a class="el" href="channels_8h-source.html#l00247">ucrec::uc_modes</a>.
+References <a class="el" href="users_8h-source.html#l00155">awaymsg</a>, <a class="el" href="connection_8h-source.html#l00054">connection::bytes_in</a>, <a class="el" href="connection_8h-source.html#l00058">connection::bytes_out</a>, <a class="el" href="channels_8h-source.html#l00252">ucrec::channel</a>, <a class="el" href="users_8h-source.html#l00146">chans</a>, <a class="el" href="connection_8h-source.html#l00062">connection::cmds_in</a>, <a class="el" href="connection_8h-source.html#l00066">connection::cmds_out</a>, <a class="el" href="users_8h-source.html#l00131">dhost</a>, <a class="el" href="users_8h-source.html#l00178">dns_done</a>, <a class="el" href="connection_8h-source.html#l00042">connection::fd</a>, <a class="el" href="users_8h-source.html#l00161">flood</a>, <a class="el" href="users_8h-source.html#l00135">fullname</a>, <a class="el" href="connection_8h-source.html#l00070">connection::haspassed</a>, <a class="el" href="connection_8h-source.html#l00046">connection::host</a>, <a class="el" href="users_8h-source.html#l00126">ident</a>, <a class="el" href="connection_8h-source.html#l00092">connection::idle_lastmsg</a>, <a class="el" href="users_8h-source.html#l00114">invites</a>, <a class="el" href="connection_8h-source.html#l00050">connection::ip</a>, <a class="el" href="connection_8h-source.html#l00084">connection::lastping</a>, <a class="el" href="users_8h-source.html#l00203">lines_in</a>, <a class="el" href="users_8h-source.html#l00144">modes</a>, <a class="el" href="users_8h-source.html#l00121">nick</a>, <a class="el" href="connection_8h-source.html#l00096">connection::nping</a>, <a class="el" href="users_8h-source.html#l00174">oper</a>, <a class="el" href="connection_8h-source.html#l00076">connection::port</a>, <a class="el" href="users_8h-source.html#l00194">recvq</a>, <a class="el" href="connection_8h-source.html#l00080">connection::registered</a>, <a class="el" href="users_8h-source.html#l00204">reset_due</a>, <a class="el" href="users_8h-source.html#l00199">sendq</a>, <a class="el" href="users_8h-source.html#l00150">server</a>, <a class="el" href="channels_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a>, <a class="el" href="connection_8h-source.html#l00088">connection::signon</a>, <a class="el" href="channels_8cpp.html#TIME">TIME</a>, <a class="el" href="users_8h-source.html#l00167">timeout</a>, and <a class="el" href="channels_8h-source.html#l00247">ucrec::uc_modes</a>.<div class="fragment"><pre class="fragment"><a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 <span class="comment">// the PROPER way to do it, AVOID bzero at *ALL* costs</span>
+<a name="l00036"></a>00036 strcpy(<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,<span class="stringliteral">""</span>);
+<a name="l00037"></a>00037 strcpy(<a class="code" href="classconnection.html#ip_5B_31_36_5D">ip</a>,<span class="stringliteral">"127.0.0.1"</span>);
+<a name="l00038"></a>00038 <a class="code" href="classuserrec.html#timeout">timeout</a> = 0;
+<a name="l00039"></a>00039 strcpy(<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,<span class="stringliteral">""</span>);
+<a name="l00040"></a>00040 strcpy(<a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>,<span class="stringliteral">""</span>);
+<a name="l00041"></a>00041 strcpy(<a class="code" href="classuserrec.html#dhost_5B_31_36_30_5D">dhost</a>,<span class="stringliteral">""</span>);
+<a name="l00042"></a>00042 strcpy(<a class="code" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">fullname</a>,<span class="stringliteral">""</span>);
+<a name="l00043"></a>00043 strcpy(<a class="code" href="classuserrec.html#modes_5B_35_34_5D">modes</a>,<span class="stringliteral">""</span>);
+<a name="l00044"></a>00044 <a class="code" href="classuserrec.html#server">server</a> = (<span class="keywordtype">char</span>*)FindServerNamePtr(ServerName);
+<a name="l00045"></a>00045 strcpy(<a class="code" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">awaymsg</a>,<span class="stringliteral">""</span>);
+<a name="l00046"></a>00046 strcpy(<a class="code" href="classuserrec.html#oper_5BNICKMAX_5D">oper</a>,<span class="stringliteral">""</span>);
+<a name="l00047"></a>00047 <a class="code" href="classuserrec.html#reset_5Fdue">reset_due</a> = <a class="code" href="channels_8cpp.html#TIME">TIME</a>;
+<a name="l00048"></a>00048 <a class="code" href="classuserrec.html#lines_5Fin">lines_in</a> = 0;
+<a name="l00049"></a>00049 <a class="code" href="classconnection.html#fd">fd</a> = <a class="code" href="classconnection.html#lastping">lastping</a> = <a class="code" href="classconnection.html#signon">signon</a> = <a class="code" href="classconnection.html#idle_5Flastmsg">idle_lastmsg</a> = <a class="code" href="classconnection.html#nping">nping</a> = <a class="code" href="classconnection.html#registered">registered</a> = 0;
+<a name="l00050"></a>00050 <a class="code" href="classuserrec.html#flood">flood</a> = <a class="code" href="classconnection.html#port">port</a> = <a class="code" href="classconnection.html#bytes_5Fin">bytes_in</a> = <a class="code" href="classconnection.html#bytes_5Fout">bytes_out</a> = <a class="code" href="classconnection.html#cmds_5Fin">cmds_in</a> = <a class="code" href="classconnection.html#cmds_5Fout">cmds_out</a> = 0;
+<a name="l00051"></a>00051 <a class="code" href="classconnection.html#haspassed">haspassed</a> = <span class="keyword">false</span>;
+<a name="l00052"></a>00052 <a class="code" href="classuserrec.html#dns_5Fdone">dns_done</a> = <span class="keyword">false</span>;
+<a name="l00053"></a>00053 <a class="code" href="classuserrec.html#recvq">recvq</a> = <span class="stringliteral">""</span>;
+<a name="l00054"></a>00054 <a class="code" href="classuserrec.html#sendq">sendq</a> = <span class="stringliteral">""</span>;
+<a name="l00055"></a>00055 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; MAXCHANS; i++)
+<a name="l00056"></a>00056 {
+<a name="l00057"></a>00057 this-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#channel">channel</a> = NULL;
+<a name="l00058"></a>00058 this-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#uc_5Fmodes">uc_modes</a> = 0;
+<a name="l00059"></a>00059 }
+<a name="l00060"></a>00060 <a class="code" href="classuserrec.html#invites">invites</a>.clear();
+<a name="l00061"></a>00061 }
+</pre></div>
<p>
-<div class="fragment"><pre>00033 {
-00034 <span class="comment">// the PROPER way to do it, AVOID bzero at *ALL* costs</span>
-00035 strcpy(nick,<span class="stringliteral">""</span>);
-00036 strcpy(ip,<span class="stringliteral">"127.0.0.1"</span>);
-00037 <a class="code" href="classuserrec.html#o9">timeout</a> = 0;
-00038 strcpy(ident,<span class="stringliteral">""</span>);
-00039 strcpy(host,<span class="stringliteral">""</span>);
-00040 strcpy(dhost,<span class="stringliteral">""</span>);
-00041 strcpy(fullname,<span class="stringliteral">""</span>);
-00042 strcpy(modes,<span class="stringliteral">""</span>);
-00043 <a class="code" href="classuserrec.html#o6">server</a> = (<span class="keywordtype">char</span>*)FindServerNamePtr(ServerName);
-00044 strcpy(awaymsg,<span class="stringliteral">""</span>);
-00045 strcpy(oper,<span class="stringliteral">""</span>);
-00046 <a class="code" href="classuserrec.html#o17">reset_due</a> = <a class="code" href="channels_8cpp.html#a36">TIME</a>;
-00047 <a class="code" href="classuserrec.html#o16">lines_in</a> = 0;
-00048 <a class="code" href="classconnection.html#o0">fd</a> = <a class="code" href="classconnection.html#o10">lastping</a> = <a class="code" href="classconnection.html#o11">signon</a> = <a class="code" href="classconnection.html#o12">idle_lastmsg</a> = <a class="code" href="classconnection.html#o13">nping</a> = <a class="code" href="classconnection.html#o9">registered</a> = 0;
-00049 <a class="code" href="classuserrec.html#o8">flood</a> = <a class="code" href="classconnection.html#o8">port</a> = <a class="code" href="classconnection.html#o3">bytes_in</a> = <a class="code" href="classconnection.html#o4">bytes_out</a> = <a class="code" href="classconnection.html#o5">cmds_in</a> = <a class="code" href="classconnection.html#o6">cmds_out</a> = 0;
-00050 <a class="code" href="classconnection.html#o7">haspassed</a> = <span class="keyword">false</span>;
-00051 <a class="code" href="classuserrec.html#o11">dns_done</a> = <span class="keyword">false</span>;
-00052 <a class="code" href="classuserrec.html#o14">recvq</a> = <span class="stringliteral">""</span>;
-00053 <a class="code" href="classuserrec.html#o15">sendq</a> = <span class="stringliteral">""</span>;
-00054 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; MAXCHANS; i++)
-00055 {
-00056 this-&gt;<a class="code" href="classuserrec.html#o5">chans</a>[i].<a class="code" href="classucrec.html#o1">channel</a> = NULL;
-00057 this-&gt;<a class="code" href="classuserrec.html#o5">chans</a>[i].<a class="code" href="classucrec.html#o0">uc_modes</a> = 0;
-00058 }
-00059 <a class="code" href="classuserrec.html#r0">invites</a>.clear();
-00060 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="userrec::~userrec"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="_7Euserrec_28_29"></a><!-- doxytag: member="userrec::~userrec" ref="_7Euserrec_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> virtual userrec::~<a class="el" href="classuserrec.html">userrec</a> </td>
+ <td class="md" nowrap valign="top">virtual userrec::~userrec </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [inline, virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -244,32 +242,31 @@ References <a class="el" href="users_8h-source.html#l00155">awaymsg</a>, <a clas
<p>
<p>
-Definition at line <a class="el" href="users_8h-source.html#l00221">221</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#l00221">221</a> of file <a class="el" href="users_8h-source.html">users.h</a>.<div class="fragment"><pre class="fragment"><a name="l00221"></a>00221 { }
+</pre></div>
<p>
-<div class="fragment"><pre>00221 { }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
-<a name="a9" doxytag="userrec::AddBuffer"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AddBuffer_28std_3A_3Astring_20a_29"></a><!-- doxytag: member="userrec::AddBuffer" ref="AddBuffer_28std_3A_3Astring_20a_29" args="(std::string a)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool userrec::AddBuffer </td>
+ <td class="md" nowrap valign="top">bool userrec::AddBuffer </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>a</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -279,58 +276,57 @@ Definition at line <a class="el" href="users_8h-source.html#l00221">221</a> of f
<p>
This method adds data to the buffer of the user.
<p>
-The buffer can grow to any size within limits of the available memory, managed by the size of a std::string, however if any individual line in the buffer grows over 600 bytes in length (which is 88 chars over the RFC-specified limit per line) then the method will return false and the text will not be inserted.
-<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00192">192</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
-<p>
-References <a class="el" href="users_8h-source.html#l00194">recvq</a>, <a class="el" href="users_8h-source.html#l00217">recvqmax</a>, and <a class="el" href="users_8cpp-source.html#l00286">SetWriteError()</a>.
-<p>
-<div class="fragment"><pre>00193 {
-00194 std::string b = <span class="stringliteral">""</span>;
-00195 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; a.length(); i++)
-00196 <span class="keywordflow">if</span> ((a[i] != <span class="charliteral">'\r'</span>) &amp;&amp; (a[i] != <span class="charliteral">'\0'</span>) &amp;&amp; (a[i] != 7))
-00197 b = b + a[i];
-00198 std::stringstream stream(recvq);
-00199 stream &lt;&lt; b;
-00200 <a class="code" href="classuserrec.html#o14">recvq</a> = stream.str();
-00201 <span class="keywordtype">int</span> i = 0;
-00202 <span class="comment">// count the size of the first line in the buffer.</span>
-00203 <span class="keywordflow">while</span> (i &lt; <a class="code" href="classuserrec.html#o14">recvq</a>.length())
-00204 {
-00205 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o14">recvq</a>[i++] == <span class="charliteral">'\n'</span>)
-00206 <span class="keywordflow">break</span>;
-00207 }
-00208 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o14">recvq</a>.length() &gt; this-&gt;<a class="code" href="classuserrec.html#o21">recvqmax</a>)
-00209 {
-00210 this-&gt;<a class="code" href="classuserrec.html#a13">SetWriteError</a>(<span class="stringliteral">"RecvQ exceeded"</span>);
-00211 WriteOpers(<span class="stringliteral">"*** User %s RecvQ of %d exceeds connect class maximum of %d"</span>,this-&gt;nick,<a class="code" href="classuserrec.html#o14">recvq</a>.length(),this-&gt;<a class="code" href="classuserrec.html#o21">recvqmax</a>);
-00212 }
-00213 <span class="comment">// return false if we've had more than 600 characters WITHOUT</span>
-00214 <span class="comment">// a carriage return (this is BAD, drop the socket)</span>
-00215 <span class="keywordflow">return</span> (i &lt; 600);
-00216 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a15" doxytag="userrec::AddWriteBuf"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+The buffer can grow to any size within limits of the available memory, managed by the size of a <a class="el" href="namespaceirc.html#string">std::string</a>, however if any individual line in the buffer grows over 600 bytes in length (which is 88 chars over the RFC-specified limit per line) then the method will return false and the text will not be inserted.
+<p>
+Definition at line <a class="el" href="users_8cpp-source.html#l00194">194</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+<p>
+References <a class="el" href="users_8h-source.html#l00194">recvq</a>, <a class="el" href="users_8h-source.html#l00217">recvqmax</a>, and <a class="el" href="users_8cpp-source.html#l00288">SetWriteError()</a>.<div class="fragment"><pre class="fragment"><a name="l00195"></a>00195 {
+<a name="l00196"></a>00196 <a class="code" href="namespaceirc.html#string">std::string</a> b = <span class="stringliteral">""</span>;
+<a name="l00197"></a>00197 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; a.length(); i++)
+<a name="l00198"></a>00198 <span class="keywordflow">if</span> ((a[i] != <span class="charliteral">'\r'</span>) &amp;&amp; (a[i] != <span class="charliteral">'\0'</span>) &amp;&amp; (a[i] != 7))
+<a name="l00199"></a>00199 b = b + a[i];
+<a name="l00200"></a>00200 std::stringstream stream(<a class="code" href="classuserrec.html#recvq">recvq</a>);
+<a name="l00201"></a>00201 stream &lt;&lt; b;
+<a name="l00202"></a>00202 <a class="code" href="classuserrec.html#recvq">recvq</a> = stream.str();
+<a name="l00203"></a>00203 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0;
+<a name="l00204"></a>00204 <span class="comment">// count the size of the first line in the buffer.</span>
+<a name="l00205"></a>00205 <span class="keywordflow">while</span> (i &lt; <a class="code" href="classuserrec.html#recvq">recvq</a>.length())
+<a name="l00206"></a>00206 {
+<a name="l00207"></a>00207 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#recvq">recvq</a>[i++] == <span class="charliteral">'\n'</span>)
+<a name="l00208"></a>00208 <span class="keywordflow">break</span>;
+<a name="l00209"></a>00209 }
+<a name="l00210"></a>00210 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#recvq">recvq</a>.length() &gt; (unsigned)this-&gt;<a class="code" href="classuserrec.html#recvqmax">recvqmax</a>)
+<a name="l00211"></a>00211 {
+<a name="l00212"></a>00212 this-&gt;<a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a>(<span class="stringliteral">"RecvQ exceeded"</span>);
+<a name="l00213"></a>00213 WriteOpers(<span class="stringliteral">"*** User %s RecvQ of %d exceeds connect class maximum of %d"</span>,this-&gt;nick,<a class="code" href="classuserrec.html#recvq">recvq</a>.length(),this-&gt;<a class="code" href="classuserrec.html#recvqmax">recvqmax</a>);
+<a name="l00214"></a>00214 }
+<a name="l00215"></a>00215 <span class="comment">// return false if we've had more than 600 characters WITHOUT</span>
+<a name="l00216"></a>00216 <span class="comment">// a carriage return (this is BAD, drop the socket)</span>
+<a name="l00217"></a>00217 <span class="keywordflow">return</span> (i &lt; 600);
+<a name="l00218"></a>00218 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="AddWriteBuf_28std_3A_3Astring_20data_29"></a><!-- doxytag: member="userrec::AddWriteBuf" ref="AddWriteBuf_28std_3A_3Astring_20data_29" args="(std::string data)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void userrec::AddWriteBuf </td>
+ <td class="md" nowrap valign="top">void userrec::AddWriteBuf </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>data</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -340,46 +336,45 @@ References <a class="el" href="users_8h-source.html#l00194">recvq</a>, <a class=
<p>
Adds to the user's write buffer.
<p>
-You may add any amount of text up to this users sendq value, if you exceed the sendq value, <a class="el" href="classuserrec.html#a13">SetWriteError()</a> will be called to set the users error string to "SendQ exceeded", and further buffer adds will be dropped.
+You may add any amount of text up to this users sendq value, if you exceed the sendq value, <a class="el" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError()</a> will be called to set the users error string to "SendQ exceeded", and further buffer adds will be dropped.
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00248">248</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#l00250">250</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8cpp-source.html#l00294">GetWriteError()</a>, <a class="el" href="users_8h-source.html#l00199">sendq</a>, <a class="el" href="users_8h-source.html#l00213">sendqmax</a>, and <a class="el" href="users_8cpp-source.html#l00286">SetWriteError()</a>.
+References <a class="el" href="users_8h-source.html#l00199">sendq</a>, <a class="el" href="users_8h-source.html#l00213">sendqmax</a>, and <a class="el" href="users_8cpp-source.html#l00288">SetWriteError()</a>.<div class="fragment"><pre class="fragment"><a name="l00251"></a>00251 {
+<a name="l00252"></a>00252 <span class="keywordflow">if</span> (this-&gt;GetWriteError() != <span class="stringliteral">""</span>)
+<a name="l00253"></a>00253 <span class="keywordflow">return</span>;
+<a name="l00254"></a>00254 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#sendq">sendq</a>.length() + data.length() &gt; (unsigned)this-&gt;<a class="code" href="classuserrec.html#sendqmax">sendqmax</a>)
+<a name="l00255"></a>00255 {
+<a name="l00256"></a>00256 WriteOpers(<span class="stringliteral">"*** User %s SendQ of %d exceeds connect class maximum of %d"</span>,this-&gt;nick,<a class="code" href="classuserrec.html#sendq">sendq</a>.length() + data.length(),this-&gt;<a class="code" href="classuserrec.html#sendqmax">sendqmax</a>);
+<a name="l00257"></a>00257 this-&gt;<a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a>(<span class="stringliteral">"SendQ exceeded"</span>);
+<a name="l00258"></a>00258 <span class="keywordflow">return</span>;
+<a name="l00259"></a>00259 }
+<a name="l00260"></a>00260 std::stringstream stream;
+<a name="l00261"></a>00261 stream &lt;&lt; <a class="code" href="classuserrec.html#sendq">sendq</a> &lt;&lt; data;
+<a name="l00262"></a>00262 <a class="code" href="classuserrec.html#sendq">sendq</a> = stream.str();
+<a name="l00263"></a>00263 }
+</pre></div>
<p>
-<div class="fragment"><pre>00249 {
-00250 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classuserrec.html#a14">GetWriteError</a>() != <span class="stringliteral">""</span>)
-00251 <span class="keywordflow">return</span>;
-00252 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o15">sendq</a>.length() + data.length() &gt; this-&gt;<a class="code" href="classuserrec.html#o20">sendqmax</a>)
-00253 {
-00254 WriteOpers(<span class="stringliteral">"*** User %s SendQ of %d exceeds connect class maximum of %d"</span>,this-&gt;nick,<a class="code" href="classuserrec.html#o15">sendq</a>.length() + data.length(),this-&gt;<a class="code" href="classuserrec.html#o20">sendqmax</a>);
-00255 this-&gt;<a class="code" href="classuserrec.html#a13">SetWriteError</a>(<span class="stringliteral">"SendQ exceeded"</span>);
-00256 <span class="keywordflow">return</span>;
-00257 }
-00258 std::stringstream stream;
-00259 stream &lt;&lt; <a class="code" href="classuserrec.html#o15">sendq</a> &lt;&lt; data;
-00260 <a class="code" href="classuserrec.html#o15">sendq</a> = stream.str();
-00261 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a10" doxytag="userrec::BufferIsReady"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="BufferIsReady_28_29"></a><!-- doxytag: member="userrec::BufferIsReady" ref="BufferIsReady_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool userrec::BufferIsReady </td>
+ <td class="md" nowrap valign="top">bool userrec::BufferIsReady </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -391,37 +386,36 @@ This method returns true if the buffer contains at least one carriage return cha
<p>
one complete line may be read)
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00218">218</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#l00220">220</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00194">recvq</a>.
+References <a class="el" href="users_8h-source.html#l00194">recvq</a>.<div class="fragment"><pre class="fragment"><a name="l00221"></a>00221 {
+<a name="l00222"></a>00222 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classuserrec.html#recvq">recvq</a>.length(); i++)
+<a name="l00223"></a>00223 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#recvq">recvq</a>[i] == <span class="charliteral">'\n'</span>)
+<a name="l00224"></a>00224 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00225"></a>00225 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00226"></a>00226 }
+</pre></div>
<p>
-<div class="fragment"><pre>00219 {
-00220 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classuserrec.html#o14">recvq</a>.length(); i++)
-00221 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o14">recvq</a>[i] == <span class="charliteral">'\n'</span>)
-00222 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00223 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00224 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a11" doxytag="userrec::ClearBuffer"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ClearBuffer_28_29"></a><!-- doxytag: member="userrec::ClearBuffer" ref="ClearBuffer_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void userrec::ClearBuffer </td>
+ <td class="md" nowrap valign="top">void userrec::ClearBuffer </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -433,36 +427,35 @@ This function clears the entire buffer by setting it to an empty string.
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00226">226</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#l00228">228</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
References <a class="el" href="users_8h-source.html#l00194">recvq</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>, and <a class="el" href="modules_8cpp-source.html#l00621">Server::UserToPseudo()</a>.
+Referenced by <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>, and <a class="el" href="modules_8cpp-source.html#l00639">Server::UserToPseudo()</a>.<div class="fragment"><pre class="fragment"><a name="l00229"></a>00229 {
+<a name="l00230"></a>00230 <a class="code" href="classuserrec.html#recvq">recvq</a> = <span class="stringliteral">""</span>;
+<a name="l00231"></a>00231 }
+</pre></div>
<p>
-<div class="fragment"><pre>00227 {
-00228 <a class="code" href="classuserrec.html#o14">recvq</a> = <span class="stringliteral">""</span>;
-00229 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a18" doxytag="userrec::CloseSocket"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CloseSocket_28_29"></a><!-- doxytag: member="userrec::CloseSocket" ref="CloseSocket_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void userrec::CloseSocket </td>
+ <td class="md" nowrap valign="top">void userrec::CloseSocket </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -474,33 +467,32 @@ Shuts down and closes the user's socket.
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00062">62</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#l00063">63</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.<div class="fragment"><pre class="fragment"><a name="l00064"></a>00064 {
+<a name="l00065"></a>00065 shutdown(this-&gt;fd,2);
+<a name="l00066"></a>00066 close(this-&gt;fd);
+<a name="l00067"></a>00067 }
+</pre></div>
<p>
-<div class="fragment"><pre>00063 {
-00064 shutdown(this-&gt;fd,2);
-00065 close(this-&gt;fd);
-00066 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a16" doxytag="userrec::FlushWriteBuf"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FlushWriteBuf_28_29"></a><!-- doxytag: member="userrec::FlushWriteBuf" ref="FlushWriteBuf_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void userrec::FlushWriteBuf </td>
+ <td class="md" nowrap valign="top">void userrec::FlushWriteBuf </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -512,51 +504,50 @@ Flushes as much of the user's buffer to the file descriptor as possible.
<p>
This function may not always flush the entire buffer, rather instead as much of it as it possibly can. If the send() call fails to send the entire buffer, the buffer position is advanced forwards and the rest of the data sent at the next call to this method.
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00264">264</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
-<p>
-References <a class="el" href="connection_8h-source.html#l00317">connection::bytes_out</a>, <a class="el" href="connection_8h-source.html#l00325">connection::cmds_out</a>, <a class="el" href="users_8h-source.html#l00199">sendq</a>, and <a class="el" href="users_8cpp-source.html#l00286">SetWriteError()</a>.
-<p>
-<div class="fragment"><pre>00265 {
-00266 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o15">sendq</a>.length())
-00267 {
-00268 <span class="keywordtype">char</span>* tb = (<span class="keywordtype">char</span>*)this-&gt;<a class="code" href="classuserrec.html#o15">sendq</a>.c_str();
-00269 <span class="keywordtype">int</span> n_sent = write(this-&gt;fd,tb,this-&gt;sendq.length());
-00270 <span class="keywordflow">if</span> (n_sent == -1)
-00271 {
-00272 this-&gt;<a class="code" href="classuserrec.html#a13">SetWriteError</a>(strerror(errno));
-00273 }
-00274 <span class="keywordflow">else</span>
-00275 {
-00276 <span class="comment">// advance the queue</span>
-00277 tb += n_sent;
-00278 this-&gt;<a class="code" href="classuserrec.html#o15">sendq</a> = tb;
-00279 <span class="comment">// update the user's stats counters</span>
-00280 this-&gt;<a class="code" href="classconnection.html#o4">bytes_out</a> += n_sent;
-00281 this-&gt;<a class="code" href="classconnection.html#o6">cmds_out</a>++;
-00282 }
-00283 }
-00284 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a12" doxytag="userrec::GetBuffer"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="users_8cpp-source.html#l00266">266</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+<p>
+References <a class="el" href="connection_8h-source.html#l00058">connection::bytes_out</a>, <a class="el" href="connection_8h-source.html#l00066">connection::cmds_out</a>, <a class="el" href="users_8h-source.html#l00199">sendq</a>, and <a class="el" href="users_8cpp-source.html#l00288">SetWriteError()</a>.<div class="fragment"><pre class="fragment"><a name="l00267"></a>00267 {
+<a name="l00268"></a>00268 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#sendq">sendq</a>.length())
+<a name="l00269"></a>00269 {
+<a name="l00270"></a>00270 <span class="keywordtype">char</span>* tb = (<span class="keywordtype">char</span>*)this-&gt;<a class="code" href="classuserrec.html#sendq">sendq</a>.c_str();
+<a name="l00271"></a>00271 <span class="keywordtype">int</span> n_sent = write(this-&gt;fd,tb,this-&gt;sendq.length());
+<a name="l00272"></a>00272 <span class="keywordflow">if</span> (n_sent == -1)
+<a name="l00273"></a>00273 {
+<a name="l00274"></a>00274 this-&gt;<a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a>(strerror(errno));
+<a name="l00275"></a>00275 }
+<a name="l00276"></a>00276 <span class="keywordflow">else</span>
+<a name="l00277"></a>00277 {
+<a name="l00278"></a>00278 <span class="comment">// advance the queue</span>
+<a name="l00279"></a>00279 tb += n_sent;
+<a name="l00280"></a>00280 this-&gt;<a class="code" href="classuserrec.html#sendq">sendq</a> = tb;
+<a name="l00281"></a>00281 <span class="comment">// update the user's stats counters</span>
+<a name="l00282"></a>00282 this-&gt;<a class="code" href="classconnection.html#bytes_5Fout">bytes_out</a> += n_sent;
+<a name="l00283"></a>00283 this-&gt;<a class="code" href="classconnection.html#cmds_5Fout">cmds_out</a>++;
+<a name="l00284"></a>00284 }
+<a name="l00285"></a>00285 }
+<a name="l00286"></a>00286 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="GetBuffer_28_29"></a><!-- doxytag: member="userrec::GetBuffer" ref="GetBuffer_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string userrec::GetBuffer </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> userrec::GetBuffer </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -566,48 +557,47 @@ References <a class="el" href="connection_8h-source.html#l00317">connection::byt
<p>
This method returns the first available string at the tail end of the buffer and advances the tail end of the buffer past the string.
<p>
-This means it is a one way operation in a similar way to strtok(), and multiple calls return multiple lines if they are available. The results of this function if there are no lines to be read are unknown, always use <a class="el" href="classuserrec.html#a10">BufferIsReady()</a> to check if it is ok to read the buffer before calling <a class="el" href="classuserrec.html#a12">GetBuffer()</a>.
+This means it is a one way operation in a similar way to strtok(), and multiple calls return multiple lines if they are available. The results of this function if there are no lines to be read are unknown, always use <a class="el" href="classuserrec.html#BufferIsReady_28_29">BufferIsReady()</a> to check if it is ok to read the buffer before calling <a class="el" href="classuserrec.html#GetBuffer_28_29">GetBuffer()</a>.
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00231">231</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#l00233">233</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00194">recvq</a>.
+References <a class="el" href="users_8h-source.html#l00194">recvq</a>.<div class="fragment"><pre class="fragment"><a name="l00234"></a>00234 {
+<a name="l00235"></a>00235 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#recvq">recvq</a> == <span class="stringliteral">""</span>)
+<a name="l00236"></a>00236 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+<a name="l00237"></a>00237 <span class="keywordtype">char</span>* line = (<span class="keywordtype">char</span>*)<a class="code" href="classuserrec.html#recvq">recvq</a>.c_str();
+<a name="l00238"></a>00238 <a class="code" href="namespaceirc.html#string">std::string</a> ret = <span class="stringliteral">""</span>;
+<a name="l00239"></a>00239 <span class="keywordflow">while</span> ((*line != <span class="charliteral">'\n'</span>) &amp;&amp; (strlen(line)))
+<a name="l00240"></a>00240 {
+<a name="l00241"></a>00241 ret = ret + *line;
+<a name="l00242"></a>00242 line++;
+<a name="l00243"></a>00243 }
+<a name="l00244"></a>00244 <span class="keywordflow">if</span> ((*line == <span class="charliteral">'\n'</span>) || (*line == <span class="charliteral">'\r'</span>))
+<a name="l00245"></a>00245 line++;
+<a name="l00246"></a>00246 <a class="code" href="classuserrec.html#recvq">recvq</a> = line;
+<a name="l00247"></a>00247 <span class="keywordflow">return</span> ret;
+<a name="l00248"></a>00248 }
+</pre></div>
<p>
-<div class="fragment"><pre>00232 {
-00233 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o14">recvq</a> == <span class="stringliteral">""</span>)
-00234 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-00235 <span class="keywordtype">char</span>* line = (<span class="keywordtype">char</span>*)<a class="code" href="classuserrec.html#o14">recvq</a>.c_str();
-00236 std::string ret = <span class="stringliteral">""</span>;
-00237 <span class="keywordflow">while</span> ((*line != <span class="charliteral">'\n'</span>) &amp;&amp; (strlen(line)))
-00238 {
-00239 ret = ret + *line;
-00240 line++;
-00241 }
-00242 <span class="keywordflow">if</span> ((*line == <span class="charliteral">'\n'</span>) || (*line == <span class="charliteral">'\r'</span>))
-00243 line++;
-00244 <a class="code" href="classuserrec.html#o14">recvq</a> = line;
-00245 <span class="keywordflow">return</span> ret;
-00246 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a2" doxytag="userrec::GetFullHost"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="GetFullHost_28_29"></a><!-- doxytag: member="userrec::GetFullHost" ref="GetFullHost_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char * userrec::GetFullHost </td>
+ <td class="md" nowrap valign="top">char * userrec::GetFullHost </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -619,36 +609,35 @@ 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#l00068">68</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#l00069">69</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00131">dhost</a>, <a class="el" href="users_8h-source.html#l00126">ident</a>, and <a class="el" href="users_8h-source.html#l00121">nick</a>.
+References <a class="el" href="users_8h-source.html#l00131">dhost</a>, <a class="el" href="users_8h-source.html#l00126">ident</a>, and <a class="el" href="users_8h-source.html#l00121">nick</a>.<div class="fragment"><pre class="fragment"><a name="l00070"></a>00070 {
+<a name="l00071"></a>00071 <span class="keyword">static</span> <span class="keywordtype">char</span> result[MAXBUF];
+<a name="l00072"></a>00072 snprintf(result,MAXBUF,<span class="stringliteral">"%s!%s@%s"</span>,<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,<a class="code" href="classuserrec.html#dhost_5B_31_36_30_5D">dhost</a>);
+<a name="l00073"></a>00073 <span class="keywordflow">return</span> result;
+<a name="l00074"></a>00074 }
+</pre></div>
<p>
-<div class="fragment"><pre>00069 {
-00070 <span class="keyword">static</span> <span class="keywordtype">char</span> result[MAXBUF];
-00071 snprintf(result,MAXBUF,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,dhost);
-00072 <span class="keywordflow">return</span> result;
-00073 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a3" doxytag="userrec::GetFullRealHost"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetFullRealHost_28_29"></a><!-- doxytag: member="userrec::GetFullRealHost" ref="GetFullRealHost_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char * userrec::GetFullRealHost </td>
+ <td class="md" nowrap valign="top">char * userrec::GetFullRealHost </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -660,36 +649,35 @@ 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#l00085">85</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#l00087">87</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="connection_8h-source.html#l00305">connection::host</a>, <a class="el" href="users_8h-source.html#l00126">ident</a>, and <a class="el" href="users_8h-source.html#l00121">nick</a>.
+References <a class="el" href="connection_8h-source.html#l00046">connection::host</a>, <a class="el" href="users_8h-source.html#l00126">ident</a>, and <a class="el" href="users_8h-source.html#l00121">nick</a>.<div class="fragment"><pre class="fragment"><a name="l00088"></a>00088 {
+<a name="l00089"></a>00089 <span class="keyword">static</span> <span class="keywordtype">char</span> fresult[MAXBUF];
+<a name="l00090"></a>00090 snprintf(fresult,MAXBUF,<span class="stringliteral">"%s!%s@%s"</span>,<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,<a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>);
+<a name="l00091"></a>00091 <span class="keywordflow">return</span> fresult;
+<a name="l00092"></a>00092 }
+</pre></div>
<p>
-<div class="fragment"><pre>00086 {
-00087 <span class="keyword">static</span> <span class="keywordtype">char</span> fresult[MAXBUF];
-00088 snprintf(fresult,MAXBUF,<span class="stringliteral">"%s!%s@%s"</span>,nick,ident,host);
-00089 <span class="keywordflow">return</span> fresult;
-00090 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a17" doxytag="userrec::GetInviteList"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetInviteList_28_29"></a><!-- doxytag: member="userrec::GetInviteList" ref="GetInviteList_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="users_8h.html#a6">InvitedList</a> * userrec::GetInviteList </td>
+ <td class="md" nowrap valign="top"><a class="el" href="users_8h.html#InvitedList">InvitedList</a> * userrec::GetInviteList </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -701,34 +689,33 @@ Returns the list of channels this user has been invited to but has not yet joine
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00106">106</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#l00108">108</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00094">InvitedList</a>, and <a class="el" href="users_8h-source.html#l00114">invites</a>.
+References <a class="el" href="users_8h-source.html#l00114">invites</a>.<div class="fragment"><pre class="fragment"><a name="l00109"></a>00109 {
+<a name="l00110"></a>00110 <span class="keywordflow">return</span> &amp;<a class="code" href="classuserrec.html#invites">invites</a>;
+<a name="l00111"></a>00111 }
+</pre></div>
<p>
-<div class="fragment"><pre>00107 {
-00108 <span class="keywordflow">return</span> &amp;<a class="code" href="classuserrec.html#r0">invites</a>;
-00109 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a14" doxytag="userrec::GetWriteError"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="GetWriteError_28_29"></a><!-- doxytag: member="userrec::GetWriteError" ref="GetWriteError_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string userrec::GetWriteError </td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> userrec::GetWriteError </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -740,37 +727,34 @@ Returns the write error which last occured on this connection or an empty string
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00294">294</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#l00296">296</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00209">WriteError</a>.
+References <a class="el" href="users_8h-source.html#l00209">WriteError</a>.<div class="fragment"><pre class="fragment"><a name="l00297"></a>00297 {
+<a name="l00298"></a>00298 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classuserrec.html#WriteError">WriteError</a>;
+<a name="l00299"></a>00299 }
+</pre></div>
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00248">AddWriteBuf()</a>.
-<p>
-<div class="fragment"><pre>00295 {
-00296 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classuserrec.html#o19">WriteError</a>;
-00297 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a7" doxytag="userrec::HasPermission"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="HasPermission_28char_20_2Acommand_29"></a><!-- doxytag: member="userrec::HasPermission" ref="HasPermission_28char_20_2Acommand_29" args="(char *command)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool userrec::HasPermission </td>
+ <td class="md" nowrap valign="top">bool userrec::HasPermission </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>command</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -780,83 +764,82 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00248">AddWriteBuf()</
<p>
Returns true or false for if a user can execute a privilaged oper command.
<p>
-This is done by looking up their oper type from <a class="el" href="classuserrec.html#o10">userrec::oper</a>, then referencing this to their oper classes and checking the commands they can execute.
-<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00140">140</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
-<p>
-References <a class="el" href="channels_8cpp-source.html#l00095">config_f</a>, and <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>.
-<p>
-<div class="fragment"><pre>00141 {
-00142 <span class="keywordtype">char</span> TypeName[MAXBUF],Classes[MAXBUF],ClassName[MAXBUF],CommandList[MAXBUF];
-00143 <span class="keywordtype">char</span>* mycmd;
-00144 <span class="keywordtype">char</span>* savept;
-00145 <span class="keywordtype">char</span>* savept2;
-00146
-00147 <span class="comment">// are they even an oper at all?</span>
-00148 <span class="keywordflow">if</span> (strchr(this-&gt;modes,<span class="charliteral">'o'</span>))
-00149 {
-00150 log(DEBUG,<span class="stringliteral">"*** HasPermission: %s is an oper"</span>,this-&gt;nick);
-00151 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j =0; j &lt; ConfValueEnum(<span class="stringliteral">"type"</span>,&amp;config_f); j++)
-00152 {
-00153 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"name"</span>,j,TypeName,&amp;config_f);
-00154 <span class="keywordflow">if</span> (!strcmp(TypeName,this-&gt;oper))
-00155 {
-00156 log(DEBUG,<span class="stringliteral">"*** HasPermission: %s is an oper of type '%s'"</span>,this-&gt;nick,this-&gt;oper);
-00157 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"classes"</span>,j,Classes,&amp;config_f);
-00158 <span class="keywordtype">char</span>* myclass = strtok_r(Classes,<span class="stringliteral">" "</span>,&amp;savept);
-00159 <span class="keywordflow">while</span> (myclass)
-00160 {
-00161 log(DEBUG,<span class="stringliteral">"*** HasPermission: checking classtype '%s'"</span>,myclass);
-00162 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> k =0; k &lt; ConfValueEnum(<span class="stringliteral">"class"</span>,&amp;config_f); k++)
-00163 {
-00164 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"name"</span>,k,ClassName,&amp;config_f);
-00165 <span class="keywordflow">if</span> (!strcmp(ClassName,myclass))
-00166 {
-00167 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"commands"</span>,k,CommandList,&amp;config_f);
-00168 log(DEBUG,<span class="stringliteral">"*** HasPermission: found class named %s with commands: '%s'"</span>,ClassName,CommandList);
-00169
-00170
-00171 mycmd = strtok_r(CommandList,<span class="stringliteral">" "</span>,&amp;savept2);
-00172 <span class="keywordflow">while</span> (mycmd)
-00173 {
-00174 <span class="keywordflow">if</span> (!strcasecmp(mycmd,command))
-00175 {
-00176 log(DEBUG,<span class="stringliteral">"*** Command %s found, returning true"</span>,command);
-00177 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00178 }
-00179 mycmd = strtok_r(NULL,<span class="stringliteral">" "</span>,&amp;savept2);
-00180 }
-00181 }
-00182 }
-00183 myclass = strtok_r(NULL,<span class="stringliteral">" "</span>,&amp;savept);
-00184 }
-00185 }
-00186 }
-00187 }
-00188 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00189 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a5" doxytag="userrec::InviteTo"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+This is done by looking up their oper type from <a class="el" href="classuserrec.html#oper_5BNICKMAX_5D">userrec::oper</a>, then referencing this to their oper classes and checking the commands they can execute.
+<p>
+Definition at line <a class="el" href="users_8cpp-source.html#l00142">142</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+<p>
+References <a class="el" href="channels_8cpp.html#config_5Ff">config_f</a>, and <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>.<div class="fragment"><pre class="fragment"><a name="l00143"></a>00143 {
+<a name="l00144"></a>00144 <span class="keywordtype">char</span> TypeName[MAXBUF],Classes[MAXBUF],ClassName[MAXBUF],CommandList[MAXBUF];
+<a name="l00145"></a>00145 <span class="keywordtype">char</span>* mycmd;
+<a name="l00146"></a>00146 <span class="keywordtype">char</span>* savept;
+<a name="l00147"></a>00147 <span class="keywordtype">char</span>* savept2;
+<a name="l00148"></a>00148
+<a name="l00149"></a>00149 <span class="comment">// are they even an oper at all?</span>
+<a name="l00150"></a>00150 <span class="keywordflow">if</span> (strchr(this-&gt;modes,<span class="charliteral">'o'</span>))
+<a name="l00151"></a>00151 {
+<a name="l00152"></a>00152 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** HasPermission: %s is an oper"</span>,this-&gt;nick);
+<a name="l00153"></a>00153 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j =0; j &lt; ConfValueEnum(<span class="stringliteral">"type"</span>,&amp;config_f); j++)
+<a name="l00154"></a>00154 {
+<a name="l00155"></a>00155 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"name"</span>,j,TypeName,&amp;config_f);
+<a name="l00156"></a>00156 <span class="keywordflow">if</span> (!strcmp(TypeName,this-&gt;oper))
+<a name="l00157"></a>00157 {
+<a name="l00158"></a>00158 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** HasPermission: %s is an oper of type '%s'"</span>,this-&gt;nick,this-&gt;oper);
+<a name="l00159"></a>00159 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"classes"</span>,j,Classes,&amp;config_f);
+<a name="l00160"></a>00160 <span class="keywordtype">char</span>* myclass = strtok_r(Classes,<span class="stringliteral">" "</span>,&amp;savept);
+<a name="l00161"></a>00161 <span class="keywordflow">while</span> (myclass)
+<a name="l00162"></a>00162 {
+<a name="l00163"></a>00163 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** HasPermission: checking classtype '%s'"</span>,myclass);
+<a name="l00164"></a>00164 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> k =0; k &lt; ConfValueEnum(<span class="stringliteral">"class"</span>,&amp;config_f); k++)
+<a name="l00165"></a>00165 {
+<a name="l00166"></a>00166 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"name"</span>,k,ClassName,&amp;config_f);
+<a name="l00167"></a>00167 <span class="keywordflow">if</span> (!strcmp(ClassName,myclass))
+<a name="l00168"></a>00168 {
+<a name="l00169"></a>00169 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"commands"</span>,k,CommandList,&amp;config_f);
+<a name="l00170"></a>00170 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** HasPermission: found class named %s with commands: '%s'"</span>,ClassName,CommandList);
+<a name="l00171"></a>00171
+<a name="l00172"></a>00172
+<a name="l00173"></a>00173 mycmd = strtok_r(CommandList,<span class="stringliteral">" "</span>,&amp;savept2);
+<a name="l00174"></a>00174 <span class="keywordflow">while</span> (mycmd)
+<a name="l00175"></a>00175 {
+<a name="l00176"></a>00176 <span class="keywordflow">if</span> (!strcasecmp(mycmd,command))
+<a name="l00177"></a>00177 {
+<a name="l00178"></a>00178 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** Command %s found, returning true"</span>,command);
+<a name="l00179"></a>00179 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00180"></a>00180 }
+<a name="l00181"></a>00181 mycmd = strtok_r(NULL,<span class="stringliteral">" "</span>,&amp;savept2);
+<a name="l00182"></a>00182 }
+<a name="l00183"></a>00183 }
+<a name="l00184"></a>00184 }
+<a name="l00185"></a>00185 myclass = strtok_r(NULL,<span class="stringliteral">" "</span>,&amp;savept);
+<a name="l00186"></a>00186 }
+<a name="l00187"></a>00187 }
+<a name="l00188"></a>00188 }
+<a name="l00189"></a>00189 }
+<a name="l00190"></a>00190 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00191"></a>00191 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="InviteTo_28char_20_2Achannel_29"></a><!-- doxytag: member="userrec::InviteTo" ref="InviteTo_28char_20_2Achannel_29" args="(char *channel)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void userrec::InviteTo </td>
+ <td class="md" nowrap valign="top">void userrec::InviteTo </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>channel</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -868,37 +851,36 @@ 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#l00111">111</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#l00113">113</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="users_8h-source.html#l00039">Invited::channel</a>, and <a class="el" href="users_8h-source.html#l00114">invites</a>.
+References <a class="el" href="users_8h-source.html#l00039">Invited::channel</a>, and <a class="el" href="users_8h-source.html#l00114">invites</a>.<div class="fragment"><pre class="fragment"><a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 <a class="code" href="classInvited.html">Invited</a> i;
+<a name="l00116"></a>00116 strlcpy(i.<a class="code" href="classInvited.html#channel_5BCHANMAX_5D">channel</a>,channel,CHANMAX);
+<a name="l00117"></a>00117 <a class="code" href="classuserrec.html#invites">invites</a>.push_back(i);
+<a name="l00118"></a>00118 }
+</pre></div>
<p>
-<div class="fragment"><pre>00112 {
-00113 <a class="code" href="classInvited.html">Invited</a> i;
-00114 strlcpy(i.<a class="code" href="classInvited.html#o0">channel</a>,channel,CHANMAX);
-00115 <a class="code" href="classuserrec.html#r0">invites</a>.push_back(i);
-00116 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="userrec::IsInvited"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="IsInvited_28char_20_2Achannel_29"></a><!-- doxytag: member="userrec::IsInvited" ref="IsInvited_28char_20_2Achannel_29" args="(char *channel)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool userrec::IsInvited </td>
+ <td class="md" nowrap valign="top">bool userrec::IsInvited </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>channel</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -910,53 +892,52 @@ Returns true if a user is invited to a channel.
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00092">92</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#l00094">94</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">invites</a>.
+References <a class="el" href="users_8h-source.html#l00114">invites</a>.<div class="fragment"><pre class="fragment"><a name="l00095"></a>00095 {
+<a name="l00096"></a>00096 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#invites">invites</a>.begin(); i != <a class="code" href="classuserrec.html#invites">invites</a>.end(); i++)
+<a name="l00097"></a>00097 {
+<a name="l00098"></a>00098 <span class="keywordflow">if</span> (i-&gt;channel) {
+<a name="l00099"></a>00099 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00102"></a>00102 }
+<a name="l00103"></a>00103 }
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00106"></a>00106 }
+</pre></div>
<p>
-<div class="fragment"><pre>00093 {
-00094 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#r0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#r0">invites</a>.end(); i++)
-00095 {
-00096 <span class="keywordflow">if</span> (i-&gt;channel) {
-00097 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
-00098 {
-00099 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00100 }
-00101 }
-00102 }
-00103 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00104 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a8" doxytag="userrec::ReadData"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29"></a><!-- doxytag: member="userrec::ReadData" ref="ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29" args="(void *buffer, size_t size)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int userrec::ReadData </td>
+ <td class="md" nowrap valign="top">int userrec::ReadData </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">void *&nbsp;</td>
<td class="mdname" nowrap> <em>buffer</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>size_t&nbsp;</td>
<td class="mdname" nowrap> <em>size</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -968,39 +949,39 @@ Calls read() to read some data for this user using their fd.
<p>
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00075">75</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#l00076">76</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
-References <a class="el" href="connection_8h-source.html#l00301">connection::fd</a>.
+References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>.<div class="fragment"><pre class="fragment"><a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 <span class="keywordflow">if</span> (this-&gt;fd &gt; -1)
+<a name="l00079"></a>00079 {
+<a name="l00080"></a>00080 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"userrec::ReadData on fd %d"</span>,this-&gt;fd);
+<a name="l00081"></a>00081 <span class="keywordflow">return</span> read(this-&gt;fd, buffer, size);
+<a name="l00082"></a>00082 }
+<a name="l00083"></a>00083 <span class="keywordflow">else</span> <span class="keywordflow">return</span> 0;
+<a name="l00084"></a>00084 }
+</pre></div>
<p>
-<div class="fragment"><pre>00076 {
-00077 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classconnection.html#o0">fd</a> &gt; -1)
-00078 {
-00079 <span class="keywordflow">return</span> read(this-&gt;fd, buffer, size);
-00080 }
-00081 <span class="keywordflow">else</span> <span class="keywordflow">return</span> 0;
-00082 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a6" doxytag="userrec::RemoveInvite"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="RemoveInvite_28char_20_2Achannel_29"></a><!-- doxytag: member="userrec::RemoveInvite" ref="RemoveInvite_28char_20_2Achannel_29" args="(char *channel)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void userrec::RemoveInvite </td>
+ <td class="md" nowrap valign="top">void userrec::RemoveInvite </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>channel</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1012,52 +993,51 @@ 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#l00118">118</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
-<p>
-References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="users_8h-source.html#l00114">invites</a>.
-<p>
-<div class="fragment"><pre>00119 {
-00120 log(DEBUG,<span class="stringliteral">"Removing invites"</span>);
-00121 <span class="keywordflow">if</span> (channel)
-00122 {
-00123 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#r0">invites</a>.size())
-00124 {
-00125 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#r0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#r0">invites</a>.end(); i++)
-00126 {
-00127 <span class="keywordflow">if</span> (i-&gt;channel)
-00128 {
-00129 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
-00130 {
-00131 <a class="code" href="classuserrec.html#r0">invites</a>.erase(i);
-00132 <span class="keywordflow">return</span>;
-00133 }
-00134 }
-00135 }
-00136 }
-00137 }
-00138 }
-</pre></div> </td>
- </tr>
-</table>
-<a name="a13" doxytag="userrec::SetWriteError"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+Definition at line <a class="el" href="users_8cpp-source.html#l00120">120</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
+<p>
+References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="users_8h-source.html#l00114">invites</a>.<div class="fragment"><pre class="fragment"><a name="l00121"></a>00121 {
+<a name="l00122"></a>00122 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Removing invites"</span>);
+<a name="l00123"></a>00123 <span class="keywordflow">if</span> (channel)
+<a name="l00124"></a>00124 {
+<a name="l00125"></a>00125 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#invites">invites</a>.size())
+<a name="l00126"></a>00126 {
+<a name="l00127"></a>00127 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#invites">invites</a>.begin(); i != <a class="code" href="classuserrec.html#invites">invites</a>.end(); i++)
+<a name="l00128"></a>00128 {
+<a name="l00129"></a>00129 <span class="keywordflow">if</span> (i-&gt;channel)
+<a name="l00130"></a>00130 {
+<a name="l00131"></a>00131 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
+<a name="l00132"></a>00132 {
+<a name="l00133"></a>00133 <a class="code" href="classuserrec.html#invites">invites</a>.erase(i);
+<a name="l00134"></a>00134 <span class="keywordflow">return</span>;
+<a name="l00135"></a>00135 }
+<a name="l00136"></a>00136 }
+<a name="l00137"></a>00137 }
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139 }
+<a name="l00140"></a>00140 }
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="SetWriteError_28std_3A_3Astring_20error_29"></a><!-- doxytag: member="userrec::SetWriteError" ref="SetWriteError_28std_3A_3Astring_20error_29" args="(std::string error)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void userrec::SetWriteError </td>
+ <td class="md" nowrap valign="top">void userrec::SetWriteError </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">std::string&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a>&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>error</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1069,34 +1049,35 @@ Sets the write error for a connection.
<p>
This is done because the actual disconnect of a client may occur at an inopportune time such as half way through /LIST output. The WriteErrors of clients are checked at a more ideal time (in the mainloop) and errored clients purged.
<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00286">286</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#l00288">288</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>.
<p>
References <a class="el" href="modules_8h-source.html#l00023">DEBUG</a>, and <a class="el" href="users_8h-source.html#l00209">WriteError</a>.
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00192">AddBuffer()</a>, <a class="el" href="users_8cpp-source.html#l00248">AddWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00264">FlushWriteBuf()</a>.
+Referenced by <a class="el" href="users_8cpp-source.html#l00194">AddBuffer()</a>, <a class="el" href="users_8cpp-source.html#l00250">AddWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00266">FlushWriteBuf()</a>.<div class="fragment"><pre class="fragment"><a name="l00289"></a>00289 {
+<a name="l00290"></a>00290 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Setting error string for %s to '%s'"</span>,this-&gt;nick,error.c_str());
+<a name="l00291"></a>00291 <span class="comment">// don't try to set the error twice, its already set take the first string.</span>
+<a name="l00292"></a>00292 <span class="keywordflow">if</span> (this-&gt;WriteError == <span class="stringliteral">""</span>)
+<a name="l00293"></a>00293 this-&gt;<a class="code" href="classuserrec.html#WriteError">WriteError</a> = error;
+<a name="l00294"></a>00294 }
+</pre></div>
<p>
-<div class="fragment"><pre>00287 {
-00288 log(DEBUG,<span class="stringliteral">"Setting error string for %s to '%s'"</span>,this-&gt;nick,error.c_str());
-00289 <span class="comment">// don't try to set the error twice, its already set take the first string.</span>
-00290 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classuserrec.html#o19">WriteError</a> == <span class="stringliteral">""</span>)
-00291 this-&gt;<a class="code" href="classuserrec.html#o19">WriteError</a> = error;
-00292 }
-</pre></div> </td>
+ </td>
</tr>
</table>
<hr><h2>Member Data Documentation</h2>
-<a name="o7" doxytag="userrec::awaymsg"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="awaymsg_5BMAXAWAY_2B_31_5D"></a><!-- doxytag: member="userrec::awaymsg" ref="awaymsg_5BMAXAWAY_2B_31_5D" args="[MAXAWAY+1]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classuserrec.html#o7">userrec::awaymsg</a>[MAXAWAY+1]
+ <td class="md" nowrap valign="top">char <a class="el" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">userrec::awaymsg</a>[MAXAWAY+1] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1110,21 +1091,22 @@ If this string is empty, the user is not marked as away.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00155">155</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o5" doxytag="userrec::chans"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="chans_5BMAXCHANS_5D"></a><!-- doxytag: member="userrec::chans" ref="chans_5BMAXCHANS_5D" args="[MAXCHANS]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classucrec.html">ucrec</a> <a class="el" href="classuserrec.html#o5">userrec::chans</a>[MAXCHANS]
+ <td class="md" nowrap valign="top"><a class="el" href="classucrec.html">ucrec</a> <a class="el" href="classuserrec.html#chans_5BMAXCHANS_5D">userrec::chans</a>[MAXCHANS] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1136,21 +1118,22 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00146">146</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#l00651">Server::PseudoToUser()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o2" doxytag="userrec::dhost"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dhost_5B_31_36_30_5D"></a><!-- doxytag: member="userrec::dhost" ref="dhost_5B_31_36_30_5D" args="[160]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classuserrec.html#o2">userrec::dhost</a>[160]
+ <td class="md" nowrap valign="top">char <a class="el" href="classuserrec.html#dhost_5B_31_36_30_5D">userrec::dhost</a>[160] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1160,25 +1143,26 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00651">Server::Pseud
<p>
The host displayed to non-opers (used for cloaking etc).
<p>
-This usually matches the value of <a class="el" href="classconnection.html#o1">userrec::host</a>.
+This usually matches the value of <a class="el" href="classconnection.html#host_5B_31_36_30_5D">userrec::host</a>.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00131">131</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#l00068">GetFullHost()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00069">GetFullHost()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o11" doxytag="userrec::dns_done"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="dns_5Fdone"></a><!-- doxytag: member="userrec::dns_done" ref="dns_5Fdone" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool <a class="el" href="classuserrec.html#o11">userrec::dns_done</a>
+ <td class="md" nowrap valign="top">bool <a class="el" href="classuserrec.html#dns_5Fdone">userrec::dns_done</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1192,21 +1176,22 @@ True when <a class="el" href="classDNS.html">DNS</a> lookups are completed.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00178">178</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o8" doxytag="userrec::flood"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="flood"></a><!-- doxytag: member="userrec::flood" ref="flood" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classuserrec.html#o8">userrec::flood</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classuserrec.html#flood">userrec::flood</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1220,21 +1205,22 @@ Number of lines the user can place into the buffer (up to the global NetBufferSi
<p>
Definition at line <a class="el" href="users_8h-source.html#l00161">161</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o3" doxytag="userrec::fullname"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="fullname_5BMAXGECOS_2B_31_5D"></a><!-- doxytag: member="userrec::fullname" ref="fullname_5BMAXGECOS_2B_31_5D" args="[MAXGECOS+1]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classuserrec.html#o3">userrec::fullname</a>[MAXGECOS+1]
+ <td class="md" nowrap valign="top">char <a class="el" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">userrec::fullname</a>[MAXGECOS+1] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1248,21 +1234,22 @@ The users full name.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00135">135</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="userrec::ident"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ident_5BIDENTMAX_2B_32_5D"></a><!-- doxytag: member="userrec::ident" ref="ident_5BIDENTMAX_2B_32_5D" args="[IDENTMAX+2]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classuserrec.html#o1">userrec::ident</a>[IDENTMAX+2]
+ <td class="md" nowrap valign="top">char <a class="el" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">userrec::ident</a>[IDENTMAX+2] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1276,21 +1263,22 @@ Two characters are added to the user-defined limit to compensate for the tilde e
<p>
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#l00068">GetFullHost()</a>, <a class="el" href="users_8cpp-source.html#l00085">GetFullRealHost()</a>, <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>, <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00621">Server::UserToPseudo()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00069">GetFullHost()</a>, <a class="el" href="users_8cpp-source.html#l00087">GetFullRealHost()</a>, <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>, <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00639">Server::UserToPseudo()</a>. </td>
</tr>
</table>
-<a name="r0" doxytag="userrec::invites"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="invites"></a><!-- doxytag: member="userrec::invites" ref="invites" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="users_8h.html#a6">InvitedList</a> <a class="el" href="classuserrec.html#r0">userrec::invites</a><code> [private]</code>
+ <td class="md" nowrap valign="top"><a class="el" href="users_8h.html#InvitedList">InvitedList</a> <a class="el" href="classuserrec.html#invites">userrec::invites</a><code> [private]</code> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1304,21 +1292,22 @@ A list of channels the user has a pending invite to.
<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>.
<p>
-Referenced by <a class="el" href="users_8cpp-source.html#l00106">GetInviteList()</a>, <a class="el" href="users_8cpp-source.html#l00111">InviteTo()</a>, <a class="el" href="users_8cpp-source.html#l00092">IsInvited()</a>, <a class="el" href="users_8cpp-source.html#l00118">RemoveInvite()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00108">GetInviteList()</a>, <a class="el" href="users_8cpp-source.html#l00113">InviteTo()</a>, <a class="el" href="users_8cpp-source.html#l00094">IsInvited()</a>, <a class="el" href="users_8cpp-source.html#l00120">RemoveInvite()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o16" doxytag="userrec::lines_in"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="lines_5Fin"></a><!-- doxytag: member="userrec::lines_in" ref="lines_5Fin" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="classuserrec.html#o16">userrec::lines_in</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="classuserrec.html#lines_5Fin">userrec::lines_in</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1332,21 +1321,22 @@ Flood counters.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00203">203</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o4" doxytag="userrec::modes"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="modes_5B_35_34_5D"></a><!-- doxytag: member="userrec::modes" ref="modes_5B_35_34_5D" args="[54]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classuserrec.html#o4">userrec::modes</a>[54]
+ <td class="md" nowrap valign="top">char <a class="el" href="classuserrec.html#modes_5B_35_34_5D">userrec::modes</a>[54] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1360,21 +1350,22 @@ This may contain any of the following RFC characters: o, w, s, i Your module may
<p>
Definition at line <a class="el" href="users_8h-source.html#l00144">144</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o0" doxytag="userrec::nick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="nick_5BNICKMAX_5D"></a><!-- doxytag: member="userrec::nick" ref="nick_5BNICKMAX_5D" args="[NICKMAX]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classuserrec.html#o0">userrec::nick</a>[NICKMAX]
+ <td class="md" nowrap valign="top">char <a class="el" href="classuserrec.html#nick_5BNICKMAX_5D">userrec::nick</a>[NICKMAX] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1388,21 +1379,22 @@ An invalid nickname indicates an unregistered connection prior to the NICK comma
<p>
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>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00919">ConfigReader::DumpErrors()</a>, <a class="el" href="users_8cpp-source.html#l00068">GetFullHost()</a>, <a class="el" href="users_8cpp-source.html#l00085">GetFullRealHost()</a>, <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00894">ConfigReader::DumpErrors()</a>, <a class="el" href="users_8cpp-source.html#l00069">GetFullHost()</a>, <a class="el" href="users_8cpp-source.html#l00087">GetFullRealHost()</a>, <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o10" doxytag="userrec::oper"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="oper_5BNICKMAX_5D"></a><!-- doxytag: member="userrec::oper" ref="oper_5BNICKMAX_5D" args="[NICKMAX]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classuserrec.html#o10">userrec::oper</a>[NICKMAX]
+ <td class="md" nowrap valign="top">char <a class="el" href="classuserrec.html#oper_5BNICKMAX_5D">userrec::oper</a>[NICKMAX] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1416,21 +1408,22 @@ This is used to check permissions in operclasses, so that we can say 'yay' or 'n
<p>
Definition at line <a class="el" href="users_8h-source.html#l00174">174</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o13" doxytag="userrec::password"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="password_5BMAXBUF_5D"></a><!-- doxytag: member="userrec::password" ref="password_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="classuserrec.html#o13">userrec::password</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="classuserrec.html#password_5BMAXBUF_5D">userrec::password</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1440,23 +1433,24 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>.
<p>
Password specified by the user when they registered.
<p>
-This is stored even if the block doesnt need a password, so that modules may check it.
+This is stored even if the &lt;connect&gt; block doesnt need a password, so that modules may check it.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00188">188</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o12" doxytag="userrec::pingmax"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="pingmax"></a><!-- doxytag: member="userrec::pingmax" ref="pingmax" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> unsigned int <a class="el" href="classuserrec.html#o12">userrec::pingmax</a>
+ <td class="md" nowrap valign="top">unsigned int <a class="el" href="classuserrec.html#pingmax">userrec::pingmax</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1471,18 +1465,19 @@ Number of seconds between PINGs for this user (set from &lt;connect:allow&gt; ta
Definition at line <a class="el" href="users_8h-source.html#l00182">182</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o14" doxytag="userrec::recvq"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="recvq"></a><!-- doxytag: member="userrec::recvq" ref="recvq" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string <a class="el" href="classuserrec.html#o14">userrec::recvq</a>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classuserrec.html#recvq">userrec::recvq</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1496,21 +1491,22 @@ Lines from the IRCd awaiting processing are stored here. Upgraded april 2005, ol
<p>
Definition at line <a class="el" href="users_8h-source.html#l00194">194</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#l00192">AddBuffer()</a>, <a class="el" href="users_8cpp-source.html#l00218">BufferIsReady()</a>, <a class="el" href="users_8cpp-source.html#l00226">ClearBuffer()</a>, <a class="el" href="users_8cpp-source.html#l00231">GetBuffer()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00194">AddBuffer()</a>, <a class="el" href="users_8cpp-source.html#l00220">BufferIsReady()</a>, <a class="el" href="users_8cpp-source.html#l00228">ClearBuffer()</a>, <a class="el" href="users_8cpp-source.html#l00233">GetBuffer()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o21" doxytag="userrec::recvqmax"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="recvqmax"></a><!-- doxytag: member="userrec::recvqmax" ref="recvqmax" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classuserrec.html#o21">userrec::recvqmax</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classuserrec.html#recvqmax">userrec::recvqmax</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1524,21 +1520,22 @@ Maximum size this user's recvq can become.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00217">217</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#l00192">AddBuffer()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00194">AddBuffer()</a>. </td>
</tr>
</table>
-<a name="o17" doxytag="userrec::reset_due"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="reset_5Fdue"></a><!-- doxytag: member="userrec::reset_due" ref="reset_5Fdue" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="classuserrec.html#o17">userrec::reset_due</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="classuserrec.html#reset_5Fdue">userrec::reset_due</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1550,21 +1547,22 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00192">AddBuffer()</a>
<p>
Definition at line <a class="el" href="users_8h-source.html#l00204">204</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o15" doxytag="userrec::sendq"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="sendq"></a><!-- doxytag: member="userrec::sendq" ref="sendq" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string <a class="el" href="classuserrec.html#o15">userrec::sendq</a>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classuserrec.html#sendq">userrec::sendq</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1578,21 +1576,22 @@ Lines waiting to be sent are stored here until their buffer is flushed.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00199">199</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#l00248">AddWriteBuf()</a>, <a class="el" href="users_8cpp-source.html#l00264">FlushWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00250">AddWriteBuf()</a>, <a class="el" href="users_8cpp-source.html#l00266">FlushWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o20" doxytag="userrec::sendqmax"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="sendqmax"></a><!-- doxytag: member="userrec::sendqmax" ref="sendqmax" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classuserrec.html#o20">userrec::sendqmax</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classuserrec.html#sendqmax">userrec::sendqmax</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1606,21 +1605,22 @@ Maximum size this user's sendq can become.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00213">213</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#l00248">AddWriteBuf()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00250">AddWriteBuf()</a>. </td>
</tr>
</table>
-<a name="o6" doxytag="userrec::server"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="server"></a><!-- doxytag: member="userrec::server" ref="server" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* <a class="el" href="classuserrec.html#o6">userrec::server</a>
+ <td class="md" nowrap valign="top">char* <a class="el" href="classuserrec.html#server">userrec::server</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1634,21 +1634,22 @@ The server the user is connected to.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00150">150</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o18" doxytag="userrec::threshold"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="threshold"></a><!-- doxytag: member="userrec::threshold" ref="threshold" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long <a class="el" href="classuserrec.html#o18">userrec::threshold</a>
+ <td class="md" nowrap valign="top">long <a class="el" href="classuserrec.html#threshold">userrec::threshold</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1661,18 +1662,19 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>.
Definition at line <a class="el" href="users_8h-source.html#l00205">205</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="o9" doxytag="userrec::timeout"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="timeout"></a><!-- doxytag: member="userrec::timeout" ref="timeout" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> unsigned int <a class="el" href="classuserrec.html#o9">userrec::timeout</a>
+ <td class="md" nowrap valign="top">unsigned int <a class="el" href="classuserrec.html#timeout">userrec::timeout</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1686,21 +1688,22 @@ Number of seconds this user is given to send USER/NICK If they do not send their
<p>
Definition at line <a class="el" href="users_8h-source.html#l00167">167</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#l00032">userrec()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00033">userrec()</a>. </td>
</tr>
</table>
-<a name="o19" doxytag="userrec::WriteError"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="WriteError"></a><!-- doxytag: member="userrec::WriteError" ref="WriteError" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::string <a class="el" href="classuserrec.html#o19">userrec::WriteError</a>
+ <td class="md" nowrap valign="top"><a class="el" href="namespaceirc.html#string">std::string</a> <a class="el" href="classuserrec.html#WriteError">userrec::WriteError</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1712,14 +1715,13 @@ Referenced by <a class="el" href="users_8cpp-source.html#l00032">userrec()</a>.
<p>
Definition at line <a class="el" href="users_8h-source.html#l00209">209</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#l00294">GetWriteError()</a>, and <a class="el" href="users_8cpp-source.html#l00286">SetWriteError()</a>. </td>
+Referenced by <a class="el" href="users_8cpp-source.html#l00296">GetWriteError()</a>, and <a class="el" href="users_8cpp-source.html#l00288">SetWriteError()</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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:43 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/classuserrec__coll__graph.gif b/docs/module-doc/classuserrec__coll__graph.gif
index 0ad5e4f3c..c04b77ecc 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/classuserrec__coll__graph.map b/docs/module-doc/classuserrec__coll__graph.map
new file mode 100644
index 000000000..0c1aa906e
--- /dev/null
+++ b/docs/module-doc/classuserrec__coll__graph.map
@@ -0,0 +1,3 @@
+base referer
+rect $classconnection.html 199,429 284,456
+rect $classucrec.html 215,7 268,33
diff --git a/docs/module-doc/classuserrec__coll__graph.md5 b/docs/module-doc/classuserrec__coll__graph.md5
new file mode 100644
index 000000000..4ad527f15
--- /dev/null
+++ b/docs/module-doc/classuserrec__coll__graph.md5
@@ -0,0 +1 @@
+e23f71aec70c162678f86988d6926812 \ No newline at end of file
diff --git a/docs/module-doc/classuserrec__inherit__graph.gif b/docs/module-doc/classuserrec__inherit__graph.gif
index 132a8778a..a1cc1a0a8 100644
--- a/docs/module-doc/classuserrec__inherit__graph.gif
+++ b/docs/module-doc/classuserrec__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/classuserrec__inherit__graph.map b/docs/module-doc/classuserrec__inherit__graph.map
new file mode 100644
index 000000000..7b98b616f
--- /dev/null
+++ b/docs/module-doc/classuserrec__inherit__graph.map
@@ -0,0 +1,4 @@
+base referer
+rect $classconnection.html 7,156 92,183
+rect $classExtensible.html 8,81 91,108
+rect $classclassbase.html 10,7 90,33
diff --git a/docs/module-doc/classuserrec__inherit__graph.md5 b/docs/module-doc/classuserrec__inherit__graph.md5
new file mode 100644
index 000000000..e45c258a7
--- /dev/null
+++ b/docs/module-doc/classuserrec__inherit__graph.md5
@@ -0,0 +1 @@
+48134c77983f0184ab60e531fb8c80f4 \ No newline at end of file
diff --git a/docs/module-doc/commands_8h-source.html b/docs/module-doc/commands_8h-source.html
index 13f8808b6..3d62e89c4 100644
--- a/docs/module-doc/commands_8h-source.html
+++ b/docs/module-doc/commands_8h-source.html
@@ -1,129 +1,102 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: commands.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>commands.h</h1><a href="commands_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#ifndef __COMMANDS_H</span>
-00018 <span class="preprocessor"></span><span class="preprocessor">#define __COMMANDS_H</span>
-00019 <span class="preprocessor"></span>
-00020 <span class="comment">// include the common header files</span>
-00021
-00022 <span class="preprocessor">#include &lt;typeinfo&gt;</span>
-00023 <span class="preprocessor">#include &lt;iostream&gt;</span>
-00024 <span class="preprocessor">#include &lt;string&gt;</span>
-00025 <span class="preprocessor">#include &lt;deque&gt;</span>
-00026 <span class="preprocessor">#include &lt;sstream&gt;</span>
-00027 <span class="preprocessor">#include &lt;vector&gt;</span>
-00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
-00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
-00030
-00031
-00034 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a0">handle_join</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00035 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a1">handle_part</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00036 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a2">handle_kick</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00037 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a3">handle_die</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00038 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a4">handle_restart</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00039 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a5">handle_kill</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00040 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a6">handle_summon</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00041 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a7">handle_users</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00042 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a8">handle_pass</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00043 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a9">handle_invite</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00044 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a10">handle_topic</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00045 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a11">handle_names</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00046 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a12">handle_privmsg</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00047 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a13">handle_notice</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00048 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a14">handle_info</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00049 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a15">handle_time</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00050 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a16">handle_whois</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00051 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a17">handle_quit</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00052 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a18">handle_who</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00053 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a19">handle_wallops</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00054 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a20">handle_list</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00055 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a21">handle_rehash</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00056 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a22">handle_lusers</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00057 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a23">handle_admin</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00058 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a24">handle_ping</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00059 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a25">handle_pong</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00060 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a26">handle_motd</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00061 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a27">handle_rules</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00062 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a28">handle_user</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00063 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a29">handle_userhost</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00064 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a30">handle_ison</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00065 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a31">handle_away</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00066 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a32">handle_whowas</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00067 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a33">handle_trace</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00068 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a34">handle_modules</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00069 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a35">handle_stats</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00070 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a36">handle_connect</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00071 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a37">handle_squit</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00072 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a38">handle_links</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00073 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a39">handle_map</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00074 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a40">handle_oper</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00075 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a41">handle_nick</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00076 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a42">handle_kline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00077 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a43">handle_gline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00078 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a44">handle_zline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00079 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a45">handle_qline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00080 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a46">handle_eline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00081 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a47">handle_server</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00082 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a48">handle_loadmodule</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00083 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a49">handle_unloadmodule</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00084 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a50">handle_commands</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00085
-00088 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a51">handle_link_packet</a>(<span class="keywordtype">char</span>* tcp_msg, <span class="keywordtype">char</span>* tcp_host, <a class="code" href="classserverrec.html">serverrec</a> *serv, <span class="keywordtype">char</span>* tcp_sum);
-00089 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a52">process_restricted_commands</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host,<span class="keywordtype">char</span>* ipaddr,<span class="keywordtype">int</span> port, <span class="keywordtype">char</span>* tcp_sum);
-00090
-00093 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a53">handle_amp</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00094 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a54">handle_dollar</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00095 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a55">handle_J</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00096 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a56">handle_R</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00097 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a57">handle_plus</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00098 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a58">handle_b</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00099 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a59">handle_a</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00100 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a60">handle_F</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00101 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a61">handle_N</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00102 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a62">handle_AT</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00103 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a63">handle_k</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00104 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a64">handle_n</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00105 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a65">handle_Q</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00106 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a66">handle_K</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00107 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a67">handle_L</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00108 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a68">handle_m</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00109 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a69">handle_M</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00110 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a70">handle_T</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00111 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a71">handle_t</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00112 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a72">handle_i</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00113 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a73">handle_P</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00114 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a74">handle_V</a>(<span class="keywordtype">char</span> token,<span class="keywordtype">char</span>* params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, <span class="keywordtype">char</span>* tcp_host, <span class="keywordtype">char</span>* tcp_sum);
-00115
-00118 <span class="keywordtype">bool</span> <a class="code" href="commands_8h.html#a75">is_uline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* server);
-00119
-00122 <span class="keywordtype">long</span> <a class="code" href="commands_8h.html#a76">duration</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* str);
-00123
-00126 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#a77">ConnectServer</a>(<span class="keywordtype">char</span>* servermask, <a class="code" href="classuserrec.html">userrec</a>* user);
-00127
-00128 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:19 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>commands.h</h1><a href="commands_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef __COMMANDS_H</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __COMMANDS_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="comment">// include the common header files</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;typeinfo&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;iostream&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;deque&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031
+<a name="l00034"></a>00034 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fjoin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_join</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00035"></a>00035 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fpart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_part</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00036"></a>00036 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fkick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_kick</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00037"></a>00037 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fdie_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_die</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00038"></a>00038 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Frestart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_restart</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00039"></a>00039 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fkill_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_kill</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00040"></a>00040 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fsummon_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_summon</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00041"></a>00041 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_users</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00042"></a>00042 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fpass_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_pass</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00043"></a>00043 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Finvite_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_invite</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00044"></a>00044 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Ftopic_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_topic</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00045"></a>00045 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fnames_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_names</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00046"></a>00046 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fprivmsg_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_privmsg</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00047"></a>00047 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fnotice_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_notice</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00048"></a>00048 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Finfo_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_info</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00049"></a>00049 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Ftime_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_time</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00050"></a>00050 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fwhois_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_whois</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00051"></a>00051 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_quit</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00052"></a>00052 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fwho_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_who</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00053"></a>00053 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fwallops_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_wallops</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00054"></a>00054 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Flist_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_list</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00055"></a>00055 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Frehash_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_rehash</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00056"></a>00056 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Flusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_lusers</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00057"></a>00057 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fadmin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_admin</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00058"></a>00058 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fping_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_ping</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00059"></a>00059 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fpong_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_pong</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00060"></a>00060 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fmotd_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_motd</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00061"></a>00061 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Frules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_rules</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00062"></a>00062 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fuser_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_user</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00063"></a>00063 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fuserhost_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_userhost</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00064"></a>00064 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fison_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_ison</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00065"></a>00065 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Faway_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_away</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00066"></a>00066 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fwhowas_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_whowas</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00067"></a>00067 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Ftrace_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_trace</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00068"></a>00068 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fmodules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_modules</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00069"></a>00069 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fstats_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_stats</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00070"></a>00070 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fconnect_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_connect</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00071"></a>00071 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fsquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_squit</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00072"></a>00072 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Flinks_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_links</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00073"></a>00073 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fmap_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_map</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00074"></a>00074 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Foper_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_oper</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00075"></a>00075 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fnick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_nick</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00076"></a>00076 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fkline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_kline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00077"></a>00077 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fgline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_gline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00078"></a>00078 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fzline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_zline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00079"></a>00079 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fqline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_qline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00080"></a>00080 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Feline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_eline</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00081"></a>00081 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fserver_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_server</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00082"></a>00082 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Floadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_loadmodule</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00083"></a>00083 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Funloadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_unloadmodule</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00084"></a>00084 <span class="keywordtype">void</span> <a class="code" href="commands_8h.html#handle_5Fcommands_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_commands</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00085"></a>00085
+<a name="l00088"></a>00088 <span class="keywordtype">bool</span> <a class="code" href="commands_8h.html#is_5Fuline_28const_20char_20_2Aserver_29">is_uline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* server);
+<a name="l00089"></a>00089
+<a name="l00092"></a>00092 <span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* str);
+<a name="l00093"></a>00093
+<a name="l00094"></a>00094 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/commands_8h.html b/docs/module-doc/commands_8h.html
index 4b0bab91c..191152837 100644
--- a/docs/module-doc/commands_8h.html
+++ b/docs/module-doc/commands_8h.html
@@ -1,259 +1,168 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: commands.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
<h1>commands.h File Reference</h1><code>#include &lt;typeinfo&gt;</code><br>
<code>#include &lt;iostream&gt;</code><br>
<code>#include &lt;string&gt;</code><br>
<code>#include &lt;deque&gt;</code><br>
<code>#include &lt;sstream&gt;</code><br>
<code>#include &lt;vector&gt;</code><br>
-<code>#include "<a class="el" href="users_8h-source.html">users.h</a>"</code><br>
-<code>#include "<a class="el" href="channels_8h-source.html">channels.h</a>"</code><br>
+<code>#include &quot;<a class="el" href="users_8h-source.html">users.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="channels_8h-source.html">channels.h</a>&quot;</code><br>
<p>
-Include dependency graph for commands.h:<p><center><img src="commands_8h__incl.gif" border="0" usemap="#commands.h_map" alt="Include dependency graph"></center>
+Include dependency graph for commands.h:<p><center><img src="commands_8h__incl.gif" border="0" usemap="#commands.h_map" alt=""></center>
<map name="commands.h_map">
-<area href="users_8h.html" shape="rect" coords="248,157,312,184" alt="">
-<area href="channels_8h.html" shape="rect" coords="298,82,384,109" alt="">
+<area href="users_8h-source.html" shape="rect" coords="159,260,223,287" alt="">
+<area href="channels_8h-source.html" shape="rect" coords="283,210,368,236" alt="">
+<area href="connection_8h-source.html" shape="rect" coords="276,362,375,388" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="commands_8h__dep__incl.gif" border="0" usemap="#commands.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="commands_8h__dep__incl.gif" border="0" usemap="#commands.hdep_map" alt=""></center>
<map name="commands.hdep_map">
-<area href="modules_8cpp.html" shape="rect" coords="8,7,106,34" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="154,7,252,33" alt="">
</map>
<p>
-<a href="commands_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="commands_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a0">handle_join</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fjoin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_join</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">These are the handlers for user commands. </em> <a href="#a0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a1">handle_part</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">These are the handlers for user commands. <a href="#handle_5Fjoin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fpart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_part</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a2">handle_kick</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fkick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_kick</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a3">handle_die</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fdie_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_die</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a4">handle_restart</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Frestart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_restart</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a5">handle_kill</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fkill_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_kill</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a6">handle_summon</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fsummon_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_summon</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a7">handle_users</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_users</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a8">handle_pass</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fpass_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_pass</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a9">handle_invite</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Finvite_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_invite</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a10">handle_topic</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Ftopic_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_topic</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a11">handle_names</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fnames_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_names</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a12">handle_privmsg</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fprivmsg_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_privmsg</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a13">handle_notice</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fnotice_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_notice</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a14">handle_info</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Finfo_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_info</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a15">handle_time</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Ftime_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_time</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a16">handle_whois</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fwhois_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_whois</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a17">handle_quit</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_quit</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a18">handle_who</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fwho_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_who</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a19">handle_wallops</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fwallops_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_wallops</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a20">handle_list</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Flist_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_list</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a21">handle_rehash</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Frehash_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_rehash</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a22">handle_lusers</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Flusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_lusers</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a23">handle_admin</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fadmin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_admin</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a24">handle_ping</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fping_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_ping</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a25">handle_pong</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fpong_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_pong</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a26">handle_motd</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fmotd_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_motd</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a27">handle_rules</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Frules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_rules</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a28">handle_user</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fuser_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_user</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a29">handle_userhost</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fuserhost_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_userhost</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a30">handle_ison</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fison_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_ison</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a31">handle_away</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Faway_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_away</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a32">handle_whowas</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fwhowas_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_whowas</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a33">handle_trace</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Ftrace_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_trace</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a34">handle_modules</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fmodules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_modules</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a35">handle_stats</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fstats_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_stats</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a36">handle_connect</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fconnect_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_connect</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a37">handle_squit</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fsquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_squit</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a38">handle_links</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Flinks_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_links</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a39">handle_map</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fmap_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_map</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a40">handle_oper</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Foper_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_oper</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a41">handle_nick</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fnick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_nick</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a42">handle_kline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fkline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_kline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a43">handle_gline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fgline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_gline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a44">handle_zline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fzline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_zline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a45">handle_qline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fqline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_qline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a46">handle_eline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Feline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_eline</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a47">handle_server</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fserver_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_server</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a48">handle_loadmodule</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Floadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_loadmodule</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a49">handle_unloadmodule</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Funloadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_unloadmodule</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a50">handle_commands</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#handle_5Fcommands_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_commands</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a51">handle_link_packet</a> (char *tcp_msg, char *tcp_host, <a class="el" href="classserverrec.html">serverrec</a> *serv, char *tcp_sum)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#is_5Fuline_28const_20char_20_2Aserver_29">is_uline</a> (const char *server)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Special functions for processing server to server traffic. </em> <a href="#a51"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a52">process_restricted_commands</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *ipaddr, int port, char *tcp_sum)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Functions for u:lined servers. <a href="#is_5Fuline_28const_20char_20_2Aserver_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a> (const char *str)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a53">handle_amp</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">These are the handlers for server commands (tokens). </em> <a href="#a53"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a54">handle_dollar</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a55">handle_J</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a56">handle_R</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a57">handle_plus</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a58">handle_b</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a59">handle_a</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a60">handle_F</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a61">handle_N</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a62">handle_AT</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a63">handle_k</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a64">handle_n</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a65">handle_Q</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a66">handle_K</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a67">handle_L</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a68">handle_m</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a69">handle_M</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a70">handle_T</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a71">handle_t</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a72">handle_i</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a73">handle_P</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a74">handle_V</a> (char token, char *params, <a class="el" href="classserverrec.html">serverrec</a> *source, <a class="el" href="classserverrec.html">serverrec</a> *reply, char *tcp_host, char *tcp_sum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a75">is_uline</a> (const char *server)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Functions for u:lined servers. </em> <a href="#a75"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a76">duration</a> (const char *str)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Other useful functions. </em> <a href="#a76"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="commands_8h.html#a77">ConnectServer</a> (char *servermask, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classServer.html">Server</a> connect creation. </em> <a href="#a77"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Other useful functions. <a href="#duration_28const_20char_20_2Astr_29"></a><br></td></tr>
</table>
<hr><h2>Function Documentation</h2>
-<a name="a77" doxytag="commands.h::ConnectServer"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void ConnectServer </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char *&nbsp;</td>
- <td class="mdname" nowrap> <em>servermask</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> <em>user</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>
-<a class="el" href="classServer.html">Server</a> connect creation.
-<p>
- </td>
- </tr>
-</table>
-<a name="a76" doxytag="commands.h::duration"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="duration_28const_20char_20_2Astr_29"></a><!-- doxytag: member="commands.h::duration" ref="duration_28const_20char_20_2Astr_29" args="(const char *str)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> long duration </td>
+ <td class="md" nowrap valign="top">long duration </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>str</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -265,231 +174,42 @@ Other useful functions.
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00701">Server::AddELine()</a>, <a class="el" href="modules_8cpp-source.html#l00681">Server::AddGLine()</a>, <a class="el" href="modules_8cpp-source.html#l00696">Server::AddKLine()</a>, <a class="el" href="modules_8cpp-source.html#l00686">Server::AddQLine()</a>, <a class="el" href="modules_8cpp-source.html#l00691">Server::AddZLine()</a>, and <a class="el" href="modules_8cpp-source.html#l00731">Server::CalcDuration()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00750">Server::CalcDuration()</a>. </td>
</tr>
</table>
-<a name="a59" doxytag="commands.h::handle_a"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fadmin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_admin" ref="handle_5Fadmin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_a </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a23" doxytag="commands.h::handle_admin"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_admin </td>
+ <td class="md" nowrap valign="top">void handle_admin </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</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>
- </td>
- </tr>
-</table>
-<a name="a53" doxytag="commands.h::handle_amp"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_amp </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
-These are the handlers for server commands (tokens).
-<p>
- </td>
- </tr>
-</table>
-<a name="a62" doxytag="commands.h::handle_AT"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_AT </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</em></td>
- </tr>
- <tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -500,40 +220,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a31" doxytag="commands.h::handle_away"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Faway_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_away" ref="handle_5Faway_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_away </td>
+ <td class="md" nowrap valign="top">void handle_away </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -544,102 +263,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a58" doxytag="commands.h::handle_b"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fcommands_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_commands" ref="handle_5Fcommands_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_b </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a50" doxytag="commands.h::handle_commands"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_commands </td>
+ <td class="md" nowrap valign="top">void handle_commands </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -650,40 +306,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a36" doxytag="commands.h::handle_connect"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fconnect_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_connect" ref="handle_5Fconnect_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_connect </td>
+ <td class="md" nowrap valign="top">void handle_connect </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -694,40 +349,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a3" doxytag="commands.h::handle_die"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fdie_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_die" ref="handle_5Fdie_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_die </td>
+ <td class="md" nowrap valign="top">void handle_die </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -738,164 +392,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a54" doxytag="commands.h::handle_dollar"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Feline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_eline" ref="handle_5Feline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_dollar </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a46" doxytag="commands.h::handle_eline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_eline </td>
+ <td class="md" nowrap valign="top">void handle_eline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</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>
- </td>
- </tr>
-</table>
-<a name="a60" doxytag="commands.h::handle_F"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_F </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</em></td>
- </tr>
- <tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -906,40 +435,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a43" doxytag="commands.h::handle_gline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fgline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_gline" ref="handle_5Fgline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_gline </td>
+ <td class="md" nowrap valign="top">void handle_gline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -950,102 +478,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a72" doxytag="commands.h::handle_i"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Finfo_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_info" ref="handle_5Finfo_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_i </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a14" doxytag="commands.h::handle_info"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_info </td>
+ <td class="md" nowrap valign="top">void handle_info </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1056,40 +521,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a9" doxytag="commands.h::handle_invite"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Finvite_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_invite" ref="handle_5Finvite_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_invite </td>
+ <td class="md" nowrap valign="top">void handle_invite </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1100,40 +564,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a30" doxytag="commands.h::handle_ison"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fison_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_ison" ref="handle_5Fison_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_ison </td>
+ <td class="md" nowrap valign="top">void handle_ison </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1144,102 +607,39 @@ These are the handlers for server commands (tokens).
</td>
</tr>
</table>
-<a name="a55" doxytag="commands.h::handle_J"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fjoin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_join" ref="handle_5Fjoin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_J </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a0" doxytag="commands.h::handle_join"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_join </td>
+ <td class="md" nowrap valign="top">void handle_join </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1252,164 +652,39 @@ These are the handlers for user commands.
</td>
</tr>
</table>
-<a name="a66" doxytag="commands.h::handle_K"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_K </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a63" doxytag="commands.h::handle_k"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fkick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_kick" ref="handle_5Fkick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_k </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a2" doxytag="commands.h::handle_kick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_kick </td>
+ <td class="md" nowrap valign="top">void handle_kick </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1420,40 +695,39 @@ These are the handlers for user commands.
</td>
</tr>
</table>
-<a name="a5" doxytag="commands.h::handle_kill"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fkill_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_kill" ref="handle_5Fkill_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_kill </td>
+ <td class="md" nowrap valign="top">void handle_kill </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1464,40 +738,39 @@ These are the handlers for user commands.
</td>
</tr>
</table>
-<a name="a42" doxytag="commands.h::handle_kline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fkline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_kline" ref="handle_5Fkline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_kline </td>
+ <td class="md" nowrap valign="top">void handle_kline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1508,154 +781,39 @@ These are the handlers for user commands.
</td>
</tr>
</table>
-<a name="a67" doxytag="commands.h::handle_L"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Flinks_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_links" ref="handle_5Flinks_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_L </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a51" doxytag="commands.h::handle_link_packet"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_link_packet </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_msg</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>serv</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
-Special functions for processing server to server traffic.
-<p>
- </td>
- </tr>
-</table>
-<a name="a38" doxytag="commands.h::handle_links"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_links </td>
+ <td class="md" nowrap valign="top">void handle_links </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1666,40 +824,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a20" doxytag="commands.h::handle_list"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Flist_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_list" ref="handle_5Flist_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_list </td>
+ <td class="md" nowrap valign="top">void handle_list </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1710,40 +867,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a48" doxytag="commands.h::handle_loadmodule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Floadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_loadmodule" ref="handle_5Floadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_loadmodule </td>
+ <td class="md" nowrap valign="top">void handle_loadmodule </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1754,102 +910,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a22" doxytag="commands.h::handle_lusers"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Flusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_lusers" ref="handle_5Flusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_lusers </td>
+ <td class="md" nowrap valign="top">void handle_lusers </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</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>
- </td>
- </tr>
-</table>
-<a name="a69" doxytag="commands.h::handle_M"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_M </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</em></td>
- </tr>
- <tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1860,102 +953,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a68" doxytag="commands.h::handle_m"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fmap_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_map" ref="handle_5Fmap_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_m </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a39" doxytag="commands.h::handle_map"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_map </td>
+ <td class="md" nowrap valign="top">void handle_map </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1966,40 +996,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a34" doxytag="commands.h::handle_modules"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fmodules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_modules" ref="handle_5Fmodules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_modules </td>
+ <td class="md" nowrap valign="top">void handle_modules </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2010,164 +1039,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a26" doxytag="commands.h::handle_motd"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fmotd_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_motd" ref="handle_5Fmotd_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_motd </td>
+ <td class="md" nowrap valign="top">void handle_motd </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</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>
- </td>
- </tr>
-</table>
-<a name="a64" doxytag="commands.h::handle_n"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_n </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a61" doxytag="commands.h::handle_N"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_N </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</em></td>
- </tr>
- <tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2178,40 +1082,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a11" doxytag="commands.h::handle_names"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fnames_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_names" ref="handle_5Fnames_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_names </td>
+ <td class="md" nowrap valign="top">void handle_names </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2222,40 +1125,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a41" doxytag="commands.h::handle_nick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fnick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_nick" ref="handle_5Fnick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_nick </td>
+ <td class="md" nowrap valign="top">void handle_nick </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2266,40 +1168,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a13" doxytag="commands.h::handle_notice"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fnotice_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_notice" ref="handle_5Fnotice_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_notice </td>
+ <td class="md" nowrap valign="top">void handle_notice </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2310,40 +1211,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a40" doxytag="commands.h::handle_oper"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Foper_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_oper" ref="handle_5Foper_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_oper </td>
+ <td class="md" nowrap valign="top">void handle_oper </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2354,102 +1254,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a73" doxytag="commands.h::handle_P"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fpart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_part" ref="handle_5Fpart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_P </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a1" doxytag="commands.h::handle_part"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_part </td>
+ <td class="md" nowrap valign="top">void handle_part </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2460,40 +1297,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a8" doxytag="commands.h::handle_pass"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fpass_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_pass" ref="handle_5Fpass_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_pass </td>
+ <td class="md" nowrap valign="top">void handle_pass </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2504,40 +1340,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a24" doxytag="commands.h::handle_ping"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fping_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_ping" ref="handle_5Fping_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_ping </td>
+ <td class="md" nowrap valign="top">void handle_ping </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2548,102 +1383,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a57" doxytag="commands.h::handle_plus"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fpong_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_pong" ref="handle_5Fpong_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_plus </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a25" doxytag="commands.h::handle_pong"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_pong </td>
+ <td class="md" nowrap valign="top">void handle_pong </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2654,40 +1426,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a12" doxytag="commands.h::handle_privmsg"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fprivmsg_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_privmsg" ref="handle_5Fprivmsg_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_privmsg </td>
+ <td class="md" nowrap valign="top">void handle_privmsg </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2698,102 +1469,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a65" doxytag="commands.h::handle_Q"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fqline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_qline" ref="handle_5Fqline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_Q </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a45" doxytag="commands.h::handle_qline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_qline </td>
+ <td class="md" nowrap valign="top">void handle_qline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2804,40 +1512,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a17" doxytag="commands.h::handle_quit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_quit" ref="handle_5Fquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_quit </td>
+ <td class="md" nowrap valign="top">void handle_quit </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2848,102 +1555,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a56" doxytag="commands.h::handle_R"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Frehash_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_rehash" ref="handle_5Frehash_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_R </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a21" doxytag="commands.h::handle_rehash"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_rehash </td>
+ <td class="md" nowrap valign="top">void handle_rehash </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2954,40 +1598,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a4" doxytag="commands.h::handle_restart"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Frestart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_restart" ref="handle_5Frestart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_restart </td>
+ <td class="md" nowrap valign="top">void handle_restart </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -2998,40 +1641,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a27" doxytag="commands.h::handle_rules"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Frules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_rules" ref="handle_5Frules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_rules </td>
+ <td class="md" nowrap valign="top">void handle_rules </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3042,40 +1684,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a47" doxytag="commands.h::handle_server"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fserver_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_server" ref="handle_5Fserver_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_server </td>
+ <td class="md" nowrap valign="top">void handle_server </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3086,40 +1727,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a37" doxytag="commands.h::handle_squit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fsquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_squit" ref="handle_5Fsquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_squit </td>
+ <td class="md" nowrap valign="top">void handle_squit </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3130,40 +1770,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a35" doxytag="commands.h::handle_stats"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fstats_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_stats" ref="handle_5Fstats_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_stats </td>
+ <td class="md" nowrap valign="top">void handle_stats </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3174,40 +1813,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a6" doxytag="commands.h::handle_summon"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fsummon_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_summon" ref="handle_5Fsummon_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_summon </td>
+ <td class="md" nowrap valign="top">void handle_summon </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3218,164 +1856,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a71" doxytag="commands.h::handle_t"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Ftime_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_time" ref="handle_5Ftime_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_t </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a70" doxytag="commands.h::handle_T"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_T </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
- </tr>
-</table>
-<a name="a15" doxytag="commands.h::handle_time"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_time </td>
+ <td class="md" nowrap valign="top">void handle_time </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3386,40 +1899,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a10" doxytag="commands.h::handle_topic"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Ftopic_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_topic" ref="handle_5Ftopic_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_topic </td>
+ <td class="md" nowrap valign="top">void handle_topic </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3430,40 +1942,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a33" doxytag="commands.h::handle_trace"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Ftrace_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_trace" ref="handle_5Ftrace_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_trace </td>
+ <td class="md" nowrap valign="top">void handle_trace </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3474,40 +1985,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a49" doxytag="commands.h::handle_unloadmodule"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Funloadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_unloadmodule" ref="handle_5Funloadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_unloadmodule </td>
+ <td class="md" nowrap valign="top">void handle_unloadmodule </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3518,40 +2028,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a28" doxytag="commands.h::handle_user"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fuser_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_user" ref="handle_5Fuser_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_user </td>
+ <td class="md" nowrap valign="top">void handle_user </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3562,40 +2071,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a29" doxytag="commands.h::handle_userhost"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fuserhost_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_userhost" ref="handle_5Fuserhost_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_userhost </td>
+ <td class="md" nowrap valign="top">void handle_userhost </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3606,102 +2114,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a7" doxytag="commands.h::handle_users"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_users" ref="handle_5Fusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_users </td>
+ <td class="md" nowrap valign="top">void handle_users </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</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>
- </td>
- </tr>
-</table>
-<a name="a74" doxytag="commands.h::handle_V"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void handle_V </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</em></td>
- </tr>
- <tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3712,40 +2157,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a19" doxytag="commands.h::handle_wallops"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fwallops_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_wallops" ref="handle_5Fwallops_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_wallops </td>
+ <td class="md" nowrap valign="top">void handle_wallops </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3756,40 +2200,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a18" doxytag="commands.h::handle_who"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fwho_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_who" ref="handle_5Fwho_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_who </td>
+ <td class="md" nowrap valign="top">void handle_who </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3800,40 +2243,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a16" doxytag="commands.h::handle_whois"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fwhois_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_whois" ref="handle_5Fwhois_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_whois </td>
+ <td class="md" nowrap valign="top">void handle_whois </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3844,40 +2286,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a32" doxytag="commands.h::handle_whowas"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fwhowas_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_whowas" ref="handle_5Fwhowas_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_whowas </td>
+ <td class="md" nowrap valign="top">void handle_whowas </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3888,40 +2329,39 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a44" doxytag="commands.h::handle_zline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fzline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="commands.h::handle_zline" ref="handle_5Fzline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_zline </td>
+ <td class="md" nowrap valign="top">void handle_zline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3932,25 +2372,24 @@ Special functions for processing server to server traffic.
</td>
</tr>
</table>
-<a name="a75" doxytag="commands.h::is_uline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="is_5Fuline_28const_20char_20_2Aserver_29"></a><!-- doxytag: member="commands.h::is_uline" ref="is_5Fuline_28const_20char_20_2Aserver_29" args="(const char *server)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool is_uline </td>
+ <td class="md" nowrap valign="top">bool is_uline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>server</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -3962,86 +2401,11 @@ Functions for u:lined servers.
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00424">Server::IsUlined()</a>. </td>
- </tr>
-</table>
-<a name="a52" doxytag="commands.h::process_restricted_commands"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void process_restricted_commands </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">char&nbsp;</td>
- <td class="mdname" nowrap> <em>token</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>params</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>source</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>reply</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>ipaddr</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>int&nbsp;</td>
- <td class="mdname" nowrap> <em>port</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_sum</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>
- </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00442">Server::IsUlined()</a>. </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:41 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/commands_8h__dep__incl.gif b/docs/module-doc/commands_8h__dep__incl.gif
index 0c7886f3b..f3081d264 100644
--- a/docs/module-doc/commands_8h__dep__incl.gif
+++ b/docs/module-doc/commands_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/commands_8h__dep__incl.map b/docs/module-doc/commands_8h__dep__incl.map
new file mode 100644
index 000000000..4ed4b1367
--- /dev/null
+++ b/docs/module-doc/commands_8h__dep__incl.map
@@ -0,0 +1,2 @@
+base referer
+rect $modules_8cpp-source.html 154,7 252,33
diff --git a/docs/module-doc/commands_8h__dep__incl.md5 b/docs/module-doc/commands_8h__dep__incl.md5
new file mode 100644
index 000000000..f0e06b5f7
--- /dev/null
+++ b/docs/module-doc/commands_8h__dep__incl.md5
@@ -0,0 +1 @@
+cf68098e63b4748ba0865f2bc30af732 \ No newline at end of file
diff --git a/docs/module-doc/commands_8h__incl.gif b/docs/module-doc/commands_8h__incl.gif
index f0d3931d7..195c5a2af 100644
--- a/docs/module-doc/commands_8h__incl.gif
+++ b/docs/module-doc/commands_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/commands_8h__incl.map b/docs/module-doc/commands_8h__incl.map
new file mode 100644
index 000000000..c90c37759
--- /dev/null
+++ b/docs/module-doc/commands_8h__incl.map
@@ -0,0 +1,4 @@
+base referer
+rect $users_8h-source.html 159,260 223,287
+rect $channels_8h-source.html 283,210 368,236
+rect $connection_8h-source.html 276,362 375,388
diff --git a/docs/module-doc/commands_8h__incl.md5 b/docs/module-doc/commands_8h__incl.md5
new file mode 100644
index 000000000..451a89aa0
--- /dev/null
+++ b/docs/module-doc/commands_8h__incl.md5
@@ -0,0 +1 @@
+c2b443ef5e1ee3a3ee4ac49b793d39a5 \ No newline at end of file
diff --git a/docs/module-doc/connection_8h-source.html b/docs/module-doc/connection_8h-source.html
index 5cdf3e511..8570e44d5 100644
--- a/docs/module-doc/connection_8h-source.html
+++ b/docs/module-doc/connection_8h-source.html
@@ -1,186 +1,89 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: connection.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>connection.h</h1><a href="connection_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#include "inspircd_config.h"</span>
-00018 <span class="preprocessor">#include "<a class="code" href="base_8h.html">base.h</a>"</span>
-00019 <span class="preprocessor">#include &lt;string&gt;</span>
-00020 <span class="preprocessor">#include &lt;map&gt;</span>
-00021 <span class="preprocessor">#include &lt;sys/types.h&gt;</span>
-00022 <span class="preprocessor">#include &lt;sys/socket.h&gt;</span>
-00023 <span class="preprocessor">#include &lt;netdb.h&gt;</span>
-00024 <span class="preprocessor">#include &lt;netinet/in.h&gt;</span>
-00025 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
-00026 <span class="preprocessor">#include &lt;errno.h&gt;</span>
-00027 <span class="preprocessor">#include &lt;time.h&gt;</span>
-00028 <span class="preprocessor">#include &lt;vector&gt;</span>
-00029 <span class="preprocessor">#include &lt;deque&gt;</span>
-00030 <span class="preprocessor">#include &lt;sstream&gt;</span>
-00031
-00032 <span class="preprocessor">#ifndef __CONNECTION_H__</span>
-00033 <span class="preprocessor"></span><span class="preprocessor">#define __CONNECTION_H__</span>
-00034 <span class="preprocessor"></span>
-<a name="l00035"></a><a class="code" href="connection_8h.html#a0">00035</a> <span class="preprocessor">#define STATE_DISCONNECTED 0</span>
-<a name="l00036"></a><a class="code" href="connection_8h.html#a1">00036</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_CONNECTED 1</span>
-<a name="l00037"></a><a class="code" href="connection_8h.html#a2">00037</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_SYNC 2</span>
-<a name="l00038"></a><a class="code" href="connection_8h.html#a3">00038</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_NOAUTH_INBOUND 3</span>
-<a name="l00039"></a><a class="code" href="connection_8h.html#a4">00039</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_NOAUTH_OUTBOUND 4</span>
-<a name="l00040"></a><a class="code" href="connection_8h.html#a5">00040</a> <span class="preprocessor"></span><span class="preprocessor">#define STATE_SERVICES 5</span>
-00041 <span class="preprocessor"></span>
-00042 std::string <a class="code" href="connection_8h.html#a6">CreateSum</a>();
-00043
-<a name="l00056"></a><a class="code" href="classircd__connector.html">00056</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="classExtensible.html">Extensible</a>
-00057 {
-00058 <span class="keyword">private</span>:
-<a name="l00061"></a><a class="code" href="classircd__connector.html#r0">00061</a> sockaddr_in <a class="code" href="classircd__connector.html#r0">addr</a>;
-00062
-<a name="l00065"></a><a class="code" href="classircd__connector.html#r1">00065</a> <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#r1">fd</a>;
-00066
-<a name="l00069"></a><a class="code" href="classircd__connector.html#r2">00069</a> std::string <a class="code" href="classircd__connector.html#r2">servername</a>;
-00070
-<a name="l00073"></a><a class="code" href="classircd__connector.html#r3">00073</a> std::string <a class="code" href="classircd__connector.html#r3">description</a>;
-00074
-<a name="l00078"></a><a class="code" href="classircd__connector.html#r4">00078</a> <span class="keywordtype">char</span> <a class="code" href="classircd__connector.html#r4">state</a>;
-00079
-00082 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#d0">SetHostAddress</a>(<span class="keywordtype">char</span>* host, <span class="keywordtype">int</span> port);
-00083
-<a name="l00086"></a><a class="code" href="classircd__connector.html#r5">00086</a> std::string <a class="code" href="classircd__connector.html#r5">version</a>;
-00087
-<a name="l00090"></a><a class="code" href="classircd__connector.html#r6">00090</a> std::string <a class="code" href="classircd__connector.html#r6">sendq</a>;
-00091
-<a name="l00094"></a><a class="code" href="classircd__connector.html#r7">00094</a> std::string <a class="code" href="classircd__connector.html#r7">WriteError</a>;
-00095
-<a name="l00098"></a><a class="code" href="classircd__connector.html#r8">00098</a> time_t <a class="code" href="classircd__connector.html#r8">nextping</a>;
-00099
-<a name="l00102"></a><a class="code" href="classircd__connector.html#r9">00102</a> <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#r9">replied</a>;
-00103
-00104 <span class="keyword">public</span>:
-00105
-<a name="l00110"></a><a class="code" href="classircd__connector.html#o0">00110</a> std::string <a class="code" href="classircd__connector.html#o0">ircdbuffer</a>;
-00111
-00112
-<a name="l00117"></a><a class="code" href="classircd__connector.html#o1">00117</a> <span class="keywordtype">char</span> <a class="code" href="classircd__connector.html#o1">host</a>[MAXBUF];
-00118
-<a name="l00123"></a><a class="code" href="classircd__connector.html#o2">00123</a> <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#o2">port</a>;
-00124
-<a name="l00129"></a><a class="code" href="classircd__connector.html#o3">00129</a> std::vector&lt;std::string&gt; <a class="code" href="classircd__connector.html#o3">routes</a>;
-00130
-00133 <a class="code" href="classircd__connector.html#a0">ircd_connector</a>();
-00134
-00137 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a1">MakeOutboundConnection</a>(<span class="keywordtype">char</span>* newhost, <span class="keywordtype">int</span> newport);
-00138
-00141 std::string <a class="code" href="classircd__connector.html#a2">GetServerName</a>();
-00142
-00146 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a3">SetServerName</a>(std::string serv);
-00147
-00151 <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#a4">GetDescriptor</a>();
-00152
-00156 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a5">SetDescriptor</a>(<span class="keywordtype">int</span> fd);
-00157
-00161 <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#a6">GetState</a>();
-00162
-00166 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a7">SetState</a>(<span class="keywordtype">int</span> state);
-00167
-00171 <span class="keywordtype">char</span>* <a class="code" href="classircd__connector.html#a8">GetServerIP</a>();
-00172
-00176 std::string <a class="code" href="classircd__connector.html#a9">GetDescription</a>();
-00177
-00181 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a10">SetDescription</a>(std::string desc);
-00182
-00190 <span class="keywordtype">int</span> <a class="code" href="classircd__connector.html#a11">GetServerPort</a>();
-00191
-00195 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a12">SetServerPort</a>(<span class="keywordtype">int</span> p);
-00196
-00202 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a13">SetHostAndPort</a>(<span class="keywordtype">char</span>* newhost, <span class="keywordtype">int</span> newport);
-00203
-00207 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a14">CloseConnection</a>();
-00208
-00217 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a15">AddBuffer</a>(std::string a);
-00218
-00225 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a16">BufferIsComplete</a>();
-00226
-00229 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a17">ClearBuffer</a>();
-00230
-00237 std::string <a class="code" href="classircd__connector.html#a18">GetBuffer</a>();
-00238
-00242 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a19">SetVersionString</a>(std::string newversion);
-00243
-00249 std::string <a class="code" href="classircd__connector.html#a20">GetVersionString</a>();
-00250
-00258 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a21">AddWriteBuf</a>(std::string data);
-00259
-00265 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a22">FlushWriteBuf</a>();
-00266
-00270 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a23">SetWriteError</a>(std::string error);
-00271
-00275 std::string <a class="code" href="classircd__connector.html#a24">GetWriteError</a>();
-00276
-00280 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a25">HasBufferedOutput</a>();
-00281
-00286 <span class="keywordtype">bool</span> <a class="code" href="classircd__connector.html#a26">CheckPing</a>();
-00287
-00290 <span class="keywordtype">void</span> <a class="code" href="classircd__connector.html#a27">ResetPing</a>();
-00291 };
-00292
-00293
-<a name="l00296"></a><a class="code" href="classconnection.html">00296</a> <span class="keyword">class </span><a class="code" href="classconnection.html">connection</a> : <span class="keyword">public</span> <a class="code" href="classExtensible.html">Extensible</a>
-00297 {
-00298 <span class="keyword">public</span>:
-<a name="l00301"></a><a class="code" href="classconnection.html#o0">00301</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#o0">fd</a>;
-00302
-<a name="l00305"></a><a class="code" href="classconnection.html#o1">00305</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#o1">host</a>[160];
-00306
-<a name="l00309"></a><a class="code" href="classconnection.html#o2">00309</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#o2">ip</a>[16];
-00310
-<a name="l00313"></a><a class="code" href="classconnection.html#o3">00313</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#o3">bytes_in</a>;
-00314
-<a name="l00317"></a><a class="code" href="classconnection.html#o4">00317</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#o4">bytes_out</a>;
-00318
-<a name="l00321"></a><a class="code" href="classconnection.html#o5">00321</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#o5">cmds_in</a>;
-00322
-<a name="l00325"></a><a class="code" href="classconnection.html#o6">00325</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#o6">cmds_out</a>;
-00326
-<a name="l00329"></a><a class="code" href="classconnection.html#o7">00329</a> <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#o7">haspassed</a>;
-00330
-<a name="l00335"></a><a class="code" href="classconnection.html#o8">00335</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#o8">port</a>;
-00336
-<a name="l00339"></a><a class="code" href="classconnection.html#o9">00339</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#o9">registered</a>;
-00340
-<a name="l00343"></a><a class="code" href="classconnection.html#o10">00343</a> time_t <a class="code" href="classconnection.html#o10">lastping</a>;
-00344
-<a name="l00347"></a><a class="code" href="classconnection.html#o11">00347</a> time_t <a class="code" href="classconnection.html#o11">signon</a>;
-00348
-<a name="l00351"></a><a class="code" href="classconnection.html#o12">00351</a> time_t <a class="code" href="classconnection.html#o12">idle_lastmsg</a>;
-00352
-<a name="l00355"></a><a class="code" href="classconnection.html#o13">00355</a> time_t <a class="code" href="classconnection.html#o13">nping</a>;
-00356
-00359 <a class="code" href="classconnection.html#a0">connection</a>();
-00360 };
-00361
-00362
-00363 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:19 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>connection.h</h1><a href="connection_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include "<a class="code" href="base_8h.html">base.h</a>"</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;map&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;sys/types.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;sys/socket.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;netdb.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;netinet/in.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;errno.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;time.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;deque&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00031"></a>00031
+<a name="l00032"></a>00032 <span class="preprocessor">#ifndef __CONNECTION_H__</span>
+<a name="l00033"></a>00033 <span class="preprocessor"></span><span class="preprocessor">#define __CONNECTION_H__</span>
+<a name="l00034"></a>00034 <span class="preprocessor"></span>
+<a name="l00037"></a><a class="code" href="classconnection.html">00037</a> <span class="keyword">class </span><a class="code" href="classconnection.html">connection</a> : <span class="keyword">public</span> <a class="code" href="classExtensible.html">Extensible</a>
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 <span class="keyword">public</span>:
+<a name="l00042"></a><a class="code" href="classconnection.html#fd">00042</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#fd">fd</a>;
+<a name="l00043"></a>00043
+<a name="l00046"></a><a class="code" href="classconnection.html#host_5B_31_36_30_5D">00046</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>[160];
+<a name="l00047"></a>00047
+<a name="l00050"></a><a class="code" href="classconnection.html#ip_5B_31_36_5D">00050</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#ip_5B_31_36_5D">ip</a>[16];
+<a name="l00051"></a>00051
+<a name="l00054"></a><a class="code" href="classconnection.html#bytes_5Fin">00054</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#bytes_5Fin">bytes_in</a>;
+<a name="l00055"></a>00055
+<a name="l00058"></a><a class="code" href="classconnection.html#bytes_5Fout">00058</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#bytes_5Fout">bytes_out</a>;
+<a name="l00059"></a>00059
+<a name="l00062"></a><a class="code" href="classconnection.html#cmds_5Fin">00062</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#cmds_5Fin">cmds_in</a>;
+<a name="l00063"></a>00063
+<a name="l00066"></a><a class="code" href="classconnection.html#cmds_5Fout">00066</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#cmds_5Fout">cmds_out</a>;
+<a name="l00067"></a>00067
+<a name="l00070"></a><a class="code" href="classconnection.html#haspassed">00070</a> <span class="keywordtype">bool</span> <a class="code" href="classconnection.html#haspassed">haspassed</a>;
+<a name="l00071"></a>00071
+<a name="l00076"></a><a class="code" href="classconnection.html#port">00076</a> <span class="keywordtype">int</span> <a class="code" href="classconnection.html#port">port</a>;
+<a name="l00077"></a>00077
+<a name="l00080"></a><a class="code" href="classconnection.html#registered">00080</a> <span class="keywordtype">char</span> <a class="code" href="classconnection.html#registered">registered</a>;
+<a name="l00081"></a>00081
+<a name="l00084"></a><a class="code" href="classconnection.html#lastping">00084</a> time_t <a class="code" href="classconnection.html#lastping">lastping</a>;
+<a name="l00085"></a>00085
+<a name="l00088"></a><a class="code" href="classconnection.html#signon">00088</a> time_t <a class="code" href="classconnection.html#signon">signon</a>;
+<a name="l00089"></a>00089
+<a name="l00092"></a><a class="code" href="classconnection.html#idle_5Flastmsg">00092</a> time_t <a class="code" href="classconnection.html#idle_5Flastmsg">idle_lastmsg</a>;
+<a name="l00093"></a>00093
+<a name="l00096"></a><a class="code" href="classconnection.html#nping">00096</a> time_t <a class="code" href="classconnection.html#nping">nping</a>;
+<a name="l00097"></a>00097
+<a name="l00100"></a><a class="code" href="classconnection.html#connection_28_29">00100</a> <a class="code" href="classconnection.html#connection_28_29">connection</a>()
+<a name="l00101"></a>00101 {
+<a name="l00102"></a>00102 this-&gt;<a class="code" href="classconnection.html#fd">fd</a> = -1;
+<a name="l00103"></a>00103 }
+<a name="l00104"></a>00104 };
+<a name="l00105"></a>00105
+<a name="l00106"></a>00106
+<a name="l00107"></a>00107 <span class="preprocessor">#endif</span>
+<a name="l00108"></a>00108 <span class="preprocessor"></span>
+<a name="l00109"></a>00109
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/connection_8h.html b/docs/module-doc/connection_8h.html
index e1be7b23c..302c0902a 100644
--- a/docs/module-doc/connection_8h.html
+++ b/docs/module-doc/connection_8h.html
@@ -1,12 +1,14 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: connection.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>connection.h File Reference</h1><code>#include "inspircd_config.h"</code><br>
-<code>#include "<a class="el" href="base_8h-source.html">base.h</a>"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>connection.h File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="base_8h-source.html">base.h</a>&quot;</code><br>
<code>#include &lt;string&gt;</code><br>
<code>#include &lt;map&gt;</code><br>
<code>#include &lt;sys/types.h&gt;</code><br>
@@ -21,231 +23,34 @@
<code>#include &lt;sstream&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>
+Include dependency graph for connection.h:<p><center><img src="connection_8h__incl.gif" border="0" usemap="#connection.h_map" alt=""></center>
<map name="connection.h_map">
-<area href="base_8h.html" shape="rect" coords="195,109,257,135" alt="">
+<area href="base_8h-source.html" shape="rect" coords="171,108,232,135" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="connection_8h__dep__incl.gif" border="0" usemap="#connection.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="connection_8h__dep__incl.gif" border="0" usemap="#connection.hdep_map" alt=""></center>
<map name="connection.hdep_map">
-<area href="channels_8cpp.html" shape="rect" coords="14,8,113,34" alt="">
-<area href="users_8h.html" shape="rect" coords="58,82,122,109" alt="">
-<area href="servers_8h.html" shape="rect" coords="146,82,224,109" alt="">
-<area href="modules_8cpp.html" shape="rect" coords="137,8,236,34" alt="">
-<area href="servers_8cpp.html" shape="rect" coords="264,8,354,34" alt="">
+<area href="users_8cpp-source.html" shape="rect" coords="278,7,358,33" alt="">
+<area href="users_8h-source.html" shape="rect" coords="155,133,219,160" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="416,133,515,160" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="416,209,515,236" alt="">
+<area href="commands_8h-source.html" shape="rect" coords="268,311,367,337" alt="">
+<area href="message_8h-source.html" shape="rect" coords="275,108,360,135" alt="">
+<area href="mode_8h-source.html" shape="rect" coords="284,159,351,185" alt="">
+<area href="xline_8h-source.html" shape="rect" coords="287,209,348,236" alt="">
</map>
<p>
-<a href="connection_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="connection_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html">connection</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classconnection.html">connection</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Please note: classes serverrec and userrec both inherit from class connection. </em> <a href="classconnection.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html">ircd_connector</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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><br><br></td></tr>
-<tr><td colspan=2><br><h2>Defines</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="connection_8h.html#a0">STATE_DISCONNECTED</a>&nbsp;&nbsp;&nbsp;0</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="connection_8h.html#a1">STATE_CONNECTED</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="connection_8h.html#a2">STATE_SYNC</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="connection_8h.html#a3">STATE_NOAUTH_INBOUND</a>&nbsp;&nbsp;&nbsp;3</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="connection_8h.html#a4">STATE_NOAUTH_OUTBOUND</a>&nbsp;&nbsp;&nbsp;4</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="connection_8h.html#a5">STATE_SERVICES</a>&nbsp;&nbsp;&nbsp;5</td></tr>
-
-<tr><td colspan=2><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="connection_8h.html#a6">CreateSum</a> ()</td></tr>
-
-</table>
-<hr><h2>Define Documentation</h2>
-<a name="a1" doxytag="connection.h::STATE_CONNECTED"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> #define STATE_CONNECTED&nbsp;&nbsp;&nbsp;1
- </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#l00036">36</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
- </tr>
-</table>
-<a name="a0" doxytag="connection.h::STATE_DISCONNECTED"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> #define STATE_DISCONNECTED&nbsp;&nbsp;&nbsp;0
- </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#l00035">35</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#l00142">serverrec::BeginLink()</a>, <a class="el" href="servers_8cpp-source.html#l00274">serverrec::FlushWriteBuffers()</a>, <a class="el" href="servers_8cpp-source.html#l00256">IsRoutable()</a>, <a class="el" href="servers_8cpp-source.html#l00182">serverrec::MeshCookie()</a>, <a class="el" href="servers_8cpp-source.html#l00445">serverrec::RecvPacket()</a>, and <a class="el" href="servers_8cpp-source.html#l00350">serverrec::SendPacket()</a>. </td>
- </tr>
-</table>
-<a name="a3" doxytag="connection.h::STATE_NOAUTH_INBOUND"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> #define STATE_NOAUTH_INBOUND&nbsp;&nbsp;&nbsp;3
- </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#l00038">38</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#l00212">serverrec::AddIncoming()</a>, and <a class="el" href="servers_8cpp-source.html#l00274">serverrec::FlushWriteBuffers()</a>. </td>
- </tr>
-</table>
-<a name="a4" doxytag="connection.h::STATE_NOAUTH_OUTBOUND"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> #define STATE_NOAUTH_OUTBOUND&nbsp;&nbsp;&nbsp;4
- </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#l00039">39</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#l00142">serverrec::BeginLink()</a>, <a class="el" href="servers_8cpp-source.html#l00274">serverrec::FlushWriteBuffers()</a>, and <a class="el" href="servers_8cpp-source.html#l00182">serverrec::MeshCookie()</a>. </td>
- </tr>
-</table>
-<a name="a5" doxytag="connection.h::STATE_SERVICES"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> #define STATE_SERVICES&nbsp;&nbsp;&nbsp;5
- </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#l00040">40</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 class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <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#l00037">37</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>. </td>
- </tr>
-</table>
-<hr><h2>Function Documentation</h2>
-<a name="a6" doxytag="connection.h::CreateSum"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> std::string CreateSum </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="mdname1" valign="top" nowrap> </td>
- <td class="md" valign="top">&nbsp;)&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>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Please note: classes serverrec and userrec both inherit from class connection. <a href="classconnection.html#_details">More...</a><br></td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:44 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/connection_8h__dep__incl.gif b/docs/module-doc/connection_8h__dep__incl.gif
index 2df9e0a05..b424df146 100644
--- a/docs/module-doc/connection_8h__dep__incl.gif
+++ b/docs/module-doc/connection_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/connection_8h__dep__incl.map b/docs/module-doc/connection_8h__dep__incl.map
new file mode 100644
index 000000000..03b0bcf03
--- /dev/null
+++ b/docs/module-doc/connection_8h__dep__incl.map
@@ -0,0 +1,9 @@
+base referer
+rect $users_8cpp-source.html 278,7 358,33
+rect $users_8h-source.html 155,133 219,160
+rect $channels_8cpp-source.html 416,133 515,160
+rect $modules_8cpp-source.html 416,209 515,236
+rect $commands_8h-source.html 268,311 367,337
+rect $message_8h-source.html 275,108 360,135
+rect $mode_8h-source.html 284,159 351,185
+rect $xline_8h-source.html 287,209 348,236
diff --git a/docs/module-doc/connection_8h__dep__incl.md5 b/docs/module-doc/connection_8h__dep__incl.md5
new file mode 100644
index 000000000..c1c7e633a
--- /dev/null
+++ b/docs/module-doc/connection_8h__dep__incl.md5
@@ -0,0 +1 @@
+c7cecb14291ff4131ebac40acf61d502 \ No newline at end of file
diff --git a/docs/module-doc/connection_8h__incl.gif b/docs/module-doc/connection_8h__incl.gif
index a9510a042..61336dc8b 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/connection_8h__incl.map b/docs/module-doc/connection_8h__incl.map
new file mode 100644
index 000000000..18d7625a2
--- /dev/null
+++ b/docs/module-doc/connection_8h__incl.map
@@ -0,0 +1,2 @@
+base referer
+rect $base_8h-source.html 171,108 232,135
diff --git a/docs/module-doc/connection_8h__incl.md5 b/docs/module-doc/connection_8h__incl.md5
new file mode 100644
index 000000000..be4f35580
--- /dev/null
+++ b/docs/module-doc/connection_8h__incl.md5
@@ -0,0 +1 @@
+7566ac0f626ba6a537eabdae6c98a2d9 \ No newline at end of file
diff --git a/docs/module-doc/ctables_8h-source.html b/docs/module-doc/ctables_8h-source.html
index bee8c71b5..0241f3c68 100644
--- a/docs/module-doc/ctables_8h-source.html
+++ b/docs/module-doc/ctables_8h-source.html
@@ -1,50 +1,51 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: ctables.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ctables.h</h1><a href="ctables_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#ifndef __CTABLES_H__</span>
-00018 <span class="preprocessor"></span><span class="preprocessor">#define __CTABLES_H__</span>
-00019 <span class="preprocessor"></span>
-00020 <span class="preprocessor">#include "inspircd_config.h"</span>
-00021 <span class="preprocessor">#include "inspircd.h"</span>
-00022 <span class="preprocessor">#include "<a class="code" href="base_8h.html">base.h</a>"</span>
-00023
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>ctables.h</h1><a href="ctables_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef __CTABLES_H__</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __CTABLES_H__</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include "inspircd.h"</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "<a class="code" href="base_8h.html">base.h</a>"</span>
+<a name="l00023"></a>00023
<a name="l00026"></a><a class="code" href="classcommand__t.html">00026</a> <span class="keyword">class </span><a class="code" href="classcommand__t.html">command_t</a> : <span class="keyword">public</span> <a class="code" href="classExtensible.html">Extensible</a>
-00027 {
-00028 <span class="keyword">public</span>:
-<a name="l00031"></a><a class="code" href="classcommand__t.html#o0">00031</a> <span class="keywordtype">char</span> <a class="code" href="classcommand__t.html#o0">command</a>[MAXBUF];
-<a name="l00034"></a><a class="code" href="classcommand__t.html#o1">00034</a> handlerfunc *<a class="code" href="classcommand__t.html#o1">handler_function</a>;
-<a name="l00037"></a><a class="code" href="classcommand__t.html#o2">00037</a> <span class="keywordtype">char</span> <a class="code" href="classcommand__t.html#o2">flags_needed</a>;
-<a name="l00040"></a><a class="code" href="classcommand__t.html#o3">00040</a> <span class="keywordtype">int</span> <a class="code" href="classcommand__t.html#o3">min_params</a>;
-<a name="l00043"></a><a class="code" href="classcommand__t.html#o4">00043</a> <span class="keywordtype">long</span> <a class="code" href="classcommand__t.html#o4">use_count</a>;
-<a name="l00046"></a><a class="code" href="classcommand__t.html#o5">00046</a> <span class="keywordtype">long</span> <a class="code" href="classcommand__t.html#o5">total_bytes</a>;
-<a name="l00049"></a><a class="code" href="classcommand__t.html#o6">00049</a> <span class="keywordtype">char</span> <a class="code" href="classcommand__t.html#o6">source</a>[MAXBUF];
-00050 };
-00051
-00052 <span class="preprocessor">#endif</span>
-00053 <span class="preprocessor"></span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:19 2005 for InspIRCd by
+<a name="l00027"></a>00027 {
+<a name="l00028"></a>00028 <span class="keyword">public</span>:
+<a name="l00031"></a><a class="code" href="classcommand__t.html#command_5BMAXBUF_5D">00031</a> <span class="keywordtype">char</span> <a class="code" href="classcommand__t.html#command_5BMAXBUF_5D">command</a>[MAXBUF];
+<a name="l00034"></a><a class="code" href="classcommand__t.html#handler_5Ffunction">00034</a> handlerfunc *<a class="code" href="classcommand__t.html#handler_5Ffunction">handler_function</a>;
+<a name="l00037"></a><a class="code" href="classcommand__t.html#flags_5Fneeded">00037</a> <span class="keywordtype">char</span> <a class="code" href="classcommand__t.html#flags_5Fneeded">flags_needed</a>;
+<a name="l00040"></a><a class="code" href="classcommand__t.html#min_5Fparams">00040</a> <span class="keywordtype">int</span> <a class="code" href="classcommand__t.html#min_5Fparams">min_params</a>;
+<a name="l00043"></a><a class="code" href="classcommand__t.html#use_5Fcount">00043</a> <span class="keywordtype">long</span> <a class="code" href="classcommand__t.html#use_5Fcount">use_count</a>;
+<a name="l00046"></a><a class="code" href="classcommand__t.html#total_5Fbytes">00046</a> <span class="keywordtype">long</span> <a class="code" href="classcommand__t.html#total_5Fbytes">total_bytes</a>;
+<a name="l00049"></a><a class="code" href="classcommand__t.html#source_5BMAXBUF_5D">00049</a> <span class="keywordtype">char</span> <a class="code" href="classcommand__t.html#source_5BMAXBUF_5D">source</a>[MAXBUF];
+<a name="l00050"></a>00050 };
+<a name="l00051"></a>00051
+<a name="l00052"></a>00052 <span class="preprocessor">#endif</span>
+<a name="l00053"></a>00053 <span class="preprocessor"></span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/ctables_8h.html b/docs/module-doc/ctables_8h.html
index 595e4ab7b..674d3b7f9 100644
--- a/docs/module-doc/ctables_8h.html
+++ b/docs/module-doc/ctables_8h.html
@@ -1,39 +1,40 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: ctables.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>ctables.h File Reference</h1><code>#include "inspircd_config.h"</code><br>
-<code>#include "inspircd.h"</code><br>
-<code>#include "<a class="el" href="base_8h-source.html">base.h</a>"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>ctables.h File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
+<code>#include &quot;inspircd.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="base_8h-source.html">base.h</a>&quot;</code><br>
<p>
-Include dependency graph for ctables.h:<p><center><img src="ctables_8h__incl.gif" border="0" usemap="#ctables.h_map" alt="Include dependency graph"></center>
+Include dependency graph for ctables.h:<p><center><img src="ctables_8h__incl.gif" border="0" usemap="#ctables.h_map" alt=""></center>
<map name="ctables.h_map">
-<area href="base_8h.html" shape="rect" coords="153,82,214,109" alt="">
+<area href="base_8h-source.html" shape="rect" coords="141,108,203,135" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="ctables_8h__dep__incl.gif" border="0" usemap="#ctables.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="ctables_8h__dep__incl.gif" border="0" usemap="#ctables.hdep_map" alt=""></center>
<map name="ctables.hdep_map">
-<area href="channels_8cpp.html" shape="rect" coords="7,8,106,34" alt="">
-<area href="modules_8h.html" shape="rect" coords="77,82,159,109" alt="">
-<area href="modules_8cpp.html" shape="rect" coords="138,8,237,34" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="267,32,365,59" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="267,95,365,121" alt="">
+<area href="modules_8h-source.html" shape="rect" coords="133,57,216,84" alt="">
</map>
<p>
-<a href="ctables_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="ctables_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classcommand__t.html">command_t</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcommand__t.html">command_t</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A structure that defines a command. </em> <a href="classcommand__t.html#_details">More...</a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A structure that defines a command. <a href="classcommand__t.html#_details">More...</a><br></td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:46 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/ctables_8h__dep__incl.gif b/docs/module-doc/ctables_8h__dep__incl.gif
index c422b46a7..f94b83651 100644
--- a/docs/module-doc/ctables_8h__dep__incl.gif
+++ b/docs/module-doc/ctables_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/ctables_8h__dep__incl.map b/docs/module-doc/ctables_8h__dep__incl.map
new file mode 100644
index 000000000..ed00ae9d1
--- /dev/null
+++ b/docs/module-doc/ctables_8h__dep__incl.map
@@ -0,0 +1,4 @@
+base referer
+rect $channels_8cpp-source.html 267,32 365,59
+rect $modules_8cpp-source.html 267,95 365,121
+rect $modules_8h-source.html 133,57 216,84
diff --git a/docs/module-doc/ctables_8h__dep__incl.md5 b/docs/module-doc/ctables_8h__dep__incl.md5
new file mode 100644
index 000000000..7b340a242
--- /dev/null
+++ b/docs/module-doc/ctables_8h__dep__incl.md5
@@ -0,0 +1 @@
+80b5bb648ec2e7f34f52355a033ea5d8 \ No newline at end of file
diff --git a/docs/module-doc/ctables_8h__incl.gif b/docs/module-doc/ctables_8h__incl.gif
index 071f19deb..1d6aea743 100644
--- a/docs/module-doc/ctables_8h__incl.gif
+++ b/docs/module-doc/ctables_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/ctables_8h__incl.map b/docs/module-doc/ctables_8h__incl.map
new file mode 100644
index 000000000..bfaa35cac
--- /dev/null
+++ b/docs/module-doc/ctables_8h__incl.map
@@ -0,0 +1,2 @@
+base referer
+rect $base_8h-source.html 141,108 203,135
diff --git a/docs/module-doc/ctables_8h__incl.md5 b/docs/module-doc/ctables_8h__incl.md5
new file mode 100644
index 000000000..21bcd8b04
--- /dev/null
+++ b/docs/module-doc/ctables_8h__incl.md5
@@ -0,0 +1 @@
+ce4287d2f1f82e62ab357a4a90b21185 \ No newline at end of file
diff --git a/docs/module-doc/dir_000000.html b/docs/module-doc/dir_000000.html
new file mode 100644
index 000000000..433d50e93
--- /dev/null
+++ b/docs/module-doc/dir_000000.html
@@ -0,0 +1,27 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: /home/ Directory Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a></div>
+<h1>home Directory Reference</h1>
+<p>
+<p><center><img src="dir_000000_dep.gif" border="0" usemap="#dir_000000_dep_map" alt="/home/"></center>
+<map name="dir_000000_dep_map">
+<area href="dir_000001.html" shape="rect" coords="28,39,100,87" alt="">
+<area href="dir_000000.html" shape="rect" coords="17,17,207,97" alt="">
+</map>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Directories</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">directory &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_000001.html">brain</a></td></tr>
+
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/dir_000000_dep.gif b/docs/module-doc/dir_000000_dep.gif
new file mode 100644
index 000000000..f2c3bcd44
--- /dev/null
+++ b/docs/module-doc/dir_000000_dep.gif
Binary files differ
diff --git a/docs/module-doc/dir_000000_dep.map b/docs/module-doc/dir_000000_dep.map
new file mode 100644
index 000000000..a77bf1144
--- /dev/null
+++ b/docs/module-doc/dir_000000_dep.map
@@ -0,0 +1,3 @@
+base referer
+rect dir_000001.html 28,39 100,87
+rect dir_000000.html 17,17 207,97
diff --git a/docs/module-doc/dir_000001.html b/docs/module-doc/dir_000001.html
new file mode 100644
index 000000000..e50eadacb
--- /dev/null
+++ b/docs/module-doc/dir_000001.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: /home/brain/ Directory Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a></div>
+<h1>brain Directory Reference</h1>
+<p>
+<p><center><img src="dir_000001_dep.gif" border="0" usemap="#dir_000001_dep_map" alt="/home/brain/"></center>
+<map name="dir_000001_dep_map">
+<area href="dir_000002.html" shape="rect" coords="39,76,132,124" alt="">
+<area href="dir_000001.html" shape="rect" coords="28,55,239,135" alt="">
+<area href="dir_000000.html" shape="rect" coords="18,17,250,145" alt="">
+</map>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Directories</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">directory &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_000002.html">inspircd-cvs</a></td></tr>
+
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/dir_000001_dep.gif b/docs/module-doc/dir_000001_dep.gif
new file mode 100644
index 000000000..a2748fee9
--- /dev/null
+++ b/docs/module-doc/dir_000001_dep.gif
Binary files differ
diff --git a/docs/module-doc/dir_000001_dep.map b/docs/module-doc/dir_000001_dep.map
new file mode 100644
index 000000000..88e9d2230
--- /dev/null
+++ b/docs/module-doc/dir_000001_dep.map
@@ -0,0 +1,4 @@
+base referer
+rect dir_000002.html 39,76 132,124
+rect dir_000001.html 28,55 239,135
+rect dir_000000.html 18,17 250,145
diff --git a/docs/module-doc/dir_000002.html b/docs/module-doc/dir_000002.html
new file mode 100644
index 000000000..09debb034
--- /dev/null
+++ b/docs/module-doc/dir_000002.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: /home/brain/inspircd-cvs/ Directory Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a></div>
+<h1>inspircd-cvs Directory Reference</h1>
+<p>
+<p><center><img src="dir_000002_dep.gif" border="0" usemap="#dir_000002_dep_map" alt="/home/brain/inspircd-cvs/"></center>
+<map name="dir_000002_dep_map">
+<area href="dir_000003.html" shape="rect" coords="39,76,111,124" alt="">
+<area href="dir_000002.html" shape="rect" coords="28,55,239,135" alt="">
+<area href="dir_000001.html" shape="rect" coords="18,17,250,145" alt="">
+</map>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Directories</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">directory &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_000003.html">inspircd</a></td></tr>
+
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/dir_000002_dep.gif b/docs/module-doc/dir_000002_dep.gif
new file mode 100644
index 000000000..fb9a6f64a
--- /dev/null
+++ b/docs/module-doc/dir_000002_dep.gif
Binary files differ
diff --git a/docs/module-doc/dir_000002_dep.map b/docs/module-doc/dir_000002_dep.map
new file mode 100644
index 000000000..43c7f8647
--- /dev/null
+++ b/docs/module-doc/dir_000002_dep.map
@@ -0,0 +1,4 @@
+base referer
+rect dir_000003.html 39,76 111,124
+rect dir_000002.html 28,55 239,135
+rect dir_000001.html 18,17 250,145
diff --git a/docs/module-doc/dir_000003.html b/docs/module-doc/dir_000003.html
new file mode 100644
index 000000000..caf075056
--- /dev/null
+++ b/docs/module-doc/dir_000003.html
@@ -0,0 +1,33 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: /home/brain/inspircd-cvs/inspircd/ Directory Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a></div>
+<h1>inspircd Directory Reference</h1>
+<p>
+<p><center><img src="dir_000003_dep.gif" border="0" usemap="#dir_000003_dep_map" alt="/home/brain/inspircd-cvs/inspircd/"></center>
+<map name="dir_000003_dep_map">
+<area href="dir_000004.html" shape="rect" coords="39,172,111,220" alt="">
+<area href="dir_000005.html" shape="rect" coords="39,76,111,124" alt="">
+<area href="dir_000005_000004.html" shape="rect" coords="75,147,90,160" alt="">
+<area href="dir_000005_000004.html" shape="rect" coords="71,168,79,176" alt="">
+<area href="dir_000003.html" shape="rect" coords="28,55,217,231" alt="">
+<area href="dir_000002.html" shape="rect" coords="17,17,228,241" alt="">
+</map>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Directories</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">directory &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_000004.html">include</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">directory &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_000005.html">src</a></td></tr>
+
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/dir_000003_dep.gif b/docs/module-doc/dir_000003_dep.gif
new file mode 100644
index 000000000..970c00d1e
--- /dev/null
+++ b/docs/module-doc/dir_000003_dep.gif
Binary files differ
diff --git a/docs/module-doc/dir_000003_dep.map b/docs/module-doc/dir_000003_dep.map
new file mode 100644
index 000000000..da683e754
--- /dev/null
+++ b/docs/module-doc/dir_000003_dep.map
@@ -0,0 +1,7 @@
+base referer
+rect dir_000004.html 39,172 111,220
+rect dir_000005.html 39,76 111,124
+rect dir_000005_000004.html 75,147 90,160
+rect dir_000005_000004.html 71,168 79,176
+rect dir_000003.html 28,55 217,231
+rect dir_000002.html 17,17 228,241
diff --git a/docs/module-doc/dir_000004.html b/docs/module-doc/dir_000004.html
new file mode 100644
index 000000000..5a3041753
--- /dev/null
+++ b/docs/module-doc/dir_000004.html
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: /home/brain/inspircd-cvs/inspircd/include/ Directory Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>include Directory Reference</h1>
+<p>
+<p><center><img src="dir_000004_dep.gif" border="0" usemap="#dir_000004_dep_map" alt="/home/brain/inspircd-cvs/inspircd/include/"></center>
+<map name="dir_000004_dep_map">
+<area href="dir_000004.html" shape="rect" coords="28,55,100,103" alt="">
+<area href="dir_000003.html" shape="rect" coords="17,17,111,113" alt="">
+</map>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Files</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="base_8h.html">base.h</a> <a href="base_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8h.html">channels.h</a> <a href="channels_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="commands_8h.html">commands.h</a> <a href="commands_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="connection_8h.html">connection.h</a> <a href="connection_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="ctables_8h.html">ctables.h</a> <a href="ctables_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dns_8h.html">dns.h</a> <a href="dns_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="hashcomp_8h.html">hashcomp.h</a> <a href="hashcomp_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html">message.h</a> <a href="message_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html">mode.h</a> <a href="mode_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html">modules.h</a> <a href="modules_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8h.html">socket.h</a> <a href="socket_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html">users.h</a> <a href="users_8h-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html">xline.h</a> <a href="xline_8h-source.html">[code]</a></td></tr>
+
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:26 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/dir_000004_dep.gif b/docs/module-doc/dir_000004_dep.gif
new file mode 100644
index 000000000..069d80062
--- /dev/null
+++ b/docs/module-doc/dir_000004_dep.gif
Binary files differ
diff --git a/docs/module-doc/dir_000004_dep.map b/docs/module-doc/dir_000004_dep.map
new file mode 100644
index 000000000..308579c47
--- /dev/null
+++ b/docs/module-doc/dir_000004_dep.map
@@ -0,0 +1,3 @@
+base referer
+rect dir_000004.html 28,55 100,103
+rect dir_000003.html 17,17 111,113
diff --git a/docs/module-doc/dir_000005.html b/docs/module-doc/dir_000005.html
new file mode 100644
index 000000000..24d94f27e
--- /dev/null
+++ b/docs/module-doc/dir_000005.html
@@ -0,0 +1,36 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: /home/brain/inspircd-cvs/inspircd/src/ Directory Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>src Directory Reference</h1>
+<p>
+<p><center><img src="dir_000005_dep.gif" border="0" usemap="#dir_000005_dep_map" alt="/home/brain/inspircd-cvs/inspircd/src/"></center>
+<map name="dir_000005_dep_map">
+<area href="dir_000005.html" shape="rect" coords="28,55,100,103" alt="">
+<area href="dir_000004.html" shape="rect" coords="28,151,100,199" alt="">
+<area href="dir_000005_000004.html" shape="rect" coords="65,125,79,139" alt="">
+<area href="dir_000005_000004.html" shape="rect" coords="60,147,68,155" alt="">
+<area href="dir_000003.html" shape="rect" coords="17,17,111,113" alt="">
+</map>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Files</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="channels_8cpp.html">channels.cpp</a> <a href="channels_8cpp-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html">modules.cpp</a> <a href="modules_8cpp-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8cpp.html">socket.cpp</a> <a href="socket_8cpp-source.html">[code]</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8cpp.html">users.cpp</a> <a href="users_8cpp-source.html">[code]</a></td></tr>
+
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/dir_000005_000004.html b/docs/module-doc/dir_000005_000004.html
new file mode 100644
index 000000000..65c355384
--- /dev/null
+++ b/docs/module-doc/dir_000005_000004.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: /home/brain/inspircd-cvs/inspircd/src/ -&gt; include Relation</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h3>src &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in <a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></th><th class="dirtab">Includes file in <a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="channels_8cpp.html">channels.cpp</a></td><td class="dirtab"><a class="el" href="ctables_8h.html">ctables.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="channels_8cpp.html">channels.cpp</a></td><td class="dirtab"><a class="el" href="message_8h.html">message.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="channels_8cpp.html">channels.cpp</a></td><td class="dirtab"><a class="el" href="mode_8h.html">mode.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="channels_8cpp.html">channels.cpp</a></td><td class="dirtab"><a class="el" href="modules_8h.html">modules.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="channels_8cpp.html">channels.cpp</a></td><td class="dirtab"><a class="el" href="users_8h.html">users.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="channels_8cpp.html">channels.cpp</a></td><td class="dirtab"><a class="el" href="xline_8h.html">xline.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="commands_8h.html">commands.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="ctables_8h.html">ctables.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="hashcomp_8h.html">hashcomp.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="message_8h.html">message.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="mode_8h.html">mode.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="modules_8h.html">modules.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="socket_8h.html">socket.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="users_8h.html">users.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="modules_8cpp.html">modules.cpp</a></td><td class="dirtab"><a class="el" href="xline_8h.html">xline.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="socket_8cpp.html">socket.cpp</a></td><td class="dirtab"><a class="el" href="socket_8h.html">socket.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="users_8cpp.html">users.cpp</a></td><td class="dirtab"><a class="el" href="channels_8h.html">channels.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="users_8cpp.html">users.cpp</a></td><td class="dirtab"><a class="el" href="connection_8h.html">connection.h</a></td></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="users_8cpp.html">users.cpp</a></td><td class="dirtab"><a class="el" href="users_8h.html">users.h</a></td></tr></table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/dir_000005_dep.gif b/docs/module-doc/dir_000005_dep.gif
new file mode 100644
index 000000000..68bfaa13b
--- /dev/null
+++ b/docs/module-doc/dir_000005_dep.gif
Binary files differ
diff --git a/docs/module-doc/dir_000005_dep.map b/docs/module-doc/dir_000005_dep.map
new file mode 100644
index 000000000..230315694
--- /dev/null
+++ b/docs/module-doc/dir_000005_dep.map
@@ -0,0 +1,6 @@
+base referer
+rect dir_000005.html 28,55 100,103
+rect dir_000004.html 28,151 100,199
+rect dir_000005_000004.html 65,125 79,139
+rect dir_000005_000004.html 60,147 68,155
+rect dir_000003.html 17,17 111,113
diff --git a/docs/module-doc/dirs.html b/docs/module-doc/dirs.html
new file mode 100644
index 000000000..4a3493811
--- /dev/null
+++ b/docs/module-doc/dirs.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Directory Hierarchy</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindexHL" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>InspIRCd Directories</h1>This directory hierarchy is sorted roughly, but not completely, alphabetically:<ul>
+<li><a class="el" href="dir_000000.html">home</a>
+<ul>
+<li><a class="el" href="dir_000001.html">brain</a>
+<ul>
+<li><a class="el" href="dir_000002.html">inspircd-cvs</a>
+<ul>
+<li><a class="el" href="dir_000003.html">inspircd</a>
+<ul>
+<li><a class="el" href="dir_000004.html">include</a>
+<li><a class="el" href="dir_000005.html">src</a>
+</ul>
+</ul>
+</ul>
+</ul>
+</ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/dns_8h-source.html b/docs/module-doc/dns_8h-source.html
index 345e37b57..6b7deaef2 100644
--- a/docs/module-doc/dns_8h-source.html
+++ b/docs/module-doc/dns_8h-source.html
@@ -1,78 +1,79 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: dns.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>dns.h</h1><a href="dns_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/*</span>
-00002 <span class="comment">dns.h - dns library declarations based on firedns Copyright (C) 2002 Ian Gulliver</span>
-00003 <span class="comment"></span>
-00004 <span class="comment">This program is free software; you can redistribute it and/or modify</span>
-00005 <span class="comment">it under the terms of version 2 of the GNU General Public License as</span>
-00006 <span class="comment">published by the Free Software Foundation.</span>
-00007 <span class="comment"></span>
-00008 <span class="comment">This program is distributed in the hope that it will be useful,</span>
-00009 <span class="comment">but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
-00010 <span class="comment">MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span>
-00011 <span class="comment">GNU General Public License for more details.</span>
-00012 <span class="comment"></span>
-00013 <span class="comment">You should have received a copy of the GNU General Public License</span>
-00014 <span class="comment">along with this program; if not, write to the Free Software</span>
-00015 <span class="comment">Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</span>
-00016 <span class="comment">*/</span>
-00017
-00018 <span class="preprocessor">#ifndef _DNS_H</span>
-00019 <span class="preprocessor"></span><span class="preprocessor">#define _DNS_H</span>
-00020 <span class="preprocessor"></span>
-00021 <span class="preprocessor">#include &lt;sys/types.h&gt;</span>
-00022 <span class="preprocessor">#include &lt;sys/socket.h&gt;</span>
-00023 <span class="preprocessor">#include &lt;netinet/in.h&gt;</span>
-00024 <span class="preprocessor">#include &lt;string&gt;</span>
-00025
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>dns.h</h1><a href="dns_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
+<a name="l00002"></a>00002 <span class="comment">dns.h - dns library declarations based on firedns Copyright (C) 2002 Ian Gulliver</span>
+<a name="l00003"></a>00003 <span class="comment"></span>
+<a name="l00004"></a>00004 <span class="comment">This program is free software; you can redistribute it and/or modify</span>
+<a name="l00005"></a>00005 <span class="comment">it under the terms of version 2 of the GNU General Public License as</span>
+<a name="l00006"></a>00006 <span class="comment">published by the Free Software Foundation.</span>
+<a name="l00007"></a>00007 <span class="comment"></span>
+<a name="l00008"></a>00008 <span class="comment">This program is distributed in the hope that it will be useful,</span>
+<a name="l00009"></a>00009 <span class="comment">but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
+<a name="l00010"></a>00010 <span class="comment">MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span>
+<a name="l00011"></a>00011 <span class="comment">GNU General Public License for more details.</span>
+<a name="l00012"></a>00012 <span class="comment"></span>
+<a name="l00013"></a>00013 <span class="comment">You should have received a copy of the GNU General Public License</span>
+<a name="l00014"></a>00014 <span class="comment">along with this program; if not, write to the Free Software</span>
+<a name="l00015"></a>00015 <span class="comment">Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</span>
+<a name="l00016"></a>00016 <span class="comment">*/</span>
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef _DNS_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define _DNS_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;sys/types.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;sys/socket.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;netinet/in.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00025"></a>00025
<a name="l00026"></a><a class="code" href="structdns__ip4list.html">00026</a> <span class="keyword">struct </span><a class="code" href="structdns__ip4list.html">dns_ip4list</a> {
-<a name="l00027"></a><a class="code" href="structdns__ip4list.html#o0">00027</a> in_addr <a class="code" href="structdns__ip4list.html#o0">ip</a>;
-<a name="l00028"></a><a class="code" href="structdns__ip4list.html#o1">00028</a> <a class="code" href="structdns__ip4list.html">dns_ip4list</a> *<a class="code" href="structdns__ip4list.html#o1">next</a>;
-00029 };
-00030
-00031
+<a name="l00027"></a><a class="code" href="structdns__ip4list.html#ip">00027</a> in_addr <a class="code" href="structdns__ip4list.html#ip">ip</a>;
+<a name="l00028"></a><a class="code" href="structdns__ip4list.html#next">00028</a> <a class="code" href="structdns__ip4list.html">dns_ip4list</a> *<a class="code" href="structdns__ip4list.html#next">next</a>;
+<a name="l00029"></a>00029 };
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031
<a name="l00035"></a><a class="code" href="classDNS.html">00035</a> <span class="keyword">class </span><a class="code" href="classDNS.html">DNS</a>
-00036 {
-00037 <span class="keyword">private</span>:
-<a name="l00038"></a><a class="code" href="classDNS.html#r0">00038</a> in_addr *<a class="code" href="classDNS.html#r0">binip</a>;
-<a name="l00039"></a><a class="code" href="classDNS.html#r1">00039</a> <span class="keywordtype">char</span>* <a class="code" href="classDNS.html#r1">result</a>;
-<a name="l00040"></a><a class="code" href="classDNS.html#r2">00040</a> <span class="keywordtype">int</span> <a class="code" href="classDNS.html#r2">t</a>;
-00041 <span class="keywordtype">void</span> <a class="code" href="classDNS.html#d0">dns_init</a>();
-<a name="l00042"></a><a class="code" href="classDNS.html#r3">00042</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classDNS.html#r3">fd</a>;
-00043 <span class="keywordtype">void</span> <a class="code" href="classDNS.html#d1">dns_init_2</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* dnsserver);
-00044 in_addr *<a class="code" href="classDNS.html#d2">dns_aton4</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> ipstring);
-00045 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#d3">dns_ntoa4</a>(<span class="keyword">const</span> in_addr * <span class="keyword">const</span> ip);
-00046 <span class="keywordtype">int</span> <a class="code" href="classDNS.html#d4">dns_getip4</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> name);
-00047 <span class="keywordtype">int</span> <a class="code" href="classDNS.html#d5">dns_getip4list</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> name);
-00048 <span class="keywordtype">int</span> <a class="code" href="classDNS.html#d6">dns_getname4</a>(<span class="keyword">const</span> in_addr * <span class="keyword">const</span> ip);
-00049 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#d7">dns_getresult</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> fd);
-00050 in_addr *<a class="code" href="classDNS.html#d8">dns_aton4_s</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> ipstring, in_addr * <span class="keyword">const</span> ip);
-00051 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#d9">dns_ntoa4_s</a>(<span class="keyword">const</span> in_addr * <span class="keyword">const</span> ip, <span class="keywordtype">char</span> * <span class="keyword">const</span> result);
-00052 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#d10">dns_getresult_s</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> fd, <span class="keywordtype">char</span> * <span class="keyword">const</span> result);
-00053 in_addr *<a class="code" href="classDNS.html#d11">dns_aton4_r</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> ipstring);
-00054 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#d12">dns_ntoa4_r</a>(<span class="keyword">const</span> in_addr * <span class="keyword">const</span> ip);
-00055 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#d13">dns_getresult_r</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> fd);
-00056 <span class="keyword">public</span>:
-00063 <a class="code" href="classDNS.html#a0">DNS</a>();
-00067 <a class="code" href="classDNS.html#a0">DNS</a>(std::string dnsserver);
-00070 <a class="code" href="classDNS.html#a2">~DNS</a>();
-00075 <span class="keywordtype">bool</span> <a class="code" href="classDNS.html#a3">ReverseLookup</a>(std::string ip);
-00079 <span class="keywordtype">bool</span> <a class="code" href="classDNS.html#a4">ForwardLookup</a>(std::string host);
-00083 <span class="keywordtype">bool</span> <a class="code" href="classDNS.html#a5">HasResult</a>();
-00087 std::string <a class="code" href="classDNS.html#a6">GetResult</a>();
-00091 <span class="keywordtype">int</span> <a class="code" href="classDNS.html#a7">GetFD</a>();
-00092 <span class="keywordtype">void</span> <a class="code" href="classDNS.html#a8">SetNS</a>(std::string dnsserver);
-00093 };
-00094
-00095 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:19 2005 for InspIRCd by
+<a name="l00036"></a>00036 {
+<a name="l00037"></a>00037 <span class="keyword">private</span>:
+<a name="l00038"></a><a class="code" href="classDNS.html#binip">00038</a> in_addr *<a class="code" href="classDNS.html#binip">binip</a>;
+<a name="l00039"></a><a class="code" href="classDNS.html#result">00039</a> <span class="keywordtype">char</span>* <a class="code" href="classDNS.html#result">result</a>;
+<a name="l00040"></a><a class="code" href="classDNS.html#t">00040</a> <span class="keywordtype">int</span> <a class="code" href="classDNS.html#t">t</a>;
+<a name="l00041"></a>00041 <span class="keywordtype">void</span> <a class="code" href="classDNS.html#dns_5Finit_28_29">dns_init</a>();
+<a name="l00042"></a><a class="code" href="classDNS.html#fd">00042</a> <span class="keywordtype">int</span> <a class="code" href="classDNS.html#fd">fd</a>;
+<a name="l00043"></a>00043 <span class="keywordtype">void</span> <a class="code" href="classDNS.html#dns_5Finit_5F_32_28const_20char_20_2Adnsserver_29">dns_init_2</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* dnsserver);
+<a name="l00044"></a>00044 in_addr *<a class="code" href="classDNS.html#dns_5Faton_34_28const_20char_20_2Aconst_20ipstring_29">dns_aton4</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> ipstring);
+<a name="l00045"></a>00045 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#dns_5Fntoa_34_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_ntoa4</a>(<span class="keyword">const</span> in_addr * <span class="keyword">const</span> ip);
+<a name="l00046"></a>00046 <span class="keywordtype">int</span> <a class="code" href="classDNS.html#dns_5Fgetip_34_28const_20char_20_2Aconst_20name_29">dns_getip4</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> name);
+<a name="l00047"></a>00047 <span class="keywordtype">int</span> <a class="code" href="classDNS.html#dns_5Fgetip_34list_28const_20char_20_2Aconst_20name_29">dns_getip4list</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> name);
+<a name="l00048"></a>00048 <span class="keywordtype">int</span> <a class="code" href="classDNS.html#dns_5Fgetname_34_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_getname4</a>(<span class="keyword">const</span> in_addr * <span class="keyword">const</span> ip);
+<a name="l00049"></a>00049 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#dns_5Fgetresult_28const_20int_20fd_29">dns_getresult</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classDNS.html#fd">fd</a>);
+<a name="l00050"></a>00050 in_addr *<a class="code" href="classDNS.html#dns_5Faton_34_5Fs_28const_20char_20_2Aconst_20ipstring_2C_20in_5Faddr_20_2Aconst_20ip_29">dns_aton4_s</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> ipstring, in_addr * <span class="keyword">const</span> ip);
+<a name="l00051"></a>00051 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#dns_5Fntoa_34_5Fs_28const_20in_5Faddr_20_2Aconst_20ip_2C_20char_20_2Aconst_20result_29">dns_ntoa4_s</a>(<span class="keyword">const</span> in_addr * <span class="keyword">const</span> ip, <span class="keywordtype">char</span> * <span class="keyword">const</span> <a class="code" href="classDNS.html#result">result</a>);
+<a name="l00052"></a>00052 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#dns_5Fgetresult_5Fs_28const_20int_20fd_2C_20char_20_2Aconst_20result_29">dns_getresult_s</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classDNS.html#fd">fd</a>, <span class="keywordtype">char</span> * <span class="keyword">const</span> <a class="code" href="classDNS.html#result">result</a>);
+<a name="l00053"></a>00053 in_addr *<a class="code" href="classDNS.html#dns_5Faton_34_5Fr_28const_20char_20_2Aconst_20ipstring_29">dns_aton4_r</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * <span class="keyword">const</span> ipstring);
+<a name="l00054"></a>00054 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#dns_5Fntoa_34_5Fr_28const_20in_5Faddr_20_2Aconst_20ip_29">dns_ntoa4_r</a>(<span class="keyword">const</span> in_addr * <span class="keyword">const</span> ip);
+<a name="l00055"></a>00055 <span class="keywordtype">char</span> *<a class="code" href="classDNS.html#dns_5Fgetresult_5Fr_28const_20int_20fd_29">dns_getresult_r</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classDNS.html#fd">fd</a>);
+<a name="l00056"></a>00056 <span class="keyword">public</span>:
+<a name="l00063"></a>00063 <a class="code" href="classDNS.html#DNS_28_29">DNS</a>();
+<a name="l00067"></a>00067 <a class="code" href="classDNS.html#DNS_28_29">DNS</a>(<a class="code" href="namespaceirc.html#string">std::string</a> dnsserver);
+<a name="l00070"></a>00070 <a class="code" href="classDNS.html#_7EDNS_28_29">~DNS</a>();
+<a name="l00075"></a>00075 <span class="keywordtype">bool</span> <a class="code" href="classDNS.html#ReverseLookup_28std_3A_3Astring_20ip_29">ReverseLookup</a>(<a class="code" href="namespaceirc.html#string">std::string</a> ip);
+<a name="l00079"></a>00079 <span class="keywordtype">bool</span> <a class="code" href="classDNS.html#ForwardLookup_28std_3A_3Astring_20host_29">ForwardLookup</a>(<a class="code" href="namespaceirc.html#string">std::string</a> host);
+<a name="l00083"></a>00083 <span class="keywordtype">bool</span> <a class="code" href="classDNS.html#HasResult_28_29">HasResult</a>();
+<a name="l00087"></a>00087 <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classDNS.html#GetResult_28_29">GetResult</a>();
+<a name="l00091"></a>00091 <span class="keywordtype">int</span> <a class="code" href="classDNS.html#GetFD_28_29">GetFD</a>();
+<a name="l00092"></a>00092 <span class="keywordtype">void</span> <a class="code" href="classDNS.html#SetNS_28std_3A_3Astring_20dnsserver_29">SetNS</a>(<a class="code" href="namespaceirc.html#string">std::string</a> dnsserver);
+<a name="l00093"></a>00093 };
+<a name="l00094"></a>00094
+<a name="l00095"></a>00095 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/dns_8h.html b/docs/module-doc/dns_8h.html
index 5a8a4b150..6819e0dd3 100644
--- a/docs/module-doc/dns_8h.html
+++ b/docs/module-doc/dns_8h.html
@@ -1,31 +1,32 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: dns.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
<h1>dns.h File Reference</h1><code>#include &lt;sys/types.h&gt;</code><br>
<code>#include &lt;sys/socket.h&gt;</code><br>
<code>#include &lt;netinet/in.h&gt;</code><br>
<code>#include &lt;string&gt;</code><br>
<p>
-Include dependency graph for dns.h:<p><center><img src="dns_8h__incl.gif" border="0" usemap="#dns.h_map" alt="Include dependency graph"></center>
+Include dependency graph for dns.h:<p><center><img src="dns_8h__incl.gif" border="0" usemap="#dns.h_map" alt=""></center>
<p>
-<a href="dns_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="dns_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html">DNS</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__ip4list.html">dns_ip4list</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The DNS class allows fast nonblocking resolution of hostnames and ip addresses. </em> <a href="classDNS.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structdns__ip4list.html">dns_ip4list</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDNS.html">DNS</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The DNS class allows fast nonblocking resolution of hostnames and ip addresses. <a href="classDNS.html#_details">More...</a><br></td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:47 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/dns_8h__incl.gif b/docs/module-doc/dns_8h__incl.gif
index dd4147faa..fbd894395 100644
--- a/docs/module-doc/dns_8h__incl.gif
+++ b/docs/module-doc/dns_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/dns_8h__incl.map b/docs/module-doc/dns_8h__incl.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/dns_8h__incl.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/dns_8h__incl.md5 b/docs/module-doc/dns_8h__incl.md5
new file mode 100644
index 000000000..e01598ff2
--- /dev/null
+++ b/docs/module-doc/dns_8h__incl.md5
@@ -0,0 +1 @@
+9ab4e88ae0e10757c336478c1ab496c5 \ No newline at end of file
diff --git a/docs/module-doc/doxygen.png b/docs/module-doc/doxygen.png
index 5bb475e23..936b7805c 100644
--- a/docs/module-doc/doxygen.png
+++ b/docs/module-doc/doxygen.png
Binary files differ
diff --git a/docs/module-doc/files.html b/docs/module-doc/files.html
index b3b6ba61c..09fc04473 100644
--- a/docs/module-doc/files.html
+++ b/docs/module-doc/files.html
@@ -1,10 +1,10 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: File Index</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindexHL" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindexHL" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>InspIRCd File List</h1>Here is a list of all files with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="base_8h.html">base.h</a> <a href="base_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="channels_8cpp.html">channels.cpp</a> <a href="channels_8cpp-source.html">[code]</a></td><td class="indexvalue"></td></tr>
@@ -18,15 +18,14 @@
<tr><td class="indexkey"><a class="el" href="mode_8h.html">mode.h</a> <a href="mode_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="modules_8cpp.html">modules.cpp</a> <a href="modules_8cpp-source.html">[code]</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="modules_8h.html">modules.h</a> <a href="modules_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
- <tr><td class="indexkey"><a class="el" href="servers_8cpp.html">servers.cpp</a> <a href="servers_8cpp-source.html">[code]</a></td><td class="indexvalue"></td></tr>
- <tr><td class="indexkey"><a class="el" href="servers_8h.html">servers.h</a> <a href="servers_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="socket_8cpp.html">socket.cpp</a> <a href="socket_8cpp-source.html">[code]</a></td><td class="indexvalue"></td></tr>
+ <tr><td class="indexkey"><a class="el" href="socket_8h.html">socket.h</a> <a href="socket_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
<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>
<tr><td class="indexkey"><a class="el" href="xline_8h.html">xline.h</a> <a href="xline_8h-source.html">[code]</a></td><td class="indexvalue"></td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:18 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/functions.html b/docs/module-doc/functions.html
index 09463bc62..1dd122f9d 100644
--- a/docs/module-doc/functions.html
+++ b/docs/module-doc/functions.html
@@ -1,460 +1,37 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Compound Member Index</title>
+<title>InspIRCd: Class Members</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
-<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_g">g</a> | <a class="qindex" href="#index_h">h</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_j">j</a> | <a class="qindex" href="#index_k">k</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_o">o</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_q">q</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_u">u</a> | <a class="qindex" href="#index_v">v</a> | <a class="qindex" href="#index_w">w</a> | <a class="qindex" href="#index_~">~</a></div>
+<div class="qindex"><a class="qindexHL" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
<p>
-
+Here is a list of all class members with links to the classes they belong to:
<p>
-Here is a list of all class members with links to the classes they belong to:<h3><a name="index_a">- a -</a>
-</h3><ul>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
<li>AddBuffer()
-: <a class="el" href="classuserrec.html#a9">userrec</a>, <a class="el" href="classircd__connector.html#a15">ircd_connector</a><li>AddCommand()
-: <a class="el" href="classServer.html#a26">Server</a><li>AddELine()
-: <a class="el" href="classServer.html#a45">Server</a><li>AddExtendedListMode()
-: <a class="el" href="classServer.html#a25">Server</a><li>AddExtendedMode()
-: <a class="el" href="classServer.html#a24">Server</a><li>AddGLine()
-: <a class="el" href="classServer.html#a41">Server</a><li>AddIncoming()
-: <a class="el" href="classserverrec.html#a10">serverrec</a><li>AddKLine()
-: <a class="el" href="classServer.html#a44">Server</a><li>AddQLine()
-: <a class="el" href="classServer.html#a42">Server</a><li>addr
-: <a class="el" href="classircd__connector.html#r0">ircd_connector</a><li>AddUser()
-: <a class="el" href="classchanrec.html#a5">chanrec</a><li>AddWriteBuf()
-: <a class="el" href="classuserrec.html#a15">userrec</a>, <a class="el" href="classircd__connector.html#a21">ircd_connector</a><li>AddZLine()
-: <a class="el" href="classServer.html#a43">Server</a><li>Admin()
-: <a class="el" href="classAdmin.html#a0">Admin</a><li>age
-: <a class="el" href="classclassbase.html#o0">classbase</a><li>awaymsg
-: <a class="el" href="classuserrec.html#o7">userrec</a></ul>
-<h3><a name="index_b">- b -</a>
-</h3><ul>
-<li>bans
-: <a class="el" href="classchanrec.html#o10">chanrec</a><li>BeginLink()
-: <a class="el" href="classserverrec.html#a4">serverrec</a><li>binarymodes
-: <a class="el" href="classchanrec.html#o9">chanrec</a><li>binip
-: <a class="el" href="classDNS.html#r0">DNS</a><li>bits
-: <a class="el" href="classBoolSet.html#r0">BoolSet</a><li>BoolSet()
-: <a class="el" href="classBoolSet.html#a1">BoolSet</a><li>BufferIsComplete()
-: <a class="el" href="classircd__connector.html#a16">ircd_connector</a><li>BufferIsReady()
-: <a class="el" href="classuserrec.html#a10">userrec</a><li>Build
-: <a class="el" href="classVersion.html#o3">Version</a><li>bytes_in
-: <a class="el" href="classconnection.html#o3">connection</a><li>bytes_out
-: <a class="el" href="classconnection.html#o4">connection</a></ul>
-<h3><a name="index_c">- c -</a>
-</h3><ul>
-<li>cache
-: <a class="el" href="classConfigReader.html#p0">ConfigReader</a><li>CalcDuration()
-: <a class="el" href="classServer.html#a51">Server</a><li>CallCommandHandler()
-: <a class="el" href="classServer.html#a34">Server</a><li>ChangeGECOS()
-: <a class="el" href="classServer.html#a36">Server</a><li>ChangeHost()
-: <a class="el" href="classServer.html#a35">Server</a><li>ChangeUserNick()
-: <a class="el" href="classServer.html#a31">Server</a><li>ChanMode()
-: <a class="el" href="classServer.html#a18">Server</a><li>channel
-: <a class="el" href="classInvited.html#o0">Invited</a>, <a class="el" href="classucrec.html#o1">ucrec</a>, <a class="el" href="classModeParameter.html#o2">ModeParameter</a><li>chanrec()
-: <a class="el" href="classchanrec.html#a8">chanrec</a><li>chans
-: <a class="el" href="classuserrec.html#o5">userrec</a><li>CheckPing()
-: <a class="el" href="classircd__connector.html#a26">ircd_connector</a><li>classbase()
-: <a class="el" href="classclassbase.html#a0">classbase</a><li>ClearBuffer()
-: <a class="el" href="classuserrec.html#a11">userrec</a>, <a class="el" href="classircd__connector.html#a17">ircd_connector</a><li>CloseConnection()
-: <a class="el" href="classircd__connector.html#a14">ircd_connector</a><li>CloseSocket()
-: <a class="el" href="classuserrec.html#a18">userrec</a><li>cmds_in
-: <a class="el" href="classconnection.html#o5">connection</a><li>cmds_out
-: <a class="el" href="classconnection.html#o6">connection</a><li>command
-: <a class="el" href="classcommand__t.html#o0">command_t</a><li>CommonChannels()
-: <a class="el" href="classServer.html#a10">Server</a><li>compare()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e3">irc::irc_char_traits</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>connectors
-: <a class="el" href="classserverrec.html#o11">serverrec</a><li>CountUsers()
-: <a class="el" href="classServer.html#a14">Server</a><li>created
-: <a class="el" href="classchanrec.html#o4">chanrec</a><li>CreateListener()
-: <a class="el" href="classserverrec.html#a3">serverrec</a><li>CreateModule()
-: <a class="el" href="classModuleFactory.html#a2">ModuleFactory</a><li>custom_modes
-: <a class="el" href="classchanrec.html#o1">chanrec</a></ul>
-<h3><a name="index_d">- d -</a>
-</h3><ul>
-<li>data
-: <a class="el" href="classEvent.html#p0">Event</a>, <a class="el" href="classRequest.html#p0">Request</a>, <a class="el" href="classHostItem.html#o2">HostItem</a><li>DelELine()
-: <a class="el" href="classServer.html#a50">Server</a><li>DelGLine()
-: <a class="el" href="classServer.html#a46">Server</a><li>DelKLine()
-: <a class="el" href="classServer.html#a49">Server</a><li>DelQLine()
-: <a class="el" href="classServer.html#a47">Server</a><li>DelUser()
-: <a class="el" href="classchanrec.html#a6">chanrec</a><li>DelZLine()
-: <a class="el" href="classServer.html#a48">Server</a><li>description
-: <a class="el" href="classserverrec.html#o8">serverrec</a>, <a class="el" href="classircd__connector.html#r3">ircd_connector</a><li>dest
-: <a class="el" href="classRequest.html#p2">Request</a><li>dhost
-: <a class="el" href="classWhoWasUser.html#o2">WhoWasUser</a>, <a class="el" href="classuserrec.html#o2">userrec</a><li>DNS()
-: <a class="el" href="classDNS.html#a1">DNS</a><li>dns_aton4()
-: <a class="el" href="classDNS.html#d2">DNS</a><li>dns_aton4_r()
-: <a class="el" href="classDNS.html#d11">DNS</a><li>dns_aton4_s()
-: <a class="el" href="classDNS.html#d8">DNS</a><li>dns_done
-: <a class="el" href="classuserrec.html#o11">userrec</a><li>dns_getip4()
-: <a class="el" href="classDNS.html#d4">DNS</a><li>dns_getip4list()
-: <a class="el" href="classDNS.html#d5">DNS</a><li>dns_getname4()
-: <a class="el" href="classDNS.html#d6">DNS</a><li>dns_getresult()
-: <a class="el" href="classDNS.html#d7">DNS</a><li>dns_getresult_r()
-: <a class="el" href="classDNS.html#d13">DNS</a><li>dns_getresult_s()
-: <a class="el" href="classDNS.html#d10">DNS</a><li>dns_init()
-: <a class="el" href="classDNS.html#d0">DNS</a><li>dns_init_2()
-: <a class="el" href="classDNS.html#d1">DNS</a><li>dns_ntoa4()
-: <a class="el" href="classDNS.html#d3">DNS</a><li>dns_ntoa4_r()
-: <a class="el" href="classDNS.html#d12">DNS</a><li>dns_ntoa4_s()
-: <a class="el" href="classDNS.html#d9">DNS</a><li>DumpErrors()
-: <a class="el" href="classConfigReader.html#a9">ConfigReader</a><li>duration
-: <a class="el" href="classXLine.html#o1">XLine</a></ul>
-<h3><a name="index_e">- e -</a>
-</h3><ul>
-<li>Email
-: <a class="el" href="classAdmin.html#o1">Admin</a><li>Enumerate()
-: <a class="el" href="classConfigReader.html#a7">ConfigReader</a><li>EnumerateValues()
-: <a class="el" href="classConfigReader.html#a10">ConfigReader</a><li>eq()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e0">irc::irc_char_traits</a><li>error
-: <a class="el" href="classConfigReader.html#p3">ConfigReader</a><li>errorlog
-: <a class="el" href="classConfigReader.html#p1">ConfigReader</a><li>Event()
-: <a class="el" href="classEvent.html#a0">Event</a><li>Exists()
-: <a class="el" href="classFileReader.html#a4">FileReader</a><li>Extend()
-: <a class="el" href="classExtensible.html#a0">Extensible</a><li>Extension_Items
-: <a class="el" href="classExtensible.html#r0">Extensible</a><li>ExtMode()
-: <a class="el" href="classExtMode.html#a0">ExtMode</a></ul>
-<h3><a name="index_f">- f -</a>
-</h3><ul>
-<li>fc
-: <a class="el" href="classFileReader.html#r0">FileReader</a><li>fd
-: <a class="el" href="classDNS.html#r3">DNS</a>, <a class="el" href="classconnection.html#o0">connection</a>, <a class="el" href="classircd__connector.html#r1">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>find()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e4">irc::irc_char_traits</a><li>FindChannel()
-: <a class="el" href="classServer.html#a17">Server</a><li>FindDescriptor()
-: <a class="el" href="classServer.html#a16">Server</a><li>FindHost()
-: <a class="el" href="classserverrec.html#a9">serverrec</a><li>FindModule()
-: <a class="el" href="classServer.html#a60">Server</a><li>FindNick()
-: <a class="el" href="classServer.html#a15">Server</a><li>Flags
-: <a class="el" href="classVersion.html#o4">Version</a><li>flags_needed
-: <a class="el" href="classcommand__t.html#o2">command_t</a><li>flood
-: <a class="el" href="classuserrec.html#o8">userrec</a>, <a class="el" href="classConnectClass.html#o2">ConnectClass</a><li>FlushWriteBuf()
-: <a class="el" href="classuserrec.html#a16">userrec</a>, <a class="el" href="classircd__connector.html#a22">ircd_connector</a><li>FlushWriteBuffers()
-: <a class="el" href="classserverrec.html#a11">serverrec</a><li>ForwardLookup()
-: <a class="el" href="classDNS.html#a4">DNS</a><li>fullname
-: <a class="el" href="classWhoWasUser.html#o4">WhoWasUser</a>, <a class="el" href="classuserrec.html#o3">userrec</a></ul>
-<h3><a name="index_g">- g -</a>
-</h3><ul>
-<li>Get()
-: <a class="el" href="classBoolSet.html#a3">BoolSet</a><li>GetAdmin()
-: <a class="el" href="classServer.html#a23">Server</a><li>GetBuffer()
-: <a class="el" href="classuserrec.html#a12">userrec</a>, <a class="el" href="classircd__connector.html#a18">ircd_connector</a><li>GetData()
-: <a class="el" href="classEvent.html#a1">Event</a>, <a class="el" href="classRequest.html#a1">Request</a><li>GetDescription()
-: <a class="el" href="classircd__connector.html#a9">ircd_connector</a><li>GetDescriptor()
-: <a class="el" href="classircd__connector.html#a4">ircd_connector</a><li>GetDest()
-: <a class="el" href="classRequest.html#a3">Request</a><li>GetError()
-: <a class="el" href="classConfigReader.html#a6">ConfigReader</a><li>GetEventID()
-: <a class="el" href="classEvent.html#a3">Event</a><li>GetExt()
-: <a class="el" href="classExtensible.html#a2">Extensible</a><li>GetFD()
-: <a class="el" href="classDNS.html#a7">DNS</a><li>GetFullHost()
-: <a class="el" href="classuserrec.html#a2">userrec</a><li>GetFullRealHost()
-: <a class="el" href="classuserrec.html#a3">userrec</a><li>GetInviteList()
-: <a class="el" href="classuserrec.html#a17">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#a21">Server</a><li>GetResult()
-: <a class="el" href="classDNS.html#a6">DNS</a><li>GetServerDescription()
-: <a class="el" href="classServer.html#a22">Server</a><li>GetServerIP()
-: <a class="el" href="classircd__connector.html#a8">ircd_connector</a><li>GetServerName()
-: <a class="el" href="classServer.html#a20">Server</a>, <a class="el" href="classircd__connector.html#a2">ircd_connector</a><li>GetServerPort()
-: <a class="el" href="classircd__connector.html#a11">ircd_connector</a><li>GetSource()
-: <a class="el" href="classEvent.html#a2">Event</a>, <a class="el" href="classRequest.html#a2">Request</a><li>GetState()
-: <a class="el" href="classircd__connector.html#a6">ircd_connector</a><li>GetUserCounter()
-: <a class="el" href="classchanrec.html#a4">chanrec</a><li>GetUsers()
-: <a class="el" href="classServer.html#a38">Server</a>, <a class="el" href="classchanrec.html#a7">chanrec</a><li>GetVersion()
-: <a class="el" href="classModule.html#a2">Module</a><li>GetVersionString()
-: <a class="el" href="classircd__connector.html#a20">ircd_connector</a><li>GetWriteError()
-: <a class="el" href="classuserrec.html#a14">userrec</a>, <a class="el" href="classircd__connector.html#a24">ircd_connector</a></ul>
-<h3><a name="index_h">- h -</a>
-</h3><ul>
-<li>handler_function
-: <a class="el" href="classcommand__t.html#o1">command_t</a><li>HasBufferedOutput()
-: <a class="el" href="classircd__connector.html#a25">ircd_connector</a><li>haspassed
-: <a class="el" href="classconnection.html#o7">connection</a><li>HasPermission()
-: <a class="el" href="classuserrec.html#a7">userrec</a><li>HasResult()
-: <a class="el" href="classDNS.html#a5">DNS</a><li>hops_away
-: <a class="el" href="classserverrec.html#o5">serverrec</a><li>host
-: <a class="el" href="classWhoWasUser.html#o3">WhoWasUser</a>, <a class="el" href="classConnectClass.html#o3">ConnectClass</a>, <a class="el" href="classconnection.html#o1">connection</a>, <a class="el" href="classircd__connector.html#o1">ircd_connector</a><li>HostItem()
-: <a class="el" href="classHostItem.html#a0">HostItem</a><li>hostmask
-: <a class="el" href="classELine.html#o0">ELine</a>, <a class="el" href="classGLine.html#o0">GLine</a>, <a class="el" href="classKLine.html#o0">KLine</a></ul>
-<h3><a name="index_i">- i -</a>
-</h3><ul>
-<li>id
-: <a class="el" href="classEvent.html#p2">Event</a><li>ident
-: <a class="el" href="classWhoWasUser.html#o1">WhoWasUser</a>, <a class="el" href="classuserrec.html#o1">userrec</a><li>idle_lastmsg
-: <a class="el" href="classconnection.html#o12">connection</a><li>internal_userlist
-: <a class="el" href="classchanrec.html#o2">chanrec</a><li>Invert()
-: <a class="el" href="classBoolSet.html#a5">BoolSet</a><li>invites
-: <a class="el" href="classuserrec.html#r0">userrec</a><li>InviteTo()
-: <a class="el" href="classuserrec.html#a5">userrec</a><li>ip
-: <a class="el" href="structdns__ip4list.html#o0">dns_ip4list</a>, <a class="el" href="classconnection.html#o2">connection</a><li>ipaddr
-: <a class="el" href="classZLine.html#o0">ZLine</a><li>ircd_connector()
-: <a class="el" href="classircd__connector.html#a0">ircd_connector</a><li>ircdbuffer
-: <a class="el" href="classircd__connector.html#o0">ircd_connector</a><li>is_global
-: <a class="el" href="classQLine.html#o1">QLine</a>, <a class="el" href="classZLine.html#o1">ZLine</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#a13">Server</a><li>IsOnChannel()
-: <a class="el" href="classServer.html#a19">Server</a><li>IsUlined()
-: <a class="el" href="classServer.html#a37">Server</a><li>IsValidMask()
-: <a class="el" href="classServer.html#a52">Server</a></ul>
-<h3><a name="index_j">- j -</a>
-</h3><ul>
-<li>JoinUserToChannel()
-: <a class="el" href="classServer.html#a29">Server</a><li>jupiter
-: <a class="el" href="classserverrec.html#o7">serverrec</a></ul>
-<h3><a name="index_k">- k -</a>
-</h3><ul>
-<li>key
-: <a class="el" href="classchanrec.html#o8">chanrec</a></ul>
-<h3><a name="index_l">- l -</a>
-</h3><ul>
-<li>lastping
-: <a class="el" href="classconnection.html#o10">connection</a><li>limit
-: <a class="el" href="classchanrec.html#o7">chanrec</a><li>lines_in
-: <a class="el" href="classuserrec.html#o16">userrec</a><li>list
-: <a class="el" href="classExtMode.html#o5">ExtMode</a><li>LoadFile()
-: <a class="el" href="classFileReader.html#a3">FileReader</a><li>Log()
-: <a class="el" href="classServer.html#a3">Server</a><li>lt()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e2">irc::irc_char_traits</a></ul>
-<h3><a name="index_m">- m -</a>
-</h3><ul>
-<li>Major
-: <a class="el" href="classVersion.html#o0">Version</a><li>MakeOutboundConnection()
-: <a class="el" href="classircd__connector.html#a1">ircd_connector</a><li>MatchText()
-: <a class="el" href="classServer.html#a33">Server</a><li>MeshCheckChan()
-: <a class="el" href="classServer.html#a58">Server</a><li>MeshCheckCommon()
-: <a class="el" href="classServer.html#a59">Server</a><li>MeshCookie()
-: <a class="el" href="classserverrec.html#a5">serverrec</a><li>MeshSendAll()
-: <a class="el" href="classServer.html#a53">Server</a><li>MeshSendAllAlive()
-: <a class="el" href="classServer.html#a55">Server</a><li>MeshSendAllExcept()
-: <a class="el" href="classServer.html#a57">Server</a><li>MeshSendCommon()
-: <a class="el" href="classServer.html#a54">Server</a><li>MeshSendUnicast()
-: <a class="el" href="classServer.html#a56">Server</a><li>min_params
-: <a class="el" href="classcommand__t.html#o3">command_t</a><li>Minor
-: <a class="el" href="classVersion.html#o1">Version</a><li>mode
-: <a class="el" href="classModeParameter.html#o0">ModeParameter</a><li>modechar
-: <a class="el" href="classExtMode.html#o0">ExtMode</a><li>modes
-: <a class="el" href="classuserrec.html#o4">userrec</a><li>Module()
-: <a class="el" href="classModule.html#a0">Module</a><li>ModuleFactory()
-: <a class="el" href="classModuleFactory.html#a0">ModuleFactory</a></ul>
-<h3><a name="index_n">- n -</a>
-</h3><ul>
-<li>n_matches
-: <a class="el" href="classXLine.html#o4">XLine</a><li>name
-: <a class="el" href="classserverrec.html#o0">serverrec</a>, <a class="el" href="classchanrec.html#o0">chanrec</a><li>Name
-: <a class="el" href="classAdmin.html#o0">Admin</a><li>ne()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e1">irc::irc_char_traits</a><li>needsoper
-: <a class="el" href="classExtMode.html#o4">ExtMode</a><li>next
-: <a class="el" href="structdns__ip4list.html#o1">dns_ip4list</a><li>nextping
-: <a class="el" href="classircd__connector.html#r8">ircd_connector</a><li>Nick
-: <a class="el" href="classAdmin.html#o2">Admin</a><li>nick
-: <a class="el" href="classQLine.html#o0">QLine</a>, <a class="el" href="classWhoWasUser.html#o0">WhoWasUser</a>, <a class="el" href="classuserrec.html#o0">userrec</a><li>nickserv
-: <a class="el" href="classserverrec.html#o9">serverrec</a><li>nping
-: <a class="el" href="classconnection.html#o13">connection</a></ul>
-<h3><a name="index_o">- o -</a>
-</h3><ul>
-<li>On005Numeric()
-: <a class="el" href="classModule.html#a27">Module</a><li>OnAccessCheck()
-: <a class="el" href="classModule.html#a24">Module</a><li>OnAddBan()
-: <a class="el" href="classModule.html#a50">Module</a><li>OnBackgroundTimer()
-: <a class="el" href="classModule.html#a30">Module</a><li>OnChangeLocalUserGECOS()
-: <a class="el" href="classModule.html#a42">Module</a><li>OnChangeLocalUserHost()
-: <a class="el" href="classModule.html#a41">Module</a><li>OnChannelSync()
-: <a class="el" href="classModule.html#a26">Module</a><li>OnCheckBan()
-: <a class="el" href="classModule.html#a39">Module</a><li>OnCheckInvite()
-: <a class="el" href="classModule.html#a36">Module</a><li>OnCheckKey()
-: <a class="el" href="classModule.html#a37">Module</a><li>OnCheckLimit()
-: <a class="el" href="classModule.html#a38">Module</a><li>OnCheckReady()
-: <a class="el" href="classModule.html#a33">Module</a><li>OnDelBan()
-: <a class="el" href="classModule.html#a51">Module</a><li>OnEvent()
-: <a class="el" href="classModule.html#a45">Module</a><li>OnExtendedMode()
-: <a class="el" href="classModule.html#a12">Module</a><li>OnGlobalConnect()
-: <a class="el" href="classModule.html#a49">Module</a><li>OnGlobalOper()
-: <a class="el" href="classModule.html#a48">Module</a><li>OnInfo()
-: <a class="el" href="classModule.html#a17">Module</a><li>OnKill()
-: <a class="el" href="classModule.html#a28">Module</a><li>OnLoadModule()
-: <a class="el" href="classModule.html#a29">Module</a><li>OnLocalTopicChange()
-: <a class="el" href="classModule.html#a43">Module</a><li>OnMeshToken()
-: <a class="el" href="classModule.html#a44">Module</a><li>OnOper()
-: <a class="el" href="classModule.html#a16">Module</a><li>OnOperCompare()
-: <a class="el" href="classModule.html#a47">Module</a><li>OnPacketReceive()
-: <a class="el" href="classModule.html#a9">Module</a><li>OnPacketTransmit()
-: <a class="el" href="classModule.html#a8">Module</a><li>OnPreCommand()
-: <a class="el" href="classModule.html#a32">Module</a><li>OnRawMode()
-: <a class="el" href="classModule.html#a35">Module</a><li>OnRawSocketAccept()
-: <a class="el" href="classModule.html#a52">Module</a><li>OnRawSocketClose()
-: <a class="el" href="classModule.html#a54">Module</a><li>OnRawSocketRead()
-: <a class="el" href="classModule.html#a55">Module</a><li>OnRawSocketWrite()
-: <a class="el" href="classModule.html#a53">Module</a><li>OnRehash()
-: <a class="el" href="classModule.html#a10">Module</a><li>OnRequest()
-: <a class="el" href="classModule.html#a46">Module</a><li>OnSendList()
-: <a class="el" href="classModule.html#a31">Module</a><li>OnServerRaw()
-: <a class="el" href="classModule.html#a11">Module</a><li>OnStats()
-: <a class="el" href="classModule.html#a40">Module</a><li>OnUserConnect()
-: <a class="el" href="classModule.html#a3">Module</a><li>OnUserDisconnect()
-: <a class="el" href="classModule.html#a5">Module</a><li>OnUserJoin()
-: <a class="el" href="classModule.html#a6">Module</a><li>OnUserKick()
-: <a class="el" href="classModule.html#a15">Module</a><li>OnUserPart()
-: <a class="el" href="classModule.html#a7">Module</a><li>OnUserPostNick()
-: <a class="el" href="classModule.html#a23">Module</a><li>OnUserPreInvite()
-: <a class="el" href="classModule.html#a19">Module</a><li>OnUserPreJoin()
-: <a class="el" href="classModule.html#a13">Module</a><li>OnUserPreKick()
-: <a class="el" href="classModule.html#a14">Module</a><li>OnUserPreMessage()
-: <a class="el" href="classModule.html#a20">Module</a><li>OnUserPreNick()
-: <a class="el" href="classModule.html#a22">Module</a><li>OnUserPreNotice()
-: <a class="el" href="classModule.html#a21">Module</a><li>OnUserQuit()
-: <a class="el" href="classModule.html#a4">Module</a><li>OnUserRegister()
-: <a class="el" href="classModule.html#a34">Module</a><li>OnUserSync()
-: <a class="el" href="classModule.html#a25">Module</a><li>OnWhois()
-: <a class="el" href="classModule.html#a18">Module</a><li>oper
-: <a class="el" href="classuserrec.html#o10">userrec</a><li>operator &amp;()
-: <a class="el" href="classBoolSet.html#a8">BoolSet</a><li>operator()()
-: <a class="el" href="structirc_1_1InAddr__HashComp.html#a0">irc::InAddr_HashComp</a>, <a class="el" href="structirc_1_1StrHashComp.html#a0">irc::StrHashComp</a>, <a class="el" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html#a0">nspace::hash&lt; string &gt;</a>, <a class="el" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html#a0">nspace::hash&lt; in_addr &gt;</a><li>operator=()
-: <a class="el" href="classBoolSet.html#a9">BoolSet</a><li>operator==()
-: <a class="el" href="classBoolSet.html#a6">BoolSet</a><li>operator|()
-: <a class="el" href="classBoolSet.html#a7">BoolSet</a><li>opercount
-: <a class="el" href="classserverrec.html#o4">serverrec</a></ul>
-<h3><a name="index_p">- p -</a>
-</h3><ul>
-<li>parameter
-: <a class="el" href="classModeParameter.html#o1">ModeParameter</a><li>params_when_off
-: <a class="el" href="classExtMode.html#o3">ExtMode</a><li>params_when_on
-: <a class="el" href="classExtMode.html#o2">ExtMode</a><li>PartUserFromChannel()
-: <a class="el" href="classServer.html#a30">Server</a><li>pass
-: <a class="el" href="classConnectClass.html#o5">ConnectClass</a><li>password
-: <a class="el" href="classuserrec.html#o13">userrec</a><li>pingmax
-: <a class="el" href="classuserrec.html#o12">userrec</a><li>pingtime
-: <a class="el" href="classConnectClass.html#o4">ConnectClass</a>, <a class="el" href="classserverrec.html#o1">serverrec</a><li>port
-: <a class="el" href="classconnection.html#o8">connection</a>, <a class="el" href="classircd__connector.html#o2">ircd_connector</a><li>PseudoToUser()
-: <a class="el" href="classServer.html#a40">Server</a></ul>
-<h3><a name="index_q">- q -</a>
-</h3><ul>
-<li>QuitUser()
-: <a class="el" href="classServer.html#a32">Server</a></ul>
-<h3><a name="index_r">- r -</a>
-</h3><ul>
-<li>ReadData()
-: <a class="el" href="classuserrec.html#a8">userrec</a><li>readerror
-: <a class="el" href="classConfigReader.html#p2">ConfigReader</a><li>ReadFlag()
-: <a class="el" href="classConfigReader.html#a4">ConfigReader</a><li>ReadInteger()
-: <a class="el" href="classConfigReader.html#a5">ConfigReader</a><li>ReadValue()
-: <a class="el" href="classConfigReader.html#a3">ConfigReader</a><li>reason
-: <a class="el" href="classXLine.html#o3">XLine</a><li>RecvPacket()
-: <a class="el" href="classserverrec.html#a8">serverrec</a><li>recvq
-: <a class="el" href="classuserrec.html#o14">userrec</a><li>recvqmax
-: <a class="el" href="classuserrec.html#o21">userrec</a>, <a class="el" href="classConnectClass.html#o8">ConnectClass</a><li>registered
-: <a class="el" href="classconnection.html#o9">connection</a><li>registration_timeout
-: <a class="el" href="classConnectClass.html#o1">ConnectClass</a><li>RemoveInvite()
-: <a class="el" href="classuserrec.html#a6">userrec</a><li>replied
-: <a class="el" href="classircd__connector.html#r9">ircd_connector</a><li>Request()
-: <a class="el" href="classRequest.html#a0">Request</a><li>reset_due
-: <a class="el" href="classuserrec.html#o17">userrec</a><li>ResetPing()
-: <a class="el" href="classircd__connector.html#a27">ircd_connector</a><li>result
-: <a class="el" href="classDNS.html#r1">DNS</a><li>ReverseLookup()
-: <a class="el" href="classDNS.html#a3">DNS</a><li>Revision
-: <a class="el" href="classVersion.html#o2">Version</a><li>routes
-: <a class="el" href="classircd__connector.html#o3">ircd_connector</a></ul>
-<h3><a name="index_s">- s -</a>
-</h3><ul>
-<li>Send()
-: <a class="el" href="classServer.html#a4">Server</a>, <a class="el" href="classEvent.html#a4">Event</a>, <a class="el" href="classRequest.html#a4">Request</a>, <a class="el" href="classModuleMessage.html#a0">ModuleMessage</a><li>SendChannel()
-: <a class="el" href="classServer.html#a9">Server</a><li>SendChannelServerNotice()
-: <a class="el" href="classServer.html#a6">Server</a><li>SendCommon()
-: <a class="el" href="classServer.html#a11">Server</a><li>SendFrom()
-: <a class="el" href="classServer.html#a7">Server</a><li>SendMode()
-: <a class="el" href="classServer.html#a27">Server</a><li>SendOpers()
-: <a class="el" href="classServer.html#a2">Server</a><li>SendPacket()
-: <a class="el" href="classserverrec.html#a7">serverrec</a><li>sendq
-: <a class="el" href="classuserrec.html#o15">userrec</a>, <a class="el" href="classircd__connector.html#r6">ircd_connector</a><li>sendqmax
-: <a class="el" href="classuserrec.html#o20">userrec</a>, <a class="el" href="classConnectClass.html#o7">ConnectClass</a><li>SendServ()
-: <a class="el" href="classServer.html#a5">Server</a><li>SendTo()
-: <a class="el" href="classServer.html#a8">Server</a><li>SendToModeMask()
-: <a class="el" href="classServer.html#a28">Server</a><li>SendWallops()
-: <a class="el" href="classServer.html#a12">Server</a><li>Server()
-: <a class="el" href="classServer.html#a0">Server</a><li>server
-: <a class="el" href="classWhoWasUser.html#o5">WhoWasUser</a>, <a class="el" href="classuserrec.html#o6">userrec</a><li>servername
-: <a class="el" href="classircd__connector.html#r2">ircd_connector</a><li>serverrec()
-: <a class="el" href="classserverrec.html#a1">serverrec</a><li>Set()
-: <a class="el" href="classBoolSet.html#a2">BoolSet</a><li>set_by
-: <a class="el" href="classHostItem.html#o1">HostItem</a><li>set_time
-: <a class="el" href="classXLine.html#o0">XLine</a>, <a class="el" href="classHostItem.html#o0">HostItem</a><li>setby
-: <a class="el" href="classchanrec.html#o6">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>SetDescription()
-: <a class="el" href="classircd__connector.html#a10">ircd_connector</a><li>SetDescriptor()
-: <a class="el" href="classircd__connector.html#a5">ircd_connector</a><li>SetHostAddress()
-: <a class="el" href="classircd__connector.html#d0">ircd_connector</a><li>SetHostAndPort()
-: <a class="el" href="classircd__connector.html#a13">ircd_connector</a><li>SetNS()
-: <a class="el" href="classDNS.html#a8">DNS</a><li>SetServerName()
-: <a class="el" href="classircd__connector.html#a3">ircd_connector</a><li>SetServerPort()
-: <a class="el" href="classircd__connector.html#a12">ircd_connector</a><li>SetState()
-: <a class="el" href="classircd__connector.html#a7">ircd_connector</a><li>SetVersionString()
-: <a class="el" href="classircd__connector.html#a19">ircd_connector</a><li>SetWriteError()
-: <a class="el" href="classuserrec.html#a13">userrec</a>, <a class="el" href="classircd__connector.html#a23">ircd_connector</a><li>Shrink()
-: <a class="el" href="classExtensible.html#a1">Extensible</a><li>signon
-: <a class="el" href="classWhoWasUser.html#o6">WhoWasUser</a>, <a class="el" href="classconnection.html#o11">connection</a><li>source
-: <a class="el" href="classXLine.html#o2">XLine</a>, <a class="el" href="classEvent.html#p1">Event</a>, <a class="el" href="classRequest.html#p1">Request</a>, <a class="el" href="classcommand__t.html#o6">command_t</a><li>state
-: <a class="el" href="classircd__connector.html#r4">ircd_connector</a><li>sync_soon
-: <a class="el" href="classserverrec.html#o10">serverrec</a></ul>
-<h3><a name="index_t">- t -</a>
-</h3><ul>
-<li>t
-: <a class="el" href="classDNS.html#r2">DNS</a><li>TerminateLink()
-: <a class="el" href="classserverrec.html#a6">serverrec</a><li>threshold
-: <a class="el" href="classuserrec.html#o18">userrec</a>, <a class="el" href="classConnectClass.html#o6">ConnectClass</a><li>timeout
-: <a class="el" href="classuserrec.html#o9">userrec</a><li>topic
-: <a class="el" href="classchanrec.html#o3">chanrec</a><li>topicset
-: <a class="el" href="classchanrec.html#o5">chanrec</a><li>total_bytes
-: <a class="el" href="classcommand__t.html#o5">command_t</a><li>type
-: <a class="el" href="classConnectClass.html#o0">ConnectClass</a>, <a class="el" href="classExtMode.html#o1">ExtMode</a></ul>
-<h3><a name="index_u">- u -</a>
-</h3><ul>
-<li>uc_modes
-: <a class="el" href="classucrec.html#o0">ucrec</a><li>ucrec()
-: <a class="el" href="classucrec.html#a0">ucrec</a><li>Unset()
-: <a class="el" href="classBoolSet.html#a4">BoolSet</a><li>use_count
-: <a class="el" href="classcommand__t.html#o4">command_t</a><li>usercount
-: <a class="el" href="classserverrec.html#o3">serverrec</a><li>usercount_i
-: <a class="el" href="classserverrec.html#o2">serverrec</a><li>userrec()
-: <a class="el" href="classuserrec.html#a0">userrec</a><li>UserToPseudo()
-: <a class="el" href="classServer.html#a39">Server</a></ul>
-<h3><a name="index_v">- v -</a>
-</h3><ul>
-<li>Verify()
-: <a class="el" href="classConfigReader.html#a8">ConfigReader</a><li>Version()
-: <a class="el" href="classVersion.html#a0">Version</a><li>version
-: <a class="el" href="classserverrec.html#o6">serverrec</a>, <a class="el" href="classircd__connector.html#r5">ircd_connector</a></ul>
-<h3><a name="index_w">- w -</a>
-</h3><ul>
-<li>WriteError
-: <a class="el" href="classuserrec.html#o19">userrec</a>, <a class="el" href="classircd__connector.html#r7">ircd_connector</a></ul>
-<h3><a name="index_~">- ~ -</a>
-</h3><ul>
-<li>~chanrec()
-: <a class="el" href="classchanrec.html#a9">chanrec</a><li>~classbase()
-: <a class="el" href="classclassbase.html#a1">classbase</a><li>~ConfigReader()
-: <a class="el" href="classConfigReader.html#a2">ConfigReader</a><li>~DNS()
-: <a class="el" href="classDNS.html#a2">DNS</a><li>~FileReader()
-: <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>~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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:22 2005 for InspIRCd by
+: <a class="el" href="classuserrec.html#AddBuffer_28std_3A_3Astring_20a_29">userrec</a><li>AddCommand()
+: <a class="el" href="classServer.html#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">Server</a><li>AddELine()
+: <a class="el" href="classServer.html#AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server</a><li>AddExtendedListMode()
+: <a class="el" href="classServer.html#AddExtendedListMode_28char_20modechar_29">Server</a><li>AddExtendedMode()
+: <a class="el" href="classServer.html#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29">Server</a><li>AddGLine()
+: <a class="el" href="classServer.html#AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server</a><li>AddKLine()
+: <a class="el" href="classServer.html#AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server</a><li>AddQLine()
+: <a class="el" href="classServer.html#AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29">Server</a><li>addr
+: <a class="el" href="classInspSocket.html#addr">InspSocket</a><li>AddSocket()
+: <a class="el" href="classServer.html#AddSocket_28InspSocket_20_2Asock_29">Server</a><li>AddUser()
+: <a class="el" href="classchanrec.html#AddUser_28char_20_2Acastuser_29">chanrec</a><li>AddWriteBuf()
+: <a class="el" href="classuserrec.html#AddWriteBuf_28std_3A_3Astring_20data_29">userrec</a><li>addy
+: <a class="el" href="classInspSocket.html#addy">InspSocket</a><li>AddZLine()
+: <a class="el" href="classServer.html#AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29">Server</a><li>Admin()
+: <a class="el" href="classAdmin.html#Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29">Admin</a><li>age
+: <a class="el" href="classclassbase.html#age">classbase</a><li>awaymsg
+: <a class="el" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/functions_0x62.html b/docs/module-doc/functions_0x62.html
new file mode 100644
index 000000000..ab2a16dbb
--- /dev/null
+++ b/docs/module-doc/functions_0x62.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindexHL" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
+<li>bans
+: <a class="el" href="classchanrec.html#bans">chanrec</a><li>binarymodes
+: <a class="el" href="classchanrec.html#binarymodes">chanrec</a><li>binip
+: <a class="el" href="classDNS.html#binip">DNS</a><li>bits
+: <a class="el" href="classBoolSet.html#bits">BoolSet</a><li>BoolSet()
+: <a class="el" href="classBoolSet.html#BoolSet_28char_20bitmask_29">BoolSet</a><li>BufferIsReady()
+: <a class="el" href="classuserrec.html#BufferIsReady_28_29">userrec</a><li>Build
+: <a class="el" href="classVersion.html#Build">Version</a><li>bytes_in
+: <a class="el" href="classconnection.html#bytes_5Fin">connection</a><li>bytes_out
+: <a class="el" href="classconnection.html#bytes_5Fout">connection</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x63.html b/docs/module-doc/functions_0x63.html
new file mode 100644
index 000000000..ca7c29e1c
--- /dev/null
+++ b/docs/module-doc/functions_0x63.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindexHL" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
+<li>cache
+: <a class="el" href="classConfigReader.html#cache">ConfigReader</a><li>CalcDuration()
+: <a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">Server</a><li>CallCommandHandler()
+: <a class="el" href="classServer.html#CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">Server</a><li>ChangeGECOS()
+: <a class="el" href="classServer.html#ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29">Server</a><li>ChangeHost()
+: <a class="el" href="classServer.html#ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29">Server</a><li>ChangeUserNick()
+: <a class="el" href="classServer.html#ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29">Server</a><li>ChanMode()
+: <a class="el" href="classServer.html#ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">Server</a><li>channel
+: <a class="el" href="classInvited.html#channel_5BCHANMAX_5D">Invited</a>, <a class="el" href="classucrec.html#channel">ucrec</a>, <a class="el" href="classModeParameter.html#channel_5BCHANMAX_5D">ModeParameter</a><li>chanrec()
+: <a class="el" href="classchanrec.html#chanrec_28_29">chanrec</a><li>chans
+: <a class="el" href="classuserrec.html#chans_5BMAXCHANS_5D">userrec</a><li>classbase()
+: <a class="el" href="classclassbase.html#classbase_28_29">classbase</a><li>ClearBuffer()
+: <a class="el" href="classuserrec.html#ClearBuffer_28_29">userrec</a><li>client
+: <a class="el" href="classInspSocket.html#client">InspSocket</a><li>Close()
+: <a class="el" href="classInspSocket.html#Close_28_29">InspSocket</a><li>CloseSocket()
+: <a class="el" href="classuserrec.html#CloseSocket_28_29">userrec</a><li>cmds_in
+: <a class="el" href="classconnection.html#cmds_5Fin">connection</a><li>cmds_out
+: <a class="el" href="classconnection.html#cmds_5Fout">connection</a><li>command
+: <a class="el" href="classcommand__t.html#command_5BMAXBUF_5D">command_t</a><li>CommonChannels()
+: <a class="el" href="classServer.html#CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29">Server</a><li>compare()
+: <a class="el" href="structirc_1_1irc__char__traits.html#compare_28const_20char_20_2Astr_31_2C_20const_20char_20_2Astr_32_2C_20size_5Ft_20n_29">irc::irc_char_traits</a><li>ConfigReader()
+: <a class="el" href="classConfigReader.html#ConfigReader_28std_3A_3Astring_20filename_29">ConfigReader</a><li>ConnectClass()
+: <a class="el" href="classConnectClass.html#ConnectClass_28_29">ConnectClass</a><li>connection()
+: <a class="el" href="classconnection.html#connection_28_29">connection</a><li>CountUsers()
+: <a class="el" href="classServer.html#CountUsers_28chanrec_20_2Ac_29">Server</a><li>created
+: <a class="el" href="classchanrec.html#created">chanrec</a><li>CreateModule()
+: <a class="el" href="classModuleFactory.html#CreateModule_28_29_3D_30">ModuleFactory</a><li>custom_modes
+: <a class="el" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">chanrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x64.html b/docs/module-doc/functions_0x64.html
new file mode 100644
index 000000000..071c3b8bc
--- /dev/null
+++ b/docs/module-doc/functions_0x64.html
@@ -0,0 +1,48 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindexHL" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
+<li>data
+: <a class="el" href="classEvent.html#data">Event</a>, <a class="el" href="classRequest.html#data">Request</a>, <a class="el" href="classHostItem.html#data_5BMAXBUF_5D">HostItem</a><li>DelELine()
+: <a class="el" href="classServer.html#DelELine_28std_3A_3Astring_20hostmask_29">Server</a><li>DelGLine()
+: <a class="el" href="classServer.html#DelGLine_28std_3A_3Astring_20hostmask_29">Server</a><li>DelKLine()
+: <a class="el" href="classServer.html#DelKLine_28std_3A_3Astring_20hostmask_29">Server</a><li>DelQLine()
+: <a class="el" href="classServer.html#DelQLine_28std_3A_3Astring_20nickname_29">Server</a><li>DelSocket()
+: <a class="el" href="classServer.html#DelSocket_28InspSocket_20_2Asock_29">Server</a><li>DelUser()
+: <a class="el" href="classchanrec.html#DelUser_28char_20_2Acastuser_29">chanrec</a><li>DelZLine()
+: <a class="el" href="classServer.html#DelZLine_28std_3A_3Astring_20ipaddr_29">Server</a><li>dest
+: <a class="el" href="classRequest.html#dest">Request</a><li>dhost
+: <a class="el" href="classWhoWasUser.html#dhost_5B_31_36_30_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#dhost_5B_31_36_30_5D">userrec</a><li>DNS()
+: <a class="el" href="classDNS.html#DNS_28std_3A_3Astring_20dnsserver_29">DNS</a><li>dns_aton4()
+: <a class="el" href="classDNS.html#dns_5Faton_34_28const_20char_20_2Aconst_20ipstring_29">DNS</a><li>dns_aton4_r()
+: <a class="el" href="classDNS.html#dns_5Faton_34_5Fr_28const_20char_20_2Aconst_20ipstring_29">DNS</a><li>dns_aton4_s()
+: <a class="el" href="classDNS.html#dns_5Faton_34_5Fs_28const_20char_20_2Aconst_20ipstring_2C_20in_5Faddr_20_2Aconst_20ip_29">DNS</a><li>dns_done
+: <a class="el" href="classuserrec.html#dns_5Fdone">userrec</a><li>dns_getip4()
+: <a class="el" href="classDNS.html#dns_5Fgetip_34_28const_20char_20_2Aconst_20name_29">DNS</a><li>dns_getip4list()
+: <a class="el" href="classDNS.html#dns_5Fgetip_34list_28const_20char_20_2Aconst_20name_29">DNS</a><li>dns_getname4()
+: <a class="el" href="classDNS.html#dns_5Fgetname_34_28const_20in_5Faddr_20_2Aconst_20ip_29">DNS</a><li>dns_getresult()
+: <a class="el" href="classDNS.html#dns_5Fgetresult_28const_20int_20fd_29">DNS</a><li>dns_getresult_r()
+: <a class="el" href="classDNS.html#dns_5Fgetresult_5Fr_28const_20int_20fd_29">DNS</a><li>dns_getresult_s()
+: <a class="el" href="classDNS.html#dns_5Fgetresult_5Fs_28const_20int_20fd_2C_20char_20_2Aconst_20result_29">DNS</a><li>dns_init()
+: <a class="el" href="classDNS.html#dns_5Finit_28_29">DNS</a><li>dns_init_2()
+: <a class="el" href="classDNS.html#dns_5Finit_5F_32_28const_20char_20_2Adnsserver_29">DNS</a><li>dns_ntoa4()
+: <a class="el" href="classDNS.html#dns_5Fntoa_34_28const_20in_5Faddr_20_2Aconst_20ip_29">DNS</a><li>dns_ntoa4_r()
+: <a class="el" href="classDNS.html#dns_5Fntoa_34_5Fr_28const_20in_5Faddr_20_2Aconst_20ip_29">DNS</a><li>dns_ntoa4_s()
+: <a class="el" href="classDNS.html#dns_5Fntoa_34_5Fs_28const_20in_5Faddr_20_2Aconst_20ip_2C_20char_20_2Aconst_20result_29">DNS</a><li>DumpErrors()
+: <a class="el" href="classConfigReader.html#DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29">ConfigReader</a><li>duration
+: <a class="el" href="classXLine.html#duration">XLine</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x65.html b/docs/module-doc/functions_0x65.html
new file mode 100644
index 000000000..d540c93d3
--- /dev/null
+++ b/docs/module-doc/functions_0x65.html
@@ -0,0 +1,31 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindexHL" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
+<li>Email
+: <a class="el" href="classAdmin.html#Email">Admin</a><li>Enumerate()
+: <a class="el" href="classConfigReader.html#Enumerate_28std_3A_3Astring_20tag_29">ConfigReader</a><li>EnumerateValues()
+: <a class="el" href="classConfigReader.html#EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29">ConfigReader</a><li>eq()
+: <a class="el" href="structirc_1_1irc__char__traits.html#eq_28char_20c_31st_2C_20char_20c_32nd_29">irc::irc_char_traits</a><li>error
+: <a class="el" href="classConfigReader.html#error">ConfigReader</a><li>errorlog
+: <a class="el" href="classConfigReader.html#errorlog">ConfigReader</a><li>Event()
+: <a class="el" href="classEvent.html#Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29">Event</a><li>Exists()
+: <a class="el" href="classFileReader.html#Exists_28_29">FileReader</a><li>Extend()
+: <a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extensible</a><li>Extension_Items
+: <a class="el" href="classExtensible.html#Extension_5FItems">Extensible</a><li>ExtMode()
+: <a class="el" href="classExtMode.html#ExtMode_28char_20mc_2C_20int_20ty_2C_20bool_20oper_2C_20int_20p_5Fon_2C_20int_20p_5Foff_29">ExtMode</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x66.html b/docs/module-doc/functions_0x66.html
new file mode 100644
index 000000000..0e5eef2ff
--- /dev/null
+++ b/docs/module-doc/functions_0x66.html
@@ -0,0 +1,35 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindexHL" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
+<li>fc
+: <a class="el" href="classFileReader.html#fc">FileReader</a><li>fd
+: <a class="el" href="classInspSocket.html#fd">InspSocket</a>, <a class="el" href="classDNS.html#fd">DNS</a>, <a class="el" href="classconnection.html#fd">connection</a><li>FileReader()
+: <a class="el" href="classFileReader.html#FileReader_28std_3A_3Astring_20filename_29">FileReader</a><li>FileSize()
+: <a class="el" href="classFileReader.html#FileSize_28_29">FileReader</a><li>find()
+: <a class="el" href="structirc_1_1irc__char__traits.html#find_28const_20char_20_2As_31_2C_20int_20n_2C_20char_20c_29">irc::irc_char_traits</a><li>FindChannel()
+: <a class="el" href="classServer.html#FindChannel_28std_3A_3Astring_20channel_29">Server</a><li>FindDescriptor()
+: <a class="el" href="classServer.html#FindDescriptor_28int_20socket_29">Server</a><li>FindModule()
+: <a class="el" href="classServer.html#FindModule_28std_3A_3Astring_20name_29">Server</a><li>FindNick()
+: <a class="el" href="classServer.html#FindNick_28std_3A_3Astring_20nick_29">Server</a><li>Flags
+: <a class="el" href="classVersion.html#Flags">Version</a><li>flags_needed
+: <a class="el" href="classcommand__t.html#flags_5Fneeded">command_t</a><li>flood
+: <a class="el" href="classuserrec.html#flood">userrec</a>, <a class="el" href="classConnectClass.html#flood">ConnectClass</a><li>FlushWriteBuf()
+: <a class="el" href="classuserrec.html#FlushWriteBuf_28_29">userrec</a><li>ForwardLookup()
+: <a class="el" href="classDNS.html#ForwardLookup_28std_3A_3Astring_20host_29">DNS</a><li>fullname
+: <a class="el" href="classWhoWasUser.html#fullname_5BMAXGECOS_2B_31_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x67.html b/docs/module-doc/functions_0x67.html
new file mode 100644
index 000000000..7fd17e32d
--- /dev/null
+++ b/docs/module-doc/functions_0x67.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindexHL" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
+<li>Get()
+: <a class="el" href="classBoolSet.html#Get_28int_20number_29">BoolSet</a><li>GetAdmin()
+: <a class="el" href="classServer.html#GetAdmin_28_29">Server</a><li>GetBuffer()
+: <a class="el" href="classuserrec.html#GetBuffer_28_29">userrec</a><li>GetData()
+: <a class="el" href="classEvent.html#GetData_28_29">Event</a>, <a class="el" href="classRequest.html#GetData_28_29">Request</a><li>GetDest()
+: <a class="el" href="classRequest.html#GetDest_28_29">Request</a><li>GetError()
+: <a class="el" href="classConfigReader.html#GetError_28_29">ConfigReader</a><li>GetEventID()
+: <a class="el" href="classEvent.html#GetEventID_28_29">Event</a><li>GetExt()
+: <a class="el" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">Extensible</a><li>GetFD()
+: <a class="el" href="classDNS.html#GetFD_28_29">DNS</a><li>GetFullHost()
+: <a class="el" href="classuserrec.html#GetFullHost_28_29">userrec</a><li>GetFullRealHost()
+: <a class="el" href="classuserrec.html#GetFullRealHost_28_29">userrec</a><li>GetInviteList()
+: <a class="el" href="classuserrec.html#GetInviteList_28_29">userrec</a><li>GetLine()
+: <a class="el" href="classFileReader.html#GetLine_28int_20x_29">FileReader</a><li>GetModeParameter()
+: <a class="el" href="classchanrec.html#GetModeParameter_28char_20mode_29">chanrec</a><li>GetNetworkName()
+: <a class="el" href="classServer.html#GetNetworkName_28_29">Server</a><li>GetResult()
+: <a class="el" href="classDNS.html#GetResult_28_29">DNS</a><li>GetServerDescription()
+: <a class="el" href="classServer.html#GetServerDescription_28_29">Server</a><li>GetServerName()
+: <a class="el" href="classServer.html#GetServerName_28_29">Server</a><li>GetSource()
+: <a class="el" href="classEvent.html#GetSource_28_29">Event</a>, <a class="el" href="classRequest.html#GetSource_28_29">Request</a><li>GetState()
+: <a class="el" href="classInspSocket.html#GetState_28_29">InspSocket</a><li>GetUserCounter()
+: <a class="el" href="classchanrec.html#GetUserCounter_28_29">chanrec</a><li>GetUsers()
+: <a class="el" href="classServer.html#GetUsers_28chanrec_20_2Achan_29">Server</a>, <a class="el" href="classchanrec.html#GetUsers_28_29">chanrec</a><li>GetVersion()
+: <a class="el" href="classModule.html#GetVersion_28_29">Module</a><li>GetWriteError()
+: <a class="el" href="classuserrec.html#GetWriteError_28_29">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x68.html b/docs/module-doc/functions_0x68.html
new file mode 100644
index 000000000..b7afccad2
--- /dev/null
+++ b/docs/module-doc/functions_0x68.html
@@ -0,0 +1,27 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindexHL" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
+<li>handler_function
+: <a class="el" href="classcommand__t.html#handler_5Ffunction">command_t</a><li>haspassed
+: <a class="el" href="classconnection.html#haspassed">connection</a><li>HasPermission()
+: <a class="el" href="classuserrec.html#HasPermission_28char_20_2Acommand_29">userrec</a><li>HasResult()
+: <a class="el" href="classDNS.html#HasResult_28_29">DNS</a><li>host
+: <a class="el" href="classWhoWasUser.html#host_5B_31_36_30_5D">WhoWasUser</a>, <a class="el" href="classConnectClass.html#host_5BMAXBUF_5D">ConnectClass</a>, <a class="el" href="classInspSocket.html#host">InspSocket</a>, <a class="el" href="classconnection.html#host_5B_31_36_30_5D">connection</a><li>HostItem()
+: <a class="el" href="classHostItem.html#HostItem_28_29">HostItem</a><li>hostmask
+: <a class="el" href="classELine.html#hostmask_5B_32_30_30_5D">ELine</a>, <a class="el" href="classGLine.html#hostmask_5B_32_30_30_5D">GLine</a>, <a class="el" href="classKLine.html#hostmask_5B_32_30_30_5D">KLine</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x69.html b/docs/module-doc/functions_0x69.html
new file mode 100644
index 000000000..0bad44b82
--- /dev/null
+++ b/docs/module-doc/functions_0x69.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindexHL" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
+<li>ibuf
+: <a class="el" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">InspSocket</a><li>id
+: <a class="el" href="classEvent.html#id">Event</a><li>ident
+: <a class="el" href="classWhoWasUser.html#ident_5BIDENTMAX_2B_31_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">userrec</a><li>idle_lastmsg
+: <a class="el" href="classconnection.html#idle_5Flastmsg">connection</a><li>InspSocket()
+: <a class="el" href="classInspSocket.html#InspSocket_28std_3A_3Astring_20host_2C_20int_20port_2C_20bool_20listening_2C_20unsigned_20long_20maxtime_29">InspSocket</a><li>internal_userlist
+: <a class="el" href="classchanrec.html#internal_5Fuserlist">chanrec</a><li>Invert()
+: <a class="el" href="classBoolSet.html#Invert_28int_20number_29">BoolSet</a><li>invites
+: <a class="el" href="classuserrec.html#invites">userrec</a><li>InviteTo()
+: <a class="el" href="classuserrec.html#InviteTo_28char_20_2Achannel_29">userrec</a><li>ip
+: <a class="el" href="structdns__ip4list.html#ip">dns_ip4list</a>, <a class="el" href="classconnection.html#ip_5B_31_36_5D">connection</a><li>ipaddr
+: <a class="el" href="classZLine.html#ipaddr_5B_34_30_5D">ZLine</a><li>is_global
+: <a class="el" href="classQLine.html#is_5Fglobal">QLine</a>, <a class="el" href="classZLine.html#is_5Fglobal">ZLine</a><li>IsCustomModeSet()
+: <a class="el" href="classchanrec.html#IsCustomModeSet_28char_20mode_29">chanrec</a><li>IsInvited()
+: <a class="el" href="classuserrec.html#IsInvited_28char_20_2Achannel_29">userrec</a><li>IsNick()
+: <a class="el" href="classServer.html#IsNick_28std_3A_3Astring_20nick_29">Server</a><li>IsOnChannel()
+: <a class="el" href="classServer.html#IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">Server</a><li>IsUlined()
+: <a class="el" href="classServer.html#IsUlined_28std_3A_3Astring_20server_29">Server</a><li>IsValidMask()
+: <a class="el" href="classServer.html#IsValidMask_28std_3A_3Astring_20mask_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x6a.html b/docs/module-doc/functions_0x6a.html
new file mode 100644
index 000000000..23e73892a
--- /dev/null
+++ b/docs/module-doc/functions_0x6a.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindexHL" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_j">- j -</a></h3><ul>
+<li>JoinUserToChannel()
+: <a class="el" href="classServer.html#JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x6b.html b/docs/module-doc/functions_0x6b.html
new file mode 100644
index 000000000..dbcd49338
--- /dev/null
+++ b/docs/module-doc/functions_0x6b.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindexHL" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_k">- k -</a></h3><ul>
+<li>key
+: <a class="el" href="classchanrec.html#key_5B_33_32_5D">chanrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x6c.html b/docs/module-doc/functions_0x6c.html
new file mode 100644
index 000000000..580c62484
--- /dev/null
+++ b/docs/module-doc/functions_0x6c.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindexHL" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
+<li>lastping
+: <a class="el" href="classconnection.html#lastping">connection</a><li>length
+: <a class="el" href="classInspSocket.html#length">InspSocket</a><li>limit
+: <a class="el" href="classchanrec.html#limit">chanrec</a><li>lines_in
+: <a class="el" href="classuserrec.html#lines_5Fin">userrec</a><li>list
+: <a class="el" href="classExtMode.html#list">ExtMode</a><li>LoadFile()
+: <a class="el" href="classFileReader.html#LoadFile_28std_3A_3Astring_20filename_29">FileReader</a><li>Log()
+: <a class="el" href="classServer.html#Log_28int_20level_2C_20std_3A_3Astring_20s_29">Server</a><li>lt()
+: <a class="el" href="structirc_1_1irc__char__traits.html#lt_28char_20c_31st_2C_20char_20c_32nd_29">irc::irc_char_traits</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x6d.html b/docs/module-doc/functions_0x6d.html
new file mode 100644
index 000000000..552da6fae
--- /dev/null
+++ b/docs/module-doc/functions_0x6d.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindexHL" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
+<li>Major
+: <a class="el" href="classVersion.html#Major">Version</a><li>MatchText()
+: <a class="el" href="classServer.html#MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29">Server</a><li>min_params
+: <a class="el" href="classcommand__t.html#min_5Fparams">command_t</a><li>Minor
+: <a class="el" href="classVersion.html#Minor">Version</a><li>mode
+: <a class="el" href="classModeParameter.html#mode">ModeParameter</a><li>modechar
+: <a class="el" href="classExtMode.html#modechar">ExtMode</a><li>modes
+: <a class="el" href="classuserrec.html#modes_5B_35_34_5D">userrec</a><li>Module()
+: <a class="el" href="classModule.html#Module_28_29">Module</a><li>ModuleFactory()
+: <a class="el" href="classModuleFactory.html#ModuleFactory_28_29">ModuleFactory</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x6e.html b/docs/module-doc/functions_0x6e.html
new file mode 100644
index 000000000..2e6491b87
--- /dev/null
+++ b/docs/module-doc/functions_0x6e.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindexHL" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
+<li>n_matches
+: <a class="el" href="classXLine.html#n_5Fmatches">XLine</a><li>name
+: <a class="el" href="classchanrec.html#name_5BCHANMAX_5D">chanrec</a><li>Name
+: <a class="el" href="classAdmin.html#Name">Admin</a><li>ne()
+: <a class="el" href="structirc_1_1irc__char__traits.html#ne_28char_20c_31st_2C_20char_20c_32nd_29">irc::irc_char_traits</a><li>needsoper
+: <a class="el" href="classExtMode.html#needsoper">ExtMode</a><li>next
+: <a class="el" href="structdns__ip4list.html#next">dns_ip4list</a><li>nick
+: <a class="el" href="classQLine.html#nick_5B_36_34_5D">QLine</a>, <a class="el" href="classWhoWasUser.html#nick_5BNICKMAX_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#nick_5BNICKMAX_5D">userrec</a><li>Nick
+: <a class="el" href="classAdmin.html#Nick">Admin</a><li>nping
+: <a class="el" href="classconnection.html#nping">connection</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x6f.html b/docs/module-doc/functions_0x6f.html
new file mode 100644
index 000000000..0826fbacf
--- /dev/null
+++ b/docs/module-doc/functions_0x6f.html
@@ -0,0 +1,86 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindexHL" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
+<li>On005Numeric()
+: <a class="el" href="classModule.html#On_30_30_35Numeric_28std_3A_3Astring_20_26output_29">Module</a><li>OnAccessCheck()
+: <a class="el" href="classModule.html#OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29">Module</a><li>OnAddBan()
+: <a class="el" href="classModule.html#OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">Module</a><li>OnBackgroundTimer()
+: <a class="el" href="classModule.html#OnBackgroundTimer_28time_5Ft_20curtime_29">Module</a><li>OnChangeLocalUserGECOS()
+: <a class="el" href="classModule.html#OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">Module</a><li>OnChangeLocalUserHost()
+: <a class="el" href="classModule.html#OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">Module</a><li>OnChannelSync()
+: <a class="el" href="classModule.html#OnChannelSync_28chanrec_20_2Achan_29">Module</a><li>OnCheckBan()
+: <a class="el" href="classModule.html#OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module</a><li>OnCheckInvite()
+: <a class="el" href="classModule.html#OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module</a><li>OnCheckKey()
+: <a class="el" href="classModule.html#OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29">Module</a><li>OnCheckLimit()
+: <a class="el" href="classModule.html#OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module</a><li>OnCheckReady()
+: <a class="el" href="classModule.html#OnCheckReady_28userrec_20_2Auser_29">Module</a><li>OnClose()
+: <a class="el" href="classInspSocket.html#OnClose_28_29">InspSocket</a><li>OnConnected()
+: <a class="el" href="classInspSocket.html#OnConnected_28_29">InspSocket</a><li>OnDataReady()
+: <a class="el" href="classInspSocket.html#OnDataReady_28_29">InspSocket</a><li>OnDelBan()
+: <a class="el" href="classModule.html#OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">Module</a><li>OnDisconnect()
+: <a class="el" href="classInspSocket.html#OnDisconnect_28_29">InspSocket</a><li>OnError()
+: <a class="el" href="classInspSocket.html#OnError_28InspSocketError_20e_29">InspSocket</a><li>OnEvent()
+: <a class="el" href="classModule.html#OnEvent_28Event_20_2Aevent_29">Module</a><li>OnExtendedMode()
+: <a class="el" href="classModule.html#OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29">Module</a><li>OnGlobalConnect()
+: <a class="el" href="classModule.html#OnGlobalConnect_28userrec_20_2Auser_29">Module</a><li>OnGlobalOper()
+: <a class="el" href="classModule.html#OnGlobalOper_28userrec_20_2Auser_29">Module</a><li>OnIncomingConnection()
+: <a class="el" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">InspSocket</a><li>OnInfo()
+: <a class="el" href="classModule.html#OnInfo_28userrec_20_2Auser_29">Module</a><li>OnKill()
+: <a class="el" href="classModule.html#OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29">Module</a><li>OnLoadModule()
+: <a class="el" href="classModule.html#OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">Module</a><li>OnLocalTopicChange()
+: <a class="el" href="classModule.html#OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29">Module</a><li>OnOper()
+: <a class="el" href="classModule.html#OnOper_28userrec_20_2Auser_29">Module</a><li>OnOperCompare()
+: <a class="el" href="classModule.html#OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29">Module</a><li>OnPacketReceive()
+: <a class="el" href="classModule.html#OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">Module</a><li>OnPacketTransmit()
+: <a class="el" href="classModule.html#OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">Module</a><li>OnPreCommand()
+: <a class="el" href="classModule.html#OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">Module</a><li>OnRawMode()
+: <a class="el" href="classModule.html#OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29">Module</a><li>OnRawSocketAccept()
+: <a class="el" href="classModule.html#OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29">Module</a><li>OnRawSocketClose()
+: <a class="el" href="classModule.html#OnRawSocketClose_28int_20fd_29">Module</a><li>OnRawSocketRead()
+: <a class="el" href="classModule.html#OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29">Module</a><li>OnRawSocketWrite()
+: <a class="el" href="classModule.html#OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29">Module</a><li>OnRehash()
+: <a class="el" href="classModule.html#OnRehash_28_29">Module</a><li>OnRequest()
+: <a class="el" href="classModule.html#OnRequest_28Request_20_2Arequest_29">Module</a><li>OnSendList()
+: <a class="el" href="classModule.html#OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29">Module</a><li>OnServerRaw()
+: <a class="el" href="classModule.html#OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29">Module</a><li>OnStats()
+: <a class="el" href="classModule.html#OnStats_28char_20symbol_29">Module</a><li>OnTimeout()
+: <a class="el" href="classInspSocket.html#OnTimeout_28_29">InspSocket</a><li>OnUnloadModule()
+: <a class="el" href="classModule.html#OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">Module</a><li>OnUserConnect()
+: <a class="el" href="classModule.html#OnUserConnect_28userrec_20_2Auser_29">Module</a><li>OnUserDisconnect()
+: <a class="el" href="classModule.html#OnUserDisconnect_28userrec_20_2Auser_29">Module</a><li>OnUserJoin()
+: <a class="el" href="classModule.html#OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">Module</a><li>OnUserKick()
+: <a class="el" href="classModule.html#OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">Module</a><li>OnUserPart()
+: <a class="el" href="classModule.html#OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">Module</a><li>OnUserPostNick()
+: <a class="el" href="classModule.html#OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29">Module</a><li>OnUserPreInvite()
+: <a class="el" href="classModule.html#OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29">Module</a><li>OnUserPreJoin()
+: <a class="el" href="classModule.html#OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29">Module</a><li>OnUserPreKick()
+: <a class="el" href="classModule.html#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">Module</a><li>OnUserPreMessage()
+: <a class="el" href="classModule.html#OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">Module</a><li>OnUserPreNick()
+: <a class="el" href="classModule.html#OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29">Module</a><li>OnUserPreNotice()
+: <a class="el" href="classModule.html#OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">Module</a><li>OnUserQuit()
+: <a class="el" href="classModule.html#OnUserQuit_28userrec_20_2Auser_29">Module</a><li>OnUserRegister()
+: <a class="el" href="classModule.html#OnUserRegister_28userrec_20_2Auser_29">Module</a><li>OnUserSync()
+: <a class="el" href="classModule.html#OnUserSync_28userrec_20_2Auser_29">Module</a><li>OnWhois()
+: <a class="el" href="classModule.html#OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29">Module</a><li>oper
+: <a class="el" href="classuserrec.html#oper_5BNICKMAX_5D">userrec</a><li>operator &amp;()
+: <a class="el" href="classBoolSet.html#operator_20_26_28BoolSet_20other_29">BoolSet</a><li>operator()()
+: <a class="el" href="structirc_1_1InAddr__HashComp.html#operator_28_29_28const_20in_5Faddr_20_26s_31_2C_20const_20in_5Faddr_20_26s_32_29_20const_20">irc::InAddr_HashComp</a>, <a class="el" href="structirc_1_1StrHashComp.html#operator_28_29_28const_20std_3A_3Astring_20_26s_31_2C_20const_20std_3A_3Astring_20_26s_32_29_20const_20">irc::StrHashComp</a>, <a class="el" href="structnspace_1_1hash_3_01string_01_4.html#operator_28_29_28const_20string_20_26s_29_20const_20">nspace::hash&lt; string &gt;</a>, <a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html#operator_28_29_28const_20struct_20in_5Faddr_20_26a_29_20const_20">nspace::hash&lt; in_addr &gt;</a><li>operator=()
+: <a class="el" href="classBoolSet.html#operator_3D_28BoolSet_20other_29">BoolSet</a><li>operator==()
+: <a class="el" href="classBoolSet.html#operator_3D_3D_28BoolSet_20other_29">BoolSet</a><li>operator|()
+: <a class="el" href="classBoolSet.html#operator_7C_28BoolSet_20other_29">BoolSet</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x70.html b/docs/module-doc/functions_0x70.html
new file mode 100644
index 000000000..c3d5b19e8
--- /dev/null
+++ b/docs/module-doc/functions_0x70.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindexHL" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
+<li>parameter
+: <a class="el" href="classModeParameter.html#parameter_5BMAXBUF_5D">ModeParameter</a><li>params_when_off
+: <a class="el" href="classExtMode.html#params_5Fwhen_5Foff">ExtMode</a><li>params_when_on
+: <a class="el" href="classExtMode.html#params_5Fwhen_5Fon">ExtMode</a><li>PartUserFromChannel()
+: <a class="el" href="classServer.html#PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29">Server</a><li>pass
+: <a class="el" href="classConnectClass.html#pass_5BMAXBUF_5D">ConnectClass</a><li>password
+: <a class="el" href="classuserrec.html#password_5BMAXBUF_5D">userrec</a><li>pingmax
+: <a class="el" href="classuserrec.html#pingmax">userrec</a><li>pingtime
+: <a class="el" href="classConnectClass.html#pingtime">ConnectClass</a><li>Poll()
+: <a class="el" href="classInspSocket.html#Poll_28_29">InspSocket</a><li>polls
+: <a class="el" href="classInspSocket.html#polls">InspSocket</a><li>port
+: <a class="el" href="classInspSocket.html#port">InspSocket</a>, <a class="el" href="classconnection.html#port">connection</a><li>PseudoToUser()
+: <a class="el" href="classServer.html#PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x71.html b/docs/module-doc/functions_0x71.html
new file mode 100644
index 000000000..d5388a7f5
--- /dev/null
+++ b/docs/module-doc/functions_0x71.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindexHL" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_q">- q -</a></h3><ul>
+<li>QuitUser()
+: <a class="el" href="classServer.html#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x72.html b/docs/module-doc/functions_0x72.html
new file mode 100644
index 000000000..e8fe68c40
--- /dev/null
+++ b/docs/module-doc/functions_0x72.html
@@ -0,0 +1,37 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindexHL" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
+<li>Read()
+: <a class="el" href="classInspSocket.html#Read_28_29">InspSocket</a><li>ReadData()
+: <a class="el" href="classuserrec.html#ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29">userrec</a><li>readerror
+: <a class="el" href="classConfigReader.html#readerror">ConfigReader</a><li>ReadFlag()
+: <a class="el" href="classConfigReader.html#ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ConfigReader</a><li>ReadInteger()
+: <a class="el" href="classConfigReader.html#ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29">ConfigReader</a><li>ReadValue()
+: <a class="el" href="classConfigReader.html#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ConfigReader</a><li>reason
+: <a class="el" href="classXLine.html#reason_5BMAXBUF_5D">XLine</a><li>recvq
+: <a class="el" href="classuserrec.html#recvq">userrec</a><li>recvqmax
+: <a class="el" href="classuserrec.html#recvqmax">userrec</a>, <a class="el" href="classConnectClass.html#recvqmax">ConnectClass</a><li>registered
+: <a class="el" href="classconnection.html#registered">connection</a><li>registration_timeout
+: <a class="el" href="classConnectClass.html#registration_5Ftimeout">ConnectClass</a><li>RemoveInvite()
+: <a class="el" href="classuserrec.html#RemoveInvite_28char_20_2Achannel_29">userrec</a><li>Request()
+: <a class="el" href="classRequest.html#Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29">Request</a><li>reset_due
+: <a class="el" href="classuserrec.html#reset_5Fdue">userrec</a><li>result
+: <a class="el" href="classDNS.html#result">DNS</a><li>ReverseLookup()
+: <a class="el" href="classDNS.html#ReverseLookup_28std_3A_3Astring_20ip_29">DNS</a><li>Revision
+: <a class="el" href="classVersion.html#Revision">Version</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x73.html b/docs/module-doc/functions_0x73.html
new file mode 100644
index 000000000..366b74dcc
--- /dev/null
+++ b/docs/module-doc/functions_0x73.html
@@ -0,0 +1,48 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindexHL" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
+<li>Send()
+: <a class="el" href="classServer.html#Send_28int_20Socket_2C_20std_3A_3Astring_20s_29">Server</a>, <a class="el" href="classEvent.html#Send_28_29">Event</a>, <a class="el" href="classRequest.html#Send_28_29">Request</a>, <a class="el" href="classModuleMessage.html#Send_28_29_3D_30">ModuleMessage</a><li>SendChannel()
+: <a class="el" href="classServer.html#SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29">Server</a><li>SendChannelServerNotice()
+: <a class="el" href="classServer.html#SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29">Server</a><li>SendCommon()
+: <a class="el" href="classServer.html#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29">Server</a><li>SendFrom()
+: <a class="el" href="classServer.html#SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29">Server</a><li>SendMode()
+: <a class="el" href="classServer.html#SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">Server</a><li>SendOpers()
+: <a class="el" href="classServer.html#SendOpers_28std_3A_3Astring_20s_29">Server</a><li>sendq
+: <a class="el" href="classuserrec.html#sendq">userrec</a><li>sendqmax
+: <a class="el" href="classuserrec.html#sendqmax">userrec</a>, <a class="el" href="classConnectClass.html#sendqmax">ConnectClass</a><li>SendServ()
+: <a class="el" href="classServer.html#SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29">Server</a><li>SendTo()
+: <a class="el" href="classServer.html#SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29">Server</a><li>SendToModeMask()
+: <a class="el" href="classServer.html#SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29">Server</a><li>SendWallops()
+: <a class="el" href="classServer.html#SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29">Server</a><li>Server()
+: <a class="el" href="classServer.html#Server_28_29">Server</a><li>server
+: <a class="el" href="classWhoWasUser.html#server_5B_32_35_36_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#server">userrec</a>, <a class="el" href="classInspSocket.html#server">InspSocket</a><li>Set()
+: <a class="el" href="classBoolSet.html#Set_28int_20number_29">BoolSet</a><li>set_by
+: <a class="el" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">HostItem</a><li>set_time
+: <a class="el" href="classXLine.html#set_5Ftime">XLine</a>, <a class="el" href="classHostItem.html#set_5Ftime">HostItem</a><li>setby
+: <a class="el" href="classchanrec.html#setby_5BNICKMAX_5D">chanrec</a><li>SetCustomMode()
+: <a class="el" href="classchanrec.html#SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29">chanrec</a><li>SetCustomModeParam()
+: <a class="el" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">chanrec</a><li>SetNS()
+: <a class="el" href="classDNS.html#SetNS_28std_3A_3Astring_20dnsserver_29">DNS</a><li>SetState()
+: <a class="el" href="classInspSocket.html#SetState_28InspSocketState_20s_29">InspSocket</a><li>SetWriteError()
+: <a class="el" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">userrec</a><li>Shrink()
+: <a class="el" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Extensible</a><li>signon
+: <a class="el" href="classWhoWasUser.html#signon">WhoWasUser</a>, <a class="el" href="classconnection.html#signon">connection</a><li>source
+: <a class="el" href="classXLine.html#source_5B_32_35_36_5D">XLine</a>, <a class="el" href="classEvent.html#source">Event</a>, <a class="el" href="classRequest.html#source">Request</a>, <a class="el" href="classcommand__t.html#source_5BMAXBUF_5D">command_t</a><li>state
+: <a class="el" href="classInspSocket.html#state">InspSocket</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x74.html b/docs/module-doc/functions_0x74.html
new file mode 100644
index 000000000..81e4483db
--- /dev/null
+++ b/docs/module-doc/functions_0x74.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindexHL" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
+<li>t
+: <a class="el" href="classDNS.html#t">DNS</a><li>threshold
+: <a class="el" href="classuserrec.html#threshold">userrec</a>, <a class="el" href="classConnectClass.html#threshold">ConnectClass</a><li>timeout
+: <a class="el" href="classuserrec.html#timeout">userrec</a>, <a class="el" href="classInspSocket.html#timeout">InspSocket</a><li>timeout_end
+: <a class="el" href="classInspSocket.html#timeout_5Fend">InspSocket</a><li>topic
+: <a class="el" href="classchanrec.html#topic_5BMAXBUF_5D">chanrec</a><li>topicset
+: <a class="el" href="classchanrec.html#topicset">chanrec</a><li>total_bytes
+: <a class="el" href="classcommand__t.html#total_5Fbytes">command_t</a><li>type
+: <a class="el" href="classConnectClass.html#type">ConnectClass</a>, <a class="el" href="classExtMode.html#type">ExtMode</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x75.html b/docs/module-doc/functions_0x75.html
new file mode 100644
index 000000000..1d65fb77c
--- /dev/null
+++ b/docs/module-doc/functions_0x75.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindexHL" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
+<li>uc_modes
+: <a class="el" href="classucrec.html#uc_5Fmodes">ucrec</a><li>ucrec()
+: <a class="el" href="classucrec.html#ucrec_28_29">ucrec</a><li>Unset()
+: <a class="el" href="classBoolSet.html#Unset_28int_20number_29">BoolSet</a><li>use_count
+: <a class="el" href="classcommand__t.html#use_5Fcount">command_t</a><li>userrec()
+: <a class="el" href="classuserrec.html#userrec_28_29">userrec</a><li>UserToPseudo()
+: <a class="el" href="classServer.html#UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x76.html b/docs/module-doc/functions_0x76.html
new file mode 100644
index 000000000..87321f331
--- /dev/null
+++ b/docs/module-doc/functions_0x76.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindexHL" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
+<li>Verify()
+: <a class="el" href="classConfigReader.html#Verify_28_29">ConfigReader</a><li>Version()
+: <a class="el" href="classVersion.html#Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29">Version</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x77.html b/docs/module-doc/functions_0x77.html
new file mode 100644
index 000000000..2c7265b11
--- /dev/null
+++ b/docs/module-doc/functions_0x77.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindexHL" href="functions_0x77.html#index_w">w</a> | <a class="qindex" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
+<li>Write()
+: <a class="el" href="classInspSocket.html#Write_28std_3A_3Astring_20data_29">InspSocket</a><li>WriteError
+: <a class="el" href="classuserrec.html#WriteError">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_0x7e.html b/docs/module-doc/functions_0x7e.html
new file mode 100644
index 000000000..26f7b4e9f
--- /dev/null
+++ b/docs/module-doc/functions_0x7e.html
@@ -0,0 +1,33 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions.html#index_a">a</a> | <a class="qindex" href="functions_0x62.html#index_b">b</a> | <a class="qindex" href="functions_0x63.html#index_c">c</a> | <a class="qindex" href="functions_0x64.html#index_d">d</a> | <a class="qindex" href="functions_0x65.html#index_e">e</a> | <a class="qindex" href="functions_0x66.html#index_f">f</a> | <a class="qindex" href="functions_0x67.html#index_g">g</a> | <a class="qindex" href="functions_0x68.html#index_h">h</a> | <a class="qindex" href="functions_0x69.html#index_i">i</a> | <a class="qindex" href="functions_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_0x6b.html#index_k">k</a> | <a class="qindex" href="functions_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_0x70.html#index_p">p</a> | <a class="qindex" href="functions_0x71.html#index_q">q</a> | <a class="qindex" href="functions_0x72.html#index_r">r</a> | <a class="qindex" href="functions_0x73.html#index_s">s</a> | <a class="qindex" href="functions_0x74.html#index_t">t</a> | <a class="qindex" href="functions_0x75.html#index_u">u</a> | <a class="qindex" href="functions_0x76.html#index_v">v</a> | <a class="qindex" href="functions_0x77.html#index_w">w</a> | <a class="qindexHL" href="functions_0x7e.html#index_~">~</a></div>
+
+<p>
+Here is a list of all class members with links to the classes they belong to:
+<p>
+<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul>
+<li>~chanrec()
+: <a class="el" href="classchanrec.html#_7Echanrec_28_29">chanrec</a><li>~classbase()
+: <a class="el" href="classclassbase.html#_7Eclassbase_28_29">classbase</a><li>~ConfigReader()
+: <a class="el" href="classConfigReader.html#_7EConfigReader_28_29">ConfigReader</a><li>~DNS()
+: <a class="el" href="classDNS.html#_7EDNS_28_29">DNS</a><li>~FileReader()
+: <a class="el" href="classFileReader.html#_7EFileReader_28_29">FileReader</a><li>~HostItem()
+: <a class="el" href="classHostItem.html#_7EHostItem_28_29">HostItem</a><li>~InspSocket()
+: <a class="el" href="classInspSocket.html#_7EInspSocket_28_29">InspSocket</a><li>~Module()
+: <a class="el" href="classModule.html#_7EModule_28_29">Module</a><li>~ModuleFactory()
+: <a class="el" href="classModuleFactory.html#_7EModuleFactory_28_29">ModuleFactory</a><li>~ModuleMessage()
+: <a class="el" href="classModuleMessage.html#_7EModuleMessage_28_29">ModuleMessage</a><li>~Server()
+: <a class="el" href="classServer.html#_7EServer_28_29">Server</a><li>~ucrec()
+: <a class="el" href="classucrec.html#_7Eucrec_28_29">ucrec</a><li>~userrec()
+: <a class="el" href="classuserrec.html#_7Euserrec_28_29">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func.html b/docs/module-doc/functions_func.html
index e50d53891..88e17c2e6 100644
--- a/docs/module-doc/functions_func.html
+++ b/docs/module-doc/functions_func.html
@@ -1,338 +1,33 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Compound Member Index</title>
+<title>InspIRCd: Class Members - Functions</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
-<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_g">g</a> | <a class="qindex" href="#index_h">h</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_j">j</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_o">o</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_q">q</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_u">u</a> | <a class="qindex" href="#index_v">v</a> | <a class="qindex" href="#index_~">~</a></div>
+<div class="qindex"><a class="qindexHL" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
<p>
<p>
-<h3><a name="index_a">- a -</a>
-</h3><ul>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
<li>AddBuffer()
-: <a class="el" href="classuserrec.html#a9">userrec</a>, <a class="el" href="classircd__connector.html#a15">ircd_connector</a><li>AddCommand()
-: <a class="el" href="classServer.html#a26">Server</a><li>AddELine()
-: <a class="el" href="classServer.html#a45">Server</a><li>AddExtendedListMode()
-: <a class="el" href="classServer.html#a25">Server</a><li>AddExtendedMode()
-: <a class="el" href="classServer.html#a24">Server</a><li>AddGLine()
-: <a class="el" href="classServer.html#a41">Server</a><li>AddIncoming()
-: <a class="el" href="classserverrec.html#a10">serverrec</a><li>AddKLine()
-: <a class="el" href="classServer.html#a44">Server</a><li>AddQLine()
-: <a class="el" href="classServer.html#a42">Server</a><li>AddUser()
-: <a class="el" href="classchanrec.html#a5">chanrec</a><li>AddWriteBuf()
-: <a class="el" href="classuserrec.html#a15">userrec</a>, <a class="el" href="classircd__connector.html#a21">ircd_connector</a><li>AddZLine()
-: <a class="el" href="classServer.html#a43">Server</a><li>Admin()
-: <a class="el" href="classAdmin.html#a0">Admin</a></ul>
-<h3><a name="index_b">- b -</a>
-</h3><ul>
-<li>BeginLink()
-: <a class="el" href="classserverrec.html#a4">serverrec</a><li>BoolSet()
-: <a class="el" href="classBoolSet.html#a1">BoolSet</a><li>BufferIsComplete()
-: <a class="el" href="classircd__connector.html#a16">ircd_connector</a><li>BufferIsReady()
-: <a class="el" href="classuserrec.html#a10">userrec</a></ul>
-<h3><a name="index_c">- c -</a>
-</h3><ul>
-<li>CalcDuration()
-: <a class="el" href="classServer.html#a51">Server</a><li>CallCommandHandler()
-: <a class="el" href="classServer.html#a34">Server</a><li>ChangeGECOS()
-: <a class="el" href="classServer.html#a36">Server</a><li>ChangeHost()
-: <a class="el" href="classServer.html#a35">Server</a><li>ChangeUserNick()
-: <a class="el" href="classServer.html#a31">Server</a><li>ChanMode()
-: <a class="el" href="classServer.html#a18">Server</a><li>chanrec()
-: <a class="el" href="classchanrec.html#a8">chanrec</a><li>CheckPing()
-: <a class="el" href="classircd__connector.html#a26">ircd_connector</a><li>classbase()
-: <a class="el" href="classclassbase.html#a0">classbase</a><li>ClearBuffer()
-: <a class="el" href="classuserrec.html#a11">userrec</a>, <a class="el" href="classircd__connector.html#a17">ircd_connector</a><li>CloseConnection()
-: <a class="el" href="classircd__connector.html#a14">ircd_connector</a><li>CloseSocket()
-: <a class="el" href="classuserrec.html#a18">userrec</a><li>CommonChannels()
-: <a class="el" href="classServer.html#a10">Server</a><li>compare()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e3">irc::irc_char_traits</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="classServer.html#a14">Server</a><li>CreateListener()
-: <a class="el" href="classserverrec.html#a3">serverrec</a><li>CreateModule()
-: <a class="el" href="classModuleFactory.html#a2">ModuleFactory</a></ul>
-<h3><a name="index_d">- d -</a>
-</h3><ul>
-<li>DelELine()
-: <a class="el" href="classServer.html#a50">Server</a><li>DelGLine()
-: <a class="el" href="classServer.html#a46">Server</a><li>DelKLine()
-: <a class="el" href="classServer.html#a49">Server</a><li>DelQLine()
-: <a class="el" href="classServer.html#a47">Server</a><li>DelUser()
-: <a class="el" href="classchanrec.html#a6">chanrec</a><li>DelZLine()
-: <a class="el" href="classServer.html#a48">Server</a><li>DNS()
-: <a class="el" href="classDNS.html#a1">DNS</a><li>dns_aton4()
-: <a class="el" href="classDNS.html#d2">DNS</a><li>dns_aton4_r()
-: <a class="el" href="classDNS.html#d11">DNS</a><li>dns_aton4_s()
-: <a class="el" href="classDNS.html#d8">DNS</a><li>dns_getip4()
-: <a class="el" href="classDNS.html#d4">DNS</a><li>dns_getip4list()
-: <a class="el" href="classDNS.html#d5">DNS</a><li>dns_getname4()
-: <a class="el" href="classDNS.html#d6">DNS</a><li>dns_getresult()
-: <a class="el" href="classDNS.html#d7">DNS</a><li>dns_getresult_r()
-: <a class="el" href="classDNS.html#d13">DNS</a><li>dns_getresult_s()
-: <a class="el" href="classDNS.html#d10">DNS</a><li>dns_init()
-: <a class="el" href="classDNS.html#d0">DNS</a><li>dns_init_2()
-: <a class="el" href="classDNS.html#d1">DNS</a><li>dns_ntoa4()
-: <a class="el" href="classDNS.html#d3">DNS</a><li>dns_ntoa4_r()
-: <a class="el" href="classDNS.html#d12">DNS</a><li>dns_ntoa4_s()
-: <a class="el" href="classDNS.html#d9">DNS</a><li>DumpErrors()
-: <a class="el" href="classConfigReader.html#a9">ConfigReader</a></ul>
-<h3><a name="index_e">- e -</a>
-</h3><ul>
-<li>Enumerate()
-: <a class="el" href="classConfigReader.html#a7">ConfigReader</a><li>EnumerateValues()
-: <a class="el" href="classConfigReader.html#a10">ConfigReader</a><li>eq()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e0">irc::irc_char_traits</a><li>Event()
-: <a class="el" href="classEvent.html#a0">Event</a><li>Exists()
-: <a class="el" href="classFileReader.html#a4">FileReader</a><li>Extend()
-: <a class="el" href="classExtensible.html#a0">Extensible</a><li>ExtMode()
-: <a class="el" href="classExtMode.html#a0">ExtMode</a></ul>
-<h3><a name="index_f">- f -</a>
-</h3><ul>
-<li>FileReader()
-: <a class="el" href="classFileReader.html#a1">FileReader</a><li>FileSize()
-: <a class="el" href="classFileReader.html#a6">FileReader</a><li>find()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e4">irc::irc_char_traits</a><li>FindChannel()
-: <a class="el" href="classServer.html#a17">Server</a><li>FindDescriptor()
-: <a class="el" href="classServer.html#a16">Server</a><li>FindHost()
-: <a class="el" href="classserverrec.html#a9">serverrec</a><li>FindModule()
-: <a class="el" href="classServer.html#a60">Server</a><li>FindNick()
-: <a class="el" href="classServer.html#a15">Server</a><li>FlushWriteBuf()
-: <a class="el" href="classuserrec.html#a16">userrec</a>, <a class="el" href="classircd__connector.html#a22">ircd_connector</a><li>FlushWriteBuffers()
-: <a class="el" href="classserverrec.html#a11">serverrec</a><li>ForwardLookup()
-: <a class="el" href="classDNS.html#a4">DNS</a></ul>
-<h3><a name="index_g">- g -</a>
-</h3><ul>
-<li>Get()
-: <a class="el" href="classBoolSet.html#a3">BoolSet</a><li>GetAdmin()
-: <a class="el" href="classServer.html#a23">Server</a><li>GetBuffer()
-: <a class="el" href="classuserrec.html#a12">userrec</a>, <a class="el" href="classircd__connector.html#a18">ircd_connector</a><li>GetData()
-: <a class="el" href="classEvent.html#a1">Event</a>, <a class="el" href="classRequest.html#a1">Request</a><li>GetDescription()
-: <a class="el" href="classircd__connector.html#a9">ircd_connector</a><li>GetDescriptor()
-: <a class="el" href="classircd__connector.html#a4">ircd_connector</a><li>GetDest()
-: <a class="el" href="classRequest.html#a3">Request</a><li>GetError()
-: <a class="el" href="classConfigReader.html#a6">ConfigReader</a><li>GetEventID()
-: <a class="el" href="classEvent.html#a3">Event</a><li>GetExt()
-: <a class="el" href="classExtensible.html#a2">Extensible</a><li>GetFD()
-: <a class="el" href="classDNS.html#a7">DNS</a><li>GetFullHost()
-: <a class="el" href="classuserrec.html#a2">userrec</a><li>GetFullRealHost()
-: <a class="el" href="classuserrec.html#a3">userrec</a><li>GetInviteList()
-: <a class="el" href="classuserrec.html#a17">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#a21">Server</a><li>GetResult()
-: <a class="el" href="classDNS.html#a6">DNS</a><li>GetServerDescription()
-: <a class="el" href="classServer.html#a22">Server</a><li>GetServerIP()
-: <a class="el" href="classircd__connector.html#a8">ircd_connector</a><li>GetServerName()
-: <a class="el" href="classServer.html#a20">Server</a>, <a class="el" href="classircd__connector.html#a2">ircd_connector</a><li>GetServerPort()
-: <a class="el" href="classircd__connector.html#a11">ircd_connector</a><li>GetSource()
-: <a class="el" href="classEvent.html#a2">Event</a>, <a class="el" href="classRequest.html#a2">Request</a><li>GetState()
-: <a class="el" href="classircd__connector.html#a6">ircd_connector</a><li>GetUserCounter()
-: <a class="el" href="classchanrec.html#a4">chanrec</a><li>GetUsers()
-: <a class="el" href="classServer.html#a38">Server</a>, <a class="el" href="classchanrec.html#a7">chanrec</a><li>GetVersion()
-: <a class="el" href="classModule.html#a2">Module</a><li>GetVersionString()
-: <a class="el" href="classircd__connector.html#a20">ircd_connector</a><li>GetWriteError()
-: <a class="el" href="classuserrec.html#a14">userrec</a>, <a class="el" href="classircd__connector.html#a24">ircd_connector</a></ul>
-<h3><a name="index_h">- h -</a>
-</h3><ul>
-<li>HasBufferedOutput()
-: <a class="el" href="classircd__connector.html#a25">ircd_connector</a><li>HasPermission()
-: <a class="el" href="classuserrec.html#a7">userrec</a><li>HasResult()
-: <a class="el" href="classDNS.html#a5">DNS</a><li>HostItem()
-: <a class="el" href="classHostItem.html#a0">HostItem</a></ul>
-<h3><a name="index_i">- i -</a>
-</h3><ul>
-<li>Invert()
-: <a class="el" href="classBoolSet.html#a5">BoolSet</a><li>InviteTo()
-: <a class="el" href="classuserrec.html#a5">userrec</a><li>ircd_connector()
-: <a class="el" href="classircd__connector.html#a0">ircd_connector</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#a13">Server</a><li>IsOnChannel()
-: <a class="el" href="classServer.html#a19">Server</a><li>IsUlined()
-: <a class="el" href="classServer.html#a37">Server</a><li>IsValidMask()
-: <a class="el" href="classServer.html#a52">Server</a></ul>
-<h3><a name="index_j">- j -</a>
-</h3><ul>
-<li>JoinUserToChannel()
-: <a class="el" href="classServer.html#a29">Server</a></ul>
-<h3><a name="index_l">- l -</a>
-</h3><ul>
-<li>LoadFile()
-: <a class="el" href="classFileReader.html#a3">FileReader</a><li>Log()
-: <a class="el" href="classServer.html#a3">Server</a><li>lt()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e2">irc::irc_char_traits</a></ul>
-<h3><a name="index_m">- m -</a>
-</h3><ul>
-<li>MakeOutboundConnection()
-: <a class="el" href="classircd__connector.html#a1">ircd_connector</a><li>MatchText()
-: <a class="el" href="classServer.html#a33">Server</a><li>MeshCheckChan()
-: <a class="el" href="classServer.html#a58">Server</a><li>MeshCheckCommon()
-: <a class="el" href="classServer.html#a59">Server</a><li>MeshCookie()
-: <a class="el" href="classserverrec.html#a5">serverrec</a><li>MeshSendAll()
-: <a class="el" href="classServer.html#a53">Server</a><li>MeshSendAllAlive()
-: <a class="el" href="classServer.html#a55">Server</a><li>MeshSendAllExcept()
-: <a class="el" href="classServer.html#a57">Server</a><li>MeshSendCommon()
-: <a class="el" href="classServer.html#a54">Server</a><li>MeshSendUnicast()
-: <a class="el" href="classServer.html#a56">Server</a><li>Module()
-: <a class="el" href="classModule.html#a0">Module</a><li>ModuleFactory()
-: <a class="el" href="classModuleFactory.html#a0">ModuleFactory</a></ul>
-<h3><a name="index_n">- n -</a>
-</h3><ul>
-<li>ne()
-: <a class="el" href="structirc_1_1irc__char__traits.html#e1">irc::irc_char_traits</a></ul>
-<h3><a name="index_o">- o -</a>
-</h3><ul>
-<li>On005Numeric()
-: <a class="el" href="classModule.html#a27">Module</a><li>OnAccessCheck()
-: <a class="el" href="classModule.html#a24">Module</a><li>OnAddBan()
-: <a class="el" href="classModule.html#a50">Module</a><li>OnBackgroundTimer()
-: <a class="el" href="classModule.html#a30">Module</a><li>OnChangeLocalUserGECOS()
-: <a class="el" href="classModule.html#a42">Module</a><li>OnChangeLocalUserHost()
-: <a class="el" href="classModule.html#a41">Module</a><li>OnChannelSync()
-: <a class="el" href="classModule.html#a26">Module</a><li>OnCheckBan()
-: <a class="el" href="classModule.html#a39">Module</a><li>OnCheckInvite()
-: <a class="el" href="classModule.html#a36">Module</a><li>OnCheckKey()
-: <a class="el" href="classModule.html#a37">Module</a><li>OnCheckLimit()
-: <a class="el" href="classModule.html#a38">Module</a><li>OnCheckReady()
-: <a class="el" href="classModule.html#a33">Module</a><li>OnDelBan()
-: <a class="el" href="classModule.html#a51">Module</a><li>OnEvent()
-: <a class="el" href="classModule.html#a45">Module</a><li>OnExtendedMode()
-: <a class="el" href="classModule.html#a12">Module</a><li>OnGlobalConnect()
-: <a class="el" href="classModule.html#a49">Module</a><li>OnGlobalOper()
-: <a class="el" href="classModule.html#a48">Module</a><li>OnInfo()
-: <a class="el" href="classModule.html#a17">Module</a><li>OnKill()
-: <a class="el" href="classModule.html#a28">Module</a><li>OnLoadModule()
-: <a class="el" href="classModule.html#a29">Module</a><li>OnLocalTopicChange()
-: <a class="el" href="classModule.html#a43">Module</a><li>OnMeshToken()
-: <a class="el" href="classModule.html#a44">Module</a><li>OnOper()
-: <a class="el" href="classModule.html#a16">Module</a><li>OnOperCompare()
-: <a class="el" href="classModule.html#a47">Module</a><li>OnPacketReceive()
-: <a class="el" href="classModule.html#a9">Module</a><li>OnPacketTransmit()
-: <a class="el" href="classModule.html#a8">Module</a><li>OnPreCommand()
-: <a class="el" href="classModule.html#a32">Module</a><li>OnRawMode()
-: <a class="el" href="classModule.html#a35">Module</a><li>OnRawSocketAccept()
-: <a class="el" href="classModule.html#a52">Module</a><li>OnRawSocketClose()
-: <a class="el" href="classModule.html#a54">Module</a><li>OnRawSocketRead()
-: <a class="el" href="classModule.html#a55">Module</a><li>OnRawSocketWrite()
-: <a class="el" href="classModule.html#a53">Module</a><li>OnRehash()
-: <a class="el" href="classModule.html#a10">Module</a><li>OnRequest()
-: <a class="el" href="classModule.html#a46">Module</a><li>OnSendList()
-: <a class="el" href="classModule.html#a31">Module</a><li>OnServerRaw()
-: <a class="el" href="classModule.html#a11">Module</a><li>OnStats()
-: <a class="el" href="classModule.html#a40">Module</a><li>OnUserConnect()
-: <a class="el" href="classModule.html#a3">Module</a><li>OnUserDisconnect()
-: <a class="el" href="classModule.html#a5">Module</a><li>OnUserJoin()
-: <a class="el" href="classModule.html#a6">Module</a><li>OnUserKick()
-: <a class="el" href="classModule.html#a15">Module</a><li>OnUserPart()
-: <a class="el" href="classModule.html#a7">Module</a><li>OnUserPostNick()
-: <a class="el" href="classModule.html#a23">Module</a><li>OnUserPreInvite()
-: <a class="el" href="classModule.html#a19">Module</a><li>OnUserPreJoin()
-: <a class="el" href="classModule.html#a13">Module</a><li>OnUserPreKick()
-: <a class="el" href="classModule.html#a14">Module</a><li>OnUserPreMessage()
-: <a class="el" href="classModule.html#a20">Module</a><li>OnUserPreNick()
-: <a class="el" href="classModule.html#a22">Module</a><li>OnUserPreNotice()
-: <a class="el" href="classModule.html#a21">Module</a><li>OnUserQuit()
-: <a class="el" href="classModule.html#a4">Module</a><li>OnUserRegister()
-: <a class="el" href="classModule.html#a34">Module</a><li>OnUserSync()
-: <a class="el" href="classModule.html#a25">Module</a><li>OnWhois()
-: <a class="el" href="classModule.html#a18">Module</a><li>operator &amp;()
-: <a class="el" href="classBoolSet.html#a8">BoolSet</a><li>operator()()
-: <a class="el" href="structirc_1_1InAddr__HashComp.html#a0">irc::InAddr_HashComp</a>, <a class="el" href="structirc_1_1StrHashComp.html#a0">irc::StrHashComp</a>, <a class="el" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html#a0">nspace::hash&lt; string &gt;</a>, <a class="el" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html#a0">nspace::hash&lt; in_addr &gt;</a><li>operator=()
-: <a class="el" href="classBoolSet.html#a9">BoolSet</a><li>operator==()
-: <a class="el" href="classBoolSet.html#a6">BoolSet</a><li>operator|()
-: <a class="el" href="classBoolSet.html#a7">BoolSet</a></ul>
-<h3><a name="index_p">- p -</a>
-</h3><ul>
-<li>PartUserFromChannel()
-: <a class="el" href="classServer.html#a30">Server</a><li>PseudoToUser()
-: <a class="el" href="classServer.html#a40">Server</a></ul>
-<h3><a name="index_q">- q -</a>
-</h3><ul>
-<li>QuitUser()
-: <a class="el" href="classServer.html#a32">Server</a></ul>
-<h3><a name="index_r">- r -</a>
-</h3><ul>
-<li>ReadData()
-: <a class="el" href="classuserrec.html#a8">userrec</a><li>ReadFlag()
-: <a class="el" href="classConfigReader.html#a4">ConfigReader</a><li>ReadInteger()
-: <a class="el" href="classConfigReader.html#a5">ConfigReader</a><li>ReadValue()
-: <a class="el" href="classConfigReader.html#a3">ConfigReader</a><li>RecvPacket()
-: <a class="el" href="classserverrec.html#a8">serverrec</a><li>RemoveInvite()
-: <a class="el" href="classuserrec.html#a6">userrec</a><li>Request()
-: <a class="el" href="classRequest.html#a0">Request</a><li>ResetPing()
-: <a class="el" href="classircd__connector.html#a27">ircd_connector</a><li>ReverseLookup()
-: <a class="el" href="classDNS.html#a3">DNS</a></ul>
-<h3><a name="index_s">- s -</a>
-</h3><ul>
-<li>Send()
-: <a class="el" href="classServer.html#a4">Server</a>, <a class="el" href="classEvent.html#a4">Event</a>, <a class="el" href="classRequest.html#a4">Request</a>, <a class="el" href="classModuleMessage.html#a0">ModuleMessage</a><li>SendChannel()
-: <a class="el" href="classServer.html#a9">Server</a><li>SendChannelServerNotice()
-: <a class="el" href="classServer.html#a6">Server</a><li>SendCommon()
-: <a class="el" href="classServer.html#a11">Server</a><li>SendFrom()
-: <a class="el" href="classServer.html#a7">Server</a><li>SendMode()
-: <a class="el" href="classServer.html#a27">Server</a><li>SendOpers()
-: <a class="el" href="classServer.html#a2">Server</a><li>SendPacket()
-: <a class="el" href="classserverrec.html#a7">serverrec</a><li>SendServ()
-: <a class="el" href="classServer.html#a5">Server</a><li>SendTo()
-: <a class="el" href="classServer.html#a8">Server</a><li>SendToModeMask()
-: <a class="el" href="classServer.html#a28">Server</a><li>SendWallops()
-: <a class="el" href="classServer.html#a12">Server</a><li>Server()
-: <a class="el" href="classServer.html#a0">Server</a><li>serverrec()
-: <a class="el" href="classserverrec.html#a1">serverrec</a><li>Set()
-: <a class="el" href="classBoolSet.html#a2">BoolSet</a><li>SetCustomMode()
-: <a class="el" href="classchanrec.html#a0">chanrec</a><li>SetCustomModeParam()
-: <a class="el" href="classchanrec.html#a1">chanrec</a><li>SetDescription()
-: <a class="el" href="classircd__connector.html#a10">ircd_connector</a><li>SetDescriptor()
-: <a class="el" href="classircd__connector.html#a5">ircd_connector</a><li>SetHostAddress()
-: <a class="el" href="classircd__connector.html#d0">ircd_connector</a><li>SetHostAndPort()
-: <a class="el" href="classircd__connector.html#a13">ircd_connector</a><li>SetNS()
-: <a class="el" href="classDNS.html#a8">DNS</a><li>SetServerName()
-: <a class="el" href="classircd__connector.html#a3">ircd_connector</a><li>SetServerPort()
-: <a class="el" href="classircd__connector.html#a12">ircd_connector</a><li>SetState()
-: <a class="el" href="classircd__connector.html#a7">ircd_connector</a><li>SetVersionString()
-: <a class="el" href="classircd__connector.html#a19">ircd_connector</a><li>SetWriteError()
-: <a class="el" href="classuserrec.html#a13">userrec</a>, <a class="el" href="classircd__connector.html#a23">ircd_connector</a><li>Shrink()
-: <a class="el" href="classExtensible.html#a1">Extensible</a></ul>
-<h3><a name="index_t">- t -</a>
-</h3><ul>
-<li>TerminateLink()
-: <a class="el" href="classserverrec.html#a6">serverrec</a></ul>
-<h3><a name="index_u">- u -</a>
-</h3><ul>
-<li>ucrec()
-: <a class="el" href="classucrec.html#a0">ucrec</a><li>Unset()
-: <a class="el" href="classBoolSet.html#a4">BoolSet</a><li>userrec()
-: <a class="el" href="classuserrec.html#a0">userrec</a><li>UserToPseudo()
-: <a class="el" href="classServer.html#a39">Server</a></ul>
-<h3><a name="index_v">- v -</a>
-</h3><ul>
-<li>Verify()
-: <a class="el" href="classConfigReader.html#a8">ConfigReader</a><li>Version()
-: <a class="el" href="classVersion.html#a0">Version</a></ul>
-<h3><a name="index_~">- ~ -</a>
-</h3><ul>
-<li>~chanrec()
-: <a class="el" href="classchanrec.html#a9">chanrec</a><li>~classbase()
-: <a class="el" href="classclassbase.html#a1">classbase</a><li>~ConfigReader()
-: <a class="el" href="classConfigReader.html#a2">ConfigReader</a><li>~DNS()
-: <a class="el" href="classDNS.html#a2">DNS</a><li>~FileReader()
-: <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>~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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:22 2005 for InspIRCd by
+: <a class="el" href="classuserrec.html#AddBuffer_28std_3A_3Astring_20a_29">userrec</a><li>AddCommand()
+: <a class="el" href="classServer.html#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">Server</a><li>AddELine()
+: <a class="el" href="classServer.html#AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server</a><li>AddExtendedListMode()
+: <a class="el" href="classServer.html#AddExtendedListMode_28char_20modechar_29">Server</a><li>AddExtendedMode()
+: <a class="el" href="classServer.html#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29">Server</a><li>AddGLine()
+: <a class="el" href="classServer.html#AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server</a><li>AddKLine()
+: <a class="el" href="classServer.html#AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server</a><li>AddQLine()
+: <a class="el" href="classServer.html#AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29">Server</a><li>AddSocket()
+: <a class="el" href="classServer.html#AddSocket_28InspSocket_20_2Asock_29">Server</a><li>AddUser()
+: <a class="el" href="classchanrec.html#AddUser_28char_20_2Acastuser_29">chanrec</a><li>AddWriteBuf()
+: <a class="el" href="classuserrec.html#AddWriteBuf_28std_3A_3Astring_20data_29">userrec</a><li>AddZLine()
+: <a class="el" href="classServer.html#AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29">Server</a><li>Admin()
+: <a class="el" href="classAdmin.html#Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29">Admin</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/functions_func_0x62.html b/docs/module-doc/functions_func_0x62.html
new file mode 100644
index 000000000..19e45c200
--- /dev/null
+++ b/docs/module-doc/functions_func_0x62.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindexHL" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
+<li>BoolSet()
+: <a class="el" href="classBoolSet.html#BoolSet_28char_20bitmask_29">BoolSet</a><li>BufferIsReady()
+: <a class="el" href="classuserrec.html#BufferIsReady_28_29">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x63.html b/docs/module-doc/functions_func_0x63.html
new file mode 100644
index 000000000..d547274d7
--- /dev/null
+++ b/docs/module-doc/functions_func_0x63.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindexHL" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
+<li>CalcDuration()
+: <a class="el" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">Server</a><li>CallCommandHandler()
+: <a class="el" href="classServer.html#CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">Server</a><li>ChangeGECOS()
+: <a class="el" href="classServer.html#ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29">Server</a><li>ChangeHost()
+: <a class="el" href="classServer.html#ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29">Server</a><li>ChangeUserNick()
+: <a class="el" href="classServer.html#ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29">Server</a><li>ChanMode()
+: <a class="el" href="classServer.html#ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">Server</a><li>chanrec()
+: <a class="el" href="classchanrec.html#chanrec_28_29">chanrec</a><li>classbase()
+: <a class="el" href="classclassbase.html#classbase_28_29">classbase</a><li>ClearBuffer()
+: <a class="el" href="classuserrec.html#ClearBuffer_28_29">userrec</a><li>Close()
+: <a class="el" href="classInspSocket.html#Close_28_29">InspSocket</a><li>CloseSocket()
+: <a class="el" href="classuserrec.html#CloseSocket_28_29">userrec</a><li>CommonChannels()
+: <a class="el" href="classServer.html#CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29">Server</a><li>compare()
+: <a class="el" href="structirc_1_1irc__char__traits.html#compare_28const_20char_20_2Astr_31_2C_20const_20char_20_2Astr_32_2C_20size_5Ft_20n_29">irc::irc_char_traits</a><li>ConfigReader()
+: <a class="el" href="classConfigReader.html#ConfigReader_28std_3A_3Astring_20filename_29">ConfigReader</a><li>ConnectClass()
+: <a class="el" href="classConnectClass.html#ConnectClass_28_29">ConnectClass</a><li>connection()
+: <a class="el" href="classconnection.html#connection_28_29">connection</a><li>CountUsers()
+: <a class="el" href="classServer.html#CountUsers_28chanrec_20_2Ac_29">Server</a><li>CreateModule()
+: <a class="el" href="classModuleFactory.html#CreateModule_28_29_3D_30">ModuleFactory</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x64.html b/docs/module-doc/functions_func_0x64.html
new file mode 100644
index 000000000..af6d79643
--- /dev/null
+++ b/docs/module-doc/functions_func_0x64.html
@@ -0,0 +1,43 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindexHL" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
+<li>DelELine()
+: <a class="el" href="classServer.html#DelELine_28std_3A_3Astring_20hostmask_29">Server</a><li>DelGLine()
+: <a class="el" href="classServer.html#DelGLine_28std_3A_3Astring_20hostmask_29">Server</a><li>DelKLine()
+: <a class="el" href="classServer.html#DelKLine_28std_3A_3Astring_20hostmask_29">Server</a><li>DelQLine()
+: <a class="el" href="classServer.html#DelQLine_28std_3A_3Astring_20nickname_29">Server</a><li>DelSocket()
+: <a class="el" href="classServer.html#DelSocket_28InspSocket_20_2Asock_29">Server</a><li>DelUser()
+: <a class="el" href="classchanrec.html#DelUser_28char_20_2Acastuser_29">chanrec</a><li>DelZLine()
+: <a class="el" href="classServer.html#DelZLine_28std_3A_3Astring_20ipaddr_29">Server</a><li>DNS()
+: <a class="el" href="classDNS.html#DNS_28std_3A_3Astring_20dnsserver_29">DNS</a><li>dns_aton4()
+: <a class="el" href="classDNS.html#dns_5Faton_34_28const_20char_20_2Aconst_20ipstring_29">DNS</a><li>dns_aton4_r()
+: <a class="el" href="classDNS.html#dns_5Faton_34_5Fr_28const_20char_20_2Aconst_20ipstring_29">DNS</a><li>dns_aton4_s()
+: <a class="el" href="classDNS.html#dns_5Faton_34_5Fs_28const_20char_20_2Aconst_20ipstring_2C_20in_5Faddr_20_2Aconst_20ip_29">DNS</a><li>dns_getip4()
+: <a class="el" href="classDNS.html#dns_5Fgetip_34_28const_20char_20_2Aconst_20name_29">DNS</a><li>dns_getip4list()
+: <a class="el" href="classDNS.html#dns_5Fgetip_34list_28const_20char_20_2Aconst_20name_29">DNS</a><li>dns_getname4()
+: <a class="el" href="classDNS.html#dns_5Fgetname_34_28const_20in_5Faddr_20_2Aconst_20ip_29">DNS</a><li>dns_getresult()
+: <a class="el" href="classDNS.html#dns_5Fgetresult_28const_20int_20fd_29">DNS</a><li>dns_getresult_r()
+: <a class="el" href="classDNS.html#dns_5Fgetresult_5Fr_28const_20int_20fd_29">DNS</a><li>dns_getresult_s()
+: <a class="el" href="classDNS.html#dns_5Fgetresult_5Fs_28const_20int_20fd_2C_20char_20_2Aconst_20result_29">DNS</a><li>dns_init()
+: <a class="el" href="classDNS.html#dns_5Finit_28_29">DNS</a><li>dns_init_2()
+: <a class="el" href="classDNS.html#dns_5Finit_5F_32_28const_20char_20_2Adnsserver_29">DNS</a><li>dns_ntoa4()
+: <a class="el" href="classDNS.html#dns_5Fntoa_34_28const_20in_5Faddr_20_2Aconst_20ip_29">DNS</a><li>dns_ntoa4_r()
+: <a class="el" href="classDNS.html#dns_5Fntoa_34_5Fr_28const_20in_5Faddr_20_2Aconst_20ip_29">DNS</a><li>dns_ntoa4_s()
+: <a class="el" href="classDNS.html#dns_5Fntoa_34_5Fs_28const_20in_5Faddr_20_2Aconst_20ip_2C_20char_20_2Aconst_20result_29">DNS</a><li>DumpErrors()
+: <a class="el" href="classConfigReader.html#DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29">ConfigReader</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x65.html b/docs/module-doc/functions_func_0x65.html
new file mode 100644
index 000000000..121adfbae
--- /dev/null
+++ b/docs/module-doc/functions_func_0x65.html
@@ -0,0 +1,27 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindexHL" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
+<li>Enumerate()
+: <a class="el" href="classConfigReader.html#Enumerate_28std_3A_3Astring_20tag_29">ConfigReader</a><li>EnumerateValues()
+: <a class="el" href="classConfigReader.html#EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29">ConfigReader</a><li>eq()
+: <a class="el" href="structirc_1_1irc__char__traits.html#eq_28char_20c_31st_2C_20char_20c_32nd_29">irc::irc_char_traits</a><li>Event()
+: <a class="el" href="classEvent.html#Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29">Event</a><li>Exists()
+: <a class="el" href="classFileReader.html#Exists_28_29">FileReader</a><li>Extend()
+: <a class="el" href="classExtensible.html#Extend_28std_3A_3Astring_20key_2C_20char_20_2Ap_29">Extensible</a><li>ExtMode()
+: <a class="el" href="classExtMode.html#ExtMode_28char_20mc_2C_20int_20ty_2C_20bool_20oper_2C_20int_20p_5Fon_2C_20int_20p_5Foff_29">ExtMode</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x66.html b/docs/module-doc/functions_func_0x66.html
new file mode 100644
index 000000000..36983c5b4
--- /dev/null
+++ b/docs/module-doc/functions_func_0x66.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindexHL" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
+<li>FileReader()
+: <a class="el" href="classFileReader.html#FileReader_28std_3A_3Astring_20filename_29">FileReader</a><li>FileSize()
+: <a class="el" href="classFileReader.html#FileSize_28_29">FileReader</a><li>find()
+: <a class="el" href="structirc_1_1irc__char__traits.html#find_28const_20char_20_2As_31_2C_20int_20n_2C_20char_20c_29">irc::irc_char_traits</a><li>FindChannel()
+: <a class="el" href="classServer.html#FindChannel_28std_3A_3Astring_20channel_29">Server</a><li>FindDescriptor()
+: <a class="el" href="classServer.html#FindDescriptor_28int_20socket_29">Server</a><li>FindModule()
+: <a class="el" href="classServer.html#FindModule_28std_3A_3Astring_20name_29">Server</a><li>FindNick()
+: <a class="el" href="classServer.html#FindNick_28std_3A_3Astring_20nick_29">Server</a><li>FlushWriteBuf()
+: <a class="el" href="classuserrec.html#FlushWriteBuf_28_29">userrec</a><li>ForwardLookup()
+: <a class="el" href="classDNS.html#ForwardLookup_28std_3A_3Astring_20host_29">DNS</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x67.html b/docs/module-doc/functions_func_0x67.html
new file mode 100644
index 000000000..de898f1e8
--- /dev/null
+++ b/docs/module-doc/functions_func_0x67.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindexHL" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
+<li>Get()
+: <a class="el" href="classBoolSet.html#Get_28int_20number_29">BoolSet</a><li>GetAdmin()
+: <a class="el" href="classServer.html#GetAdmin_28_29">Server</a><li>GetBuffer()
+: <a class="el" href="classuserrec.html#GetBuffer_28_29">userrec</a><li>GetData()
+: <a class="el" href="classEvent.html#GetData_28_29">Event</a>, <a class="el" href="classRequest.html#GetData_28_29">Request</a><li>GetDest()
+: <a class="el" href="classRequest.html#GetDest_28_29">Request</a><li>GetError()
+: <a class="el" href="classConfigReader.html#GetError_28_29">ConfigReader</a><li>GetEventID()
+: <a class="el" href="classEvent.html#GetEventID_28_29">Event</a><li>GetExt()
+: <a class="el" href="classExtensible.html#GetExt_28std_3A_3Astring_20key_29">Extensible</a><li>GetFD()
+: <a class="el" href="classDNS.html#GetFD_28_29">DNS</a><li>GetFullHost()
+: <a class="el" href="classuserrec.html#GetFullHost_28_29">userrec</a><li>GetFullRealHost()
+: <a class="el" href="classuserrec.html#GetFullRealHost_28_29">userrec</a><li>GetInviteList()
+: <a class="el" href="classuserrec.html#GetInviteList_28_29">userrec</a><li>GetLine()
+: <a class="el" href="classFileReader.html#GetLine_28int_20x_29">FileReader</a><li>GetModeParameter()
+: <a class="el" href="classchanrec.html#GetModeParameter_28char_20mode_29">chanrec</a><li>GetNetworkName()
+: <a class="el" href="classServer.html#GetNetworkName_28_29">Server</a><li>GetResult()
+: <a class="el" href="classDNS.html#GetResult_28_29">DNS</a><li>GetServerDescription()
+: <a class="el" href="classServer.html#GetServerDescription_28_29">Server</a><li>GetServerName()
+: <a class="el" href="classServer.html#GetServerName_28_29">Server</a><li>GetSource()
+: <a class="el" href="classEvent.html#GetSource_28_29">Event</a>, <a class="el" href="classRequest.html#GetSource_28_29">Request</a><li>GetState()
+: <a class="el" href="classInspSocket.html#GetState_28_29">InspSocket</a><li>GetUserCounter()
+: <a class="el" href="classchanrec.html#GetUserCounter_28_29">chanrec</a><li>GetUsers()
+: <a class="el" href="classServer.html#GetUsers_28chanrec_20_2Achan_29">Server</a>, <a class="el" href="classchanrec.html#GetUsers_28_29">chanrec</a><li>GetVersion()
+: <a class="el" href="classModule.html#GetVersion_28_29">Module</a><li>GetWriteError()
+: <a class="el" href="classuserrec.html#GetWriteError_28_29">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x68.html b/docs/module-doc/functions_func_0x68.html
new file mode 100644
index 000000000..3565777cb
--- /dev/null
+++ b/docs/module-doc/functions_func_0x68.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindexHL" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
+<li>HasPermission()
+: <a class="el" href="classuserrec.html#HasPermission_28char_20_2Acommand_29">userrec</a><li>HasResult()
+: <a class="el" href="classDNS.html#HasResult_28_29">DNS</a><li>HostItem()
+: <a class="el" href="classHostItem.html#HostItem_28_29">HostItem</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x69.html b/docs/module-doc/functions_func_0x69.html
new file mode 100644
index 000000000..5b8edf709
--- /dev/null
+++ b/docs/module-doc/functions_func_0x69.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindexHL" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
+<li>InspSocket()
+: <a class="el" href="classInspSocket.html#InspSocket_28std_3A_3Astring_20host_2C_20int_20port_2C_20bool_20listening_2C_20unsigned_20long_20maxtime_29">InspSocket</a><li>Invert()
+: <a class="el" href="classBoolSet.html#Invert_28int_20number_29">BoolSet</a><li>InviteTo()
+: <a class="el" href="classuserrec.html#InviteTo_28char_20_2Achannel_29">userrec</a><li>IsCustomModeSet()
+: <a class="el" href="classchanrec.html#IsCustomModeSet_28char_20mode_29">chanrec</a><li>IsInvited()
+: <a class="el" href="classuserrec.html#IsInvited_28char_20_2Achannel_29">userrec</a><li>IsNick()
+: <a class="el" href="classServer.html#IsNick_28std_3A_3Astring_20nick_29">Server</a><li>IsOnChannel()
+: <a class="el" href="classServer.html#IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">Server</a><li>IsUlined()
+: <a class="el" href="classServer.html#IsUlined_28std_3A_3Astring_20server_29">Server</a><li>IsValidMask()
+: <a class="el" href="classServer.html#IsValidMask_28std_3A_3Astring_20mask_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x6a.html b/docs/module-doc/functions_func_0x6a.html
new file mode 100644
index 000000000..c49dde6f6
--- /dev/null
+++ b/docs/module-doc/functions_func_0x6a.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindexHL" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_j">- j -</a></h3><ul>
+<li>JoinUserToChannel()
+: <a class="el" href="classServer.html#JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x6c.html b/docs/module-doc/functions_func_0x6c.html
new file mode 100644
index 000000000..7ac05c2f0
--- /dev/null
+++ b/docs/module-doc/functions_func_0x6c.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindexHL" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
+<li>LoadFile()
+: <a class="el" href="classFileReader.html#LoadFile_28std_3A_3Astring_20filename_29">FileReader</a><li>Log()
+: <a class="el" href="classServer.html#Log_28int_20level_2C_20std_3A_3Astring_20s_29">Server</a><li>lt()
+: <a class="el" href="structirc_1_1irc__char__traits.html#lt_28char_20c_31st_2C_20char_20c_32nd_29">irc::irc_char_traits</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x6d.html b/docs/module-doc/functions_func_0x6d.html
new file mode 100644
index 000000000..f40bb565c
--- /dev/null
+++ b/docs/module-doc/functions_func_0x6d.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindexHL" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
+<li>MatchText()
+: <a class="el" href="classServer.html#MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29">Server</a><li>Module()
+: <a class="el" href="classModule.html#Module_28_29">Module</a><li>ModuleFactory()
+: <a class="el" href="classModuleFactory.html#ModuleFactory_28_29">ModuleFactory</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x6e.html b/docs/module-doc/functions_func_0x6e.html
new file mode 100644
index 000000000..197fe5030
--- /dev/null
+++ b/docs/module-doc/functions_func_0x6e.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindexHL" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
+<li>ne()
+: <a class="el" href="structirc_1_1irc__char__traits.html#ne_28char_20c_31st_2C_20char_20c_32nd_29">irc::irc_char_traits</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x6f.html b/docs/module-doc/functions_func_0x6f.html
new file mode 100644
index 000000000..630c59b4f
--- /dev/null
+++ b/docs/module-doc/functions_func_0x6f.html
@@ -0,0 +1,85 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindexHL" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
+<li>On005Numeric()
+: <a class="el" href="classModule.html#On_30_30_35Numeric_28std_3A_3Astring_20_26output_29">Module</a><li>OnAccessCheck()
+: <a class="el" href="classModule.html#OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29">Module</a><li>OnAddBan()
+: <a class="el" href="classModule.html#OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">Module</a><li>OnBackgroundTimer()
+: <a class="el" href="classModule.html#OnBackgroundTimer_28time_5Ft_20curtime_29">Module</a><li>OnChangeLocalUserGECOS()
+: <a class="el" href="classModule.html#OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">Module</a><li>OnChangeLocalUserHost()
+: <a class="el" href="classModule.html#OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">Module</a><li>OnChannelSync()
+: <a class="el" href="classModule.html#OnChannelSync_28chanrec_20_2Achan_29">Module</a><li>OnCheckBan()
+: <a class="el" href="classModule.html#OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module</a><li>OnCheckInvite()
+: <a class="el" href="classModule.html#OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module</a><li>OnCheckKey()
+: <a class="el" href="classModule.html#OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29">Module</a><li>OnCheckLimit()
+: <a class="el" href="classModule.html#OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module</a><li>OnCheckReady()
+: <a class="el" href="classModule.html#OnCheckReady_28userrec_20_2Auser_29">Module</a><li>OnClose()
+: <a class="el" href="classInspSocket.html#OnClose_28_29">InspSocket</a><li>OnConnected()
+: <a class="el" href="classInspSocket.html#OnConnected_28_29">InspSocket</a><li>OnDataReady()
+: <a class="el" href="classInspSocket.html#OnDataReady_28_29">InspSocket</a><li>OnDelBan()
+: <a class="el" href="classModule.html#OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">Module</a><li>OnDisconnect()
+: <a class="el" href="classInspSocket.html#OnDisconnect_28_29">InspSocket</a><li>OnError()
+: <a class="el" href="classInspSocket.html#OnError_28InspSocketError_20e_29">InspSocket</a><li>OnEvent()
+: <a class="el" href="classModule.html#OnEvent_28Event_20_2Aevent_29">Module</a><li>OnExtendedMode()
+: <a class="el" href="classModule.html#OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29">Module</a><li>OnGlobalConnect()
+: <a class="el" href="classModule.html#OnGlobalConnect_28userrec_20_2Auser_29">Module</a><li>OnGlobalOper()
+: <a class="el" href="classModule.html#OnGlobalOper_28userrec_20_2Auser_29">Module</a><li>OnIncomingConnection()
+: <a class="el" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">InspSocket</a><li>OnInfo()
+: <a class="el" href="classModule.html#OnInfo_28userrec_20_2Auser_29">Module</a><li>OnKill()
+: <a class="el" href="classModule.html#OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29">Module</a><li>OnLoadModule()
+: <a class="el" href="classModule.html#OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">Module</a><li>OnLocalTopicChange()
+: <a class="el" href="classModule.html#OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29">Module</a><li>OnOper()
+: <a class="el" href="classModule.html#OnOper_28userrec_20_2Auser_29">Module</a><li>OnOperCompare()
+: <a class="el" href="classModule.html#OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29">Module</a><li>OnPacketReceive()
+: <a class="el" href="classModule.html#OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">Module</a><li>OnPacketTransmit()
+: <a class="el" href="classModule.html#OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">Module</a><li>OnPreCommand()
+: <a class="el" href="classModule.html#OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">Module</a><li>OnRawMode()
+: <a class="el" href="classModule.html#OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29">Module</a><li>OnRawSocketAccept()
+: <a class="el" href="classModule.html#OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29">Module</a><li>OnRawSocketClose()
+: <a class="el" href="classModule.html#OnRawSocketClose_28int_20fd_29">Module</a><li>OnRawSocketRead()
+: <a class="el" href="classModule.html#OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29">Module</a><li>OnRawSocketWrite()
+: <a class="el" href="classModule.html#OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29">Module</a><li>OnRehash()
+: <a class="el" href="classModule.html#OnRehash_28_29">Module</a><li>OnRequest()
+: <a class="el" href="classModule.html#OnRequest_28Request_20_2Arequest_29">Module</a><li>OnSendList()
+: <a class="el" href="classModule.html#OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29">Module</a><li>OnServerRaw()
+: <a class="el" href="classModule.html#OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29">Module</a><li>OnStats()
+: <a class="el" href="classModule.html#OnStats_28char_20symbol_29">Module</a><li>OnTimeout()
+: <a class="el" href="classInspSocket.html#OnTimeout_28_29">InspSocket</a><li>OnUnloadModule()
+: <a class="el" href="classModule.html#OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">Module</a><li>OnUserConnect()
+: <a class="el" href="classModule.html#OnUserConnect_28userrec_20_2Auser_29">Module</a><li>OnUserDisconnect()
+: <a class="el" href="classModule.html#OnUserDisconnect_28userrec_20_2Auser_29">Module</a><li>OnUserJoin()
+: <a class="el" href="classModule.html#OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">Module</a><li>OnUserKick()
+: <a class="el" href="classModule.html#OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">Module</a><li>OnUserPart()
+: <a class="el" href="classModule.html#OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">Module</a><li>OnUserPostNick()
+: <a class="el" href="classModule.html#OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29">Module</a><li>OnUserPreInvite()
+: <a class="el" href="classModule.html#OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29">Module</a><li>OnUserPreJoin()
+: <a class="el" href="classModule.html#OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29">Module</a><li>OnUserPreKick()
+: <a class="el" href="classModule.html#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">Module</a><li>OnUserPreMessage()
+: <a class="el" href="classModule.html#OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">Module</a><li>OnUserPreNick()
+: <a class="el" href="classModule.html#OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29">Module</a><li>OnUserPreNotice()
+: <a class="el" href="classModule.html#OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">Module</a><li>OnUserQuit()
+: <a class="el" href="classModule.html#OnUserQuit_28userrec_20_2Auser_29">Module</a><li>OnUserRegister()
+: <a class="el" href="classModule.html#OnUserRegister_28userrec_20_2Auser_29">Module</a><li>OnUserSync()
+: <a class="el" href="classModule.html#OnUserSync_28userrec_20_2Auser_29">Module</a><li>OnWhois()
+: <a class="el" href="classModule.html#OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29">Module</a><li>operator &amp;()
+: <a class="el" href="classBoolSet.html#operator_20_26_28BoolSet_20other_29">BoolSet</a><li>operator()()
+: <a class="el" href="structirc_1_1InAddr__HashComp.html#operator_28_29_28const_20in_5Faddr_20_26s_31_2C_20const_20in_5Faddr_20_26s_32_29_20const_20">irc::InAddr_HashComp</a>, <a class="el" href="structirc_1_1StrHashComp.html#operator_28_29_28const_20std_3A_3Astring_20_26s_31_2C_20const_20std_3A_3Astring_20_26s_32_29_20const_20">irc::StrHashComp</a>, <a class="el" href="structnspace_1_1hash_3_01string_01_4.html#operator_28_29_28const_20string_20_26s_29_20const_20">nspace::hash&lt; string &gt;</a>, <a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html#operator_28_29_28const_20struct_20in_5Faddr_20_26a_29_20const_20">nspace::hash&lt; in_addr &gt;</a><li>operator=()
+: <a class="el" href="classBoolSet.html#operator_3D_28BoolSet_20other_29">BoolSet</a><li>operator==()
+: <a class="el" href="classBoolSet.html#operator_3D_3D_28BoolSet_20other_29">BoolSet</a><li>operator|()
+: <a class="el" href="classBoolSet.html#operator_7C_28BoolSet_20other_29">BoolSet</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x70.html b/docs/module-doc/functions_func_0x70.html
new file mode 100644
index 000000000..aaaea6e6b
--- /dev/null
+++ b/docs/module-doc/functions_func_0x70.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindexHL" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
+<li>PartUserFromChannel()
+: <a class="el" href="classServer.html#PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29">Server</a><li>Poll()
+: <a class="el" href="classInspSocket.html#Poll_28_29">InspSocket</a><li>PseudoToUser()
+: <a class="el" href="classServer.html#PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x71.html b/docs/module-doc/functions_func_0x71.html
new file mode 100644
index 000000000..474f5cd1b
--- /dev/null
+++ b/docs/module-doc/functions_func_0x71.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindexHL" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_q">- q -</a></h3><ul>
+<li>QuitUser()
+: <a class="el" href="classServer.html#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x72.html b/docs/module-doc/functions_func_0x72.html
new file mode 100644
index 000000000..2ae4d4f6e
--- /dev/null
+++ b/docs/module-doc/functions_func_0x72.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindexHL" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
+<li>Read()
+: <a class="el" href="classInspSocket.html#Read_28_29">InspSocket</a><li>ReadData()
+: <a class="el" href="classuserrec.html#ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29">userrec</a><li>ReadFlag()
+: <a class="el" href="classConfigReader.html#ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ConfigReader</a><li>ReadInteger()
+: <a class="el" href="classConfigReader.html#ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29">ConfigReader</a><li>ReadValue()
+: <a class="el" href="classConfigReader.html#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ConfigReader</a><li>RemoveInvite()
+: <a class="el" href="classuserrec.html#RemoveInvite_28char_20_2Achannel_29">userrec</a><li>Request()
+: <a class="el" href="classRequest.html#Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29">Request</a><li>ReverseLookup()
+: <a class="el" href="classDNS.html#ReverseLookup_28std_3A_3Astring_20ip_29">DNS</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x73.html b/docs/module-doc/functions_func_0x73.html
new file mode 100644
index 000000000..69f1e7fe9
--- /dev/null
+++ b/docs/module-doc/functions_func_0x73.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindexHL" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
+<li>Send()
+: <a class="el" href="classServer.html#Send_28int_20Socket_2C_20std_3A_3Astring_20s_29">Server</a>, <a class="el" href="classEvent.html#Send_28_29">Event</a>, <a class="el" href="classRequest.html#Send_28_29">Request</a>, <a class="el" href="classModuleMessage.html#Send_28_29_3D_30">ModuleMessage</a><li>SendChannel()
+: <a class="el" href="classServer.html#SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29">Server</a><li>SendChannelServerNotice()
+: <a class="el" href="classServer.html#SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29">Server</a><li>SendCommon()
+: <a class="el" href="classServer.html#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29">Server</a><li>SendFrom()
+: <a class="el" href="classServer.html#SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29">Server</a><li>SendMode()
+: <a class="el" href="classServer.html#SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">Server</a><li>SendOpers()
+: <a class="el" href="classServer.html#SendOpers_28std_3A_3Astring_20s_29">Server</a><li>SendServ()
+: <a class="el" href="classServer.html#SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29">Server</a><li>SendTo()
+: <a class="el" href="classServer.html#SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29">Server</a><li>SendToModeMask()
+: <a class="el" href="classServer.html#SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29">Server</a><li>SendWallops()
+: <a class="el" href="classServer.html#SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29">Server</a><li>Server()
+: <a class="el" href="classServer.html#Server_28_29">Server</a><li>Set()
+: <a class="el" href="classBoolSet.html#Set_28int_20number_29">BoolSet</a><li>SetCustomMode()
+: <a class="el" href="classchanrec.html#SetCustomMode_28char_20mode_2C_20bool_20mode_5Fon_29">chanrec</a><li>SetCustomModeParam()
+: <a class="el" href="classchanrec.html#SetCustomModeParam_28char_20mode_2C_20char_20_2Aparameter_2C_20bool_20mode_5Fon_29">chanrec</a><li>SetNS()
+: <a class="el" href="classDNS.html#SetNS_28std_3A_3Astring_20dnsserver_29">DNS</a><li>SetState()
+: <a class="el" href="classInspSocket.html#SetState_28InspSocketState_20s_29">InspSocket</a><li>SetWriteError()
+: <a class="el" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">userrec</a><li>Shrink()
+: <a class="el" href="classExtensible.html#Shrink_28std_3A_3Astring_20key_29">Extensible</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x75.html b/docs/module-doc/functions_func_0x75.html
new file mode 100644
index 000000000..d61b10e31
--- /dev/null
+++ b/docs/module-doc/functions_func_0x75.html
@@ -0,0 +1,24 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindexHL" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
+<li>ucrec()
+: <a class="el" href="classucrec.html#ucrec_28_29">ucrec</a><li>Unset()
+: <a class="el" href="classBoolSet.html#Unset_28int_20number_29">BoolSet</a><li>userrec()
+: <a class="el" href="classuserrec.html#userrec_28_29">userrec</a><li>UserToPseudo()
+: <a class="el" href="classServer.html#UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29">Server</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x76.html b/docs/module-doc/functions_func_0x76.html
new file mode 100644
index 000000000..b427c35b2
--- /dev/null
+++ b/docs/module-doc/functions_func_0x76.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindexHL" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
+<li>Verify()
+: <a class="el" href="classConfigReader.html#Verify_28_29">ConfigReader</a><li>Version()
+: <a class="el" href="classVersion.html#Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29">Version</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x77.html b/docs/module-doc/functions_func_0x77.html
new file mode 100644
index 000000000..56f4c17de
--- /dev/null
+++ b/docs/module-doc/functions_func_0x77.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindexHL" href="functions_func_0x77.html#index_w">w</a> | <a class="qindex" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
+<li>Write()
+: <a class="el" href="classInspSocket.html#Write_28std_3A_3Astring_20data_29">InspSocket</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_func_0x7e.html b/docs/module-doc/functions_func_0x7e.html
new file mode 100644
index 000000000..78afe00e9
--- /dev/null
+++ b/docs/module-doc/functions_func_0x7e.html
@@ -0,0 +1,33 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members - Functions</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindex" href="functions.html">All</a> | <a class="qindexHL" href="functions_func.html">Functions</a> | <a class="qindex" href="functions_vars.html">Variables</a></div>
+<div class="qindex"><a class="qindex" href="functions_func.html#index_a">a</a> | <a class="qindex" href="functions_func_0x62.html#index_b">b</a> | <a class="qindex" href="functions_func_0x63.html#index_c">c</a> | <a class="qindex" href="functions_func_0x64.html#index_d">d</a> | <a class="qindex" href="functions_func_0x65.html#index_e">e</a> | <a class="qindex" href="functions_func_0x66.html#index_f">f</a> | <a class="qindex" href="functions_func_0x67.html#index_g">g</a> | <a class="qindex" href="functions_func_0x68.html#index_h">h</a> | <a class="qindex" href="functions_func_0x69.html#index_i">i</a> | <a class="qindex" href="functions_func_0x6a.html#index_j">j</a> | <a class="qindex" href="functions_func_0x6c.html#index_l">l</a> | <a class="qindex" href="functions_func_0x6d.html#index_m">m</a> | <a class="qindex" href="functions_func_0x6e.html#index_n">n</a> | <a class="qindex" href="functions_func_0x6f.html#index_o">o</a> | <a class="qindex" href="functions_func_0x70.html#index_p">p</a> | <a class="qindex" href="functions_func_0x71.html#index_q">q</a> | <a class="qindex" href="functions_func_0x72.html#index_r">r</a> | <a class="qindex" href="functions_func_0x73.html#index_s">s</a> | <a class="qindex" href="functions_func_0x75.html#index_u">u</a> | <a class="qindex" href="functions_func_0x76.html#index_v">v</a> | <a class="qindex" href="functions_func_0x77.html#index_w">w</a> | <a class="qindexHL" href="functions_func_0x7e.html#index_~">~</a></div>
+
+<p>
+
+<p>
+<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul>
+<li>~chanrec()
+: <a class="el" href="classchanrec.html#_7Echanrec_28_29">chanrec</a><li>~classbase()
+: <a class="el" href="classclassbase.html#_7Eclassbase_28_29">classbase</a><li>~ConfigReader()
+: <a class="el" href="classConfigReader.html#_7EConfigReader_28_29">ConfigReader</a><li>~DNS()
+: <a class="el" href="classDNS.html#_7EDNS_28_29">DNS</a><li>~FileReader()
+: <a class="el" href="classFileReader.html#_7EFileReader_28_29">FileReader</a><li>~HostItem()
+: <a class="el" href="classHostItem.html#_7EHostItem_28_29">HostItem</a><li>~InspSocket()
+: <a class="el" href="classInspSocket.html#_7EInspSocket_28_29">InspSocket</a><li>~Module()
+: <a class="el" href="classModule.html#_7EModule_28_29">Module</a><li>~ModuleFactory()
+: <a class="el" href="classModuleFactory.html#_7EModuleFactory_28_29">ModuleFactory</a><li>~ModuleMessage()
+: <a class="el" href="classModuleMessage.html#_7EModuleMessage_28_29">ModuleMessage</a><li>~Server()
+: <a class="el" href="classServer.html#_7EServer_28_29">Server</a><li>~ucrec()
+: <a class="el" href="classucrec.html#_7Eucrec_28_29">ucrec</a><li>~userrec()
+: <a class="el" href="classuserrec.html#_7Euserrec_28_29">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/functions_vars.html b/docs/module-doc/functions_vars.html
index ab822c58f..e3cde11f2 100644
--- a/docs/module-doc/functions_vars.html
+++ b/docs/module-doc/functions_vars.html
@@ -1,198 +1,163 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Compound Member Index</title>
+<title>InspIRCd: Class Members - Variables</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindexHL" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindex" href="functions.html">All</a> | <a class="qindex" href="functions_func.html">Functions</a> | <a class="qindexHL" href="functions_vars.html">Variables</a></div>
-<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_h">h</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_j">j</a> | <a class="qindex" href="#index_k">k</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_o">o</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_u">u</a> | <a class="qindex" href="#index_v">v</a> | <a class="qindex" href="#index_w">w</a></div>
+<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_h">h</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_k">k</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_o">o</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_u">u</a> | <a class="qindex" href="#index_w">w</a></div>
<p>
<p>
-<h3><a name="index_a">- a -</a>
-</h3><ul>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
<li>addr
-: <a class="el" href="classircd__connector.html#r0">ircd_connector</a><li>age
-: <a class="el" href="classclassbase.html#o0">classbase</a><li>awaymsg
-: <a class="el" href="classuserrec.html#o7">userrec</a></ul>
-<h3><a name="index_b">- b -</a>
-</h3><ul>
+: <a class="el" href="classInspSocket.html#addr">InspSocket</a><li>addy
+: <a class="el" href="classInspSocket.html#addy">InspSocket</a><li>age
+: <a class="el" href="classclassbase.html#age">classbase</a><li>awaymsg
+: <a class="el" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">userrec</a></ul>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
<li>bans
-: <a class="el" href="classchanrec.html#o10">chanrec</a><li>binarymodes
-: <a class="el" href="classchanrec.html#o9">chanrec</a><li>binip
-: <a class="el" href="classDNS.html#r0">DNS</a><li>bits
-: <a class="el" href="classBoolSet.html#r0">BoolSet</a><li>Build
-: <a class="el" href="classVersion.html#o3">Version</a><li>bytes_in
-: <a class="el" href="classconnection.html#o3">connection</a><li>bytes_out
-: <a class="el" href="classconnection.html#o4">connection</a></ul>
-<h3><a name="index_c">- c -</a>
-</h3><ul>
+: <a class="el" href="classchanrec.html#bans">chanrec</a><li>binarymodes
+: <a class="el" href="classchanrec.html#binarymodes">chanrec</a><li>binip
+: <a class="el" href="classDNS.html#binip">DNS</a><li>bits
+: <a class="el" href="classBoolSet.html#bits">BoolSet</a><li>Build
+: <a class="el" href="classVersion.html#Build">Version</a><li>bytes_in
+: <a class="el" href="classconnection.html#bytes_5Fin">connection</a><li>bytes_out
+: <a class="el" href="classconnection.html#bytes_5Fout">connection</a></ul>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
<li>cache
-: <a class="el" href="classConfigReader.html#p0">ConfigReader</a><li>channel
-: <a class="el" href="classInvited.html#o0">Invited</a>, <a class="el" href="classucrec.html#o1">ucrec</a>, <a class="el" href="classModeParameter.html#o2">ModeParameter</a><li>chans
-: <a class="el" href="classuserrec.html#o5">userrec</a><li>cmds_in
-: <a class="el" href="classconnection.html#o5">connection</a><li>cmds_out
-: <a class="el" href="classconnection.html#o6">connection</a><li>command
-: <a class="el" href="classcommand__t.html#o0">command_t</a><li>connectors
-: <a class="el" href="classserverrec.html#o11">serverrec</a><li>created
-: <a class="el" href="classchanrec.html#o4">chanrec</a><li>custom_modes
-: <a class="el" href="classchanrec.html#o1">chanrec</a></ul>
-<h3><a name="index_d">- d -</a>
-</h3><ul>
+: <a class="el" href="classConfigReader.html#cache">ConfigReader</a><li>channel
+: <a class="el" href="classInvited.html#channel_5BCHANMAX_5D">Invited</a>, <a class="el" href="classucrec.html#channel">ucrec</a>, <a class="el" href="classModeParameter.html#channel_5BCHANMAX_5D">ModeParameter</a><li>chans
+: <a class="el" href="classuserrec.html#chans_5BMAXCHANS_5D">userrec</a><li>client
+: <a class="el" href="classInspSocket.html#client">InspSocket</a><li>cmds_in
+: <a class="el" href="classconnection.html#cmds_5Fin">connection</a><li>cmds_out
+: <a class="el" href="classconnection.html#cmds_5Fout">connection</a><li>command
+: <a class="el" href="classcommand__t.html#command_5BMAXBUF_5D">command_t</a><li>created
+: <a class="el" href="classchanrec.html#created">chanrec</a><li>custom_modes
+: <a class="el" href="classchanrec.html#custom_5Fmodes_5BMAXMODES_5D">chanrec</a></ul>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
<li>data
-: <a class="el" href="classEvent.html#p0">Event</a>, <a class="el" href="classRequest.html#p0">Request</a>, <a class="el" href="classHostItem.html#o2">HostItem</a><li>description
-: <a class="el" href="classserverrec.html#o8">serverrec</a>, <a class="el" href="classircd__connector.html#r3">ircd_connector</a><li>dest
-: <a class="el" href="classRequest.html#p2">Request</a><li>dhost
-: <a class="el" href="classWhoWasUser.html#o2">WhoWasUser</a>, <a class="el" href="classuserrec.html#o2">userrec</a><li>dns_done
-: <a class="el" href="classuserrec.html#o11">userrec</a><li>duration
-: <a class="el" href="classXLine.html#o1">XLine</a></ul>
-<h3><a name="index_e">- e -</a>
-</h3><ul>
+: <a class="el" href="classEvent.html#data">Event</a>, <a class="el" href="classRequest.html#data">Request</a>, <a class="el" href="classHostItem.html#data_5BMAXBUF_5D">HostItem</a><li>dest
+: <a class="el" href="classRequest.html#dest">Request</a><li>dhost
+: <a class="el" href="classWhoWasUser.html#dhost_5B_31_36_30_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#dhost_5B_31_36_30_5D">userrec</a><li>dns_done
+: <a class="el" href="classuserrec.html#dns_5Fdone">userrec</a><li>duration
+: <a class="el" href="classXLine.html#duration">XLine</a></ul>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
<li>Email
-: <a class="el" href="classAdmin.html#o1">Admin</a><li>error
-: <a class="el" href="classConfigReader.html#p3">ConfigReader</a><li>errorlog
-: <a class="el" href="classConfigReader.html#p1">ConfigReader</a><li>Extension_Items
-: <a class="el" href="classExtensible.html#r0">Extensible</a></ul>
-<h3><a name="index_f">- f -</a>
-</h3><ul>
+: <a class="el" href="classAdmin.html#Email">Admin</a><li>error
+: <a class="el" href="classConfigReader.html#error">ConfigReader</a><li>errorlog
+: <a class="el" href="classConfigReader.html#errorlog">ConfigReader</a><li>Extension_Items
+: <a class="el" href="classExtensible.html#Extension_5FItems">Extensible</a></ul>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
<li>fc
-: <a class="el" href="classFileReader.html#r0">FileReader</a><li>fd
-: <a class="el" href="classDNS.html#r3">DNS</a>, <a class="el" href="classconnection.html#o0">connection</a>, <a class="el" href="classircd__connector.html#r1">ircd_connector</a><li>Flags
-: <a class="el" href="classVersion.html#o4">Version</a><li>flags_needed
-: <a class="el" href="classcommand__t.html#o2">command_t</a><li>flood
-: <a class="el" href="classuserrec.html#o8">userrec</a>, <a class="el" href="classConnectClass.html#o2">ConnectClass</a><li>fullname
-: <a class="el" href="classWhoWasUser.html#o4">WhoWasUser</a>, <a class="el" href="classuserrec.html#o3">userrec</a></ul>
-<h3><a name="index_h">- h -</a>
-</h3><ul>
+: <a class="el" href="classFileReader.html#fc">FileReader</a><li>fd
+: <a class="el" href="classInspSocket.html#fd">InspSocket</a>, <a class="el" href="classDNS.html#fd">DNS</a>, <a class="el" href="classconnection.html#fd">connection</a><li>Flags
+: <a class="el" href="classVersion.html#Flags">Version</a><li>flags_needed
+: <a class="el" href="classcommand__t.html#flags_5Fneeded">command_t</a><li>flood
+: <a class="el" href="classuserrec.html#flood">userrec</a>, <a class="el" href="classConnectClass.html#flood">ConnectClass</a><li>fullname
+: <a class="el" href="classWhoWasUser.html#fullname_5BMAXGECOS_2B_31_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">userrec</a></ul>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
<li>handler_function
-: <a class="el" href="classcommand__t.html#o1">command_t</a><li>haspassed
-: <a class="el" href="classconnection.html#o7">connection</a><li>hops_away
-: <a class="el" href="classserverrec.html#o5">serverrec</a><li>host
-: <a class="el" href="classWhoWasUser.html#o3">WhoWasUser</a>, <a class="el" href="classConnectClass.html#o3">ConnectClass</a>, <a class="el" href="classconnection.html#o1">connection</a>, <a class="el" href="classircd__connector.html#o1">ircd_connector</a><li>hostmask
-: <a class="el" href="classELine.html#o0">ELine</a>, <a class="el" href="classGLine.html#o0">GLine</a>, <a class="el" href="classKLine.html#o0">KLine</a></ul>
-<h3><a name="index_i">- i -</a>
-</h3><ul>
-<li>id
-: <a class="el" href="classEvent.html#p2">Event</a><li>ident
-: <a class="el" href="classWhoWasUser.html#o1">WhoWasUser</a>, <a class="el" href="classuserrec.html#o1">userrec</a><li>idle_lastmsg
-: <a class="el" href="classconnection.html#o12">connection</a><li>internal_userlist
-: <a class="el" href="classchanrec.html#o2">chanrec</a><li>invites
-: <a class="el" href="classuserrec.html#r0">userrec</a><li>ip
-: <a class="el" href="structdns__ip4list.html#o0">dns_ip4list</a>, <a class="el" href="classconnection.html#o2">connection</a><li>ipaddr
-: <a class="el" href="classZLine.html#o0">ZLine</a><li>ircdbuffer
-: <a class="el" href="classircd__connector.html#o0">ircd_connector</a><li>is_global
-: <a class="el" href="classQLine.html#o1">QLine</a>, <a class="el" href="classZLine.html#o1">ZLine</a></ul>
-<h3><a name="index_j">- j -</a>
-</h3><ul>
-<li>jupiter
-: <a class="el" href="classserverrec.html#o7">serverrec</a></ul>
-<h3><a name="index_k">- k -</a>
-</h3><ul>
+: <a class="el" href="classcommand__t.html#handler_5Ffunction">command_t</a><li>haspassed
+: <a class="el" href="classconnection.html#haspassed">connection</a><li>host
+: <a class="el" href="classWhoWasUser.html#host_5B_31_36_30_5D">WhoWasUser</a>, <a class="el" href="classConnectClass.html#host_5BMAXBUF_5D">ConnectClass</a>, <a class="el" href="classInspSocket.html#host">InspSocket</a>, <a class="el" href="classconnection.html#host_5B_31_36_30_5D">connection</a><li>hostmask
+: <a class="el" href="classELine.html#hostmask_5B_32_30_30_5D">ELine</a>, <a class="el" href="classGLine.html#hostmask_5B_32_30_30_5D">GLine</a>, <a class="el" href="classKLine.html#hostmask_5B_32_30_30_5D">KLine</a></ul>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
+<li>ibuf
+: <a class="el" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">InspSocket</a><li>id
+: <a class="el" href="classEvent.html#id">Event</a><li>ident
+: <a class="el" href="classWhoWasUser.html#ident_5BIDENTMAX_2B_31_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">userrec</a><li>idle_lastmsg
+: <a class="el" href="classconnection.html#idle_5Flastmsg">connection</a><li>internal_userlist
+: <a class="el" href="classchanrec.html#internal_5Fuserlist">chanrec</a><li>invites
+: <a class="el" href="classuserrec.html#invites">userrec</a><li>ip
+: <a class="el" href="structdns__ip4list.html#ip">dns_ip4list</a>, <a class="el" href="classconnection.html#ip_5B_31_36_5D">connection</a><li>ipaddr
+: <a class="el" href="classZLine.html#ipaddr_5B_34_30_5D">ZLine</a><li>is_global
+: <a class="el" href="classQLine.html#is_5Fglobal">QLine</a>, <a class="el" href="classZLine.html#is_5Fglobal">ZLine</a></ul>
+<h3><a class="anchor" name="index_k">- k -</a></h3><ul>
<li>key
-: <a class="el" href="classchanrec.html#o8">chanrec</a></ul>
-<h3><a name="index_l">- l -</a>
-</h3><ul>
+: <a class="el" href="classchanrec.html#key_5B_33_32_5D">chanrec</a></ul>
+<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
<li>lastping
-: <a class="el" href="classconnection.html#o10">connection</a><li>limit
-: <a class="el" href="classchanrec.html#o7">chanrec</a><li>lines_in
-: <a class="el" href="classuserrec.html#o16">userrec</a><li>list
-: <a class="el" href="classExtMode.html#o5">ExtMode</a></ul>
-<h3><a name="index_m">- m -</a>
-</h3><ul>
+: <a class="el" href="classconnection.html#lastping">connection</a><li>length
+: <a class="el" href="classInspSocket.html#length">InspSocket</a><li>limit
+: <a class="el" href="classchanrec.html#limit">chanrec</a><li>lines_in
+: <a class="el" href="classuserrec.html#lines_5Fin">userrec</a><li>list
+: <a class="el" href="classExtMode.html#list">ExtMode</a></ul>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
<li>Major
-: <a class="el" href="classVersion.html#o0">Version</a><li>min_params
-: <a class="el" href="classcommand__t.html#o3">command_t</a><li>Minor
-: <a class="el" href="classVersion.html#o1">Version</a><li>mode
-: <a class="el" href="classModeParameter.html#o0">ModeParameter</a><li>modechar
-: <a class="el" href="classExtMode.html#o0">ExtMode</a><li>modes
-: <a class="el" href="classuserrec.html#o4">userrec</a></ul>
-<h3><a name="index_n">- n -</a>
-</h3><ul>
+: <a class="el" href="classVersion.html#Major">Version</a><li>min_params
+: <a class="el" href="classcommand__t.html#min_5Fparams">command_t</a><li>Minor
+: <a class="el" href="classVersion.html#Minor">Version</a><li>mode
+: <a class="el" href="classModeParameter.html#mode">ModeParameter</a><li>modechar
+: <a class="el" href="classExtMode.html#modechar">ExtMode</a><li>modes
+: <a class="el" href="classuserrec.html#modes_5B_35_34_5D">userrec</a></ul>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
<li>n_matches
-: <a class="el" href="classXLine.html#o4">XLine</a><li>name
-: <a class="el" href="classserverrec.html#o0">serverrec</a>, <a class="el" href="classchanrec.html#o0">chanrec</a><li>Name
-: <a class="el" href="classAdmin.html#o0">Admin</a><li>needsoper
-: <a class="el" href="classExtMode.html#o4">ExtMode</a><li>next
-: <a class="el" href="structdns__ip4list.html#o1">dns_ip4list</a><li>nextping
-: <a class="el" href="classircd__connector.html#r8">ircd_connector</a><li>Nick
-: <a class="el" href="classAdmin.html#o2">Admin</a><li>nick
-: <a class="el" href="classQLine.html#o0">QLine</a>, <a class="el" href="classWhoWasUser.html#o0">WhoWasUser</a>, <a class="el" href="classuserrec.html#o0">userrec</a><li>nickserv
-: <a class="el" href="classserverrec.html#o9">serverrec</a><li>nping
-: <a class="el" href="classconnection.html#o13">connection</a></ul>
-<h3><a name="index_o">- o -</a>
-</h3><ul>
+: <a class="el" href="classXLine.html#n_5Fmatches">XLine</a><li>name
+: <a class="el" href="classchanrec.html#name_5BCHANMAX_5D">chanrec</a><li>Name
+: <a class="el" href="classAdmin.html#Name">Admin</a><li>needsoper
+: <a class="el" href="classExtMode.html#needsoper">ExtMode</a><li>next
+: <a class="el" href="structdns__ip4list.html#next">dns_ip4list</a><li>nick
+: <a class="el" href="classQLine.html#nick_5B_36_34_5D">QLine</a>, <a class="el" href="classWhoWasUser.html#nick_5BNICKMAX_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#nick_5BNICKMAX_5D">userrec</a><li>Nick
+: <a class="el" href="classAdmin.html#Nick">Admin</a><li>nping
+: <a class="el" href="classconnection.html#nping">connection</a></ul>
+<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
<li>oper
-: <a class="el" href="classuserrec.html#o10">userrec</a><li>opercount
-: <a class="el" href="classserverrec.html#o4">serverrec</a></ul>
-<h3><a name="index_p">- p -</a>
-</h3><ul>
+: <a class="el" href="classuserrec.html#oper_5BNICKMAX_5D">userrec</a></ul>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
<li>parameter
-: <a class="el" href="classModeParameter.html#o1">ModeParameter</a><li>params_when_off
-: <a class="el" href="classExtMode.html#o3">ExtMode</a><li>params_when_on
-: <a class="el" href="classExtMode.html#o2">ExtMode</a><li>pass
-: <a class="el" href="classConnectClass.html#o5">ConnectClass</a><li>password
-: <a class="el" href="classuserrec.html#o13">userrec</a><li>pingmax
-: <a class="el" href="classuserrec.html#o12">userrec</a><li>pingtime
-: <a class="el" href="classConnectClass.html#o4">ConnectClass</a>, <a class="el" href="classserverrec.html#o1">serverrec</a><li>port
-: <a class="el" href="classconnection.html#o8">connection</a>, <a class="el" href="classircd__connector.html#o2">ircd_connector</a></ul>
-<h3><a name="index_r">- r -</a>
-</h3><ul>
+: <a class="el" href="classModeParameter.html#parameter_5BMAXBUF_5D">ModeParameter</a><li>params_when_off
+: <a class="el" href="classExtMode.html#params_5Fwhen_5Foff">ExtMode</a><li>params_when_on
+: <a class="el" href="classExtMode.html#params_5Fwhen_5Fon">ExtMode</a><li>pass
+: <a class="el" href="classConnectClass.html#pass_5BMAXBUF_5D">ConnectClass</a><li>password
+: <a class="el" href="classuserrec.html#password_5BMAXBUF_5D">userrec</a><li>pingmax
+: <a class="el" href="classuserrec.html#pingmax">userrec</a><li>pingtime
+: <a class="el" href="classConnectClass.html#pingtime">ConnectClass</a><li>polls
+: <a class="el" href="classInspSocket.html#polls">InspSocket</a><li>port
+: <a class="el" href="classInspSocket.html#port">InspSocket</a>, <a class="el" href="classconnection.html#port">connection</a></ul>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
<li>readerror
-: <a class="el" href="classConfigReader.html#p2">ConfigReader</a><li>reason
-: <a class="el" href="classXLine.html#o3">XLine</a><li>recvq
-: <a class="el" href="classuserrec.html#o14">userrec</a><li>recvqmax
-: <a class="el" href="classuserrec.html#o21">userrec</a>, <a class="el" href="classConnectClass.html#o8">ConnectClass</a><li>registered
-: <a class="el" href="classconnection.html#o9">connection</a><li>registration_timeout
-: <a class="el" href="classConnectClass.html#o1">ConnectClass</a><li>replied
-: <a class="el" href="classircd__connector.html#r9">ircd_connector</a><li>reset_due
-: <a class="el" href="classuserrec.html#o17">userrec</a><li>result
-: <a class="el" href="classDNS.html#r1">DNS</a><li>Revision
-: <a class="el" href="classVersion.html#o2">Version</a><li>routes
-: <a class="el" href="classircd__connector.html#o3">ircd_connector</a></ul>
-<h3><a name="index_s">- s -</a>
-</h3><ul>
+: <a class="el" href="classConfigReader.html#readerror">ConfigReader</a><li>reason
+: <a class="el" href="classXLine.html#reason_5BMAXBUF_5D">XLine</a><li>recvq
+: <a class="el" href="classuserrec.html#recvq">userrec</a><li>recvqmax
+: <a class="el" href="classuserrec.html#recvqmax">userrec</a>, <a class="el" href="classConnectClass.html#recvqmax">ConnectClass</a><li>registered
+: <a class="el" href="classconnection.html#registered">connection</a><li>registration_timeout
+: <a class="el" href="classConnectClass.html#registration_5Ftimeout">ConnectClass</a><li>reset_due
+: <a class="el" href="classuserrec.html#reset_5Fdue">userrec</a><li>result
+: <a class="el" href="classDNS.html#result">DNS</a><li>Revision
+: <a class="el" href="classVersion.html#Revision">Version</a></ul>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
<li>sendq
-: <a class="el" href="classuserrec.html#o15">userrec</a>, <a class="el" href="classircd__connector.html#r6">ircd_connector</a><li>sendqmax
-: <a class="el" href="classuserrec.html#o20">userrec</a>, <a class="el" href="classConnectClass.html#o7">ConnectClass</a><li>server
-: <a class="el" href="classWhoWasUser.html#o5">WhoWasUser</a>, <a class="el" href="classuserrec.html#o6">userrec</a><li>servername
-: <a class="el" href="classircd__connector.html#r2">ircd_connector</a><li>set_by
-: <a class="el" href="classHostItem.html#o1">HostItem</a><li>set_time
-: <a class="el" href="classXLine.html#o0">XLine</a>, <a class="el" href="classHostItem.html#o0">HostItem</a><li>setby
-: <a class="el" href="classchanrec.html#o6">chanrec</a><li>signon
-: <a class="el" href="classWhoWasUser.html#o6">WhoWasUser</a>, <a class="el" href="classconnection.html#o11">connection</a><li>source
-: <a class="el" href="classXLine.html#o2">XLine</a>, <a class="el" href="classEvent.html#p1">Event</a>, <a class="el" href="classRequest.html#p1">Request</a>, <a class="el" href="classcommand__t.html#o6">command_t</a><li>state
-: <a class="el" href="classircd__connector.html#r4">ircd_connector</a><li>sync_soon
-: <a class="el" href="classserverrec.html#o10">serverrec</a></ul>
-<h3><a name="index_t">- t -</a>
-</h3><ul>
+: <a class="el" href="classuserrec.html#sendq">userrec</a><li>sendqmax
+: <a class="el" href="classuserrec.html#sendqmax">userrec</a>, <a class="el" href="classConnectClass.html#sendqmax">ConnectClass</a><li>server
+: <a class="el" href="classWhoWasUser.html#server_5B_32_35_36_5D">WhoWasUser</a>, <a class="el" href="classuserrec.html#server">userrec</a>, <a class="el" href="classInspSocket.html#server">InspSocket</a><li>set_by
+: <a class="el" href="classHostItem.html#set_5Fby_5BNICKMAX_5D">HostItem</a><li>set_time
+: <a class="el" href="classXLine.html#set_5Ftime">XLine</a>, <a class="el" href="classHostItem.html#set_5Ftime">HostItem</a><li>setby
+: <a class="el" href="classchanrec.html#setby_5BNICKMAX_5D">chanrec</a><li>signon
+: <a class="el" href="classWhoWasUser.html#signon">WhoWasUser</a>, <a class="el" href="classconnection.html#signon">connection</a><li>source
+: <a class="el" href="classXLine.html#source_5B_32_35_36_5D">XLine</a>, <a class="el" href="classEvent.html#source">Event</a>, <a class="el" href="classRequest.html#source">Request</a>, <a class="el" href="classcommand__t.html#source_5BMAXBUF_5D">command_t</a><li>state
+: <a class="el" href="classInspSocket.html#state">InspSocket</a></ul>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
<li>t
-: <a class="el" href="classDNS.html#r2">DNS</a><li>threshold
-: <a class="el" href="classuserrec.html#o18">userrec</a>, <a class="el" href="classConnectClass.html#o6">ConnectClass</a><li>timeout
-: <a class="el" href="classuserrec.html#o9">userrec</a><li>topic
-: <a class="el" href="classchanrec.html#o3">chanrec</a><li>topicset
-: <a class="el" href="classchanrec.html#o5">chanrec</a><li>total_bytes
-: <a class="el" href="classcommand__t.html#o5">command_t</a><li>type
-: <a class="el" href="classConnectClass.html#o0">ConnectClass</a>, <a class="el" href="classExtMode.html#o1">ExtMode</a></ul>
-<h3><a name="index_u">- u -</a>
-</h3><ul>
+: <a class="el" href="classDNS.html#t">DNS</a><li>threshold
+: <a class="el" href="classuserrec.html#threshold">userrec</a>, <a class="el" href="classConnectClass.html#threshold">ConnectClass</a><li>timeout
+: <a class="el" href="classuserrec.html#timeout">userrec</a>, <a class="el" href="classInspSocket.html#timeout">InspSocket</a><li>timeout_end
+: <a class="el" href="classInspSocket.html#timeout_5Fend">InspSocket</a><li>topic
+: <a class="el" href="classchanrec.html#topic_5BMAXBUF_5D">chanrec</a><li>topicset
+: <a class="el" href="classchanrec.html#topicset">chanrec</a><li>total_bytes
+: <a class="el" href="classcommand__t.html#total_5Fbytes">command_t</a><li>type
+: <a class="el" href="classConnectClass.html#type">ConnectClass</a>, <a class="el" href="classExtMode.html#type">ExtMode</a></ul>
+<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
<li>uc_modes
-: <a class="el" href="classucrec.html#o0">ucrec</a><li>use_count
-: <a class="el" href="classcommand__t.html#o4">command_t</a><li>usercount
-: <a class="el" href="classserverrec.html#o3">serverrec</a><li>usercount_i
-: <a class="el" href="classserverrec.html#o2">serverrec</a></ul>
-<h3><a name="index_v">- v -</a>
-</h3><ul>
-<li>version
-: <a class="el" href="classserverrec.html#o6">serverrec</a>, <a class="el" href="classircd__connector.html#r5">ircd_connector</a></ul>
-<h3><a name="index_w">- w -</a>
-</h3><ul>
+: <a class="el" href="classucrec.html#uc_5Fmodes">ucrec</a><li>use_count
+: <a class="el" href="classcommand__t.html#use_5Fcount">command_t</a></ul>
+<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
<li>WriteError
-: <a class="el" href="classuserrec.html#o19">userrec</a>, <a class="el" href="classircd__connector.html#r7">ircd_connector</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:22 2005 for InspIRCd by
+: <a class="el" href="classuserrec.html#WriteError">userrec</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/globals.html b/docs/module-doc/globals.html
index f0bafa43d..631ba7f5e 100644
--- a/docs/module-doc/globals.html
+++ b/docs/module-doc/globals.html
@@ -1,362 +1,44 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: File Member Index</title>
+<title>InspIRCd: Class Members</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
-<div class="qindex"><a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
-<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_g">g</a> | <a class="qindex" href="#index_h">h</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_q">q</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_u">u</a> | <a class="qindex" href="#index_v">v</a> | <a class="qindex" href="#index_w">w</a> | <a class="qindex" href="#index_x">x</a> | <a class="qindex" href="#index_z">z</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"><a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindexHL" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
<p>
-
+Here is a list of all file members with links to the files they belong to:
<p>
-Here is a list of all file members with links to the files they belong to:<h3><a name="index_a">- a -</a>
-</h3><ul>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
<li>AC_DEHALFOP
-: <a class="el" href="modules_8h.html#a17">modules.h</a><li>AC_DEOP
-: <a class="el" href="modules_8h.html#a12">modules.h</a><li>AC_DEVOICE
-: <a class="el" href="modules_8h.html#a15">modules.h</a><li>AC_GENERAL_MODE
-: <a class="el" href="modules_8h.html#a19">modules.h</a><li>AC_HALFOP
-: <a class="el" href="modules_8h.html#a16">modules.h</a><li>AC_INVITE
-: <a class="el" href="modules_8h.html#a18">modules.h</a><li>AC_KICK
-: <a class="el" href="modules_8h.html#a11">modules.h</a><li>AC_OP
-: <a class="el" href="modules_8h.html#a13">modules.h</a><li>AC_VOICE
-: <a class="el" href="modules_8h.html#a14">modules.h</a><li>ACR_ALLOW
-: <a class="el" href="modules_8h.html#a10">modules.h</a><li>ACR_DEFAULT
-: <a class="el" href="modules_8h.html#a8">modules.h</a><li>ACR_DENY
-: <a class="el" href="modules_8h.html#a9">modules.h</a><li>add_ban()
-: <a class="el" href="mode_8h.html#a6">mode.h</a><li>add_eline()
-: <a class="el" href="xline_8h.html#a5">xline.h</a><li>add_gline()
-: <a class="el" href="xline_8h.html#a1">xline.h</a><li>add_kline()
-: <a class="el" href="xline_8h.html#a4">xline.h</a><li>add_qline()
-: <a class="el" href="xline_8h.html#a2">xline.h</a><li>add_zline()
-: <a class="el" href="xline_8h.html#a3">xline.h</a><li>address_cache
-: <a class="el" href="modules_8cpp.html#a40">modules.cpp</a><li>AdminEmail
-: <a class="el" href="modules_8cpp.html#a10">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a9">channels.cpp</a><li>AdminName
-: <a class="el" href="modules_8cpp.html#a9">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a8">channels.cpp</a><li>AdminNick
-: <a class="el" href="modules_8cpp.html#a11">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a10">channels.cpp</a><li>allowed_umode()
-: <a class="el" href="mode_8h.html#a9">mode.h</a><li>already_have_sum()
-: <a class="el" href="servers_8cpp.html#a6">servers.cpp</a><li>apply_lines()
-: <a class="el" href="xline_8h.html#a17">xline.h</a><li>auth_cookies
-: <a class="el" href="modules_8cpp.html#a33">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a32">channels.cpp</a></ul>
-<h3><a name="index_b">- b -</a>
-</h3><ul>
-<li>BanList
-: <a class="el" href="channels_8h.html#a11">channels.h</a><li>bitfields
-: <a class="el" href="base_8h.html#a1">base.h</a><li>Blocking()
-: <a class="el" href="message_8h.html#a3">message.h</a><li>boundPortCount
-: <a class="el" href="modules_8cpp.html#a28">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a27">channels.cpp</a></ul>
-<h3><a name="index_c">- c -</a>
-</h3><ul>
-<li>c_count()
-: <a class="el" href="message_8h.html#a6">message.h</a><li>CC_ALLOW
-: <a class="el" href="users_8h.html#a4">users.h</a><li>CC_DENY
-: <a class="el" href="users_8h.html#a5">users.h</a><li>chan_hash
-: <a class="el" href="modules_8cpp.html#a39">modules.cpp</a><li>ChangeDisplayedHost()
-: <a class="el" href="message_8h.html#a9">message.h</a><li>ChangeName()
-: <a class="el" href="message_8h.html#a8">message.h</a><li>chanlist
-: <a class="el" href="modules_8cpp.html#a44">modules.cpp</a><li>chanuserlist
-: <a class="el" href="modules_8h.html#a33">modules.h</a><li>chlist()
-: <a class="el" href="message_8h.html#a16">message.h</a><li>chop()
-: <a class="el" href="message_8h.html#a1">message.h</a><li>ClassVector
-: <a class="el" href="users_8h.html#a7">users.h</a><li>CleanAndResolve()
-: <a class="el" href="message_8h.html#a5">message.h</a><li>clientlist
-: <a class="el" href="modules_8cpp.html#a43">modules.cpp</a><li>CM_INVITEONLY
-: <a class="el" href="channels_8h.html#a2">channels.h</a><li>CM_MODERATED
-: <a class="el" href="channels_8h.html#a3">channels.h</a><li>CM_NOEXTERNAL
-: <a class="el" href="channels_8h.html#a1">channels.h</a><li>CM_PRIVATE
-: <a class="el" href="channels_8h.html#a5">channels.h</a><li>CM_SECRET
-: <a class="el" href="channels_8h.html#a4">channels.h</a><li>CM_TOPICLOCK
-: <a class="el" href="channels_8h.html#a0">channels.h</a><li>cmdlist
-: <a class="el" href="modules_8cpp.html#a46">modules.cpp</a><li>cmode()
-: <a class="el" href="message_8h.html#a12">message.h</a><li>command_table
-: <a class="el" href="modules_8cpp.html#a42">modules.cpp</a><li>common_channels()
-: <a class="el" href="message_8h.html#a0">message.h</a><li>CONF_FILE_NOT_FOUND
-: <a class="el" href="modules_8h.html#a30">modules.h</a><li>CONF_NOT_A_NUMBER
-: <a class="el" href="modules_8h.html#a27">modules.h</a><li>CONF_NOT_UNSIGNED
-: <a class="el" href="modules_8h.html#a28">modules.h</a><li>CONF_VALUE_NOT_FOUND
-: <a class="el" href="modules_8h.html#a29">modules.h</a><li>config_f
-: <a class="el" href="users_8cpp.html#a0">users.cpp</a>, <a class="el" href="modules_8cpp.html#a34">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a33">channels.cpp</a><li>ConnectServer()
-: <a class="el" href="commands_8h.html#a77">commands.h</a><li>createcommand()
-: <a class="el" href="modules_8h.html#a35">modules.h</a><li>CreateSum()
-: <a class="el" href="connection_8h.html#a6">connection.h</a><li>cstatus()
-: <a class="el" href="message_8h.html#a13">message.h</a><li>custom_mode_params
-: <a class="el" href="channels_8cpp.html#a37">channels.cpp</a></ul>
-<h3><a name="index_d">- d -</a>
-</h3><ul>
-<li>DEBUG
-: <a class="el" href="modules_8h.html#a0">modules.h</a><li>debugging
-: <a class="el" href="modules_8cpp.html#a19">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a18">channels.cpp</a><li>DEFAULT
-: <a class="el" href="modules_8h.html#a2">modules.h</a><li>defaultRoute
-: <a class="el" href="modules_8cpp.html#a32">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a31">channels.cpp</a><li>del_eline()
-: <a class="el" href="xline_8h.html#a10">xline.h</a><li>del_gline()
-: <a class="el" href="xline_8h.html#a6">xline.h</a><li>del_kline()
-: <a class="el" href="xline_8h.html#a9">xline.h</a><li>del_qline()
-: <a class="el" href="xline_8h.html#a7">xline.h</a><li>del_zline()
-: <a class="el" href="xline_8h.html#a8">xline.h</a><li>DieDelay
-: <a class="el" href="modules_8cpp.html#a22">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a21">channels.cpp</a><li>diepass
-: <a class="el" href="modules_8cpp.html#a12">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a11">channels.cpp</a><li>DieValue
-: <a class="el" href="modules_8cpp.html#a18">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a17">channels.cpp</a><li>DoAddExtendedMode()
-: <a class="el" href="modules_8cpp.html#a58">modules.cpp</a><li>duration()
-: <a class="el" href="commands_8h.html#a76">commands.h</a></ul>
-<h3><a name="index_e">- e -</a>
-</h3><ul>
-<li>EMode
-: <a class="el" href="modules_8cpp.html#a52">modules.cpp</a><li>ExemptList
-: <a class="el" href="channels_8h.html#a12">channels.h</a><li>expire_lines()
-: <a class="el" href="xline_8h.html#a16">xline.h</a><li>ExtModeList
-: <a class="el" href="modules_8cpp.html#a50">modules.cpp</a><li>ExtModeListIter
-: <a class="el" href="modules_8cpp.html#a51">modules.cpp</a></ul>
-<h3><a name="index_f">- f -</a>
-</h3><ul>
-<li>factory
-: <a class="el" href="modules_8cpp.html#a61">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a3">channels.cpp</a><li>FD_MAGIC_NUMBER
-: <a class="el" href="modules_8h.html#a26">modules.h</a><li>fd_ref_table
-: <a class="el" href="modules_8cpp.html#a37">modules.cpp</a><li>file_cache
-: <a class="el" href="modules_8h.html#a31">modules.h</a><li>FOREACH_MOD
-: <a class="el" href="modules_8h.html#a24">modules.h</a><li>FOREACH_RESULT
-: <a class="el" href="modules_8h.html#a25">modules.h</a></ul>
-<h3><a name="index_g">- g -</a>
-</h3><ul>
-<li>give_hops()
-: <a class="el" href="mode_8h.html#a1">mode.h</a><li>give_ops()
-: <a class="el" href="mode_8h.html#a0">mode.h</a><li>give_voice()
-: <a class="el" href="mode_8h.html#a2">mode.h</a><li>gline_set_creation_time()
-: <a class="el" href="xline_8h.html#a23">xline.h</a></ul>
-<h3><a name="index_h">- h -</a>
-</h3><ul>
-<li>handle_a()
-: <a class="el" href="commands_8h.html#a59">commands.h</a><li>handle_admin()
-: <a class="el" href="commands_8h.html#a23">commands.h</a><li>handle_amp()
-: <a class="el" href="commands_8h.html#a53">commands.h</a><li>handle_AT()
-: <a class="el" href="commands_8h.html#a62">commands.h</a><li>handle_away()
-: <a class="el" href="commands_8h.html#a31">commands.h</a><li>handle_b()
-: <a class="el" href="commands_8h.html#a58">commands.h</a><li>handle_commands()
-: <a class="el" href="commands_8h.html#a50">commands.h</a><li>handle_connect()
-: <a class="el" href="commands_8h.html#a36">commands.h</a><li>handle_die()
-: <a class="el" href="commands_8h.html#a3">commands.h</a><li>handle_dollar()
-: <a class="el" href="commands_8h.html#a54">commands.h</a><li>handle_eline()
-: <a class="el" href="commands_8h.html#a46">commands.h</a><li>handle_F()
-: <a class="el" href="commands_8h.html#a60">commands.h</a><li>handle_gline()
-: <a class="el" href="commands_8h.html#a43">commands.h</a><li>handle_i()
-: <a class="el" href="commands_8h.html#a72">commands.h</a><li>handle_info()
-: <a class="el" href="commands_8h.html#a14">commands.h</a><li>handle_invite()
-: <a class="el" href="commands_8h.html#a9">commands.h</a><li>handle_ison()
-: <a class="el" href="commands_8h.html#a30">commands.h</a><li>handle_J()
-: <a class="el" href="commands_8h.html#a55">commands.h</a><li>handle_join()
-: <a class="el" href="commands_8h.html#a0">commands.h</a><li>handle_k()
-: <a class="el" href="commands_8h.html#a63">commands.h</a><li>handle_K()
-: <a class="el" href="commands_8h.html#a66">commands.h</a><li>handle_kick()
-: <a class="el" href="commands_8h.html#a2">commands.h</a><li>handle_kill()
-: <a class="el" href="commands_8h.html#a5">commands.h</a><li>handle_kline()
-: <a class="el" href="commands_8h.html#a42">commands.h</a><li>handle_L()
-: <a class="el" href="commands_8h.html#a67">commands.h</a><li>handle_link_packet()
-: <a class="el" href="commands_8h.html#a51">commands.h</a><li>handle_links()
-: <a class="el" href="commands_8h.html#a38">commands.h</a><li>handle_list()
-: <a class="el" href="commands_8h.html#a20">commands.h</a><li>handle_loadmodule()
-: <a class="el" href="commands_8h.html#a48">commands.h</a><li>handle_lusers()
-: <a class="el" href="commands_8h.html#a22">commands.h</a><li>handle_m()
-: <a class="el" href="commands_8h.html#a68">commands.h</a><li>handle_M()
-: <a class="el" href="commands_8h.html#a69">commands.h</a><li>handle_map()
-: <a class="el" href="commands_8h.html#a39">commands.h</a><li>handle_mode()
-: <a class="el" href="mode_8h.html#a11">mode.h</a><li>handle_modules()
-: <a class="el" href="commands_8h.html#a34">commands.h</a><li>handle_motd()
-: <a class="el" href="commands_8h.html#a26">commands.h</a><li>handle_N()
-: <a class="el" href="commands_8h.html#a61">commands.h</a><li>handle_n()
-: <a class="el" href="commands_8h.html#a64">commands.h</a><li>handle_names()
-: <a class="el" href="commands_8h.html#a11">commands.h</a><li>handle_nick()
-: <a class="el" href="commands_8h.html#a41">commands.h</a><li>handle_notice()
-: <a class="el" href="commands_8h.html#a13">commands.h</a><li>handle_oper()
-: <a class="el" href="commands_8h.html#a40">commands.h</a><li>handle_P()
-: <a class="el" href="commands_8h.html#a73">commands.h</a><li>handle_part()
-: <a class="el" href="commands_8h.html#a1">commands.h</a><li>handle_pass()
-: <a class="el" href="commands_8h.html#a8">commands.h</a><li>handle_ping()
-: <a class="el" href="commands_8h.html#a24">commands.h</a><li>handle_plus()
-: <a class="el" href="commands_8h.html#a57">commands.h</a><li>handle_pong()
-: <a class="el" href="commands_8h.html#a25">commands.h</a><li>handle_privmsg()
-: <a class="el" href="commands_8h.html#a12">commands.h</a><li>handle_Q()
-: <a class="el" href="commands_8h.html#a65">commands.h</a><li>handle_qline()
-: <a class="el" href="commands_8h.html#a45">commands.h</a><li>handle_quit()
-: <a class="el" href="commands_8h.html#a17">commands.h</a><li>handle_R()
-: <a class="el" href="commands_8h.html#a56">commands.h</a><li>handle_rehash()
-: <a class="el" href="commands_8h.html#a21">commands.h</a><li>handle_restart()
-: <a class="el" href="commands_8h.html#a4">commands.h</a><li>handle_rules()
-: <a class="el" href="commands_8h.html#a27">commands.h</a><li>handle_server()
-: <a class="el" href="commands_8h.html#a47">commands.h</a><li>handle_squit()
-: <a class="el" href="commands_8h.html#a37">commands.h</a><li>handle_stats()
-: <a class="el" href="commands_8h.html#a35">commands.h</a><li>handle_summon()
-: <a class="el" href="commands_8h.html#a6">commands.h</a><li>handle_T()
-: <a class="el" href="commands_8h.html#a70">commands.h</a><li>handle_t()
-: <a class="el" href="commands_8h.html#a71">commands.h</a><li>handle_time()
-: <a class="el" href="commands_8h.html#a15">commands.h</a><li>handle_topic()
-: <a class="el" href="commands_8h.html#a10">commands.h</a><li>handle_trace()
-: <a class="el" href="commands_8h.html#a33">commands.h</a><li>handle_unloadmodule()
-: <a class="el" href="commands_8h.html#a49">commands.h</a><li>handle_user()
-: <a class="el" href="commands_8h.html#a28">commands.h</a><li>handle_userhost()
-: <a class="el" href="commands_8h.html#a29">commands.h</a><li>handle_users()
-: <a class="el" href="commands_8h.html#a7">commands.h</a><li>handle_V()
-: <a class="el" href="commands_8h.html#a74">commands.h</a><li>handle_wallops()
-: <a class="el" href="commands_8h.html#a19">commands.h</a><li>handle_who()
-: <a class="el" href="commands_8h.html#a18">commands.h</a><li>handle_whois()
-: <a class="el" href="commands_8h.html#a16">commands.h</a><li>handle_whowas()
-: <a class="el" href="commands_8h.html#a32">commands.h</a><li>handle_zline()
-: <a class="el" href="commands_8h.html#a44">commands.h</a><li>has_been_netsplit
-: <a class="el" href="servers_8cpp.html#a3">servers.cpp</a><li>has_channel()
-: <a class="el" href="message_8h.html#a14">message.h</a><li>hasumode()
-: <a class="el" href="message_8h.html#a7">message.h</a></ul>
-<h3><a name="index_i">- i -</a>
-</h3><ul>
-<li>include_stack
-: <a class="el" href="modules_8cpp.html#a3">modules.cpp</a><li>inverted_bitfields
-: <a class="el" href="base_8h.html#a2">base.h</a><li>InvitedList
-: <a class="el" href="users_8h.html#a6">users.h</a><li>InviteList
-: <a class="el" href="channels_8h.html#a13">channels.h</a><li>IP
-: <a class="el" href="modules_8cpp.html#a49">modules.cpp</a><li>ircd_module
-: <a class="el" href="modules_8h.html#a34">modules.h</a><li>is_uline()
-: <a class="el" href="commands_8h.html#a75">commands.h</a><li>isident()
-: <a class="el" href="message_8h.html#a10">message.h</a><li>isnick()
-: <a class="el" href="message_8h.html#a11">message.h</a><li>IsRoutable()
-: <a class="el" href="servers_8cpp.html#a5">servers.cpp</a></ul>
-<h3><a name="index_l">- l -</a>
-</h3><ul>
-<li>LINK_ACTIVE
-: <a class="el" href="servers_8h.html#a0">servers.h</a><li>LINK_INACTIVE
-: <a class="el" href="servers_8h.html#a1">servers.h</a><li>list
-: <a class="el" href="modules_8cpp.html#a16">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a15">channels.cpp</a><li>log_file
-: <a class="el" href="modules_8cpp.html#a36">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a35">channels.cpp</a><li>LogLevel
-: <a class="el" href="modules_8cpp.html#a5">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a4">channels.cpp</a></ul>
-<h3><a name="index_m">- m -</a>
-</h3><ul>
-<li>matches_exception()
-: <a class="el" href="xline_8h.html#a15">xline.h</a><li>matches_gline()
-: <a class="el" href="xline_8h.html#a12">xline.h</a><li>matches_kline()
-: <a class="el" href="xline_8h.html#a14">xline.h</a><li>matches_qline()
-: <a class="el" href="xline_8h.html#a11">xline.h</a><li>matches_zline()
-: <a class="el" href="xline_8h.html#a13">xline.h</a><li>MaxConn
-: <a class="el" href="servers_8cpp.html#a1">servers.cpp</a><li>MaxWhoResults
-: <a class="el" href="modules_8cpp.html#a25">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a24">channels.cpp</a><li>me
-: <a class="el" href="servers_8cpp.html#a2">servers.cpp</a>, <a class="el" href="modules_8cpp.html#a35">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a34">channels.cpp</a><li>merge_mode()
-: <a class="el" href="mode_8h.html#a13">mode.h</a><li>merge_mode2()
-: <a class="el" href="mode_8h.html#a14">mode.h</a><li>MODCOUNT
-: <a class="el" href="modules_8cpp.html#a0">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a1">channels.cpp</a><li>ModeDefined()
-: <a class="el" href="modules_8cpp.html#a53">modules.cpp</a><li>ModeDefinedOff()
-: <a class="el" href="modules_8cpp.html#a57">modules.cpp</a><li>ModeDefinedOn()
-: <a class="el" href="modules_8cpp.html#a56">modules.cpp</a><li>ModeDefinedOper()
-: <a class="el" href="modules_8cpp.html#a55">modules.cpp</a><li>ModeIsListMode()
-: <a class="el" href="modules_8cpp.html#a54">modules.cpp</a><li>ModeMakeList()
-: <a class="el" href="modules_8cpp.html#a59">modules.cpp</a><li>module_names
-: <a class="el" href="modules_8cpp.html#a27">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a26">channels.cpp</a><li>modules
-: <a class="el" href="modules_8cpp.html#a60">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a2">channels.cpp</a><li>motd
-: <a class="el" href="modules_8cpp.html#a14">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a13">channels.cpp</a><li>MOTD
-: <a class="el" href="modules_8cpp.html#a47">modules.cpp</a><li>MT_CHANNEL
-: <a class="el" href="modules_8h.html#a5">modules.h</a><li>MT_CLIENT
-: <a class="el" href="modules_8h.html#a6">modules.h</a><li>MT_SERVER
-: <a class="el" href="modules_8h.html#a7">modules.h</a></ul>
-<h3><a name="index_n">- n -</a>
-</h3><ul>
-<li>nb_start
-: <a class="el" href="modules_8cpp.html#a26">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a25">channels.cpp</a><li>NetBufferSize
-: <a class="el" href="modules_8cpp.html#a24">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a23">channels.cpp</a><li>Network
-: <a class="el" href="modules_8cpp.html#a7">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a6">channels.cpp</a><li>NonBlocking()
-: <a class="el" href="message_8h.html#a4">message.h</a><li>NONE
-: <a class="el" href="modules_8h.html#a4">modules.h</a><li>nspace
-: <a class="el" href="hashcomp_8h.html#a0">hashcomp.h</a>, <a class="el" href="channels_8cpp.html#a0">channels.cpp</a></ul>
-<h3><a name="index_p">- p -</a>
-</h3><ul>
-<li>portCount
-: <a class="el" href="modules_8cpp.html#a29">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a28">channels.cpp</a><li>ports
-: <a class="el" href="modules_8cpp.html#a31">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a30">channels.cpp</a><li>PrefixQuit
-: <a class="el" href="modules_8cpp.html#a17">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a16">channels.cpp</a><li>process_modes()
-: <a class="el" href="mode_8h.html#a8">mode.h</a><li>process_module_umode()
-: <a class="el" href="mode_8h.html#a10">mode.h</a><li>process_restricted_commands()
-: <a class="el" href="commands_8h.html#a52">commands.h</a></ul>
-<h3><a name="index_q">- q -</a>
-</h3><ul>
-<li>qline_make_global()
-: <a class="el" href="xline_8h.html#a27">xline.h</a><li>qline_set_creation_time()
-: <a class="el" href="xline_8h.html#a24">xline.h</a></ul>
-<h3><a name="index_r">- r -</a>
-</h3><ul>
-<li>read_xline_defaults()
-: <a class="el" href="xline_8h.html#a0">xline.h</a><li>restartpass
-: <a class="el" href="modules_8cpp.html#a13">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a12">channels.cpp</a><li>rules
-: <a class="el" href="modules_8cpp.html#a15">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a14">channels.cpp</a><li>RULES
-: <a class="el" href="modules_8cpp.html#a48">modules.cpp</a></ul>
-<h3><a name="index_s">- s -</a>
-</h3><ul>
-<li>send_network_quit()
-: <a class="el" href="message_8h.html#a17">message.h</a><li>server_mode()
-: <a class="el" href="modules_8h.html#a36">modules.h</a>, <a class="el" href="mode_8h.html#a12">mode.h</a><li>ServerDesc
-: <a class="el" href="modules_8cpp.html#a8">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a7">channels.cpp</a><li>ServerName
-: <a class="el" href="users_8cpp.html#a1">users.cpp</a>, <a class="el" href="modules_8cpp.html#a6">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a5">channels.cpp</a><li>SERVERportCount
-: <a class="el" href="modules_8cpp.html#a30">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a29">channels.cpp</a><li>SPARSE
-: <a class="el" href="modules_8h.html#a3">modules.h</a><li>startup_time
-: <a class="el" href="modules_8cpp.html#a23">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a22">channels.cpp</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_SERVICES
-: <a class="el" href="connection_8h.html#a5">connection.h</a><li>STATE_SYNC
-: <a class="el" href="connection_8h.html#a2">connection.h</a><li>stats_e()
-: <a class="el" href="xline_8h.html#a22">xline.h</a><li>stats_g()
-: <a class="el" href="xline_8h.html#a19">xline.h</a><li>stats_k()
-: <a class="el" href="xline_8h.html#a18">xline.h</a><li>stats_q()
-: <a class="el" href="xline_8h.html#a20">xline.h</a><li>stats_z()
-: <a class="el" href="xline_8h.html#a21">xline.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
-: <a class="el" href="users_8h.html#a2">users.h</a><li>string_list
-: <a class="el" href="modules_8h.html#a32">modules.h</a><li>sync_xlines()
-: <a class="el" href="xline_8h.html#a28">xline.h</a></ul>
-<h3><a name="index_t">- t -</a>
-</h3><ul>
-<li>take_ban()
-: <a class="el" href="mode_8h.html#a7">mode.h</a><li>take_hops()
-: <a class="el" href="mode_8h.html#a4">mode.h</a><li>take_ops()
-: <a class="el" href="mode_8h.html#a3">mode.h</a><li>take_voice()
-: <a class="el" href="mode_8h.html#a5">mode.h</a><li>TidyBan()
-: <a class="el" href="message_8h.html#a15">message.h</a><li>tidystring()
-: <a class="el" href="message_8h.html#a2">message.h</a><li>TIME
-: <a class="el" href="users_8cpp.html#a2">users.cpp</a>, <a class="el" href="servers_8cpp.html#a0">servers.cpp</a>, <a class="el" href="modules_8cpp.html#a4">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a36">channels.cpp</a></ul>
-<h3><a name="index_u">- u -</a>
-</h3><ul>
-<li>UCMODE_FOUNDER
-: <a class="el" href="channels_8h.html#a10">channels.h</a><li>UCMODE_HOP
-: <a class="el" href="channels_8h.html#a8">channels.h</a><li>UCMODE_OP
-: <a class="el" href="channels_8h.html#a6">channels.h</a><li>UCMODE_PROTECT
-: <a class="el" href="channels_8h.html#a9">channels.h</a><li>UCMODE_VOICE
-: <a class="el" href="channels_8h.html#a7">channels.h</a><li>user_hash
-: <a class="el" href="modules_8cpp.html#a38">modules.cpp</a></ul>
-<h3><a name="index_v">- v -</a>
-</h3><ul>
-<li>VERBOSE
-: <a class="el" href="modules_8h.html#a1">modules.h</a><li>VF_COMMON
-: <a class="el" href="modules_8h.html#a23">modules.h</a><li>VF_SERVICEPROVIDER
-: <a class="el" href="modules_8h.html#a22">modules.h</a><li>VF_STATIC
-: <a class="el" href="modules_8h.html#a20">modules.h</a><li>VF_VENDOR
-: <a class="el" href="modules_8h.html#a21">modules.h</a><li>VoidPointer
-: <a class="el" href="base_8h.html#a0">base.h</a></ul>
-<h3><a name="index_w">- w -</a>
-</h3><ul>
-<li>whowas
-: <a class="el" href="modules_8cpp.html#a45">modules.cpp</a><li>whowas_hash
-: <a class="el" href="modules_8cpp.html#a41">modules.cpp</a><li>WHOWAS_MAX
-: <a class="el" href="modules_8cpp.html#a21">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a20">channels.cpp</a><li>WHOWAS_STALE
-: <a class="el" href="modules_8cpp.html#a20">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a19">channels.cpp</a></ul>
-<h3><a name="index_x">- x -</a>
-</h3><ul>
-<li>xsums
-: <a class="el" href="servers_8cpp.html#a4">servers.cpp</a></ul>
-<h3><a name="index_z">- z -</a>
-</h3><ul>
-<li>zline_make_global()
-: <a class="el" href="xline_8h.html#a26">xline.h</a><li>zline_set_creation_time()
-: <a class="el" href="xline_8h.html#a25">xline.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:51 2005 for InspIRCd by
+: <a class="el" href="modules_8h.html#AC_5FDEHALFOP">modules.h</a><li>AC_DEOP
+: <a class="el" href="modules_8h.html#AC_5FDEOP">modules.h</a><li>AC_DEVOICE
+: <a class="el" href="modules_8h.html#AC_5FDEVOICE">modules.h</a><li>AC_GENERAL_MODE
+: <a class="el" href="modules_8h.html#AC_5FGENERAL_5FMODE">modules.h</a><li>AC_HALFOP
+: <a class="el" href="modules_8h.html#AC_5FHALFOP">modules.h</a><li>AC_INVITE
+: <a class="el" href="modules_8h.html#AC_5FINVITE">modules.h</a><li>AC_KICK
+: <a class="el" href="modules_8h.html#AC_5FKICK">modules.h</a><li>AC_OP
+: <a class="el" href="modules_8h.html#AC_5FOP">modules.h</a><li>AC_VOICE
+: <a class="el" href="modules_8h.html#AC_5FVOICE">modules.h</a><li>ACR_ALLOW
+: <a class="el" href="modules_8h.html#ACR_5FALLOW">modules.h</a><li>ACR_DEFAULT
+: <a class="el" href="modules_8h.html#ACR_5FDEFAULT">modules.h</a><li>ACR_DENY
+: <a class="el" href="modules_8h.html#ACR_5FDENY">modules.h</a><li>add_ban()
+: <a class="el" href="mode_8h.html#add_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>add_eline()
+: <a class="el" href="xline_8h.html#add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">xline.h</a><li>add_gline()
+: <a class="el" href="xline_8h.html#add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">xline.h</a><li>add_kline()
+: <a class="el" href="xline_8h.html#add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">xline.h</a><li>add_qline()
+: <a class="el" href="xline_8h.html#add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29">xline.h</a><li>add_zline()
+: <a class="el" href="xline_8h.html#add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29">xline.h</a><li>address_cache
+: <a class="el" href="modules_8cpp.html#address_5Fcache">modules.cpp</a><li>AdminEmail
+: <a class="el" href="modules_8cpp.html#AdminEmail_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#AdminEmail_5BMAXBUF_5D">channels.cpp</a><li>AdminName
+: <a class="el" href="modules_8cpp.html#AdminName_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#AdminName_5BMAXBUF_5D">channels.cpp</a><li>AdminNick
+: <a class="el" href="modules_8cpp.html#AdminNick_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#AdminNick_5BMAXBUF_5D">channels.cpp</a><li>allowed_umode()
+: <a class="el" href="mode_8h.html#allowed_5Fumode_28char_20umode_2C_20char_20_2Asourcemodes_2C_20bool_20adding_29">mode.h</a><li>apply_lines()
+: <a class="el" href="xline_8h.html#apply_5Flines_28_29">xline.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/globals_0x62.html b/docs/module-doc/globals_0x62.html
new file mode 100644
index 000000000..c57abb546
--- /dev/null
+++ b/docs/module-doc/globals_0x62.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindexHL" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
+<li>BanList
+: <a class="el" href="channels_8h.html#BanList">channels.h</a><li>Blocking()
+: <a class="el" href="message_8h.html#Blocking_28int_20s_29">message.h</a><li>boundPortCount
+: <a class="el" href="socket_8cpp.html#boundPortCount">socket.cpp</a>, <a class="el" href="modules_8cpp.html#boundPortCount">modules.cpp</a>, <a class="el" href="channels_8cpp.html#boundPortCount">channels.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x63.html b/docs/module-doc/globals_0x63.html
new file mode 100644
index 000000000..33492944f
--- /dev/null
+++ b/docs/module-doc/globals_0x63.html
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindexHL" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
+<li>c_count()
+: <a class="el" href="message_8h.html#c_5Fcount_28userrec_20_2Au_29">message.h</a><li>CC_ALLOW
+: <a class="el" href="users_8h.html#CC_5FALLOW">users.h</a><li>CC_DENY
+: <a class="el" href="users_8h.html#CC_5FDENY">users.h</a><li>chan_hash
+: <a class="el" href="modules_8cpp.html#chan_5Fhash">modules.cpp</a><li>ChangeDisplayedHost()
+: <a class="el" href="message_8h.html#ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29">message.h</a><li>ChangeName()
+: <a class="el" href="message_8h.html#ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29">message.h</a><li>chanlist
+: <a class="el" href="modules_8cpp.html#chanlist">modules.cpp</a><li>chanuserlist
+: <a class="el" href="modules_8h.html#chanuserlist">modules.h</a><li>chlist()
+: <a class="el" href="message_8h.html#chlist_28userrec_20_2Auser_2C_20userrec_20_2Asource_29">message.h</a><li>chop()
+: <a class="el" href="message_8h.html#chop_28char_20_2Astr_29">message.h</a><li>ClassVector
+: <a class="el" href="users_8h.html#ClassVector">users.h</a><li>CleanAndResolve()
+: <a class="el" href="message_8h.html#CleanAndResolve_28char_20_2AresolvedHost_2C_20const_20char_20_2AunresolvedHost_29">message.h</a><li>clientlist
+: <a class="el" href="modules_8cpp.html#clientlist">modules.cpp</a><li>CM_INVITEONLY
+: <a class="el" href="channels_8h.html#CM_5FINVITEONLY">channels.h</a><li>CM_MODERATED
+: <a class="el" href="channels_8h.html#CM_5FMODERATED">channels.h</a><li>CM_NOEXTERNAL
+: <a class="el" href="channels_8h.html#CM_5FNOEXTERNAL">channels.h</a><li>CM_PRIVATE
+: <a class="el" href="channels_8h.html#CM_5FPRIVATE">channels.h</a><li>CM_SECRET
+: <a class="el" href="channels_8h.html#CM_5FSECRET">channels.h</a><li>CM_TOPICLOCK
+: <a class="el" href="channels_8h.html#CM_5FTOPICLOCK">channels.h</a><li>cmdlist
+: <a class="el" href="modules_8cpp.html#cmdlist">modules.cpp</a><li>cmode()
+: <a class="el" href="message_8h.html#cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">message.h</a><li>command_table
+: <a class="el" href="modules_8cpp.html#command_5Ftable">modules.cpp</a><li>common_channels()
+: <a class="el" href="message_8h.html#common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29">message.h</a><li>CONF_FILE_NOT_FOUND
+: <a class="el" href="modules_8h.html#CONF_5FFILE_5FNOT_5FFOUND">modules.h</a><li>CONF_NOT_A_NUMBER
+: <a class="el" href="modules_8h.html#CONF_5FNOT_5FA_5FNUMBER">modules.h</a><li>CONF_NOT_UNSIGNED
+: <a class="el" href="modules_8h.html#CONF_5FNOT_5FUNSIGNED">modules.h</a><li>CONF_VALUE_NOT_FOUND
+: <a class="el" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">modules.h</a><li>config_f
+: <a class="el" href="users_8cpp.html#config_5Ff">users.cpp</a>, <a class="el" href="modules_8cpp.html#config_5Ff">modules.cpp</a>, <a class="el" href="channels_8cpp.html#config_5Ff">channels.cpp</a><li>createcommand()
+: <a class="el" href="modules_8h.html#createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">modules.h</a><li>cstatus()
+: <a class="el" href="message_8h.html#cstatus_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">message.h</a><li>custom_mode_params
+: <a class="el" href="channels_8cpp.html#custom_5Fmode_5Fparams">channels.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x64.html b/docs/module-doc/globals_0x64.html
new file mode 100644
index 000000000..a0abb5768
--- /dev/null
+++ b/docs/module-doc/globals_0x64.html
@@ -0,0 +1,33 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindexHL" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
+<li>DEBUG
+: <a class="el" href="modules_8h.html#DEBUG">modules.h</a><li>debugging
+: <a class="el" href="modules_8cpp.html#debugging">modules.cpp</a>, <a class="el" href="channels_8cpp.html#debugging">channels.cpp</a><li>DEFAULT
+: <a class="el" href="modules_8h.html#DEFAULT">modules.h</a><li>del_eline()
+: <a class="el" href="xline_8h.html#del_5Feline_28const_20char_20_2Ahostmask_29">xline.h</a><li>del_gline()
+: <a class="el" href="xline_8h.html#del_5Fgline_28const_20char_20_2Ahostmask_29">xline.h</a><li>del_kline()
+: <a class="el" href="xline_8h.html#del_5Fkline_28const_20char_20_2Ahostmask_29">xline.h</a><li>del_qline()
+: <a class="el" href="xline_8h.html#del_5Fqline_28const_20char_20_2Anickname_29">xline.h</a><li>del_zline()
+: <a class="el" href="xline_8h.html#del_5Fzline_28const_20char_20_2Aipaddr_29">xline.h</a><li>DieDelay
+: <a class="el" href="modules_8cpp.html#DieDelay">modules.cpp</a>, <a class="el" href="channels_8cpp.html#DieDelay">channels.cpp</a><li>diepass
+: <a class="el" href="modules_8cpp.html#diepass_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#diepass_5BMAXBUF_5D">channels.cpp</a><li>DieValue
+: <a class="el" href="modules_8cpp.html#DieValue_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#DieValue_5BMAXBUF_5D">channels.cpp</a><li>DoAddExtendedMode()
+: <a class="el" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">modules.cpp</a><li>duration()
+: <a class="el" href="commands_8h.html#duration_28const_20char_20_2Astr_29">commands.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x65.html b/docs/module-doc/globals_0x65.html
new file mode 100644
index 000000000..40bb97edf
--- /dev/null
+++ b/docs/module-doc/globals_0x65.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindexHL" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
+<li>EMode
+: <a class="el" href="modules_8cpp.html#EMode">modules.cpp</a><li>ExemptList
+: <a class="el" href="channels_8h.html#ExemptList">channels.h</a><li>expire_lines()
+: <a class="el" href="xline_8h.html#expire_5Flines_28_29">xline.h</a><li>ExtModeList
+: <a class="el" href="modules_8cpp.html#ExtModeList">modules.cpp</a><li>ExtModeListIter
+: <a class="el" href="modules_8cpp.html#ExtModeListIter">modules.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x66.html b/docs/module-doc/globals_0x66.html
new file mode 100644
index 000000000..a1dfbb62f
--- /dev/null
+++ b/docs/module-doc/globals_0x66.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindexHL" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
+<li>factory
+: <a class="el" href="modules_8cpp.html#factory_28_32_35_35_29">modules.cpp</a>, <a class="el" href="channels_8cpp.html#factory">channels.cpp</a><li>FD_MAGIC_NUMBER
+: <a class="el" href="modules_8h.html#FD_5FMAGIC_5FNUMBER">modules.h</a><li>fd_ref_table
+: <a class="el" href="modules_8cpp.html#fd_5Fref_5Ftable_5B_36_35_35_33_36_5D">modules.cpp</a><li>file_cache
+: <a class="el" href="modules_8h.html#file_5Fcache">modules.h</a><li>FOREACH_MOD
+: <a class="el" href="modules_8h.html#FOREACH_5FMOD">modules.h</a><li>FOREACH_RESULT
+: <a class="el" href="modules_8h.html#FOREACH_5FRESULT_28x_29">modules.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x67.html b/docs/module-doc/globals_0x67.html
new file mode 100644
index 000000000..4a00d5018
--- /dev/null
+++ b/docs/module-doc/globals_0x67.html
@@ -0,0 +1,24 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindexHL" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
+<li>give_hops()
+: <a class="el" href="mode_8h.html#give_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>give_ops()
+: <a class="el" href="mode_8h.html#give_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>give_voice()
+: <a class="el" href="mode_8h.html#give_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>gline_set_creation_time()
+: <a class="el" href="xline_8h.html#gline_5Fset_5Fcreation_5Ftime_28char_20_2Ahost_2C_20time_5Ft_20create_5Ftime_29">xline.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x68.html b/docs/module-doc/globals_0x68.html
new file mode 100644
index 000000000..ccd41a737
--- /dev/null
+++ b/docs/module-doc/globals_0x68.html
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindexHL" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
+<li>handle_admin()
+: <a class="el" href="commands_8h.html#handle_5Fadmin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_away()
+: <a class="el" href="commands_8h.html#handle_5Faway_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_commands()
+: <a class="el" href="commands_8h.html#handle_5Fcommands_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_connect()
+: <a class="el" href="commands_8h.html#handle_5Fconnect_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_die()
+: <a class="el" href="commands_8h.html#handle_5Fdie_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_eline()
+: <a class="el" href="commands_8h.html#handle_5Feline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_gline()
+: <a class="el" href="commands_8h.html#handle_5Fgline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_info()
+: <a class="el" href="commands_8h.html#handle_5Finfo_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_invite()
+: <a class="el" href="commands_8h.html#handle_5Finvite_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_ison()
+: <a class="el" href="commands_8h.html#handle_5Fison_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_join()
+: <a class="el" href="commands_8h.html#handle_5Fjoin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_kick()
+: <a class="el" href="commands_8h.html#handle_5Fkick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_kill()
+: <a class="el" href="commands_8h.html#handle_5Fkill_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_kline()
+: <a class="el" href="commands_8h.html#handle_5Fkline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_links()
+: <a class="el" href="commands_8h.html#handle_5Flinks_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_list()
+: <a class="el" href="commands_8h.html#handle_5Flist_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_loadmodule()
+: <a class="el" href="commands_8h.html#handle_5Floadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_lusers()
+: <a class="el" href="commands_8h.html#handle_5Flusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_map()
+: <a class="el" href="commands_8h.html#handle_5Fmap_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_mode()
+: <a class="el" href="mode_8h.html#handle_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">mode.h</a><li>handle_modules()
+: <a class="el" href="commands_8h.html#handle_5Fmodules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_motd()
+: <a class="el" href="commands_8h.html#handle_5Fmotd_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_names()
+: <a class="el" href="commands_8h.html#handle_5Fnames_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_nick()
+: <a class="el" href="commands_8h.html#handle_5Fnick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_notice()
+: <a class="el" href="commands_8h.html#handle_5Fnotice_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_oper()
+: <a class="el" href="commands_8h.html#handle_5Foper_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_part()
+: <a class="el" href="commands_8h.html#handle_5Fpart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_pass()
+: <a class="el" href="commands_8h.html#handle_5Fpass_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_ping()
+: <a class="el" href="commands_8h.html#handle_5Fping_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_pong()
+: <a class="el" href="commands_8h.html#handle_5Fpong_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_privmsg()
+: <a class="el" href="commands_8h.html#handle_5Fprivmsg_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_qline()
+: <a class="el" href="commands_8h.html#handle_5Fqline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_quit()
+: <a class="el" href="commands_8h.html#handle_5Fquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_rehash()
+: <a class="el" href="commands_8h.html#handle_5Frehash_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_restart()
+: <a class="el" href="commands_8h.html#handle_5Frestart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_rules()
+: <a class="el" href="commands_8h.html#handle_5Frules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_server()
+: <a class="el" href="commands_8h.html#handle_5Fserver_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_squit()
+: <a class="el" href="commands_8h.html#handle_5Fsquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_stats()
+: <a class="el" href="commands_8h.html#handle_5Fstats_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_summon()
+: <a class="el" href="commands_8h.html#handle_5Fsummon_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_time()
+: <a class="el" href="commands_8h.html#handle_5Ftime_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_topic()
+: <a class="el" href="commands_8h.html#handle_5Ftopic_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_trace()
+: <a class="el" href="commands_8h.html#handle_5Ftrace_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_unloadmodule()
+: <a class="el" href="commands_8h.html#handle_5Funloadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_user()
+: <a class="el" href="commands_8h.html#handle_5Fuser_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_userhost()
+: <a class="el" href="commands_8h.html#handle_5Fuserhost_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_users()
+: <a class="el" href="commands_8h.html#handle_5Fusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_wallops()
+: <a class="el" href="commands_8h.html#handle_5Fwallops_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_who()
+: <a class="el" href="commands_8h.html#handle_5Fwho_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_whois()
+: <a class="el" href="commands_8h.html#handle_5Fwhois_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_whowas()
+: <a class="el" href="commands_8h.html#handle_5Fwhowas_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_zline()
+: <a class="el" href="commands_8h.html#handle_5Fzline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>has_channel()
+: <a class="el" href="message_8h.html#has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29">message.h</a><li>hasumode()
+: <a class="el" href="message_8h.html#hasumode_28userrec_20_2Auser_2C_20char_20mode_29">message.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x69.html b/docs/module-doc/globals_0x69.html
new file mode 100644
index 000000000..37b3d6b09
--- /dev/null
+++ b/docs/module-doc/globals_0x69.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindexHL" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
+<li>I_CONNECTED
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTED">socket.h</a><li>I_CONNECTING
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTING">socket.h</a><li>I_DISCONNECTED
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FDISCONNECTED">socket.h</a><li>I_ERR_BIND
+: <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FBIND">socket.h</a><li>I_ERR_CONNECT
+: <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FCONNECT">socket.h</a><li>I_ERR_SOCKET
+: <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">socket.h</a><li>I_ERR_TIMEOUT
+: <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FTIMEOUT">socket.h</a><li>I_ERROR
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FERROR">socket.h</a><li>I_LISTENING
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FLISTENING">socket.h</a><li>include_stack
+: <a class="el" href="modules_8cpp.html#include_5Fstack">modules.cpp</a><li>InspSocketError
+: <a class="el" href="socket_8h.html#InspSocketError">socket.h</a><li>InspSocketState
+: <a class="el" href="socket_8h.html#InspSocketState">socket.h</a><li>InvitedList
+: <a class="el" href="users_8h.html#InvitedList">users.h</a><li>InviteList
+: <a class="el" href="channels_8h.html#InviteList">channels.h</a><li>IP
+: <a class="el" href="modules_8cpp.html#IP">modules.cpp</a><li>ircd_module
+: <a class="el" href="modules_8h.html#ircd_5Fmodule">modules.h</a><li>is_uline()
+: <a class="el" href="commands_8h.html#is_5Fuline_28const_20char_20_2Aserver_29">commands.h</a><li>isident()
+: <a class="el" href="message_8h.html#isident_28const_20char_20_2An_29">message.h</a><li>isnick()
+: <a class="el" href="message_8h.html#isnick_28const_20char_20_2An_29">message.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x6c.html b/docs/module-doc/globals_0x6c.html
new file mode 100644
index 000000000..858c1e9cc
--- /dev/null
+++ b/docs/module-doc/globals_0x6c.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindexHL" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
+<li>list
+: <a class="el" href="modules_8cpp.html#list_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#list_5BMAXBUF_5D">channels.cpp</a><li>log_file
+: <a class="el" href="socket_8cpp.html#log_5Ffile">socket.cpp</a>, <a class="el" href="modules_8cpp.html#log_5Ffile">modules.cpp</a>, <a class="el" href="channels_8cpp.html#log_5Ffile">channels.cpp</a><li>LogLevel
+: <a class="el" href="modules_8cpp.html#LogLevel">modules.cpp</a>, <a class="el" href="channels_8cpp.html#LogLevel">channels.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x6d.html b/docs/module-doc/globals_0x6d.html
new file mode 100644
index 000000000..9434213aa
--- /dev/null
+++ b/docs/module-doc/globals_0x6d.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindexHL" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
+<li>matches_exception()
+: <a class="el" href="xline_8h.html#matches_5Fexception_28const_20char_20_2Ahost_29">xline.h</a><li>matches_gline()
+: <a class="el" href="xline_8h.html#matches_5Fgline_28const_20char_20_2Ahost_29">xline.h</a><li>matches_kline()
+: <a class="el" href="xline_8h.html#matches_5Fkline_28const_20char_20_2Ahost_29">xline.h</a><li>matches_qline()
+: <a class="el" href="xline_8h.html#matches_5Fqline_28const_20char_20_2Anick_29">xline.h</a><li>matches_zline()
+: <a class="el" href="xline_8h.html#matches_5Fzline_28const_20char_20_2Aipaddr_29">xline.h</a><li>MaxConn
+: <a class="el" href="socket_8cpp.html#MaxConn">socket.cpp</a><li>MaxWhoResults
+: <a class="el" href="modules_8cpp.html#MaxWhoResults">modules.cpp</a>, <a class="el" href="channels_8cpp.html#MaxWhoResults">channels.cpp</a><li>merge_mode()
+: <a class="el" href="mode_8h.html#merge_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_29">mode.h</a><li>merge_mode2()
+: <a class="el" href="mode_8h.html#merge_5Fmode_32_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">mode.h</a><li>MODCOUNT
+: <a class="el" href="modules_8cpp.html#MODCOUNT">modules.cpp</a>, <a class="el" href="channels_8cpp.html#MODCOUNT">channels.cpp</a><li>ModeDefined()
+: <a class="el" href="modules_8cpp.html#ModeDefined_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeDefinedOff()
+: <a class="el" href="modules_8cpp.html#ModeDefinedOff_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeDefinedOn()
+: <a class="el" href="modules_8cpp.html#ModeDefinedOn_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeDefinedOper()
+: <a class="el" href="modules_8cpp.html#ModeDefinedOper_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeIsListMode()
+: <a class="el" href="modules_8cpp.html#ModeIsListMode_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeMakeList()
+: <a class="el" href="modules_8cpp.html#ModeMakeList_28char_20modechar_29">modules.cpp</a><li>module_names
+: <a class="el" href="modules_8cpp.html#module_5Fnames">modules.cpp</a>, <a class="el" href="channels_8cpp.html#module_5Fnames">channels.cpp</a><li>module_sockets
+: <a class="el" href="modules_8cpp.html#module_5Fsockets">modules.cpp</a><li>modules
+: <a class="el" href="modules_8cpp.html#modules_28_32_35_35_29">modules.cpp</a>, <a class="el" href="channels_8cpp.html#modules">channels.cpp</a><li>motd
+: <a class="el" href="modules_8cpp.html#motd_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#motd_5BMAXBUF_5D">channels.cpp</a><li>MOTD
+: <a class="el" href="modules_8cpp.html#MOTD">modules.cpp</a><li>MT_CHANNEL
+: <a class="el" href="modules_8h.html#MT_5FCHANNEL">modules.h</a><li>MT_CLIENT
+: <a class="el" href="modules_8h.html#MT_5FCLIENT">modules.h</a><li>MT_SERVER
+: <a class="el" href="modules_8h.html#MT_5FSERVER">modules.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x6e.html b/docs/module-doc/globals_0x6e.html
new file mode 100644
index 000000000..aa4f67ff8
--- /dev/null
+++ b/docs/module-doc/globals_0x6e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindexHL" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
+<li>nb_start
+: <a class="el" href="modules_8cpp.html#nb_5Fstart">modules.cpp</a>, <a class="el" href="channels_8cpp.html#nb_5Fstart">channels.cpp</a><li>NetBufferSize
+: <a class="el" href="modules_8cpp.html#NetBufferSize">modules.cpp</a>, <a class="el" href="channels_8cpp.html#NetBufferSize">channels.cpp</a><li>Network
+: <a class="el" href="modules_8cpp.html#Network_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#Network_5BMAXBUF_5D">channels.cpp</a><li>NonBlocking()
+: <a class="el" href="message_8h.html#NonBlocking_28int_20s_29">message.h</a><li>NONE
+: <a class="el" href="modules_8h.html#NONE">modules.h</a><li>nspace
+: <a class="el" href="hashcomp_8h.html#nspace">hashcomp.h</a>, <a class="el" href="channels_8cpp.html#nspace">channels.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x6f.html b/docs/module-doc/globals_0x6f.html
new file mode 100644
index 000000000..d450c3ce9
--- /dev/null
+++ b/docs/module-doc/globals_0x6f.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindexHL" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
+<li>openSockfd
+: <a class="el" href="socket_8cpp.html#openSockfd_5BMAXSOCKS_5D">socket.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x70.html b/docs/module-doc/globals_0x70.html
new file mode 100644
index 000000000..2f656d73e
--- /dev/null
+++ b/docs/module-doc/globals_0x70.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindexHL" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
+<li>portCount
+: <a class="el" href="modules_8cpp.html#portCount">modules.cpp</a>, <a class="el" href="channels_8cpp.html#portCount">channels.cpp</a><li>ports
+: <a class="el" href="modules_8cpp.html#ports_5BMAXSOCKS_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#ports_5BMAXSOCKS_5D">channels.cpp</a><li>PrefixQuit
+: <a class="el" href="modules_8cpp.html#PrefixQuit_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#PrefixQuit_5BMAXBUF_5D">channels.cpp</a><li>process_modes()
+: <a class="el" href="mode_8h.html#process_5Fmodes_28char_20_2A_2Aparameters_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20int_20status_2C_20int_20pcnt_2C_20bool_20servermode_2C_20bool_20silent_2C_20bool_20local_29">mode.h</a><li>process_module_umode()
+: <a class="el" href="mode_8h.html#process_5Fmodule_5Fumode_28char_20umode_2C_20userrec_20_2Asource_2C_20void_20_2Adest_2C_20bool_20adding_29">mode.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x71.html b/docs/module-doc/globals_0x71.html
new file mode 100644
index 000000000..fc28db687
--- /dev/null
+++ b/docs/module-doc/globals_0x71.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindexHL" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_q">- q -</a></h3><ul>
+<li>qline_make_global()
+: <a class="el" href="xline_8h.html#qline_5Fmake_5Fglobal_28const_20char_20_2Anickname_29">xline.h</a><li>qline_set_creation_time()
+: <a class="el" href="xline_8h.html#qline_5Fset_5Fcreation_5Ftime_28char_20_2Anick_2C_20time_5Ft_20create_5Ftime_29">xline.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x72.html b/docs/module-doc/globals_0x72.html
new file mode 100644
index 000000000..84db1d420
--- /dev/null
+++ b/docs/module-doc/globals_0x72.html
@@ -0,0 +1,24 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindexHL" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
+<li>read_xline_defaults()
+: <a class="el" href="xline_8h.html#read_5Fxline_5Fdefaults_28_29">xline.h</a><li>restartpass
+: <a class="el" href="modules_8cpp.html#restartpass_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#restartpass_5BMAXBUF_5D">channels.cpp</a><li>rules
+: <a class="el" href="modules_8cpp.html#rules_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#rules_5BMAXBUF_5D">channels.cpp</a><li>RULES
+: <a class="el" href="modules_8cpp.html#RULES">modules.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x73.html b/docs/module-doc/globals_0x73.html
new file mode 100644
index 000000000..2617e4d18
--- /dev/null
+++ b/docs/module-doc/globals_0x73.html
@@ -0,0 +1,37 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindexHL" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
+<li>send_network_quit()
+: <a class="el" href="message_8h.html#send_5Fnetwork_5Fquit_28const_20char_20_2Anick_2C_20const_20char_20_2Areason_29">message.h</a><li>server_mode()
+: <a class="el" href="modules_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">modules.h</a>, <a class="el" href="mode_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">mode.h</a><li>ServerDesc
+: <a class="el" href="modules_8cpp.html#ServerDesc_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#ServerDesc_5BMAXBUF_5D">channels.cpp</a><li>ServerName
+: <a class="el" href="users_8cpp.html#ServerName_5BMAXBUF_5D">users.cpp</a>, <a class="el" href="modules_8cpp.html#ServerName_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#ServerName_5BMAXBUF_5D">channels.cpp</a><li>SPARSE
+: <a class="el" href="modules_8h.html#SPARSE">modules.h</a><li>startup_time
+: <a class="el" href="modules_8cpp.html#startup_5Ftime">modules.cpp</a>, <a class="el" href="channels_8cpp.html#startup_5Ftime">channels.cpp</a><li>stats_e()
+: <a class="el" href="xline_8h.html#stats_5Fe_28userrec_20_2Auser_29">xline.h</a><li>stats_g()
+: <a class="el" href="xline_8h.html#stats_5Fg_28userrec_20_2Auser_29">xline.h</a><li>stats_k()
+: <a class="el" href="xline_8h.html#stats_5Fk_28userrec_20_2Auser_29">xline.h</a><li>stats_q()
+: <a class="el" href="xline_8h.html#stats_5Fq_28userrec_20_2Auser_29">xline.h</a><li>stats_z()
+: <a class="el" href="xline_8h.html#stats_5Fz_28userrec_20_2Auser_29">xline.h</a><li>STATUS_HOP
+: <a class="el" href="users_8h.html#STATUS_5FHOP">users.h</a><li>STATUS_NORMAL
+: <a class="el" href="users_8h.html#STATUS_5FNORMAL">users.h</a><li>STATUS_OP
+: <a class="el" href="users_8h.html#STATUS_5FOP">users.h</a><li>STATUS_VOICE
+: <a class="el" href="users_8h.html#STATUS_5FVOICE">users.h</a><li>string
+: <a class="el" href="namespaceirc.html#string">hashcomp.h</a><li>string_list
+: <a class="el" href="modules_8h.html#string_5Flist">modules.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x74.html b/docs/module-doc/globals_0x74.html
new file mode 100644
index 000000000..000121a3d
--- /dev/null
+++ b/docs/module-doc/globals_0x74.html
@@ -0,0 +1,27 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindexHL" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
+<li>take_ban()
+: <a class="el" href="mode_8h.html#take_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>take_hops()
+: <a class="el" href="mode_8h.html#take_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>take_ops()
+: <a class="el" href="mode_8h.html#take_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>take_voice()
+: <a class="el" href="mode_8h.html#take_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>TidyBan()
+: <a class="el" href="message_8h.html#TidyBan_28char_20_2Aban_29">message.h</a><li>tidystring()
+: <a class="el" href="message_8h.html#tidystring_28char_20_2Astr_29">message.h</a><li>TIME
+: <a class="el" href="users_8cpp.html#TIME">users.cpp</a>, <a class="el" href="socket_8cpp.html#TIME">socket.cpp</a>, <a class="el" href="modules_8cpp.html#TIME">modules.cpp</a>, <a class="el" href="channels_8cpp.html#TIME">channels.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x75.html b/docs/module-doc/globals_0x75.html
new file mode 100644
index 000000000..2aabe539a
--- /dev/null
+++ b/docs/module-doc/globals_0x75.html
@@ -0,0 +1,27 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindexHL" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
+<li>UCMODE_FOUNDER
+: <a class="el" href="channels_8h.html#UCMODE_5FFOUNDER">channels.h</a><li>UCMODE_HOP
+: <a class="el" href="channels_8h.html#UCMODE_5FHOP">channels.h</a><li>UCMODE_OP
+: <a class="el" href="channels_8h.html#UCMODE_5FOP">channels.h</a><li>UCMODE_PROTECT
+: <a class="el" href="channels_8h.html#UCMODE_5FPROTECT">channels.h</a><li>UCMODE_VOICE
+: <a class="el" href="channels_8h.html#UCMODE_5FVOICE">channels.h</a><li>unlimitcore
+: <a class="el" href="socket_8cpp.html#unlimitcore">socket.cpp</a><li>user_hash
+: <a class="el" href="modules_8cpp.html#user_5Fhash">modules.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x76.html b/docs/module-doc/globals_0x76.html
new file mode 100644
index 000000000..f4a101507
--- /dev/null
+++ b/docs/module-doc/globals_0x76.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindexHL" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
+<li>VERBOSE
+: <a class="el" href="modules_8h.html#VERBOSE">modules.h</a><li>VF_COMMON
+: <a class="el" href="modules_8h.html#VF_5FCOMMON">modules.h</a><li>VF_SERVICEPROVIDER
+: <a class="el" href="modules_8h.html#VF_5FSERVICEPROVIDER">modules.h</a><li>VF_STATIC
+: <a class="el" href="modules_8h.html#VF_5FSTATIC">modules.h</a><li>VF_VENDOR
+: <a class="el" href="modules_8h.html#VF_5FVENDOR">modules.h</a><li>VoidPointer
+: <a class="el" href="base_8h.html#VoidPointer">base.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x77.html b/docs/module-doc/globals_0x77.html
new file mode 100644
index 000000000..fbb81cb57
--- /dev/null
+++ b/docs/module-doc/globals_0x77.html
@@ -0,0 +1,24 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindexHL" href="globals_0x77.html#index_w">w</a> | <a class="qindex" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
+<li>whowas
+: <a class="el" href="modules_8cpp.html#whowas">modules.cpp</a><li>whowas_hash
+: <a class="el" href="modules_8cpp.html#whowas_5Fhash">modules.cpp</a><li>WHOWAS_MAX
+: <a class="el" href="modules_8cpp.html#WHOWAS_5FMAX">modules.cpp</a>, <a class="el" href="channels_8cpp.html#WHOWAS_5FMAX">channels.cpp</a><li>WHOWAS_STALE
+: <a class="el" href="modules_8cpp.html#WHOWAS_5FSTALE">modules.cpp</a>, <a class="el" href="channels_8cpp.html#WHOWAS_5FSTALE">channels.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_0x7a.html b/docs/module-doc/globals_0x7a.html
new file mode 100644
index 000000000..8876f165f
--- /dev/null
+++ b/docs/module-doc/globals_0x7a.html
@@ -0,0 +1,22 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"> | <a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="globals.html#index_a">a</a> | <a class="qindex" href="globals_0x62.html#index_b">b</a> | <a class="qindex" href="globals_0x63.html#index_c">c</a> | <a class="qindex" href="globals_0x64.html#index_d">d</a> | <a class="qindex" href="globals_0x65.html#index_e">e</a> | <a class="qindex" href="globals_0x66.html#index_f">f</a> | <a class="qindex" href="globals_0x67.html#index_g">g</a> | <a class="qindex" href="globals_0x68.html#index_h">h</a> | <a class="qindex" href="globals_0x69.html#index_i">i</a> | <a class="qindex" href="globals_0x6c.html#index_l">l</a> | <a class="qindex" href="globals_0x6d.html#index_m">m</a> | <a class="qindex" href="globals_0x6e.html#index_n">n</a> | <a class="qindex" href="globals_0x6f.html#index_o">o</a> | <a class="qindex" href="globals_0x70.html#index_p">p</a> | <a class="qindex" href="globals_0x71.html#index_q">q</a> | <a class="qindex" href="globals_0x72.html#index_r">r</a> | <a class="qindex" href="globals_0x73.html#index_s">s</a> | <a class="qindex" href="globals_0x74.html#index_t">t</a> | <a class="qindex" href="globals_0x75.html#index_u">u</a> | <a class="qindex" href="globals_0x76.html#index_v">v</a> | <a class="qindex" href="globals_0x77.html#index_w">w</a> | <a class="qindexHL" href="globals_0x7a.html#index_z">z</a></div>
+
+<p>
+Here is a list of all file members with links to the files they belong to:
+<p>
+<h3><a class="anchor" name="index_z">- z -</a></h3><ul>
+<li>zline_make_global()
+: <a class="el" href="xline_8h.html#zline_5Fmake_5Fglobal_28const_20char_20_2Aipaddr_29">xline.h</a><li>zline_set_creation_time()
+: <a class="el" href="xline_8h.html#zline_5Fset_5Fcreation_5Ftime_28char_20_2Aip_2C_20time_5Ft_20create_5Ftime_29">xline.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_defs.html b/docs/module-doc/globals_defs.html
index 8d0992220..b155d0221 100644
--- a/docs/module-doc/globals_defs.html
+++ b/docs/module-doc/globals_defs.html
@@ -1,106 +1,85 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: File Member Index</title>
+<title>InspIRCd: Class Members</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
-<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindexHL" href="globals_defs.html">Defines</a></div>
-<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_u">u</a> | <a class="qindex" href="#index_v">v</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindexHL" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_u">u</a> | <a class="qindex" href="#index_v">v</a></div>
<p>
<p>
-<h3><a name="index_a">- a -</a>
-</h3><ul>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
<li>AC_DEHALFOP
-: <a class="el" href="modules_8h.html#a17">modules.h</a><li>AC_DEOP
-: <a class="el" href="modules_8h.html#a12">modules.h</a><li>AC_DEVOICE
-: <a class="el" href="modules_8h.html#a15">modules.h</a><li>AC_GENERAL_MODE
-: <a class="el" href="modules_8h.html#a19">modules.h</a><li>AC_HALFOP
-: <a class="el" href="modules_8h.html#a16">modules.h</a><li>AC_INVITE
-: <a class="el" href="modules_8h.html#a18">modules.h</a><li>AC_KICK
-: <a class="el" href="modules_8h.html#a11">modules.h</a><li>AC_OP
-: <a class="el" href="modules_8h.html#a13">modules.h</a><li>AC_VOICE
-: <a class="el" href="modules_8h.html#a14">modules.h</a><li>ACR_ALLOW
-: <a class="el" href="modules_8h.html#a10">modules.h</a><li>ACR_DEFAULT
-: <a class="el" href="modules_8h.html#a8">modules.h</a><li>ACR_DENY
-: <a class="el" href="modules_8h.html#a9">modules.h</a></ul>
-<h3><a name="index_c">- c -</a>
-</h3><ul>
+: <a class="el" href="modules_8h.html#AC_5FDEHALFOP">modules.h</a><li>AC_DEOP
+: <a class="el" href="modules_8h.html#AC_5FDEOP">modules.h</a><li>AC_DEVOICE
+: <a class="el" href="modules_8h.html#AC_5FDEVOICE">modules.h</a><li>AC_GENERAL_MODE
+: <a class="el" href="modules_8h.html#AC_5FGENERAL_5FMODE">modules.h</a><li>AC_HALFOP
+: <a class="el" href="modules_8h.html#AC_5FHALFOP">modules.h</a><li>AC_INVITE
+: <a class="el" href="modules_8h.html#AC_5FINVITE">modules.h</a><li>AC_KICK
+: <a class="el" href="modules_8h.html#AC_5FKICK">modules.h</a><li>AC_OP
+: <a class="el" href="modules_8h.html#AC_5FOP">modules.h</a><li>AC_VOICE
+: <a class="el" href="modules_8h.html#AC_5FVOICE">modules.h</a><li>ACR_ALLOW
+: <a class="el" href="modules_8h.html#ACR_5FALLOW">modules.h</a><li>ACR_DEFAULT
+: <a class="el" href="modules_8h.html#ACR_5FDEFAULT">modules.h</a><li>ACR_DENY
+: <a class="el" href="modules_8h.html#ACR_5FDENY">modules.h</a></ul>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
<li>CC_ALLOW
-: <a class="el" href="users_8h.html#a4">users.h</a><li>CC_DENY
-: <a class="el" href="users_8h.html#a5">users.h</a><li>CM_INVITEONLY
-: <a class="el" href="channels_8h.html#a2">channels.h</a><li>CM_MODERATED
-: <a class="el" href="channels_8h.html#a3">channels.h</a><li>CM_NOEXTERNAL
-: <a class="el" href="channels_8h.html#a1">channels.h</a><li>CM_PRIVATE
-: <a class="el" href="channels_8h.html#a5">channels.h</a><li>CM_SECRET
-: <a class="el" href="channels_8h.html#a4">channels.h</a><li>CM_TOPICLOCK
-: <a class="el" href="channels_8h.html#a0">channels.h</a><li>CONF_FILE_NOT_FOUND
-: <a class="el" href="modules_8h.html#a30">modules.h</a><li>CONF_NOT_A_NUMBER
-: <a class="el" href="modules_8h.html#a27">modules.h</a><li>CONF_NOT_UNSIGNED
-: <a class="el" href="modules_8h.html#a28">modules.h</a><li>CONF_VALUE_NOT_FOUND
-: <a class="el" href="modules_8h.html#a29">modules.h</a></ul>
-<h3><a name="index_d">- d -</a>
-</h3><ul>
+: <a class="el" href="users_8h.html#CC_5FALLOW">users.h</a><li>CC_DENY
+: <a class="el" href="users_8h.html#CC_5FDENY">users.h</a><li>CM_INVITEONLY
+: <a class="el" href="channels_8h.html#CM_5FINVITEONLY">channels.h</a><li>CM_MODERATED
+: <a class="el" href="channels_8h.html#CM_5FMODERATED">channels.h</a><li>CM_NOEXTERNAL
+: <a class="el" href="channels_8h.html#CM_5FNOEXTERNAL">channels.h</a><li>CM_PRIVATE
+: <a class="el" href="channels_8h.html#CM_5FPRIVATE">channels.h</a><li>CM_SECRET
+: <a class="el" href="channels_8h.html#CM_5FSECRET">channels.h</a><li>CM_TOPICLOCK
+: <a class="el" href="channels_8h.html#CM_5FTOPICLOCK">channels.h</a><li>CONF_FILE_NOT_FOUND
+: <a class="el" href="modules_8h.html#CONF_5FFILE_5FNOT_5FFOUND">modules.h</a><li>CONF_NOT_A_NUMBER
+: <a class="el" href="modules_8h.html#CONF_5FNOT_5FA_5FNUMBER">modules.h</a><li>CONF_NOT_UNSIGNED
+: <a class="el" href="modules_8h.html#CONF_5FNOT_5FUNSIGNED">modules.h</a><li>CONF_VALUE_NOT_FOUND
+: <a class="el" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">modules.h</a></ul>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
<li>DEBUG
-: <a class="el" href="modules_8h.html#a0">modules.h</a><li>DEFAULT
-: <a class="el" href="modules_8h.html#a2">modules.h</a></ul>
-<h3><a name="index_f">- f -</a>
-</h3><ul>
+: <a class="el" href="modules_8h.html#DEBUG">modules.h</a><li>DEFAULT
+: <a class="el" href="modules_8h.html#DEFAULT">modules.h</a></ul>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
<li>FD_MAGIC_NUMBER
-: <a class="el" href="modules_8h.html#a26">modules.h</a><li>FOREACH_MOD
-: <a class="el" href="modules_8h.html#a24">modules.h</a><li>FOREACH_RESULT
-: <a class="el" href="modules_8h.html#a25">modules.h</a></ul>
-<h3><a name="index_l">- l -</a>
-</h3><ul>
-<li>LINK_ACTIVE
-: <a class="el" href="servers_8h.html#a0">servers.h</a><li>LINK_INACTIVE
-: <a class="el" href="servers_8h.html#a1">servers.h</a></ul>
-<h3><a name="index_m">- m -</a>
-</h3><ul>
+: <a class="el" href="modules_8h.html#FD_5FMAGIC_5FNUMBER">modules.h</a><li>FOREACH_MOD
+: <a class="el" href="modules_8h.html#FOREACH_5FMOD">modules.h</a><li>FOREACH_RESULT
+: <a class="el" href="modules_8h.html#FOREACH_5FRESULT_28x_29">modules.h</a></ul>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
<li>MT_CHANNEL
-: <a class="el" href="modules_8h.html#a5">modules.h</a><li>MT_CLIENT
-: <a class="el" href="modules_8h.html#a6">modules.h</a><li>MT_SERVER
-: <a class="el" href="modules_8h.html#a7">modules.h</a></ul>
-<h3><a name="index_n">- n -</a>
-</h3><ul>
+: <a class="el" href="modules_8h.html#MT_5FCHANNEL">modules.h</a><li>MT_CLIENT
+: <a class="el" href="modules_8h.html#MT_5FCLIENT">modules.h</a><li>MT_SERVER
+: <a class="el" href="modules_8h.html#MT_5FSERVER">modules.h</a></ul>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
<li>NONE
-: <a class="el" href="modules_8h.html#a4">modules.h</a><li>nspace
-: <a class="el" href="hashcomp_8h.html#a0">hashcomp.h</a>, <a class="el" href="channels_8cpp.html#a0">channels.cpp</a></ul>
-<h3><a name="index_s">- s -</a>
-</h3><ul>
+: <a class="el" href="modules_8h.html#NONE">modules.h</a><li>nspace
+: <a class="el" href="hashcomp_8h.html#nspace">hashcomp.h</a>, <a class="el" href="channels_8cpp.html#nspace">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
<li>SPARSE
-: <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_SERVICES
-: <a class="el" href="connection_8h.html#a5">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
-: <a class="el" href="users_8h.html#a2">users.h</a></ul>
-<h3><a name="index_u">- u -</a>
-</h3><ul>
+: <a class="el" href="modules_8h.html#SPARSE">modules.h</a><li>STATUS_HOP
+: <a class="el" href="users_8h.html#STATUS_5FHOP">users.h</a><li>STATUS_NORMAL
+: <a class="el" href="users_8h.html#STATUS_5FNORMAL">users.h</a><li>STATUS_OP
+: <a class="el" href="users_8h.html#STATUS_5FOP">users.h</a><li>STATUS_VOICE
+: <a class="el" href="users_8h.html#STATUS_5FVOICE">users.h</a></ul>
+<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
<li>UCMODE_FOUNDER
-: <a class="el" href="channels_8h.html#a10">channels.h</a><li>UCMODE_HOP
-: <a class="el" href="channels_8h.html#a8">channels.h</a><li>UCMODE_OP
-: <a class="el" href="channels_8h.html#a6">channels.h</a><li>UCMODE_PROTECT
-: <a class="el" href="channels_8h.html#a9">channels.h</a><li>UCMODE_VOICE
-: <a class="el" href="channels_8h.html#a7">channels.h</a></ul>
-<h3><a name="index_v">- v -</a>
-</h3><ul>
+: <a class="el" href="channels_8h.html#UCMODE_5FFOUNDER">channels.h</a><li>UCMODE_HOP
+: <a class="el" href="channels_8h.html#UCMODE_5FHOP">channels.h</a><li>UCMODE_OP
+: <a class="el" href="channels_8h.html#UCMODE_5FOP">channels.h</a><li>UCMODE_PROTECT
+: <a class="el" href="channels_8h.html#UCMODE_5FPROTECT">channels.h</a><li>UCMODE_VOICE
+: <a class="el" href="channels_8h.html#UCMODE_5FVOICE">channels.h</a></ul>
+<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
<li>VERBOSE
-: <a class="el" href="modules_8h.html#a1">modules.h</a><li>VF_COMMON
-: <a class="el" href="modules_8h.html#a23">modules.h</a><li>VF_SERVICEPROVIDER
-: <a class="el" href="modules_8h.html#a22">modules.h</a><li>VF_STATIC
-: <a class="el" href="modules_8h.html#a20">modules.h</a><li>VF_VENDOR
-: <a class="el" href="modules_8h.html#a21">modules.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:51 2005 for InspIRCd by
+: <a class="el" href="modules_8h.html#VERBOSE">modules.h</a><li>VF_COMMON
+: <a class="el" href="modules_8h.html#VF_5FCOMMON">modules.h</a><li>VF_SERVICEPROVIDER
+: <a class="el" href="modules_8h.html#VF_5FSERVICEPROVIDER">modules.h</a><li>VF_STATIC
+: <a class="el" href="modules_8h.html#VF_5FSTATIC">modules.h</a><li>VF_VENDOR
+: <a class="el" href="modules_8h.html#VF_5FVENDOR">modules.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/globals_enum.html b/docs/module-doc/globals_enum.html
new file mode 100644
index 000000000..da898985a
--- /dev/null
+++ b/docs/module-doc/globals_enum.html
@@ -0,0 +1,19 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindexHL" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+
+<p>
+<ul>
+<li>InspSocketError
+: <a class="el" href="socket_8h.html#InspSocketError">socket.h</a><li>InspSocketState
+: <a class="el" href="socket_8h.html#InspSocketState">socket.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_eval.html b/docs/module-doc/globals_eval.html
new file mode 100644
index 000000000..e8080ff9f
--- /dev/null
+++ b/docs/module-doc/globals_eval.html
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Class Members</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindexHL" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+
+<p>
+<ul>
+<li>I_CONNECTED
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTED">socket.h</a><li>I_CONNECTING
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTING">socket.h</a><li>I_DISCONNECTED
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FDISCONNECTED">socket.h</a><li>I_ERR_BIND
+: <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FBIND">socket.h</a><li>I_ERR_CONNECT
+: <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FCONNECT">socket.h</a><li>I_ERR_SOCKET
+: <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">socket.h</a><li>I_ERR_TIMEOUT
+: <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FTIMEOUT">socket.h</a><li>I_ERROR
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FERROR">socket.h</a><li>I_LISTENING
+: <a class="el" href="socket_8h.html#InspSocketStateI_5FLISTENING">socket.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/globals_func.html b/docs/module-doc/globals_func.html
index 981d5daed..df42b69fa 100644
--- a/docs/module-doc/globals_func.html
+++ b/docs/module-doc/globals_func.html
@@ -1,223 +1,176 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: File Member Index</title>
+<title>InspIRCd: Class Members</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
-<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindexHL" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindexHL" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_g">g</a> | <a class="qindex" href="#index_h">h</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_q">q</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_z">z</a></div>
<p>
<p>
-<h3><a name="index_a">- a -</a>
-</h3><ul>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
<li>add_ban()
-: <a class="el" href="mode_8h.html#a6">mode.h</a><li>add_eline()
-: <a class="el" href="xline_8h.html#a5">xline.h</a><li>add_gline()
-: <a class="el" href="xline_8h.html#a1">xline.h</a><li>add_kline()
-: <a class="el" href="xline_8h.html#a4">xline.h</a><li>add_qline()
-: <a class="el" href="xline_8h.html#a2">xline.h</a><li>add_zline()
-: <a class="el" href="xline_8h.html#a3">xline.h</a><li>allowed_umode()
-: <a class="el" href="mode_8h.html#a9">mode.h</a><li>already_have_sum()
-: <a class="el" href="servers_8cpp.html#a6">servers.cpp</a><li>apply_lines()
-: <a class="el" href="xline_8h.html#a17">xline.h</a></ul>
-<h3><a name="index_b">- b -</a>
-</h3><ul>
+: <a class="el" href="mode_8h.html#add_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>add_eline()
+: <a class="el" href="xline_8h.html#add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">xline.h</a><li>add_gline()
+: <a class="el" href="xline_8h.html#add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">xline.h</a><li>add_kline()
+: <a class="el" href="xline_8h.html#add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">xline.h</a><li>add_qline()
+: <a class="el" href="xline_8h.html#add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29">xline.h</a><li>add_zline()
+: <a class="el" href="xline_8h.html#add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29">xline.h</a><li>allowed_umode()
+: <a class="el" href="mode_8h.html#allowed_5Fumode_28char_20umode_2C_20char_20_2Asourcemodes_2C_20bool_20adding_29">mode.h</a><li>apply_lines()
+: <a class="el" href="xline_8h.html#apply_5Flines_28_29">xline.h</a></ul>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
<li>Blocking()
-: <a class="el" href="message_8h.html#a3">message.h</a></ul>
-<h3><a name="index_c">- c -</a>
-</h3><ul>
+: <a class="el" href="message_8h.html#Blocking_28int_20s_29">message.h</a></ul>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
<li>c_count()
-: <a class="el" href="message_8h.html#a6">message.h</a><li>ChangeDisplayedHost()
-: <a class="el" href="message_8h.html#a9">message.h</a><li>ChangeName()
-: <a class="el" href="message_8h.html#a8">message.h</a><li>chlist()
-: <a class="el" href="message_8h.html#a16">message.h</a><li>chop()
-: <a class="el" href="message_8h.html#a1">message.h</a><li>CleanAndResolve()
-: <a class="el" href="message_8h.html#a5">message.h</a><li>cmode()
-: <a class="el" href="message_8h.html#a12">message.h</a><li>common_channels()
-: <a class="el" href="message_8h.html#a0">message.h</a><li>ConnectServer()
-: <a class="el" href="commands_8h.html#a77">commands.h</a><li>createcommand()
-: <a class="el" href="modules_8h.html#a35">modules.h</a><li>CreateSum()
-: <a class="el" href="connection_8h.html#a6">connection.h</a><li>cstatus()
-: <a class="el" href="message_8h.html#a13">message.h</a></ul>
-<h3><a name="index_d">- d -</a>
-</h3><ul>
+: <a class="el" href="message_8h.html#c_5Fcount_28userrec_20_2Au_29">message.h</a><li>ChangeDisplayedHost()
+: <a class="el" href="message_8h.html#ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29">message.h</a><li>ChangeName()
+: <a class="el" href="message_8h.html#ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29">message.h</a><li>chlist()
+: <a class="el" href="message_8h.html#chlist_28userrec_20_2Auser_2C_20userrec_20_2Asource_29">message.h</a><li>chop()
+: <a class="el" href="message_8h.html#chop_28char_20_2Astr_29">message.h</a><li>CleanAndResolve()
+: <a class="el" href="message_8h.html#CleanAndResolve_28char_20_2AresolvedHost_2C_20const_20char_20_2AunresolvedHost_29">message.h</a><li>cmode()
+: <a class="el" href="message_8h.html#cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">message.h</a><li>common_channels()
+: <a class="el" href="message_8h.html#common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29">message.h</a><li>createcommand()
+: <a class="el" href="modules_8h.html#createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">modules.h</a><li>cstatus()
+: <a class="el" href="message_8h.html#cstatus_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">message.h</a></ul>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
<li>del_eline()
-: <a class="el" href="xline_8h.html#a10">xline.h</a><li>del_gline()
-: <a class="el" href="xline_8h.html#a6">xline.h</a><li>del_kline()
-: <a class="el" href="xline_8h.html#a9">xline.h</a><li>del_qline()
-: <a class="el" href="xline_8h.html#a7">xline.h</a><li>del_zline()
-: <a class="el" href="xline_8h.html#a8">xline.h</a><li>DoAddExtendedMode()
-: <a class="el" href="modules_8cpp.html#a58">modules.cpp</a><li>duration()
-: <a class="el" href="commands_8h.html#a76">commands.h</a></ul>
-<h3><a name="index_e">- e -</a>
-</h3><ul>
+: <a class="el" href="xline_8h.html#del_5Feline_28const_20char_20_2Ahostmask_29">xline.h</a><li>del_gline()
+: <a class="el" href="xline_8h.html#del_5Fgline_28const_20char_20_2Ahostmask_29">xline.h</a><li>del_kline()
+: <a class="el" href="xline_8h.html#del_5Fkline_28const_20char_20_2Ahostmask_29">xline.h</a><li>del_qline()
+: <a class="el" href="xline_8h.html#del_5Fqline_28const_20char_20_2Anickname_29">xline.h</a><li>del_zline()
+: <a class="el" href="xline_8h.html#del_5Fzline_28const_20char_20_2Aipaddr_29">xline.h</a><li>DoAddExtendedMode()
+: <a class="el" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">modules.cpp</a><li>duration()
+: <a class="el" href="commands_8h.html#duration_28const_20char_20_2Astr_29">commands.h</a></ul>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
<li>expire_lines()
-: <a class="el" href="xline_8h.html#a16">xline.h</a></ul>
-<h3><a name="index_f">- f -</a>
-</h3><ul>
+: <a class="el" href="xline_8h.html#expire_5Flines_28_29">xline.h</a></ul>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
<li>factory()
-: <a class="el" href="modules_8cpp.html#a61">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a3">channels.cpp</a></ul>
-<h3><a name="index_g">- g -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#factory_28_32_35_35_29">modules.cpp</a>, <a class="el" href="channels_8cpp.html#factory">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
<li>give_hops()
-: <a class="el" href="mode_8h.html#a1">mode.h</a><li>give_ops()
-: <a class="el" href="mode_8h.html#a0">mode.h</a><li>give_voice()
-: <a class="el" href="mode_8h.html#a2">mode.h</a><li>gline_set_creation_time()
-: <a class="el" href="xline_8h.html#a23">xline.h</a></ul>
-<h3><a name="index_h">- h -</a>
-</h3><ul>
-<li>handle_a()
-: <a class="el" href="commands_8h.html#a59">commands.h</a><li>handle_admin()
-: <a class="el" href="commands_8h.html#a23">commands.h</a><li>handle_amp()
-: <a class="el" href="commands_8h.html#a53">commands.h</a><li>handle_AT()
-: <a class="el" href="commands_8h.html#a62">commands.h</a><li>handle_away()
-: <a class="el" href="commands_8h.html#a31">commands.h</a><li>handle_b()
-: <a class="el" href="commands_8h.html#a58">commands.h</a><li>handle_commands()
-: <a class="el" href="commands_8h.html#a50">commands.h</a><li>handle_connect()
-: <a class="el" href="commands_8h.html#a36">commands.h</a><li>handle_die()
-: <a class="el" href="commands_8h.html#a3">commands.h</a><li>handle_dollar()
-: <a class="el" href="commands_8h.html#a54">commands.h</a><li>handle_eline()
-: <a class="el" href="commands_8h.html#a46">commands.h</a><li>handle_F()
-: <a class="el" href="commands_8h.html#a60">commands.h</a><li>handle_gline()
-: <a class="el" href="commands_8h.html#a43">commands.h</a><li>handle_i()
-: <a class="el" href="commands_8h.html#a72">commands.h</a><li>handle_info()
-: <a class="el" href="commands_8h.html#a14">commands.h</a><li>handle_invite()
-: <a class="el" href="commands_8h.html#a9">commands.h</a><li>handle_ison()
-: <a class="el" href="commands_8h.html#a30">commands.h</a><li>handle_J()
-: <a class="el" href="commands_8h.html#a55">commands.h</a><li>handle_join()
-: <a class="el" href="commands_8h.html#a0">commands.h</a><li>handle_k()
-: <a class="el" href="commands_8h.html#a63">commands.h</a><li>handle_K()
-: <a class="el" href="commands_8h.html#a66">commands.h</a><li>handle_kick()
-: <a class="el" href="commands_8h.html#a2">commands.h</a><li>handle_kill()
-: <a class="el" href="commands_8h.html#a5">commands.h</a><li>handle_kline()
-: <a class="el" href="commands_8h.html#a42">commands.h</a><li>handle_L()
-: <a class="el" href="commands_8h.html#a67">commands.h</a><li>handle_link_packet()
-: <a class="el" href="commands_8h.html#a51">commands.h</a><li>handle_links()
-: <a class="el" href="commands_8h.html#a38">commands.h</a><li>handle_list()
-: <a class="el" href="commands_8h.html#a20">commands.h</a><li>handle_loadmodule()
-: <a class="el" href="commands_8h.html#a48">commands.h</a><li>handle_lusers()
-: <a class="el" href="commands_8h.html#a22">commands.h</a><li>handle_m()
-: <a class="el" href="commands_8h.html#a68">commands.h</a><li>handle_M()
-: <a class="el" href="commands_8h.html#a69">commands.h</a><li>handle_map()
-: <a class="el" href="commands_8h.html#a39">commands.h</a><li>handle_mode()
-: <a class="el" href="mode_8h.html#a11">mode.h</a><li>handle_modules()
-: <a class="el" href="commands_8h.html#a34">commands.h</a><li>handle_motd()
-: <a class="el" href="commands_8h.html#a26">commands.h</a><li>handle_N()
-: <a class="el" href="commands_8h.html#a61">commands.h</a><li>handle_n()
-: <a class="el" href="commands_8h.html#a64">commands.h</a><li>handle_names()
-: <a class="el" href="commands_8h.html#a11">commands.h</a><li>handle_nick()
-: <a class="el" href="commands_8h.html#a41">commands.h</a><li>handle_notice()
-: <a class="el" href="commands_8h.html#a13">commands.h</a><li>handle_oper()
-: <a class="el" href="commands_8h.html#a40">commands.h</a><li>handle_P()
-: <a class="el" href="commands_8h.html#a73">commands.h</a><li>handle_part()
-: <a class="el" href="commands_8h.html#a1">commands.h</a><li>handle_pass()
-: <a class="el" href="commands_8h.html#a8">commands.h</a><li>handle_ping()
-: <a class="el" href="commands_8h.html#a24">commands.h</a><li>handle_plus()
-: <a class="el" href="commands_8h.html#a57">commands.h</a><li>handle_pong()
-: <a class="el" href="commands_8h.html#a25">commands.h</a><li>handle_privmsg()
-: <a class="el" href="commands_8h.html#a12">commands.h</a><li>handle_Q()
-: <a class="el" href="commands_8h.html#a65">commands.h</a><li>handle_qline()
-: <a class="el" href="commands_8h.html#a45">commands.h</a><li>handle_quit()
-: <a class="el" href="commands_8h.html#a17">commands.h</a><li>handle_R()
-: <a class="el" href="commands_8h.html#a56">commands.h</a><li>handle_rehash()
-: <a class="el" href="commands_8h.html#a21">commands.h</a><li>handle_restart()
-: <a class="el" href="commands_8h.html#a4">commands.h</a><li>handle_rules()
-: <a class="el" href="commands_8h.html#a27">commands.h</a><li>handle_server()
-: <a class="el" href="commands_8h.html#a47">commands.h</a><li>handle_squit()
-: <a class="el" href="commands_8h.html#a37">commands.h</a><li>handle_stats()
-: <a class="el" href="commands_8h.html#a35">commands.h</a><li>handle_summon()
-: <a class="el" href="commands_8h.html#a6">commands.h</a><li>handle_T()
-: <a class="el" href="commands_8h.html#a70">commands.h</a><li>handle_t()
-: <a class="el" href="commands_8h.html#a71">commands.h</a><li>handle_time()
-: <a class="el" href="commands_8h.html#a15">commands.h</a><li>handle_topic()
-: <a class="el" href="commands_8h.html#a10">commands.h</a><li>handle_trace()
-: <a class="el" href="commands_8h.html#a33">commands.h</a><li>handle_unloadmodule()
-: <a class="el" href="commands_8h.html#a49">commands.h</a><li>handle_user()
-: <a class="el" href="commands_8h.html#a28">commands.h</a><li>handle_userhost()
-: <a class="el" href="commands_8h.html#a29">commands.h</a><li>handle_users()
-: <a class="el" href="commands_8h.html#a7">commands.h</a><li>handle_V()
-: <a class="el" href="commands_8h.html#a74">commands.h</a><li>handle_wallops()
-: <a class="el" href="commands_8h.html#a19">commands.h</a><li>handle_who()
-: <a class="el" href="commands_8h.html#a18">commands.h</a><li>handle_whois()
-: <a class="el" href="commands_8h.html#a16">commands.h</a><li>handle_whowas()
-: <a class="el" href="commands_8h.html#a32">commands.h</a><li>handle_zline()
-: <a class="el" href="commands_8h.html#a44">commands.h</a><li>has_channel()
-: <a class="el" href="message_8h.html#a14">message.h</a><li>hasumode()
-: <a class="el" href="message_8h.html#a7">message.h</a></ul>
-<h3><a name="index_i">- i -</a>
-</h3><ul>
+: <a class="el" href="mode_8h.html#give_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>give_ops()
+: <a class="el" href="mode_8h.html#give_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>give_voice()
+: <a class="el" href="mode_8h.html#give_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>gline_set_creation_time()
+: <a class="el" href="xline_8h.html#gline_5Fset_5Fcreation_5Ftime_28char_20_2Ahost_2C_20time_5Ft_20create_5Ftime_29">xline.h</a></ul>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
+<li>handle_admin()
+: <a class="el" href="commands_8h.html#handle_5Fadmin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_away()
+: <a class="el" href="commands_8h.html#handle_5Faway_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_commands()
+: <a class="el" href="commands_8h.html#handle_5Fcommands_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_connect()
+: <a class="el" href="commands_8h.html#handle_5Fconnect_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_die()
+: <a class="el" href="commands_8h.html#handle_5Fdie_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_eline()
+: <a class="el" href="commands_8h.html#handle_5Feline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_gline()
+: <a class="el" href="commands_8h.html#handle_5Fgline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_info()
+: <a class="el" href="commands_8h.html#handle_5Finfo_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_invite()
+: <a class="el" href="commands_8h.html#handle_5Finvite_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_ison()
+: <a class="el" href="commands_8h.html#handle_5Fison_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_join()
+: <a class="el" href="commands_8h.html#handle_5Fjoin_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_kick()
+: <a class="el" href="commands_8h.html#handle_5Fkick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_kill()
+: <a class="el" href="commands_8h.html#handle_5Fkill_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_kline()
+: <a class="el" href="commands_8h.html#handle_5Fkline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_links()
+: <a class="el" href="commands_8h.html#handle_5Flinks_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_list()
+: <a class="el" href="commands_8h.html#handle_5Flist_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_loadmodule()
+: <a class="el" href="commands_8h.html#handle_5Floadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_lusers()
+: <a class="el" href="commands_8h.html#handle_5Flusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_map()
+: <a class="el" href="commands_8h.html#handle_5Fmap_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_mode()
+: <a class="el" href="mode_8h.html#handle_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">mode.h</a><li>handle_modules()
+: <a class="el" href="commands_8h.html#handle_5Fmodules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_motd()
+: <a class="el" href="commands_8h.html#handle_5Fmotd_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_names()
+: <a class="el" href="commands_8h.html#handle_5Fnames_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_nick()
+: <a class="el" href="commands_8h.html#handle_5Fnick_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_notice()
+: <a class="el" href="commands_8h.html#handle_5Fnotice_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_oper()
+: <a class="el" href="commands_8h.html#handle_5Foper_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_part()
+: <a class="el" href="commands_8h.html#handle_5Fpart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_pass()
+: <a class="el" href="commands_8h.html#handle_5Fpass_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_ping()
+: <a class="el" href="commands_8h.html#handle_5Fping_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_pong()
+: <a class="el" href="commands_8h.html#handle_5Fpong_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_privmsg()
+: <a class="el" href="commands_8h.html#handle_5Fprivmsg_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_qline()
+: <a class="el" href="commands_8h.html#handle_5Fqline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_quit()
+: <a class="el" href="commands_8h.html#handle_5Fquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_rehash()
+: <a class="el" href="commands_8h.html#handle_5Frehash_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_restart()
+: <a class="el" href="commands_8h.html#handle_5Frestart_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_rules()
+: <a class="el" href="commands_8h.html#handle_5Frules_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_server()
+: <a class="el" href="commands_8h.html#handle_5Fserver_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_squit()
+: <a class="el" href="commands_8h.html#handle_5Fsquit_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_stats()
+: <a class="el" href="commands_8h.html#handle_5Fstats_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_summon()
+: <a class="el" href="commands_8h.html#handle_5Fsummon_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_time()
+: <a class="el" href="commands_8h.html#handle_5Ftime_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_topic()
+: <a class="el" href="commands_8h.html#handle_5Ftopic_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_trace()
+: <a class="el" href="commands_8h.html#handle_5Ftrace_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_unloadmodule()
+: <a class="el" href="commands_8h.html#handle_5Funloadmodule_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_user()
+: <a class="el" href="commands_8h.html#handle_5Fuser_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_userhost()
+: <a class="el" href="commands_8h.html#handle_5Fuserhost_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_users()
+: <a class="el" href="commands_8h.html#handle_5Fusers_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_wallops()
+: <a class="el" href="commands_8h.html#handle_5Fwallops_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_who()
+: <a class="el" href="commands_8h.html#handle_5Fwho_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_whois()
+: <a class="el" href="commands_8h.html#handle_5Fwhois_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_whowas()
+: <a class="el" href="commands_8h.html#handle_5Fwhowas_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>handle_zline()
+: <a class="el" href="commands_8h.html#handle_5Fzline_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">commands.h</a><li>has_channel()
+: <a class="el" href="message_8h.html#has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29">message.h</a><li>hasumode()
+: <a class="el" href="message_8h.html#hasumode_28userrec_20_2Auser_2C_20char_20mode_29">message.h</a></ul>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
<li>is_uline()
-: <a class="el" href="commands_8h.html#a75">commands.h</a><li>isident()
-: <a class="el" href="message_8h.html#a10">message.h</a><li>isnick()
-: <a class="el" href="message_8h.html#a11">message.h</a><li>IsRoutable()
-: <a class="el" href="servers_8cpp.html#a5">servers.cpp</a></ul>
-<h3><a name="index_m">- m -</a>
-</h3><ul>
+: <a class="el" href="commands_8h.html#is_5Fuline_28const_20char_20_2Aserver_29">commands.h</a><li>isident()
+: <a class="el" href="message_8h.html#isident_28const_20char_20_2An_29">message.h</a><li>isnick()
+: <a class="el" href="message_8h.html#isnick_28const_20char_20_2An_29">message.h</a></ul>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
<li>matches_exception()
-: <a class="el" href="xline_8h.html#a15">xline.h</a><li>matches_gline()
-: <a class="el" href="xline_8h.html#a12">xline.h</a><li>matches_kline()
-: <a class="el" href="xline_8h.html#a14">xline.h</a><li>matches_qline()
-: <a class="el" href="xline_8h.html#a11">xline.h</a><li>matches_zline()
-: <a class="el" href="xline_8h.html#a13">xline.h</a><li>merge_mode()
-: <a class="el" href="mode_8h.html#a13">mode.h</a><li>merge_mode2()
-: <a class="el" href="mode_8h.html#a14">mode.h</a><li>ModeDefined()
-: <a class="el" href="modules_8cpp.html#a53">modules.cpp</a><li>ModeDefinedOff()
-: <a class="el" href="modules_8cpp.html#a57">modules.cpp</a><li>ModeDefinedOn()
-: <a class="el" href="modules_8cpp.html#a56">modules.cpp</a><li>ModeDefinedOper()
-: <a class="el" href="modules_8cpp.html#a55">modules.cpp</a><li>ModeIsListMode()
-: <a class="el" href="modules_8cpp.html#a54">modules.cpp</a><li>ModeMakeList()
-: <a class="el" href="modules_8cpp.html#a59">modules.cpp</a><li>modules()
-: <a class="el" href="modules_8cpp.html#a60">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a2">channels.cpp</a></ul>
-<h3><a name="index_n">- n -</a>
-</h3><ul>
+: <a class="el" href="xline_8h.html#matches_5Fexception_28const_20char_20_2Ahost_29">xline.h</a><li>matches_gline()
+: <a class="el" href="xline_8h.html#matches_5Fgline_28const_20char_20_2Ahost_29">xline.h</a><li>matches_kline()
+: <a class="el" href="xline_8h.html#matches_5Fkline_28const_20char_20_2Ahost_29">xline.h</a><li>matches_qline()
+: <a class="el" href="xline_8h.html#matches_5Fqline_28const_20char_20_2Anick_29">xline.h</a><li>matches_zline()
+: <a class="el" href="xline_8h.html#matches_5Fzline_28const_20char_20_2Aipaddr_29">xline.h</a><li>merge_mode()
+: <a class="el" href="mode_8h.html#merge_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_29">mode.h</a><li>merge_mode2()
+: <a class="el" href="mode_8h.html#merge_5Fmode_32_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">mode.h</a><li>ModeDefined()
+: <a class="el" href="modules_8cpp.html#ModeDefined_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeDefinedOff()
+: <a class="el" href="modules_8cpp.html#ModeDefinedOff_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeDefinedOn()
+: <a class="el" href="modules_8cpp.html#ModeDefinedOn_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeDefinedOper()
+: <a class="el" href="modules_8cpp.html#ModeDefinedOper_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeIsListMode()
+: <a class="el" href="modules_8cpp.html#ModeIsListMode_28char_20modechar_2C_20int_20type_29">modules.cpp</a><li>ModeMakeList()
+: <a class="el" href="modules_8cpp.html#ModeMakeList_28char_20modechar_29">modules.cpp</a><li>modules()
+: <a class="el" href="modules_8cpp.html#modules_28_32_35_35_29">modules.cpp</a>, <a class="el" href="channels_8cpp.html#modules">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
<li>NonBlocking()
-: <a class="el" href="message_8h.html#a4">message.h</a></ul>
-<h3><a name="index_p">- p -</a>
-</h3><ul>
+: <a class="el" href="message_8h.html#NonBlocking_28int_20s_29">message.h</a></ul>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
<li>process_modes()
-: <a class="el" href="mode_8h.html#a8">mode.h</a><li>process_module_umode()
-: <a class="el" href="mode_8h.html#a10">mode.h</a><li>process_restricted_commands()
-: <a class="el" href="commands_8h.html#a52">commands.h</a></ul>
-<h3><a name="index_q">- q -</a>
-</h3><ul>
+: <a class="el" href="mode_8h.html#process_5Fmodes_28char_20_2A_2Aparameters_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20int_20status_2C_20int_20pcnt_2C_20bool_20servermode_2C_20bool_20silent_2C_20bool_20local_29">mode.h</a><li>process_module_umode()
+: <a class="el" href="mode_8h.html#process_5Fmodule_5Fumode_28char_20umode_2C_20userrec_20_2Asource_2C_20void_20_2Adest_2C_20bool_20adding_29">mode.h</a></ul>
+<h3><a class="anchor" name="index_q">- q -</a></h3><ul>
<li>qline_make_global()
-: <a class="el" href="xline_8h.html#a27">xline.h</a><li>qline_set_creation_time()
-: <a class="el" href="xline_8h.html#a24">xline.h</a></ul>
-<h3><a name="index_r">- r -</a>
-</h3><ul>
+: <a class="el" href="xline_8h.html#qline_5Fmake_5Fglobal_28const_20char_20_2Anickname_29">xline.h</a><li>qline_set_creation_time()
+: <a class="el" href="xline_8h.html#qline_5Fset_5Fcreation_5Ftime_28char_20_2Anick_2C_20time_5Ft_20create_5Ftime_29">xline.h</a></ul>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
<li>read_xline_defaults()
-: <a class="el" href="xline_8h.html#a0">xline.h</a></ul>
-<h3><a name="index_s">- s -</a>
-</h3><ul>
+: <a class="el" href="xline_8h.html#read_5Fxline_5Fdefaults_28_29">xline.h</a></ul>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
<li>send_network_quit()
-: <a class="el" href="message_8h.html#a17">message.h</a><li>server_mode()
-: <a class="el" href="modules_8h.html#a36">modules.h</a>, <a class="el" href="mode_8h.html#a12">mode.h</a><li>stats_e()
-: <a class="el" href="xline_8h.html#a22">xline.h</a><li>stats_g()
-: <a class="el" href="xline_8h.html#a19">xline.h</a><li>stats_k()
-: <a class="el" href="xline_8h.html#a18">xline.h</a><li>stats_q()
-: <a class="el" href="xline_8h.html#a20">xline.h</a><li>stats_z()
-: <a class="el" href="xline_8h.html#a21">xline.h</a><li>sync_xlines()
-: <a class="el" href="xline_8h.html#a28">xline.h</a></ul>
-<h3><a name="index_t">- t -</a>
-</h3><ul>
+: <a class="el" href="message_8h.html#send_5Fnetwork_5Fquit_28const_20char_20_2Anick_2C_20const_20char_20_2Areason_29">message.h</a><li>server_mode()
+: <a class="el" href="modules_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">modules.h</a>, <a class="el" href="mode_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">mode.h</a><li>stats_e()
+: <a class="el" href="xline_8h.html#stats_5Fe_28userrec_20_2Auser_29">xline.h</a><li>stats_g()
+: <a class="el" href="xline_8h.html#stats_5Fg_28userrec_20_2Auser_29">xline.h</a><li>stats_k()
+: <a class="el" href="xline_8h.html#stats_5Fk_28userrec_20_2Auser_29">xline.h</a><li>stats_q()
+: <a class="el" href="xline_8h.html#stats_5Fq_28userrec_20_2Auser_29">xline.h</a><li>stats_z()
+: <a class="el" href="xline_8h.html#stats_5Fz_28userrec_20_2Auser_29">xline.h</a></ul>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
<li>take_ban()
-: <a class="el" href="mode_8h.html#a7">mode.h</a><li>take_hops()
-: <a class="el" href="mode_8h.html#a4">mode.h</a><li>take_ops()
-: <a class="el" href="mode_8h.html#a3">mode.h</a><li>take_voice()
-: <a class="el" href="mode_8h.html#a5">mode.h</a><li>TidyBan()
-: <a class="el" href="message_8h.html#a15">message.h</a><li>tidystring()
-: <a class="el" href="message_8h.html#a2">message.h</a></ul>
-<h3><a name="index_z">- z -</a>
-</h3><ul>
+: <a class="el" href="mode_8h.html#take_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>take_hops()
+: <a class="el" href="mode_8h.html#take_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>take_ops()
+: <a class="el" href="mode_8h.html#take_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>take_voice()
+: <a class="el" href="mode_8h.html#take_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">mode.h</a><li>TidyBan()
+: <a class="el" href="message_8h.html#TidyBan_28char_20_2Aban_29">message.h</a><li>tidystring()
+: <a class="el" href="message_8h.html#tidystring_28char_20_2Astr_29">message.h</a></ul>
+<h3><a class="anchor" name="index_z">- z -</a></h3><ul>
<li>zline_make_global()
-: <a class="el" href="xline_8h.html#a26">xline.h</a><li>zline_set_creation_time()
-: <a class="el" href="xline_8h.html#a25">xline.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:51 2005 for InspIRCd by
+: <a class="el" href="xline_8h.html#zline_5Fmake_5Fglobal_28const_20char_20_2Aipaddr_29">xline.h</a><li>zline_set_creation_time()
+: <a class="el" href="xline_8h.html#zline_5Fset_5Fcreation_5Ftime_28char_20_2Aip_2C_20time_5Ft_20create_5Ftime_29">xline.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/globals_type.html b/docs/module-doc/globals_type.html
index df2fab38b..f1f712149 100644
--- a/docs/module-doc/globals_type.html
+++ b/docs/module-doc/globals_type.html
@@ -1,35 +1,35 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: File Member Index</title>
+<title>InspIRCd: Class Members</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
-<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindexHL" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_vars.html">Variables</a> | <a class="qindexHL" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
<p>
<ul>
<li>address_cache
-: <a class="el" href="modules_8cpp.html#a40">modules.cpp</a><li>BanList
-: <a class="el" href="channels_8h.html#a11">channels.h</a><li>chan_hash
-: <a class="el" href="modules_8cpp.html#a39">modules.cpp</a><li>chanuserlist
-: <a class="el" href="modules_8h.html#a33">modules.h</a><li>ClassVector
-: <a class="el" href="users_8h.html#a7">users.h</a><li>command_table
-: <a class="el" href="modules_8cpp.html#a42">modules.cpp</a><li>ExemptList
-: <a class="el" href="channels_8h.html#a12">channels.h</a><li>ExtModeList
-: <a class="el" href="modules_8cpp.html#a50">modules.cpp</a><li>ExtModeListIter
-: <a class="el" href="modules_8cpp.html#a51">modules.cpp</a><li>file_cache
-: <a class="el" href="modules_8h.html#a31">modules.h</a><li>InvitedList
-: <a class="el" href="users_8h.html#a6">users.h</a><li>InviteList
-: <a class="el" href="channels_8h.html#a13">channels.h</a><li>ircd_module
-: <a class="el" href="modules_8h.html#a34">modules.h</a><li>string_list
-: <a class="el" href="modules_8h.html#a32">modules.h</a><li>user_hash
-: <a class="el" href="modules_8cpp.html#a38">modules.cpp</a><li>VoidPointer
-: <a class="el" href="base_8h.html#a0">base.h</a><li>whowas_hash
-: <a class="el" href="modules_8cpp.html#a41">modules.cpp</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:51 2005 for InspIRCd by
+: <a class="el" href="modules_8cpp.html#address_5Fcache">modules.cpp</a><li>BanList
+: <a class="el" href="channels_8h.html#BanList">channels.h</a><li>chan_hash
+: <a class="el" href="modules_8cpp.html#chan_5Fhash">modules.cpp</a><li>chanuserlist
+: <a class="el" href="modules_8h.html#chanuserlist">modules.h</a><li>ClassVector
+: <a class="el" href="users_8h.html#ClassVector">users.h</a><li>command_table
+: <a class="el" href="modules_8cpp.html#command_5Ftable">modules.cpp</a><li>ExemptList
+: <a class="el" href="channels_8h.html#ExemptList">channels.h</a><li>ExtModeList
+: <a class="el" href="modules_8cpp.html#ExtModeList">modules.cpp</a><li>ExtModeListIter
+: <a class="el" href="modules_8cpp.html#ExtModeListIter">modules.cpp</a><li>file_cache
+: <a class="el" href="modules_8h.html#file_5Fcache">modules.h</a><li>InvitedList
+: <a class="el" href="users_8h.html#InvitedList">users.h</a><li>InviteList
+: <a class="el" href="channels_8h.html#InviteList">channels.h</a><li>ircd_module
+: <a class="el" href="modules_8h.html#ircd_5Fmodule">modules.h</a><li>string
+: <a class="el" href="namespaceirc.html#string">hashcomp.h</a><li>string_list
+: <a class="el" href="modules_8h.html#string_5Flist">modules.h</a><li>user_hash
+: <a class="el" href="modules_8cpp.html#user_5Fhash">modules.cpp</a><li>VoidPointer
+: <a class="el" href="base_8h.html#VoidPointer">base.h</a><li>whowas_hash
+: <a class="el" href="modules_8cpp.html#whowas_5Fhash">modules.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/globals_vars.html b/docs/module-doc/globals_vars.html
index a9d64c70a..6bf40a4ac 100644
--- a/docs/module-doc/globals_vars.html
+++ b/docs/module-doc/globals_vars.html
@@ -1,122 +1,99 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: File Member Index</title>
+<title>InspIRCd: Class Members</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
-<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindexHL" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
-<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_h">h</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_w">w</a> | <a class="qindex" href="#index_x">x</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindexHL" href="globals.html">File&nbsp;Members</a></div>
+<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindexHL" href="globals_vars.html">Variables</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumerator</a> | <a class="qindex" href="globals_defs.html">Defines</a></div>
+<div class="qindex"><a class="qindex" href="#index_a">a</a> | <a class="qindex" href="#index_b">b</a> | <a class="qindex" href="#index_c">c</a> | <a class="qindex" href="#index_d">d</a> | <a class="qindex" href="#index_e">e</a> | <a class="qindex" href="#index_f">f</a> | <a class="qindex" href="#index_i">i</a> | <a class="qindex" href="#index_l">l</a> | <a class="qindex" href="#index_m">m</a> | <a class="qindex" href="#index_n">n</a> | <a class="qindex" href="#index_o">o</a> | <a class="qindex" href="#index_p">p</a> | <a class="qindex" href="#index_r">r</a> | <a class="qindex" href="#index_s">s</a> | <a class="qindex" href="#index_t">t</a> | <a class="qindex" href="#index_u">u</a> | <a class="qindex" href="#index_w">w</a></div>
<p>
<p>
-<h3><a name="index_a">- a -</a>
-</h3><ul>
+<h3><a class="anchor" name="index_a">- a -</a></h3><ul>
<li>AdminEmail
-: <a class="el" href="modules_8cpp.html#a10">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a9">channels.cpp</a><li>AdminName
-: <a class="el" href="modules_8cpp.html#a9">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a8">channels.cpp</a><li>AdminNick
-: <a class="el" href="modules_8cpp.html#a11">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a10">channels.cpp</a><li>auth_cookies
-: <a class="el" href="modules_8cpp.html#a33">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a32">channels.cpp</a></ul>
-<h3><a name="index_b">- b -</a>
-</h3><ul>
-<li>bitfields
-: <a class="el" href="base_8h.html#a1">base.h</a><li>boundPortCount
-: <a class="el" href="modules_8cpp.html#a28">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a27">channels.cpp</a></ul>
-<h3><a name="index_c">- c -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#AdminEmail_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#AdminEmail_5BMAXBUF_5D">channels.cpp</a><li>AdminName
+: <a class="el" href="modules_8cpp.html#AdminName_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#AdminName_5BMAXBUF_5D">channels.cpp</a><li>AdminNick
+: <a class="el" href="modules_8cpp.html#AdminNick_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#AdminNick_5BMAXBUF_5D">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
+<li>boundPortCount
+: <a class="el" href="socket_8cpp.html#boundPortCount">socket.cpp</a>, <a class="el" href="modules_8cpp.html#boundPortCount">modules.cpp</a>, <a class="el" href="channels_8cpp.html#boundPortCount">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
<li>chanlist
-: <a class="el" href="modules_8cpp.html#a44">modules.cpp</a><li>clientlist
-: <a class="el" href="modules_8cpp.html#a43">modules.cpp</a><li>cmdlist
-: <a class="el" href="modules_8cpp.html#a46">modules.cpp</a><li>config_f
-: <a class="el" href="users_8cpp.html#a0">users.cpp</a>, <a class="el" href="modules_8cpp.html#a34">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a33">channels.cpp</a><li>custom_mode_params
-: <a class="el" href="channels_8cpp.html#a37">channels.cpp</a></ul>
-<h3><a name="index_d">- d -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#chanlist">modules.cpp</a><li>clientlist
+: <a class="el" href="modules_8cpp.html#clientlist">modules.cpp</a><li>cmdlist
+: <a class="el" href="modules_8cpp.html#cmdlist">modules.cpp</a><li>config_f
+: <a class="el" href="users_8cpp.html#config_5Ff">users.cpp</a>, <a class="el" href="modules_8cpp.html#config_5Ff">modules.cpp</a>, <a class="el" href="channels_8cpp.html#config_5Ff">channels.cpp</a><li>custom_mode_params
+: <a class="el" href="channels_8cpp.html#custom_5Fmode_5Fparams">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
<li>debugging
-: <a class="el" href="modules_8cpp.html#a19">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a18">channels.cpp</a><li>defaultRoute
-: <a class="el" href="modules_8cpp.html#a32">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a31">channels.cpp</a><li>DieDelay
-: <a class="el" href="modules_8cpp.html#a22">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a21">channels.cpp</a><li>diepass
-: <a class="el" href="modules_8cpp.html#a12">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a11">channels.cpp</a><li>DieValue
-: <a class="el" href="modules_8cpp.html#a18">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a17">channels.cpp</a></ul>
-<h3><a name="index_e">- e -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#debugging">modules.cpp</a>, <a class="el" href="channels_8cpp.html#debugging">channels.cpp</a><li>DieDelay
+: <a class="el" href="modules_8cpp.html#DieDelay">modules.cpp</a>, <a class="el" href="channels_8cpp.html#DieDelay">channels.cpp</a><li>diepass
+: <a class="el" href="modules_8cpp.html#diepass_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#diepass_5BMAXBUF_5D">channels.cpp</a><li>DieValue
+: <a class="el" href="modules_8cpp.html#DieValue_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#DieValue_5BMAXBUF_5D">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
<li>EMode
-: <a class="el" href="modules_8cpp.html#a52">modules.cpp</a></ul>
-<h3><a name="index_f">- f -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#EMode">modules.cpp</a></ul>
+<h3><a class="anchor" name="index_f">- f -</a></h3><ul>
<li>factory
-: <a class="el" href="modules_8cpp.html#a61">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a3">channels.cpp</a><li>fd_ref_table
-: <a class="el" href="modules_8cpp.html#a37">modules.cpp</a></ul>
-<h3><a name="index_h">- h -</a>
-</h3><ul>
-<li>has_been_netsplit
-: <a class="el" href="servers_8cpp.html#a3">servers.cpp</a></ul>
-<h3><a name="index_i">- i -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#factory_28_32_35_35_29">modules.cpp</a>, <a class="el" href="channels_8cpp.html#factory">channels.cpp</a><li>fd_ref_table
+: <a class="el" href="modules_8cpp.html#fd_5Fref_5Ftable_5B_36_35_35_33_36_5D">modules.cpp</a></ul>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
<li>include_stack
-: <a class="el" href="modules_8cpp.html#a3">modules.cpp</a><li>inverted_bitfields
-: <a class="el" href="base_8h.html#a2">base.h</a><li>IP
-: <a class="el" href="modules_8cpp.html#a49">modules.cpp</a></ul>
-<h3><a name="index_l">- l -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#include_5Fstack">modules.cpp</a><li>IP
+: <a class="el" href="modules_8cpp.html#IP">modules.cpp</a></ul>
+<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
<li>list
-: <a class="el" href="modules_8cpp.html#a16">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a15">channels.cpp</a><li>log_file
-: <a class="el" href="modules_8cpp.html#a36">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a35">channels.cpp</a><li>LogLevel
-: <a class="el" href="modules_8cpp.html#a5">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a4">channels.cpp</a></ul>
-<h3><a name="index_m">- m -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#list_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#list_5BMAXBUF_5D">channels.cpp</a><li>log_file
+: <a class="el" href="socket_8cpp.html#log_5Ffile">socket.cpp</a>, <a class="el" href="modules_8cpp.html#log_5Ffile">modules.cpp</a>, <a class="el" href="channels_8cpp.html#log_5Ffile">channels.cpp</a><li>LogLevel
+: <a class="el" href="modules_8cpp.html#LogLevel">modules.cpp</a>, <a class="el" href="channels_8cpp.html#LogLevel">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
<li>MaxConn
-: <a class="el" href="servers_8cpp.html#a1">servers.cpp</a><li>MaxWhoResults
-: <a class="el" href="modules_8cpp.html#a25">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a24">channels.cpp</a><li>me
-: <a class="el" href="servers_8cpp.html#a2">servers.cpp</a>, <a class="el" href="modules_8cpp.html#a35">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a34">channels.cpp</a><li>MODCOUNT
-: <a class="el" href="modules_8cpp.html#a0">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a1">channels.cpp</a><li>module_names
-: <a class="el" href="modules_8cpp.html#a27">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a26">channels.cpp</a><li>modules
-: <a class="el" href="modules_8cpp.html#a60">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a2">channels.cpp</a><li>motd
-: <a class="el" href="modules_8cpp.html#a14">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a13">channels.cpp</a><li>MOTD
-: <a class="el" href="modules_8cpp.html#a47">modules.cpp</a></ul>
-<h3><a name="index_n">- n -</a>
-</h3><ul>
+: <a class="el" href="socket_8cpp.html#MaxConn">socket.cpp</a><li>MaxWhoResults
+: <a class="el" href="modules_8cpp.html#MaxWhoResults">modules.cpp</a>, <a class="el" href="channels_8cpp.html#MaxWhoResults">channels.cpp</a><li>MODCOUNT
+: <a class="el" href="modules_8cpp.html#MODCOUNT">modules.cpp</a>, <a class="el" href="channels_8cpp.html#MODCOUNT">channels.cpp</a><li>module_names
+: <a class="el" href="modules_8cpp.html#module_5Fnames">modules.cpp</a>, <a class="el" href="channels_8cpp.html#module_5Fnames">channels.cpp</a><li>module_sockets
+: <a class="el" href="modules_8cpp.html#module_5Fsockets">modules.cpp</a><li>modules
+: <a class="el" href="modules_8cpp.html#modules_28_32_35_35_29">modules.cpp</a>, <a class="el" href="channels_8cpp.html#modules">channels.cpp</a><li>motd
+: <a class="el" href="modules_8cpp.html#motd_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#motd_5BMAXBUF_5D">channels.cpp</a><li>MOTD
+: <a class="el" href="modules_8cpp.html#MOTD">modules.cpp</a></ul>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
<li>nb_start
-: <a class="el" href="modules_8cpp.html#a26">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a25">channels.cpp</a><li>NetBufferSize
-: <a class="el" href="modules_8cpp.html#a24">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a23">channels.cpp</a><li>Network
-: <a class="el" href="modules_8cpp.html#a7">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a6">channels.cpp</a></ul>
-<h3><a name="index_p">- p -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#nb_5Fstart">modules.cpp</a>, <a class="el" href="channels_8cpp.html#nb_5Fstart">channels.cpp</a><li>NetBufferSize
+: <a class="el" href="modules_8cpp.html#NetBufferSize">modules.cpp</a>, <a class="el" href="channels_8cpp.html#NetBufferSize">channels.cpp</a><li>Network
+: <a class="el" href="modules_8cpp.html#Network_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#Network_5BMAXBUF_5D">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
+<li>openSockfd
+: <a class="el" href="socket_8cpp.html#openSockfd_5BMAXSOCKS_5D">socket.cpp</a></ul>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
<li>portCount
-: <a class="el" href="modules_8cpp.html#a29">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a28">channels.cpp</a><li>ports
-: <a class="el" href="modules_8cpp.html#a31">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a30">channels.cpp</a><li>PrefixQuit
-: <a class="el" href="modules_8cpp.html#a17">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a16">channels.cpp</a></ul>
-<h3><a name="index_r">- r -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#portCount">modules.cpp</a>, <a class="el" href="channels_8cpp.html#portCount">channels.cpp</a><li>ports
+: <a class="el" href="modules_8cpp.html#ports_5BMAXSOCKS_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#ports_5BMAXSOCKS_5D">channels.cpp</a><li>PrefixQuit
+: <a class="el" href="modules_8cpp.html#PrefixQuit_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#PrefixQuit_5BMAXBUF_5D">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
<li>restartpass
-: <a class="el" href="modules_8cpp.html#a13">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a12">channels.cpp</a><li>rules
-: <a class="el" href="modules_8cpp.html#a15">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a14">channels.cpp</a><li>RULES
-: <a class="el" href="modules_8cpp.html#a48">modules.cpp</a></ul>
-<h3><a name="index_s">- s -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#restartpass_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#restartpass_5BMAXBUF_5D">channels.cpp</a><li>rules
+: <a class="el" href="modules_8cpp.html#rules_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#rules_5BMAXBUF_5D">channels.cpp</a><li>RULES
+: <a class="el" href="modules_8cpp.html#RULES">modules.cpp</a></ul>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
<li>ServerDesc
-: <a class="el" href="modules_8cpp.html#a8">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a7">channels.cpp</a><li>ServerName
-: <a class="el" href="users_8cpp.html#a1">users.cpp</a>, <a class="el" href="modules_8cpp.html#a6">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a5">channels.cpp</a><li>SERVERportCount
-: <a class="el" href="modules_8cpp.html#a30">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a29">channels.cpp</a><li>startup_time
-: <a class="el" href="modules_8cpp.html#a23">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a22">channels.cpp</a></ul>
-<h3><a name="index_t">- t -</a>
-</h3><ul>
+: <a class="el" href="modules_8cpp.html#ServerDesc_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#ServerDesc_5BMAXBUF_5D">channels.cpp</a><li>ServerName
+: <a class="el" href="users_8cpp.html#ServerName_5BMAXBUF_5D">users.cpp</a>, <a class="el" href="modules_8cpp.html#ServerName_5BMAXBUF_5D">modules.cpp</a>, <a class="el" href="channels_8cpp.html#ServerName_5BMAXBUF_5D">channels.cpp</a><li>startup_time
+: <a class="el" href="modules_8cpp.html#startup_5Ftime">modules.cpp</a>, <a class="el" href="channels_8cpp.html#startup_5Ftime">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
<li>TIME
-: <a class="el" href="users_8cpp.html#a2">users.cpp</a>, <a class="el" href="servers_8cpp.html#a0">servers.cpp</a>, <a class="el" href="modules_8cpp.html#a4">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a36">channels.cpp</a></ul>
-<h3><a name="index_w">- w -</a>
-</h3><ul>
+: <a class="el" href="users_8cpp.html#TIME">users.cpp</a>, <a class="el" href="socket_8cpp.html#TIME">socket.cpp</a>, <a class="el" href="modules_8cpp.html#TIME">modules.cpp</a>, <a class="el" href="channels_8cpp.html#TIME">channels.cpp</a></ul>
+<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
+<li>unlimitcore
+: <a class="el" href="socket_8cpp.html#unlimitcore">socket.cpp</a></ul>
+<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
<li>whowas
-: <a class="el" href="modules_8cpp.html#a45">modules.cpp</a><li>WHOWAS_MAX
-: <a class="el" href="modules_8cpp.html#a21">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a20">channels.cpp</a><li>WHOWAS_STALE
-: <a class="el" href="modules_8cpp.html#a20">modules.cpp</a>, <a class="el" href="channels_8cpp.html#a19">channels.cpp</a></ul>
-<h3><a name="index_x">- x -</a>
-</h3><ul>
-<li>xsums
-: <a class="el" href="servers_8cpp.html#a4">servers.cpp</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:51 2005 for InspIRCd by
+: <a class="el" href="modules_8cpp.html#whowas">modules.cpp</a><li>WHOWAS_MAX
+: <a class="el" href="modules_8cpp.html#WHOWAS_5FMAX">modules.cpp</a>, <a class="el" href="channels_8cpp.html#WHOWAS_5FMAX">channels.cpp</a><li>WHOWAS_STALE
+: <a class="el" href="modules_8cpp.html#WHOWAS_5FSTALE">modules.cpp</a>, <a class="el" href="channels_8cpp.html#WHOWAS_5FSTALE">channels.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/graph_legend.gif b/docs/module-doc/graph_legend.gif
index 14496b59d..f3adc6e30 100644
--- a/docs/module-doc/graph_legend.gif
+++ b/docs/module-doc/graph_legend.gif
Binary files differ
diff --git a/docs/module-doc/graph_legend.html b/docs/module-doc/graph_legend.html
index c8f5acbd1..90c2454ce 100644
--- a/docs/module-doc/graph_legend.html
+++ b/docs/module-doc/graph_legend.html
@@ -1,12 +1,12 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Graph Legend</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>Graph Legend</h1>This page explains how to interpret the graphs that are generated by doxygen.<p>
-Consider the following example: <div class="fragment"><pre><span class="comment">/*! Invisible class because of truncation */</span>
+Consider the following example: <div class="fragment"><pre class="fragment"><span class="comment">/*! Invisible class because of truncation */</span>
<span class="keyword">class </span>Invisible { };
<span class="comment"></span>
<span class="comment">/*! Truncated class, inheritance relation is hidden */</span>
@@ -40,7 +40,7 @@ Consider the following example: <div class="fragment"><pre><span class="comment"
<span class="keyword">private</span>:
Used *m_usedClass;
};
-</pre></div>If the <code>MAX_DOT_GRAPH_HEIGHT</code> tag in the configuration file is set to 240 this will result in the following graph:<p>
+</pre></div> If the <code>MAX_DOT_GRAPH_HEIGHT</code> tag in the configuration file is set to 240 this will result in the following graph:<p>
<center><div align="center">
<img src="graph_legend.gif" alt="graph_legend.gif">
</div>
@@ -67,9 +67,8 @@ 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 size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:51 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/hashcomp_8h-source.html b/docs/module-doc/hashcomp_8h-source.html
index 84f243c94..d93e2359d 100644
--- a/docs/module-doc/hashcomp_8h-source.html
+++ b/docs/module-doc/hashcomp_8h-source.html
@@ -1,115 +1,116 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: hashcomp.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>hashcomp.h</h1><a href="hashcomp_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2005 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> *</span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#ifndef _HASHCOMP_H_</span>
-00018 <span class="preprocessor"></span><span class="preprocessor">#define _HASHCOMP_H_</span>
-00019 <span class="preprocessor"></span>
-00020 <span class="preprocessor">#include "inspircd_config.h"</span>
-00021
-00022 <span class="comment">/*******************************************************</span>
-00023 <span class="comment"> * This file contains classes and templates that deal</span>
-00024 <span class="comment"> * with the comparison and hashing of 'irc strings'.</span>
-00025 <span class="comment"> * An 'irc string' is a string which compares in a</span>
-00026 <span class="comment"> * case insensitive manner, and as per RFC 1459 will</span>
-00027 <span class="comment"> * treat [ identical to {, ] identical to }, and \</span>
-00028 <span class="comment"> * as identical to |.</span>
-00029 <span class="comment"> *</span>
-00030 <span class="comment"> * Our hashing functions are designed to accept</span>
-00031 <span class="comment"> * std::string and compare/hash them as type irc::string</span>
-00032 <span class="comment"> * by converting them internally. This makes them</span>
-00033 <span class="comment"> * backwards compatible with other code which is not</span>
-00034 <span class="comment"> * aware of irc::string.</span>
-00035 <span class="comment"> *******************************************************/</span>
-00036
-00037 <span class="preprocessor">#ifdef GCC3</span>
-00038 <span class="preprocessor"></span><span class="preprocessor">#include &lt;ext/hash_map&gt;</span>
-00039 <span class="preprocessor">#else</span>
-00040 <span class="preprocessor"></span><span class="preprocessor">#include &lt;hash_map&gt;</span>
-00041 <span class="preprocessor">#endif</span>
-00042 <span class="preprocessor"></span>
-00043 <span class="preprocessor">#ifdef GCC3</span>
-<a name="l00044"></a><a class="code" href="hashcomp_8h.html#a0">00044</a> <span class="preprocessor"></span><span class="preprocessor">#define nspace __gnu_cxx</span>
-00045 <span class="preprocessor"></span><span class="preprocessor">#else</span>
-00046 <span class="preprocessor"></span><span class="preprocessor">#define nspace std</span>
-00047 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
-00048 <span class="preprocessor"></span>
-00049 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
-00050
-<a name="l00051"></a><a class="code" href="namespacenspace.html">00051</a> <span class="keyword">namespace </span><a class="code" href="channels_8cpp.html#a0">nspace</a>
-00052 {
-00053 <span class="preprocessor">#ifdef GCC34</span>
-00054 <span class="preprocessor"></span> <span class="keyword">template</span>&lt;&gt; <span class="keyword">struct </span>hash&lt;in_addr&gt;
-00055 #else
-<a name="l00056"></a><a class="code" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html">00056</a> template&lt;&gt; struct <a class="code" href="channels_8cpp.html#a0">nspace</a>::hash&lt;in_addr&gt;
-00057 #endif
-00058 {
-00059 size_t operator()(<span class="keyword">const</span> <span class="keyword">struct</span> in_addr &amp;a) <span class="keyword">const</span>;
-00060 };
-00061 <span class="preprocessor">#ifdef GCC34</span>
-00062 <span class="preprocessor"></span> <span class="keyword">template</span>&lt;&gt; <span class="keyword">struct </span>hash&lt;<a class="code" href="namespaceirc.html#a0">string</a>&gt;
-00063 #else
-<a name="l00064"></a><a class="code" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html">00064</a> template&lt;&gt; struct <a class="code" href="channels_8cpp.html#a0">nspace</a>::hash&lt;string&gt;
-00065 #endif
-00066 {
-00067 size_t operator()(<span class="keyword">const</span> <a class="code" href="namespaceirc.html#a0">string</a> &amp;s) <span class="keyword">const</span>;
-00068 };
-00069 }
-00070
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>hashcomp.h</h1><a href="hashcomp_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2005 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> *</span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef _HASHCOMP_H_</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define _HASHCOMP_H_</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="comment">/*******************************************************</span>
+<a name="l00023"></a>00023 <span class="comment"> * This file contains classes and templates that deal</span>
+<a name="l00024"></a>00024 <span class="comment"> * with the comparison and hashing of 'irc strings'.</span>
+<a name="l00025"></a>00025 <span class="comment"> * An 'irc string' is a string which compares in a</span>
+<a name="l00026"></a>00026 <span class="comment"> * case insensitive manner, and as per RFC 1459 will</span>
+<a name="l00027"></a>00027 <span class="comment"> * treat [ identical to {, ] identical to }, and \</span>
+<a name="l00028"></a>00028 <span class="comment"> * as identical to |.</span>
+<a name="l00029"></a>00029 <span class="comment"> *</span>
+<a name="l00030"></a>00030 <span class="comment"> * Our hashing functions are designed to accept</span>
+<a name="l00031"></a>00031 <span class="comment"> * std::string and compare/hash them as type irc::string</span>
+<a name="l00032"></a>00032 <span class="comment"> * by converting them internally. This makes them</span>
+<a name="l00033"></a>00033 <span class="comment"> * backwards compatible with other code which is not</span>
+<a name="l00034"></a>00034 <span class="comment"> * aware of irc::string.</span>
+<a name="l00035"></a>00035 <span class="comment"> *******************************************************/</span>
+<a name="l00036"></a>00036
+<a name="l00037"></a>00037 <span class="preprocessor">#ifdef GCC3</span>
+<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="preprocessor">#include &lt;ext/hash_map&gt;</span>
+<a name="l00039"></a>00039 <span class="preprocessor">#else</span>
+<a name="l00040"></a>00040 <span class="preprocessor"></span><span class="preprocessor">#include &lt;hash_map&gt;</span>
+<a name="l00041"></a>00041 <span class="preprocessor">#endif</span>
+<a name="l00042"></a>00042 <span class="preprocessor"></span>
+<a name="l00043"></a>00043 <span class="preprocessor">#ifdef GCC3</span>
+<a name="l00044"></a><a class="code" href="hashcomp_8h.html#nspace">00044</a> <span class="preprocessor"></span><span class="preprocessor">#define nspace __gnu_cxx</span>
+<a name="l00045"></a>00045 <span class="preprocessor"></span><span class="preprocessor">#else</span>
+<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor">#define nspace std</span>
+<a name="l00047"></a>00047 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
+<a name="l00048"></a>00048 <span class="preprocessor"></span>
+<a name="l00049"></a>00049 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
+<a name="l00050"></a>00050
+<a name="l00051"></a><a class="code" href="namespacenspace.html">00051</a> <span class="keyword">namespace </span><a class="code" href="channels_8cpp.html#nspace">nspace</a>
+<a name="l00052"></a>00052 {
+<a name="l00053"></a>00053 <span class="preprocessor">#ifdef GCC34</span>
+<a name="l00054"></a><a class="code" href="structnspace_1_1hash_3_01in__addr_01_4.html">00054</a> <span class="preprocessor"></span> <span class="keyword">template</span>&lt;&gt; <span class="keyword">struct </span>hash&lt;in_addr&gt;
+<a name="l00055"></a>00055 #else
+<a name="l00056"></a>00056 template&lt;&gt; struct nspace::hash&lt;in_addr&gt;
+<a name="l00057"></a>00057 #endif
+<a name="l00058"></a>00058 {
+<a name="l00059"></a>00059 size_t operator()(<span class="keyword">const</span> <span class="keyword">struct</span> in_addr &amp;a) <span class="keyword">const</span>;
+<a name="l00060"></a>00060 };
+<a name="l00061"></a>00061 <span class="preprocessor">#ifdef GCC34</span>
+<a name="l00062"></a><a class="code" href="structnspace_1_1hash_3_01string_01_4.html">00062</a> <span class="preprocessor"></span> <span class="keyword">template</span>&lt;&gt; <span class="keyword">struct </span>hash&lt;string&gt;
+<a name="l00063"></a>00063 #else
+<a name="l00064"></a>00064 template&lt;&gt; struct nspace::hash&lt;string&gt;
+<a name="l00065"></a>00065 #endif
+<a name="l00066"></a>00066 {
+<a name="l00067"></a>00067 size_t operator()(<span class="keyword">const</span> string &amp;s) <span class="keyword">const</span>;
+<a name="l00068"></a>00068 };
+<a name="l00069"></a>00069 }
+<a name="l00070"></a>00070
<a name="l00073"></a><a class="code" href="namespaceirc.html">00073</a> <span class="keyword">namespace </span>irc
-00074 {
-00075
+<a name="l00074"></a>00074 {
+<a name="l00075"></a>00075
<a name="l00080"></a><a class="code" href="structirc_1_1StrHashComp.html">00080</a> <span class="keyword">struct </span><a class="code" href="structirc_1_1StrHashComp.html">StrHashComp</a>
-00081 {
-00084 <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1StrHashComp.html#a0">operator()</a>(<span class="keyword">const</span> std::string&amp; s1, <span class="keyword">const</span> std::string&amp; s2) <span class="keyword">const</span>;
-00085 };
-00086
-00087
+<a name="l00081"></a>00081 {
+<a name="l00084"></a>00084 <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1StrHashComp.html#operator_28_29_28const_20std_3A_3Astring_20_26s_31_2C_20const_20std_3A_3Astring_20_26s_32_29_20const_20">operator()</a>(<span class="keyword">const</span> <a class="code" href="namespaceirc.html#string">std::string</a>&amp; s1, <span class="keyword">const</span> <a class="code" href="namespaceirc.html#string">std::string</a>&amp; s2) <span class="keyword">const</span>;
+<a name="l00085"></a>00085 };
+<a name="l00086"></a>00086
+<a name="l00087"></a>00087
<a name="l00092"></a><a class="code" href="structirc_1_1InAddr__HashComp.html">00092</a> <span class="keyword">struct </span><a class="code" href="structirc_1_1InAddr__HashComp.html">InAddr_HashComp</a>
-00093 {
-00096 <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1InAddr__HashComp.html#a0">operator()</a>(<span class="keyword">const</span> in_addr &amp;s1, <span class="keyword">const</span> in_addr &amp;s2) <span class="keyword">const</span>;
-00097 };
-00098
-00099
-<a name="l00104"></a><a class="code" href="structirc_1_1irc__char__traits.html">00104</a> <span class="keyword">struct </span><a class="code" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> : std::char_traits&lt;char&gt; {
-00105
-00108 <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1irc__char__traits.html#e0">eq</a>(<span class="keywordtype">char</span> c1st, <span class="keywordtype">char</span> c2nd);
-00109
-00112 <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1irc__char__traits.html#e1">ne</a>(<span class="keywordtype">char</span> c1st, <span class="keywordtype">char</span> c2nd);
-00113
-00116 <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1irc__char__traits.html#e2">lt</a>(<span class="keywordtype">char</span> c1st, <span class="keywordtype">char</span> c2nd);
-00117
-00120 <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="structirc_1_1irc__char__traits.html#e3">compare</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* str1, <span class="keyword">const</span> <span class="keywordtype">char</span>* str2, size_t n);
-00121
-00124 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="structirc_1_1irc__char__traits.html#e4">find</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* s1, <span class="keywordtype">int</span> n, <span class="keywordtype">char</span> c);
-00125 };
-00126
-<a name="l00129"></a><a class="code" href="namespaceirc.html#a0">00129</a> <span class="keyword">typedef</span> basic_string&lt;char, irc_char_traits, allocator&lt;char&gt; &gt; <a class="code" href="namespaceirc.html#a0">string</a>;
-00130 }
-00131
-00132 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:19 2005 for InspIRCd by
+<a name="l00093"></a>00093 {
+<a name="l00096"></a>00096 <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1InAddr__HashComp.html#operator_28_29_28const_20in_5Faddr_20_26s_31_2C_20const_20in_5Faddr_20_26s_32_29_20const_20">operator()</a>(<span class="keyword">const</span> in_addr &amp;s1, <span class="keyword">const</span> in_addr &amp;s2) <span class="keyword">const</span>;
+<a name="l00097"></a>00097 };
+<a name="l00098"></a>00098
+<a name="l00099"></a>00099
+<a name="l00104"></a><a class="code" href="structirc_1_1irc__char__traits.html">00104</a> <span class="keyword">struct </span><a class="code" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> : std::<a class="code" href="classstd_1_1char__traits.html">char_traits</a>&lt;char&gt; {
+<a name="l00105"></a>00105
+<a name="l00108"></a>00108 <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1irc__char__traits.html#eq_28char_20c_31st_2C_20char_20c_32nd_29">eq</a>(<span class="keywordtype">char</span> c1st, <span class="keywordtype">char</span> c2nd);
+<a name="l00109"></a>00109
+<a name="l00112"></a>00112 <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1irc__char__traits.html#ne_28char_20c_31st_2C_20char_20c_32nd_29">ne</a>(<span class="keywordtype">char</span> c1st, <span class="keywordtype">char</span> c2nd);
+<a name="l00113"></a>00113
+<a name="l00116"></a>00116 <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="structirc_1_1irc__char__traits.html#lt_28char_20c_31st_2C_20char_20c_32nd_29">lt</a>(<span class="keywordtype">char</span> c1st, <span class="keywordtype">char</span> c2nd);
+<a name="l00117"></a>00117
+<a name="l00120"></a>00120 <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="structirc_1_1irc__char__traits.html#compare_28const_20char_20_2Astr_31_2C_20const_20char_20_2Astr_32_2C_20size_5Ft_20n_29">compare</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* str1, <span class="keyword">const</span> <span class="keywordtype">char</span>* str2, size_t n);
+<a name="l00121"></a>00121
+<a name="l00124"></a>00124 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="structirc_1_1irc__char__traits.html#find_28const_20char_20_2As_31_2C_20int_20n_2C_20char_20c_29">find</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* s1, <span class="keywordtype">int</span> n, <span class="keywordtype">char</span> c);
+<a name="l00125"></a>00125 };
+<a name="l00126"></a>00126
+<a name="l00129"></a><a class="code" href="namespaceirc.html#string">00129</a> <span class="keyword">typedef</span> basic_string&lt;char, irc_char_traits, allocator&lt;char&gt; &gt; <a class="code" href="namespaceirc.html#string">string</a>;
+<a name="l00130"></a>00130 }
+<a name="l00131"></a>00131
+<a name="l00132"></a>00132 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/hashcomp_8h.html b/docs/module-doc/hashcomp_8h.html
index 37cefd163..094ec14a6 100644
--- a/docs/module-doc/hashcomp_8h.html
+++ b/docs/module-doc/hashcomp_8h.html
@@ -1,47 +1,70 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: hashcomp.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>hashcomp.h File Reference</h1><code>#include "inspircd_config.h"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>hashcomp.h File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
<code>#include &lt;ext/hash_map&gt;</code><br>
<p>
-Include dependency graph for hashcomp.h:<p><center><img src="hashcomp_8h__incl.gif" border="0" usemap="#hashcomp.h_map" alt="Include dependency graph"></center>
+Include dependency graph for hashcomp.h:<p><center><img src="hashcomp_8h__incl.gif" border="0" usemap="#hashcomp.h_map" alt=""></center>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="hashcomp_8h__dep__incl.gif" border="0" usemap="#hashcomp.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="hashcomp_8h__dep__incl.gif" border="0" usemap="#hashcomp.hdep_map" alt=""></center>
<map name="hashcomp.hdep_map">
-<area href="modules_8cpp.html" shape="rect" coords="8,7,106,34" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="151,7,249,33" alt="">
</map>
<p>
-<a href="hashcomp_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="hashcomp_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Namespaces</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>namespace &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="namespaceirc.html">irc</a></td></tr>
+<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacenspace.html">nspace</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>namespace &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="namespacenspace.html">nspace</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceirc.html">irc</a></td></tr>
-<tr><td colspan=2><br><h2>Defines</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="hashcomp_8h.html#a0">nspace</a>&nbsp;&nbsp;&nbsp;__gnu_cxx</td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html">nspace::hash&lt; in_addr &gt;</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnspace_1_1hash_3_01string_01_4.html">nspace::hash&lt; string &gt;</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class returns true if two strings match. <a href="structirc_1_1StrHashComp.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class returns true if two in_addr structs match. <a href="structirc_1_1InAddr__HashComp.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> class is used for RFC-style comparison of strings. <a href="structirc_1_1irc__char__traits.html#_details">More...</a><br></td></tr>
+<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="hashcomp_8h.html#nspace">nspace</a>&nbsp;&nbsp;&nbsp;__gnu_cxx</td></tr>
+
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef basic_string&lt; char,<br>
+ irc_char_traits, allocator&lt;<br>
+ char &gt; &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceirc.html#string">irc::string</a></td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This typedef declares <a class="el" href="namespaceirc.html#string">irc::string</a> based upon <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a>. <a href="#string"></a><br></td></tr>
</table>
<hr><h2>Define Documentation</h2>
-<a name="a0" doxytag="hashcomp.h::nspace"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="nspace"></a><!-- doxytag: member="hashcomp.h::nspace" ref="nspace" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define nspace&nbsp;&nbsp;&nbsp;__gnu_cxx
+ <td class="md" nowrap valign="top">#define nspace&nbsp;&nbsp;&nbsp;__gnu_cxx </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -54,9 +77,8 @@ This graph shows which files directly or indirectly include this file:<p><center
Definition at line <a class="el" href="hashcomp_8h-source.html#l00044">44</a> of file <a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>. </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:48 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/hashcomp_8h__dep__incl.gif b/docs/module-doc/hashcomp_8h__dep__incl.gif
index 5595a48da..ba92d59f7 100644
--- a/docs/module-doc/hashcomp_8h__dep__incl.gif
+++ b/docs/module-doc/hashcomp_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/hashcomp_8h__dep__incl.map b/docs/module-doc/hashcomp_8h__dep__incl.map
new file mode 100644
index 000000000..d4d87c8b6
--- /dev/null
+++ b/docs/module-doc/hashcomp_8h__dep__incl.map
@@ -0,0 +1,2 @@
+base referer
+rect $modules_8cpp-source.html 151,7 249,33
diff --git a/docs/module-doc/hashcomp_8h__dep__incl.md5 b/docs/module-doc/hashcomp_8h__dep__incl.md5
new file mode 100644
index 000000000..13ab4aa0c
--- /dev/null
+++ b/docs/module-doc/hashcomp_8h__dep__incl.md5
@@ -0,0 +1 @@
+18f1cb2dbb2c368f942055809c28a9a3 \ No newline at end of file
diff --git a/docs/module-doc/hashcomp_8h__incl.gif b/docs/module-doc/hashcomp_8h__incl.gif
index be85b903e..a742a4c23 100644
--- a/docs/module-doc/hashcomp_8h__incl.gif
+++ b/docs/module-doc/hashcomp_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/hashcomp_8h__incl.map b/docs/module-doc/hashcomp_8h__incl.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/hashcomp_8h__incl.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/hashcomp_8h__incl.md5 b/docs/module-doc/hashcomp_8h__incl.md5
new file mode 100644
index 000000000..fcd8e0e15
--- /dev/null
+++ b/docs/module-doc/hashcomp_8h__incl.md5
@@ -0,0 +1 @@
+fa613372646e958b5b158cf4f689f921 \ No newline at end of file
diff --git a/docs/module-doc/hierarchy.html b/docs/module-doc/hierarchy.html
index c40919099..6b1822b2c 100644
--- a/docs/module-doc/hierarchy.html
+++ b/docs/module-doc/hierarchy.html
@@ -1,10 +1,10 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Hierarchical Index</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindexHL" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindexHL" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>InspIRCd Class Hierarchy</h1><a href="inherits.html">Go to the graphical class hierarchy</a>
<p>
This inheritance list is sorted roughly, but not completely, alphabetically:<ul>
@@ -24,10 +24,8 @@ This inheritance list is sorted roughly, but not completely, alphabetically:<ul>
<li><a class="el" href="classcommand__t.html">command_t</a>
<li><a class="el" href="classconnection.html">connection</a>
<ul>
-<li><a class="el" href="classserverrec.html">serverrec</a>
<li><a class="el" href="classuserrec.html">userrec</a>
</ul>
-<li><a class="el" href="classircd__connector.html">ircd_connector</a>
</ul>
<li><a class="el" href="classExtMode.html">ExtMode</a>
<li><a class="el" href="classFileReader.html">FileReader</a>
@@ -60,15 +58,15 @@ This inheritance list is sorted roughly, but not completely, alphabetically:<ul>
</ul>
<li><a class="el" href="classDNS.html">DNS</a>
<li><a class="el" href="structdns__ip4list.html">dns_ip4list</a>
+<li><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html">nspace::hash&lt; in_addr &gt;</a>
+<li><a class="el" href="structnspace_1_1hash_3_01string_01_4.html">nspace::hash&lt; string &gt;</a>
<li><a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a>
-<li><a class="el" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html">nspace::hash&lt; in_addr &gt;</a>
-<li><a class="el" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html">nspace::hash&lt; string &gt;</a>
+<li><a class="el" href="classInspSocket.html">InspSocket</a>
<li><a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>
<li><a class="el" href="classWhoWasUser.html">WhoWasUser</a>
</ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:22 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/inherit__graph__0.gif b/docs/module-doc/inherit__graph__0.gif
index 2e31b9795..f06371899 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__0.map b/docs/module-doc/inherit__graph__0.map
new file mode 100644
index 000000000..09d914fed
--- /dev/null
+++ b/docs/module-doc/inherit__graph__0.map
@@ -0,0 +1,2 @@
+base referer
+rect $classBoolSet.html 7,7 76,33
diff --git a/docs/module-doc/inherit__graph__0.md5 b/docs/module-doc/inherit__graph__0.md5
new file mode 100644
index 000000000..0d55dc8ff
--- /dev/null
+++ b/docs/module-doc/inherit__graph__0.md5
@@ -0,0 +1 @@
+93d9e4fbc2d3cddda9a76d7441754f2b \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__1.gif b/docs/module-doc/inherit__graph__1.gif
index 397bfc922..10261dc21 100644
--- a/docs/module-doc/inherit__graph__1.gif
+++ b/docs/module-doc/inherit__graph__1.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__1.map b/docs/module-doc/inherit__graph__1.map
new file mode 100644
index 000000000..2fef6e5ed
--- /dev/null
+++ b/docs/module-doc/inherit__graph__1.map
@@ -0,0 +1,3 @@
+base referer
+rect $classstd_1_1char__traits.html 8,7 91,33
+rect $structirc_1_1irc__char__traits.html 140,7 268,33
diff --git a/docs/module-doc/inherit__graph__1.md5 b/docs/module-doc/inherit__graph__1.md5
new file mode 100644
index 000000000..9dc9f695d
--- /dev/null
+++ b/docs/module-doc/inherit__graph__1.md5
@@ -0,0 +1 @@
+9b6f095874e1ac542b37f925a223adb0 \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__10.gif b/docs/module-doc/inherit__graph__10.gif
new file mode 100644
index 000000000..e79f9b374
--- /dev/null
+++ b/docs/module-doc/inherit__graph__10.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__10.map b/docs/module-doc/inherit__graph__10.map
new file mode 100644
index 000000000..f4dc152fc
--- /dev/null
+++ b/docs/module-doc/inherit__graph__10.map
@@ -0,0 +1,2 @@
+base referer
+rect $classWhoWasUser.html 8,7 112,33
diff --git a/docs/module-doc/inherit__graph__10.md5 b/docs/module-doc/inherit__graph__10.md5
new file mode 100644
index 000000000..49ded545f
--- /dev/null
+++ b/docs/module-doc/inherit__graph__10.md5
@@ -0,0 +1 @@
+5bff511d62c6faa81cdb63b1f78f6cd8 \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__2.gif b/docs/module-doc/inherit__graph__2.gif
index a434ea0a7..e9fb3711f 100644
--- a/docs/module-doc/inherit__graph__2.gif
+++ b/docs/module-doc/inherit__graph__2.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__2.map b/docs/module-doc/inherit__graph__2.map
new file mode 100644
index 000000000..3d1b2b163
--- /dev/null
+++ b/docs/module-doc/inherit__graph__2.map
@@ -0,0 +1,32 @@
+base referer
+rect $classclassbase.html 8,387 88,413
+rect $classAdmin.html 167,7 228,33
+rect $classConfigReader.html 146,57 250,84
+rect $classConnectClass.html 146,108 250,135
+rect $classExtensible.html 156,159 239,185
+rect $classExtMode.html 160,209 235,236
+rect $classFileReader.html 154,260 242,287
+rect $classHostItem.html 160,311 235,337
+rect $classInvited.html 167,361 228,388
+rect $classModeParameter.html 139,412 256,439
+rect $classModule.html 164,463 231,489
+rect $classModuleFactory.html 143,513 252,540
+rect $classModuleMessage.html 138,564 258,591
+rect $classServer.html 167,615 228,641
+rect $classucrec.html 171,665 224,692
+rect $classVersion.html 164,716 231,743
+rect $classXLine.html 170,767 226,793
+rect $classchanrec.html 319,108 388,135
+rect $classcommand__t.html 308,159 399,185
+rect $classconnection.html 311,209 396,236
+rect $classuserrec.html 450,209 516,236
+rect $classBanItem.html 318,260 390,287
+rect $classExemptItem.html 307,311 400,337
+rect $classInviteItem.html 314,361 394,388
+rect $classEvent.html 326,539 382,565
+rect $classRequest.html 318,589 390,616
+rect $classELine.html 326,665 382,692
+rect $classGLine.html 324,716 383,743
+rect $classKLine.html 326,767 382,793
+rect $classQLine.html 324,817 383,844
+rect $classZLine.html 326,868 382,895
diff --git a/docs/module-doc/inherit__graph__2.md5 b/docs/module-doc/inherit__graph__2.md5
new file mode 100644
index 000000000..f9ee5de24
--- /dev/null
+++ b/docs/module-doc/inherit__graph__2.md5
@@ -0,0 +1 @@
+5245feb0cb84245dfc703490db270136 \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__3.gif b/docs/module-doc/inherit__graph__3.gif
index 992d6ed85..1d3c8d177 100644
--- a/docs/module-doc/inherit__graph__3.gif
+++ b/docs/module-doc/inherit__graph__3.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__3.map b/docs/module-doc/inherit__graph__3.map
new file mode 100644
index 000000000..56a3b7703
--- /dev/null
+++ b/docs/module-doc/inherit__graph__3.map
@@ -0,0 +1,2 @@
+base referer
+rect $classDNS.html 7,7 57,33
diff --git a/docs/module-doc/inherit__graph__3.md5 b/docs/module-doc/inherit__graph__3.md5
new file mode 100644
index 000000000..3644e817a
--- /dev/null
+++ b/docs/module-doc/inherit__graph__3.md5
@@ -0,0 +1 @@
+d39d1604b95cefdfc240566a784bc1e0 \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__4.gif b/docs/module-doc/inherit__graph__4.gif
index 224232736..8c7af2d72 100644
--- a/docs/module-doc/inherit__graph__4.gif
+++ b/docs/module-doc/inherit__graph__4.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__4.map b/docs/module-doc/inherit__graph__4.map
new file mode 100644
index 000000000..37bcc6048
--- /dev/null
+++ b/docs/module-doc/inherit__graph__4.map
@@ -0,0 +1,2 @@
+base referer
+rect $structdns__ip4list.html 7,7 92,33
diff --git a/docs/module-doc/inherit__graph__4.md5 b/docs/module-doc/inherit__graph__4.md5
new file mode 100644
index 000000000..a570a57e1
--- /dev/null
+++ b/docs/module-doc/inherit__graph__4.md5
@@ -0,0 +1 @@
+f91f9b746cbe9764b077e0f96e3d53c0 \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__5.gif b/docs/module-doc/inherit__graph__5.gif
index 3ae3517db..f657b86ad 100644
--- a/docs/module-doc/inherit__graph__5.gif
+++ b/docs/module-doc/inherit__graph__5.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__5.map b/docs/module-doc/inherit__graph__5.map
new file mode 100644
index 000000000..9f8c7b021
--- /dev/null
+++ b/docs/module-doc/inherit__graph__5.map
@@ -0,0 +1,2 @@
+base referer
+rect $classInspSocket.html 7,7 95,33
diff --git a/docs/module-doc/inherit__graph__5.md5 b/docs/module-doc/inherit__graph__5.md5
new file mode 100644
index 000000000..d2ac3e742
--- /dev/null
+++ b/docs/module-doc/inherit__graph__5.md5
@@ -0,0 +1 @@
+866431d87448beeff03effa477cb0785 \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__6.gif b/docs/module-doc/inherit__graph__6.gif
index 8ad8a7b50..0f004ad81 100644
--- a/docs/module-doc/inherit__graph__6.gif
+++ b/docs/module-doc/inherit__graph__6.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__6.map b/docs/module-doc/inherit__graph__6.map
new file mode 100644
index 000000000..dad9d9fcd
--- /dev/null
+++ b/docs/module-doc/inherit__graph__6.map
@@ -0,0 +1,2 @@
+base referer
+rect $structirc_1_1InAddr__HashComp.html 7,7 164,33
diff --git a/docs/module-doc/inherit__graph__6.md5 b/docs/module-doc/inherit__graph__6.md5
new file mode 100644
index 000000000..9496775c7
--- /dev/null
+++ b/docs/module-doc/inherit__graph__6.md5
@@ -0,0 +1 @@
+3c2c67e0c9a15d3aaf7860ffcd39768e \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__7.gif b/docs/module-doc/inherit__graph__7.gif
index d85abdb1b..b68f09f13 100644
--- a/docs/module-doc/inherit__graph__7.gif
+++ b/docs/module-doc/inherit__graph__7.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__7.map b/docs/module-doc/inherit__graph__7.map
new file mode 100644
index 000000000..8c67f4a72
--- /dev/null
+++ b/docs/module-doc/inherit__graph__7.map
@@ -0,0 +1,2 @@
+base referer
+rect $structirc_1_1StrHashComp.html 7,7 135,33
diff --git a/docs/module-doc/inherit__graph__7.md5 b/docs/module-doc/inherit__graph__7.md5
new file mode 100644
index 000000000..b62920d1d
--- /dev/null
+++ b/docs/module-doc/inherit__graph__7.md5
@@ -0,0 +1 @@
+d94ccc9245ee31c76282e2c8ed0c0bb2 \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__8.gif b/docs/module-doc/inherit__graph__8.gif
index 516567cb0..2c759987a 100644
--- a/docs/module-doc/inherit__graph__8.gif
+++ b/docs/module-doc/inherit__graph__8.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__8.map b/docs/module-doc/inherit__graph__8.map
new file mode 100644
index 000000000..e91564620
--- /dev/null
+++ b/docs/module-doc/inherit__graph__8.map
@@ -0,0 +1,2 @@
+base referer
+rect $structnspace_1_1hash_3_01in__addr_01_4.html 8,7 176,33
diff --git a/docs/module-doc/inherit__graph__8.md5 b/docs/module-doc/inherit__graph__8.md5
new file mode 100644
index 000000000..9c5f939fc
--- /dev/null
+++ b/docs/module-doc/inherit__graph__8.md5
@@ -0,0 +1 @@
+40e92872c26375b92021bb12d46d2211 \ No newline at end of file
diff --git a/docs/module-doc/inherit__graph__9.gif b/docs/module-doc/inherit__graph__9.gif
index a7d4324c4..ead171060 100644
--- a/docs/module-doc/inherit__graph__9.gif
+++ b/docs/module-doc/inherit__graph__9.gif
Binary files differ
diff --git a/docs/module-doc/inherit__graph__9.map b/docs/module-doc/inherit__graph__9.map
new file mode 100644
index 000000000..cf6c39bc6
--- /dev/null
+++ b/docs/module-doc/inherit__graph__9.map
@@ -0,0 +1,2 @@
+base referer
+rect $structnspace_1_1hash_3_01string_01_4.html 7,7 164,33
diff --git a/docs/module-doc/inherit__graph__9.md5 b/docs/module-doc/inherit__graph__9.md5
new file mode 100644
index 000000000..354478843
--- /dev/null
+++ b/docs/module-doc/inherit__graph__9.md5
@@ -0,0 +1 @@
+317e8030ba500855ca30d38cc6449d34 \ No newline at end of file
diff --git a/docs/module-doc/inherits.html b/docs/module-doc/inherits.html
index 7ab174b01..67a43a23d 100644
--- a/docs/module-doc/inherits.html
+++ b/docs/module-doc/inherits.html
@@ -1,90 +1,91 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Graphical Class Hierarchy</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>InspIRCd Graphical Class Hierarchy</h1><a href="hierarchy.html">Go to the textual class hierarchy</a>
<p>
-<table border=0 cellspacing=10 cellpadding=0>
+<table border="0" cellspacing="10" cellpadding="0">
<tr><td><img src="inherit__graph__0.gif" border="0" alt="" usemap="#BoolSet_map">
<map name="BoolSet_map">
-<area href="classBoolSet.html" shape="rect" coords="7,8,77,34" alt="">
+<area href="classBoolSet.html" shape="rect" coords="7,7,76,33" alt="">
</map></td></tr>
<tr><td><img src="inherit__graph__1.gif" border="0" alt="" usemap="#char__traits_map">
<map name="char__traits_map">
-<area href="classstd_1_1char__traits.html" shape="rect" coords="9,8,91,34" alt="">
-<area href="structirc_1_1irc__char__traits.html" shape="rect" coords="141,8,269,34" alt="">
+<area href="classstd_1_1char__traits.html" shape="rect" coords="8,7,91,33" alt="">
+<area href="structirc_1_1irc__char__traits.html" shape="rect" coords="140,7,268,33" alt="">
</map></td></tr>
<tr><td><img src="inherit__graph__2.gif" border="0" alt="" usemap="#classbase_map">
<map name="classbase_map">
-<area href="classclassbase.html" shape="rect" coords="9,388,89,414" alt="">
-<area href="classAdmin.html" shape="rect" coords="168,8,229,34" alt="">
-<area href="classConfigReader.html" shape="rect" coords="146,58,250,85" alt="">
-<area href="classConnectClass.html" shape="rect" coords="146,109,250,136" alt="">
-<area href="classExtensible.html" shape="rect" coords="157,160,240,186" alt="">
-<area href="classExtMode.html" shape="rect" coords="161,210,236,237" alt="">
-<area href="classFileReader.html" shape="rect" coords="154,261,242,288" alt="">
-<area href="classHostItem.html" shape="rect" coords="161,312,236,338" alt="">
-<area href="classInvited.html" shape="rect" coords="168,362,229,389" alt="">
-<area href="classModeParameter.html" shape="rect" coords="140,413,257,440" alt="">
-<area href="classModule.html" shape="rect" coords="165,464,232,490" alt="">
-<area href="classModuleFactory.html" shape="rect" coords="144,514,253,541" alt="">
-<area href="classModuleMessage.html" shape="rect" coords="138,565,258,592" alt="">
-<area href="classServer.html" shape="rect" coords="168,616,229,642" alt="">
-<area href="classucrec.html" shape="rect" coords="172,666,225,693" alt="">
-<area href="classVersion.html" shape="rect" coords="165,717,232,744" alt="">
-<area href="classXLine.html" shape="rect" coords="170,768,226,794" alt="">
-<area href="classchanrec.html" shape="rect" coords="326,58,396,85" alt="">
-<area href="classcommand__t.html" shape="rect" coords="316,109,406,136" alt="">
-<area href="classconnection.html" shape="rect" coords="318,160,404,186" alt="">
-<area href="classircd__connector.html" shape="rect" coords="306,210,416,237" alt="">
-<area href="classserverrec.html" shape="rect" coords="465,134,542,161" alt="">
-<area href="classuserrec.html" shape="rect" coords="470,185,537,212" alt="">
-<area href="classBanItem.html" shape="rect" coords="325,261,397,288" alt="">
-<area href="classExemptItem.html" shape="rect" coords="314,312,408,338" alt="">
-<area href="classInviteItem.html" shape="rect" coords="321,362,401,389" alt="">
-<area href="classEvent.html" shape="rect" coords="333,540,389,566" alt="">
-<area href="classRequest.html" shape="rect" coords="325,590,397,617" alt="">
-<area href="classELine.html" shape="rect" coords="333,666,389,693" alt="">
-<area href="classGLine.html" shape="rect" coords="332,717,390,744" alt="">
-<area href="classKLine.html" shape="rect" coords="333,768,389,794" alt="">
-<area href="classQLine.html" shape="rect" coords="332,818,390,845" alt="">
-<area href="classZLine.html" shape="rect" coords="333,869,389,896" alt="">
+<area href="classclassbase.html" shape="rect" coords="8,387,88,413" alt="">
+<area href="classAdmin.html" shape="rect" coords="167,7,228,33" alt="">
+<area href="classConfigReader.html" shape="rect" coords="146,57,250,84" alt="">
+<area href="classConnectClass.html" shape="rect" coords="146,108,250,135" alt="">
+<area href="classExtensible.html" shape="rect" coords="156,159,239,185" alt="">
+<area href="classExtMode.html" shape="rect" coords="160,209,235,236" alt="">
+<area href="classFileReader.html" shape="rect" coords="154,260,242,287" alt="">
+<area href="classHostItem.html" shape="rect" coords="160,311,235,337" alt="">
+<area href="classInvited.html" shape="rect" coords="167,361,228,388" alt="">
+<area href="classModeParameter.html" shape="rect" coords="139,412,256,439" alt="">
+<area href="classModule.html" shape="rect" coords="164,463,231,489" alt="">
+<area href="classModuleFactory.html" shape="rect" coords="143,513,252,540" alt="">
+<area href="classModuleMessage.html" shape="rect" coords="138,564,258,591" alt="">
+<area href="classServer.html" shape="rect" coords="167,615,228,641" alt="">
+<area href="classucrec.html" shape="rect" coords="171,665,224,692" alt="">
+<area href="classVersion.html" shape="rect" coords="164,716,231,743" alt="">
+<area href="classXLine.html" shape="rect" coords="170,767,226,793" alt="">
+<area href="classchanrec.html" shape="rect" coords="319,108,388,135" alt="">
+<area href="classcommand__t.html" shape="rect" coords="308,159,399,185" alt="">
+<area href="classconnection.html" shape="rect" coords="311,209,396,236" alt="">
+<area href="classuserrec.html" shape="rect" coords="450,209,516,236" alt="">
+<area href="classBanItem.html" shape="rect" coords="318,260,390,287" alt="">
+<area href="classExemptItem.html" shape="rect" coords="307,311,400,337" alt="">
+<area href="classInviteItem.html" shape="rect" coords="314,361,394,388" alt="">
+<area href="classEvent.html" shape="rect" coords="326,539,382,565" alt="">
+<area href="classRequest.html" shape="rect" coords="318,589,390,616" alt="">
+<area href="classELine.html" shape="rect" coords="326,665,382,692" alt="">
+<area href="classGLine.html" shape="rect" coords="324,716,383,743" alt="">
+<area href="classKLine.html" shape="rect" coords="326,767,382,793" alt="">
+<area href="classQLine.html" shape="rect" coords="324,817,383,844" alt="">
+<area href="classZLine.html" shape="rect" coords="326,868,382,895" alt="">
</map></td></tr>
<tr><td><img src="inherit__graph__3.gif" border="0" alt="" usemap="#DNS_map">
<map name="DNS_map">
-<area href="classDNS.html" shape="rect" coords="8,8,58,34" alt="">
+<area href="classDNS.html" shape="rect" coords="7,7,57,33" alt="">
</map></td></tr>
<tr><td><img src="inherit__graph__4.gif" border="0" alt="" usemap="#dns__ip4list_map">
<map name="dns__ip4list_map">
-<area href="structdns__ip4list.html" shape="rect" coords="7,8,93,34" alt="">
+<area href="structdns__ip4list.html" shape="rect" coords="7,7,92,33" alt="">
</map></td></tr>
-<tr><td><img src="inherit__graph__5.gif" border="0" alt="" usemap="#irc_1_1InAddr__HashComp_map">
+<tr><td><img src="inherit__graph__5.gif" border="0" alt="" usemap="#InspSocket_map">
+<map name="InspSocket_map">
+<area href="classInspSocket.html" shape="rect" coords="7,7,95,33" alt="">
+</map></td></tr>
+<tr><td><img src="inherit__graph__6.gif" border="0" alt="" usemap="#irc_1_1InAddr__HashComp_map">
<map name="irc_1_1InAddr__HashComp_map">
-<area href="structirc_1_1InAddr__HashComp.html" shape="rect" coords="7,8,165,34" alt="">
+<area href="structirc_1_1InAddr__HashComp.html" shape="rect" coords="7,7,164,33" alt="">
</map></td></tr>
-<tr><td><img src="inherit__graph__6.gif" border="0" alt="" usemap="#irc_1_1StrHashComp_map">
+<tr><td><img src="inherit__graph__7.gif" border="0" alt="" usemap="#irc_1_1StrHashComp_map">
<map name="irc_1_1StrHashComp_map">
-<area href="structirc_1_1StrHashComp.html" shape="rect" coords="8,8,136,34" alt="">
+<area href="structirc_1_1StrHashComp.html" shape="rect" coords="7,7,135,33" alt="">
</map></td></tr>
-<tr><td><img src="inherit__graph__7.gif" border="0" alt="" usemap="#nspace_1_1hash_3_01in__addr_01_4_map">
+<tr><td><img src="inherit__graph__8.gif" border="0" alt="" usemap="#nspace_1_1hash_3_01in__addr_01_4_map">
<map name="nspace_1_1hash_3_01in__addr_01_4_map">
-<area href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html" shape="rect" coords="9,8,177,34" alt="">
+<area href="structnspace_1_1hash_3_01in__addr_01_4.html" shape="rect" coords="8,7,176,33" alt="">
</map></td></tr>
-<tr><td><img src="inherit__graph__8.gif" border="0" alt="" usemap="#nspace_1_1hash_3_01string_01_4_map">
+<tr><td><img src="inherit__graph__9.gif" border="0" alt="" usemap="#nspace_1_1hash_3_01string_01_4_map">
<map name="nspace_1_1hash_3_01string_01_4_map">
-<area href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html" shape="rect" coords="7,8,165,34" alt="">
+<area href="structnspace_1_1hash_3_01string_01_4.html" shape="rect" coords="7,7,164,33" alt="">
</map></td></tr>
-<tr><td><img src="inherit__graph__9.gif" border="0" alt="" usemap="#WhoWasUser_map">
+<tr><td><img src="inherit__graph__10.gif" border="0" alt="" usemap="#WhoWasUser_map">
<map name="WhoWasUser_map">
-<area href="classWhoWasUser.html" shape="rect" coords="9,8,113,34" alt="">
+<area href="classWhoWasUser.html" shape="rect" coords="8,7,112,33" alt="">
</map></td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:55 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/main.html b/docs/module-doc/main.html
index 20bf96001..fd5a79646 100644
--- a/docs/module-doc/main.html
+++ b/docs/module-doc/main.html
@@ -1,15 +1,14 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Main Page</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindexHL" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindexHL" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>InspIRCd Documentation</h1>
<p>
-<h3 align="center">1.0Betareleases </h3><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:18 2005 for InspIRCd by
+<h3 align="center">1.0Betareleases </h3><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/message_8h-source.html b/docs/module-doc/message_8h-source.html
index 9f7777694..7d56671ff 100644
--- a/docs/module-doc/message_8h-source.html
+++ b/docs/module-doc/message_8h-source.html
@@ -1,63 +1,64 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: message.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>message.h</h1><a href="message_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#ifndef __MESSAGE_H</span>
-00018 <span class="preprocessor"></span><span class="preprocessor">#define __MESSAGE_H</span>
-00019 <span class="preprocessor"></span>
-00020 <span class="comment">// include the common header files</span>
-00021
-00022 <span class="preprocessor">#include &lt;typeinfo&gt;</span>
-00023 <span class="preprocessor">#include &lt;iostream&gt;</span>
-00024 <span class="preprocessor">#include &lt;string&gt;</span>
-00025 <span class="preprocessor">#include &lt;deque&gt;</span>
-00026 <span class="preprocessor">#include &lt;sstream&gt;</span>
-00027 <span class="preprocessor">#include &lt;vector&gt;</span>
-00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
-00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
-00030
-00031 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#a0">common_channels</a>(<a class="code" href="classuserrec.html">userrec</a> *u, <a class="code" href="classuserrec.html">userrec</a> *u2);
-00032 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#a1">chop</a>(<span class="keywordtype">char</span>* str);
-00033 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#a2">tidystring</a>(<span class="keywordtype">char</span>* str);
-00034 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#a3">Blocking</a>(<span class="keywordtype">int</span> s);
-00035 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#a4">NonBlocking</a>(<span class="keywordtype">int</span> s);
-00036 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#a5">CleanAndResolve</a> (<span class="keywordtype">char</span> *resolvedHost, <span class="keyword">const</span> <span class="keywordtype">char</span> *unresolvedHost);
-00037 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#a6">c_count</a>(<a class="code" href="classuserrec.html">userrec</a>* u);
-00038 <span class="keywordtype">bool</span> <a class="code" href="message_8h.html#a7">hasumode</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <span class="keywordtype">char</span> mode);
-00039 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#a8">ChangeName</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <span class="keyword">const</span> <span class="keywordtype">char</span>* gecos);
-00040 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#a9">ChangeDisplayedHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <span class="keyword">const</span> <span class="keywordtype">char</span>* host);
-00041 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#a10">isident</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* n);
-00042 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#a11">isnick</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* n);
-00043 <span class="keywordtype">char</span>* <a class="code" href="message_8h.html#a12">cmode</a>(<a class="code" href="classuserrec.html">userrec</a> *user, <a class="code" href="classchanrec.html">chanrec</a> *chan);
-00044 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#a13">cstatus</a>(<a class="code" href="classuserrec.html">userrec</a> *user, <a class="code" href="classchanrec.html">chanrec</a> *chan);
-00045 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#a14">has_channel</a>(<a class="code" href="classuserrec.html">userrec</a> *u, <a class="code" href="classchanrec.html">chanrec</a> *c);
-00046 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#a15">TidyBan</a>(<span class="keywordtype">char</span> *ban);
-00047 <span class="keywordtype">char</span>* <a class="code" href="message_8h.html#a16">chlist</a>(<a class="code" href="classuserrec.html">userrec</a> *user, <a class="code" href="classuserrec.html">userrec</a>* source);
-00048 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#a17">send_network_quit</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nick, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason);
-00049
-00050 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:19 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>message.h</h1><a href="message_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef __MESSAGE_H</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __MESSAGE_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="comment">// include the common header files</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;typeinfo&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;iostream&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;deque&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29">common_channels</a>(<a class="code" href="classuserrec.html">userrec</a> *u, <a class="code" href="classuserrec.html">userrec</a> *u2);
+<a name="l00032"></a>00032 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#chop_28char_20_2Astr_29">chop</a>(<span class="keywordtype">char</span>* str);
+<a name="l00033"></a>00033 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#tidystring_28char_20_2Astr_29">tidystring</a>(<span class="keywordtype">char</span>* str);
+<a name="l00034"></a>00034 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#Blocking_28int_20s_29">Blocking</a>(<span class="keywordtype">int</span> s);
+<a name="l00035"></a>00035 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#NonBlocking_28int_20s_29">NonBlocking</a>(<span class="keywordtype">int</span> s);
+<a name="l00036"></a>00036 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#CleanAndResolve_28char_20_2AresolvedHost_2C_20const_20char_20_2AunresolvedHost_29">CleanAndResolve</a> (<span class="keywordtype">char</span> *resolvedHost, <span class="keyword">const</span> <span class="keywordtype">char</span> *unresolvedHost);
+<a name="l00037"></a>00037 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#c_5Fcount_28userrec_20_2Au_29">c_count</a>(<a class="code" href="classuserrec.html">userrec</a>* u);
+<a name="l00038"></a>00038 <span class="keywordtype">bool</span> <a class="code" href="message_8h.html#hasumode_28userrec_20_2Auser_2C_20char_20mode_29">hasumode</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <span class="keywordtype">char</span> mode);
+<a name="l00039"></a>00039 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29">ChangeName</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <span class="keyword">const</span> <span class="keywordtype">char</span>* gecos);
+<a name="l00040"></a>00040 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29">ChangeDisplayedHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <span class="keyword">const</span> <span class="keywordtype">char</span>* host);
+<a name="l00041"></a>00041 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#isident_28const_20char_20_2An_29">isident</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* n);
+<a name="l00042"></a>00042 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#isnick_28const_20char_20_2An_29">isnick</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* n);
+<a name="l00043"></a>00043 <span class="keywordtype">char</span>* <a class="code" href="message_8h.html#cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">cmode</a>(<a class="code" href="classuserrec.html">userrec</a> *user, <a class="code" href="classchanrec.html">chanrec</a> *chan);
+<a name="l00044"></a>00044 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#cstatus_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">cstatus</a>(<a class="code" href="classuserrec.html">userrec</a> *user, <a class="code" href="classchanrec.html">chanrec</a> *chan);
+<a name="l00045"></a>00045 <span class="keywordtype">int</span> <a class="code" href="message_8h.html#has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29">has_channel</a>(<a class="code" href="classuserrec.html">userrec</a> *u, <a class="code" href="classchanrec.html">chanrec</a> *c);
+<a name="l00046"></a>00046 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#TidyBan_28char_20_2Aban_29">TidyBan</a>(<span class="keywordtype">char</span> *ban);
+<a name="l00047"></a>00047 <span class="keywordtype">char</span>* <a class="code" href="message_8h.html#chlist_28userrec_20_2Auser_2C_20userrec_20_2Asource_29">chlist</a>(<a class="code" href="classuserrec.html">userrec</a> *user, <a class="code" href="classuserrec.html">userrec</a>* source);
+<a name="l00048"></a>00048 <span class="keywordtype">void</span> <a class="code" href="message_8h.html#send_5Fnetwork_5Fquit_28const_20char_20_2Anick_2C_20const_20char_20_2Areason_29">send_network_quit</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nick, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason);
+<a name="l00049"></a>00049
+<a name="l00050"></a>00050 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/message_8h.html b/docs/module-doc/message_8h.html
index 4b37ebd9b..baa3188b9 100644
--- a/docs/module-doc/message_8h.html
+++ b/docs/module-doc/message_8h.html
@@ -1,94 +1,96 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: message.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
<h1>message.h File Reference</h1><code>#include &lt;typeinfo&gt;</code><br>
<code>#include &lt;iostream&gt;</code><br>
<code>#include &lt;string&gt;</code><br>
<code>#include &lt;deque&gt;</code><br>
<code>#include &lt;sstream&gt;</code><br>
<code>#include &lt;vector&gt;</code><br>
-<code>#include "<a class="el" href="users_8h-source.html">users.h</a>"</code><br>
-<code>#include "<a class="el" href="channels_8h-source.html">channels.h</a>"</code><br>
+<code>#include &quot;<a class="el" href="users_8h-source.html">users.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="channels_8h-source.html">channels.h</a>&quot;</code><br>
<p>
-Include dependency graph for message.h:<p><center><img src="message_8h__incl.gif" border="0" usemap="#message.h_map" alt="Include dependency graph"></center>
+Include dependency graph for message.h:<p><center><img src="message_8h__incl.gif" border="0" usemap="#message.h_map" alt=""></center>
<map name="message.h_map">
-<area href="users_8h.html" shape="rect" coords="248,157,312,184" alt="">
-<area href="channels_8h.html" shape="rect" coords="298,82,384,109" alt="">
+<area href="users_8h-source.html" shape="rect" coords="148,260,212,287" alt="">
+<area href="channels_8h-source.html" shape="rect" coords="272,210,357,236" alt="">
+<area href="connection_8h-source.html" shape="rect" coords="265,362,364,388" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="message_8h__dep__incl.gif" border="0" usemap="#message.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="message_8h__dep__incl.gif" border="0" usemap="#message.hdep_map" alt=""></center>
<map name="message.hdep_map">
-<area href="channels_8cpp.html" shape="rect" coords="7,7,106,34" alt="">
-<area href="modules_8cpp.html" shape="rect" coords="130,7,229,34" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="144,7,243,34" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="144,58,243,84" alt="">
</map>
<p>
-<a href="message_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="message_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a0">common_channels</a> (<a class="el" href="classuserrec.html">userrec</a> *u, <a class="el" href="classuserrec.html">userrec</a> *u2)</td></tr>
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29">common_channels</a> (<a class="el" href="classuserrec.html">userrec</a> *u, <a class="el" href="classuserrec.html">userrec</a> *u2)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a1">chop</a> (char *str)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#chop_28char_20_2Astr_29">chop</a> (char *str)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a2">tidystring</a> (char *str)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#tidystring_28char_20_2Astr_29">tidystring</a> (char *str)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a3">Blocking</a> (int s)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#Blocking_28int_20s_29">Blocking</a> (int s)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a4">NonBlocking</a> (int s)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#NonBlocking_28int_20s_29">NonBlocking</a> (int s)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a5">CleanAndResolve</a> (char *resolvedHost, const char *unresolvedHost)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#CleanAndResolve_28char_20_2AresolvedHost_2C_20const_20char_20_2AunresolvedHost_29">CleanAndResolve</a> (char *resolvedHost, const char *unresolvedHost)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a6">c_count</a> (<a class="el" href="classuserrec.html">userrec</a> *u)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#c_5Fcount_28userrec_20_2Au_29">c_count</a> (<a class="el" href="classuserrec.html">userrec</a> *u)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a7">hasumode</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char mode)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#hasumode_28userrec_20_2Auser_2C_20char_20mode_29">hasumode</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char mode)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a8">ChangeName</a> (<a class="el" href="classuserrec.html">userrec</a> *user, const char *gecos)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29">ChangeName</a> (<a class="el" href="classuserrec.html">userrec</a> *user, const char *gecos)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a9">ChangeDisplayedHost</a> (<a class="el" href="classuserrec.html">userrec</a> *user, const char *host)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29">ChangeDisplayedHost</a> (<a class="el" href="classuserrec.html">userrec</a> *user, const char *host)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a10">isident</a> (const char *n)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#isident_28const_20char_20_2An_29">isident</a> (const char *n)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a11">isnick</a> (const char *n)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#isnick_28const_20char_20_2An_29">isnick</a> (const char *n)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a12">cmode</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">cmode</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a13">cstatus</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#cstatus_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">cstatus</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a14">has_channel</a> (<a class="el" href="classuserrec.html">userrec</a> *u, <a class="el" href="classchanrec.html">chanrec</a> *c)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29">has_channel</a> (<a class="el" href="classuserrec.html">userrec</a> *u, <a class="el" href="classchanrec.html">chanrec</a> *c)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a15">TidyBan</a> (char *ban)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#TidyBan_28char_20_2Aban_29">TidyBan</a> (char *ban)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a16">chlist</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classuserrec.html">userrec</a> *source)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#chlist_28userrec_20_2Auser_2C_20userrec_20_2Asource_29">chlist</a> (<a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classuserrec.html">userrec</a> *source)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="message_8h.html#a17">send_network_quit</a> (const char *nick, const char *reason)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="message_8h.html#send_5Fnetwork_5Fquit_28const_20char_20_2Anick_2C_20const_20char_20_2Areason_29">send_network_quit</a> (const char *nick, const char *reason)</td></tr>
</table>
<hr><h2>Function Documentation</h2>
-<a name="a3" doxytag="message.h::Blocking"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Blocking_28int_20s_29"></a><!-- doxytag: member="message.h::Blocking" ref="Blocking_28int_20s_29" args="(int s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void Blocking </td>
+ <td class="md" nowrap valign="top">void Blocking </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>s</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -99,25 +101,24 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a6" doxytag="message.h::c_count"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="c_5Fcount_28userrec_20_2Au_29"></a><!-- doxytag: member="message.h::c_count" ref="c_5Fcount_28userrec_20_2Au_29" args="(userrec *u)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int c_count </td>
+ <td class="md" nowrap valign="top">int c_count </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="mdname1" valign="top" nowrap> <em>u</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -128,34 +129,33 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a9" doxytag="message.h::ChangeDisplayedHost"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29"></a><!-- doxytag: member="message.h::ChangeDisplayedHost" ref="ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29" args="(userrec *user, const char *host)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void ChangeDisplayedHost </td>
+ <td class="md" nowrap valign="top">void ChangeDisplayedHost </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>host</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -165,37 +165,36 @@ This graph shows which files directly or indirectly include this file:<p><center
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00517">Server::ChangeHost()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00535">Server::ChangeHost()</a>. </td>
</tr>
</table>
-<a name="a8" doxytag="message.h::ChangeName"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29"></a><!-- doxytag: member="message.h::ChangeName" ref="ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29" args="(userrec *user, const char *gecos)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void ChangeName </td>
+ <td class="md" nowrap valign="top">void ChangeName </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>gecos</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -205,37 +204,36 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00517">Server::Chang
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00522">Server::ChangeGECOS()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00540">Server::ChangeGECOS()</a>. </td>
</tr>
</table>
-<a name="a16" doxytag="message.h::chlist"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="chlist_28userrec_20_2Auser_2C_20userrec_20_2Asource_29"></a><!-- doxytag: member="message.h::chlist" ref="chlist_28userrec_20_2Auser_2C_20userrec_20_2Asource_29" args="(userrec *user, userrec *source)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* chlist </td>
+ <td class="md" nowrap valign="top">char* chlist </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -246,25 +244,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00522">Server::Chang
</td>
</tr>
</table>
-<a name="a1" doxytag="message.h::chop"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="chop_28char_20_2Astr_29"></a><!-- doxytag: member="message.h::chop" ref="chop_28char_20_2Astr_29" args="(char *str)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void chop </td>
+ <td class="md" nowrap valign="top">void chop </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>str</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -275,34 +272,33 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00522">Server::Chang
</td>
</tr>
</table>
-<a name="a5" doxytag="message.h::CleanAndResolve"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CleanAndResolve_28char_20_2AresolvedHost_2C_20const_20char_20_2AunresolvedHost_29"></a><!-- doxytag: member="message.h::CleanAndResolve" ref="CleanAndResolve_28char_20_2AresolvedHost_2C_20const_20char_20_2AunresolvedHost_29" args="(char *resolvedHost, const char *unresolvedHost)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int CleanAndResolve </td>
+ <td class="md" nowrap valign="top">int CleanAndResolve </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap> <em>resolvedHost</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>unresolvedHost</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -313,34 +309,33 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00522">Server::Chang
</td>
</tr>
</table>
-<a name="a12" doxytag="message.h::cmode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29"></a><!-- doxytag: member="message.h::cmode" ref="cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29" args="(userrec *user, chanrec *chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* cmode </td>
+ <td class="md" nowrap valign="top">char* cmode </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -350,37 +345,36 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00522">Server::Chang
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00547">Server::ChanMode()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00565">Server::ChanMode()</a>. </td>
</tr>
</table>
-<a name="a0" doxytag="message.h::common_channels"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29"></a><!-- doxytag: member="message.h::common_channels" ref="common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29" args="(userrec *u, userrec *u2)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int common_channels </td>
+ <td class="md" nowrap valign="top">int common_channels </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> <em>u</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>u2</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -390,37 +384,36 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00547">Server::ChanM
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00495">Server::CommonChannels()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00513">Server::CommonChannels()</a>. </td>
</tr>
</table>
-<a name="a13" doxytag="message.h::cstatus"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="cstatus_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29"></a><!-- doxytag: member="message.h::cstatus" ref="cstatus_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29" args="(userrec *user, chanrec *chan)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int cstatus </td>
+ <td class="md" nowrap valign="top">int cstatus </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -431,34 +424,33 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00495">Server::Commo
</td>
</tr>
</table>
-<a name="a14" doxytag="message.h::has_channel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29"></a><!-- doxytag: member="message.h::has_channel" ref="has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29" args="(userrec *u, chanrec *c)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int has_channel </td>
+ <td class="md" nowrap valign="top">int has_channel </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> <em>u</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>c</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -468,37 +460,36 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00495">Server::Commo
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00552">Server::IsOnChannel()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00570">Server::IsOnChannel()</a>. </td>
</tr>
</table>
-<a name="a7" doxytag="message.h::hasumode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="hasumode_28userrec_20_2Auser_2C_20char_20mode_29"></a><!-- doxytag: member="message.h::hasumode" ref="hasumode_28userrec_20_2Auser_2C_20char_20mode_29" args="(userrec *user, char mode)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool hasumode </td>
+ <td class="md" nowrap valign="top">bool hasumode </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>mode</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -509,25 +500,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00552">Server::IsOnC
</td>
</tr>
</table>
-<a name="a10" doxytag="message.h::isident"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="isident_28const_20char_20_2An_29"></a><!-- doxytag: member="message.h::isident" ref="isident_28const_20char_20_2An_29" args="(const char *n)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int isident </td>
+ <td class="md" nowrap valign="top">int isident </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>n</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -538,25 +528,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00552">Server::IsOnC
</td>
</tr>
</table>
-<a name="a11" doxytag="message.h::isnick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="isnick_28const_20char_20_2An_29"></a><!-- doxytag: member="message.h::isnick" ref="isnick_28const_20char_20_2An_29" args="(const char *n)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int isnick </td>
+ <td class="md" nowrap valign="top">int isnick </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>n</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -566,28 +555,27 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00552">Server::IsOnC
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00527">Server::IsNick()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00545">Server::IsNick()</a>. </td>
</tr>
</table>
-<a name="a4" doxytag="message.h::NonBlocking"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="NonBlocking_28int_20s_29"></a><!-- doxytag: member="message.h::NonBlocking" ref="NonBlocking_28int_20s_29" args="(int s)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void NonBlocking </td>
+ <td class="md" nowrap valign="top">void NonBlocking </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">int&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>s</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -598,34 +586,33 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00527">Server::IsNic
</td>
</tr>
</table>
-<a name="a17" doxytag="message.h::send_network_quit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="send_5Fnetwork_5Fquit_28const_20char_20_2Anick_2C_20const_20char_20_2Areason_29"></a><!-- doxytag: member="message.h::send_network_quit" ref="send_5Fnetwork_5Fquit_28const_20char_20_2Anick_2C_20const_20char_20_2Areason_29" args="(const char *nick, const char *reason)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void send_network_quit </td>
+ <td class="md" nowrap valign="top">void send_network_quit </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname" nowrap> <em>nick</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -636,25 +623,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00527">Server::IsNic
</td>
</tr>
</table>
-<a name="a15" doxytag="message.h::TidyBan"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="TidyBan_28char_20_2Aban_29"></a><!-- doxytag: member="message.h::TidyBan" ref="TidyBan_28char_20_2Aban_29" args="(char *ban)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void TidyBan </td>
+ <td class="md" nowrap valign="top">void TidyBan </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ban</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -665,25 +651,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00527">Server::IsNic
</td>
</tr>
</table>
-<a name="a2" doxytag="message.h::tidystring"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="tidystring_28char_20_2Astr_29"></a><!-- doxytag: member="message.h::tidystring" ref="tidystring_28char_20_2Astr_29" args="(char *str)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void tidystring </td>
+ <td class="md" nowrap valign="top">void tidystring </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>str</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -694,9 +679,8 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00527">Server::IsNic
</td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:51 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/message_8h__dep__incl.gif b/docs/module-doc/message_8h__dep__incl.gif
index 090bc0307..af40a91ec 100644
--- a/docs/module-doc/message_8h__dep__incl.gif
+++ b/docs/module-doc/message_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/message_8h__dep__incl.map b/docs/module-doc/message_8h__dep__incl.map
new file mode 100644
index 000000000..e26cc9746
--- /dev/null
+++ b/docs/module-doc/message_8h__dep__incl.map
@@ -0,0 +1,3 @@
+base referer
+rect $channels_8cpp-source.html 144,7 243,34
+rect $modules_8cpp-source.html 144,58 243,84
diff --git a/docs/module-doc/message_8h__dep__incl.md5 b/docs/module-doc/message_8h__dep__incl.md5
new file mode 100644
index 000000000..ea427afd1
--- /dev/null
+++ b/docs/module-doc/message_8h__dep__incl.md5
@@ -0,0 +1 @@
+5798528055639d3c9fa4c0dd420993b1 \ No newline at end of file
diff --git a/docs/module-doc/message_8h__incl.gif b/docs/module-doc/message_8h__incl.gif
index c60428fab..288c5cf3f 100644
--- a/docs/module-doc/message_8h__incl.gif
+++ b/docs/module-doc/message_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/message_8h__incl.map b/docs/module-doc/message_8h__incl.map
new file mode 100644
index 000000000..384780910
--- /dev/null
+++ b/docs/module-doc/message_8h__incl.map
@@ -0,0 +1,4 @@
+base referer
+rect $users_8h-source.html 148,260 212,287
+rect $channels_8h-source.html 272,210 357,236
+rect $connection_8h-source.html 265,362 364,388
diff --git a/docs/module-doc/message_8h__incl.md5 b/docs/module-doc/message_8h__incl.md5
new file mode 100644
index 000000000..2224be875
--- /dev/null
+++ b/docs/module-doc/message_8h__incl.md5
@@ -0,0 +1 @@
+7aeb3a1884c55b8e203a25501370a382 \ No newline at end of file
diff --git a/docs/module-doc/mode_8h-source.html b/docs/module-doc/mode_8h-source.html
index 7c422c413..2d980d16b 100644
--- a/docs/module-doc/mode_8h-source.html
+++ b/docs/module-doc/mode_8h-source.html
@@ -1,61 +1,62 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: mode.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>mode.h</h1><a href="mode_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#ifndef __MODE_H</span>
-00018 <span class="preprocessor"></span><span class="preprocessor">#define __MODE_H</span>
-00019 <span class="preprocessor"></span>
-00020 <span class="comment">// include the common header files</span>
-00021
-00022 <span class="preprocessor">#include &lt;typeinfo&gt;</span>
-00023 <span class="preprocessor">#include &lt;iostream&gt;</span>
-00024 <span class="preprocessor">#include &lt;string&gt;</span>
-00025 <span class="preprocessor">#include &lt;deque&gt;</span>
-00026 <span class="preprocessor">#include &lt;sstream&gt;</span>
-00027 <span class="preprocessor">#include &lt;vector&gt;</span>
-00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
-00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
-00030
-00031 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#a0">give_ops</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
-00032 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#a1">give_hops</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
-00033 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#a2">give_voice</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
-00034 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#a3">take_ops</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
-00035 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#a4">take_hops</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
-00036 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#a5">take_voice</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
-00037 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#a6">add_ban</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
-00038 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#a7">take_ban</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
-00039 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#a8">process_modes</a>(<span class="keywordtype">char</span> **parameters,<a class="code" href="classuserrec.html">userrec</a>* user,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status, <span class="keywordtype">int</span> pcnt, <span class="keywordtype">bool</span> servermode, <span class="keywordtype">bool</span> silent, <span class="keywordtype">bool</span> local);
-00040 <span class="keywordtype">bool</span> <a class="code" href="mode_8h.html#a9">allowed_umode</a>(<span class="keywordtype">char</span> umode, <span class="keywordtype">char</span>* sourcemodes,<span class="keywordtype">bool</span> adding);
-00041 <span class="keywordtype">bool</span> <a class="code" href="mode_8h.html#a10">process_module_umode</a>(<span class="keywordtype">char</span> umode, <a class="code" href="classuserrec.html">userrec</a>* source, <span class="keywordtype">void</span>* dest, <span class="keywordtype">bool</span> adding);
-00042 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#a11">handle_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00043 <span class="keywordtype">void</span> <a class="code" href="modules_8h.html#a36">server_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00044 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#a13">merge_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt);
-00045 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#a14">merge_mode2</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a>* user);
-00046
-00047
-00048 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:19 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>mode.h</h1><a href="mode_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef __MODE_H</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __MODE_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="comment">// include the common header files</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;typeinfo&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;iostream&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;deque&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#give_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">give_ops</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
+<a name="l00032"></a>00032 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#give_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">give_hops</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
+<a name="l00033"></a>00033 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#give_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">give_voice</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
+<a name="l00034"></a>00034 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#take_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">take_ops</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
+<a name="l00035"></a>00035 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#take_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">take_hops</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
+<a name="l00036"></a>00036 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#take_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">take_voice</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
+<a name="l00037"></a>00037 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#add_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">add_ban</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
+<a name="l00038"></a>00038 <span class="keywordtype">char</span>* <a class="code" href="mode_8h.html#take_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">take_ban</a>(<a class="code" href="classuserrec.html">userrec</a> *user,<span class="keywordtype">char</span> *dest,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status);
+<a name="l00039"></a>00039 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#process_5Fmodes_28char_20_2A_2Aparameters_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20int_20status_2C_20int_20pcnt_2C_20bool_20servermode_2C_20bool_20silent_2C_20bool_20local_29">process_modes</a>(<span class="keywordtype">char</span> **parameters,<a class="code" href="classuserrec.html">userrec</a>* user,<a class="code" href="classchanrec.html">chanrec</a> *chan,<span class="keywordtype">int</span> status, <span class="keywordtype">int</span> pcnt, <span class="keywordtype">bool</span> servermode, <span class="keywordtype">bool</span> silent, <span class="keywordtype">bool</span> local);
+<a name="l00040"></a>00040 <span class="keywordtype">bool</span> <a class="code" href="mode_8h.html#allowed_5Fumode_28char_20umode_2C_20char_20_2Asourcemodes_2C_20bool_20adding_29">allowed_umode</a>(<span class="keywordtype">char</span> umode, <span class="keywordtype">char</span>* sourcemodes,<span class="keywordtype">bool</span> adding);
+<a name="l00041"></a>00041 <span class="keywordtype">bool</span> <a class="code" href="mode_8h.html#process_5Fmodule_5Fumode_28char_20umode_2C_20userrec_20_2Asource_2C_20void_20_2Adest_2C_20bool_20adding_29">process_module_umode</a>(<span class="keywordtype">char</span> umode, <a class="code" href="classuserrec.html">userrec</a>* source, <span class="keywordtype">void</span>* dest, <span class="keywordtype">bool</span> adding);
+<a name="l00042"></a>00042 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#handle_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00043"></a>00043 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">server_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00044"></a>00044 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#merge_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_29">merge_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt);
+<a name="l00045"></a>00045 <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#merge_5Fmode_32_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">merge_mode2</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00046"></a>00046
+<a name="l00047"></a>00047
+<a name="l00048"></a>00048 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/mode_8h.html b/docs/module-doc/mode_8h.html
index d8d40dfdf..5d453ab00 100644
--- a/docs/module-doc/mode_8h.html
+++ b/docs/module-doc/mode_8h.html
@@ -1,109 +1,111 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: mode.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
<h1>mode.h File Reference</h1><code>#include &lt;typeinfo&gt;</code><br>
<code>#include &lt;iostream&gt;</code><br>
<code>#include &lt;string&gt;</code><br>
<code>#include &lt;deque&gt;</code><br>
<code>#include &lt;sstream&gt;</code><br>
<code>#include &lt;vector&gt;</code><br>
-<code>#include "<a class="el" href="users_8h-source.html">users.h</a>"</code><br>
-<code>#include "<a class="el" href="channels_8h-source.html">channels.h</a>"</code><br>
+<code>#include &quot;<a class="el" href="users_8h-source.html">users.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="channels_8h-source.html">channels.h</a>&quot;</code><br>
<p>
-Include dependency graph for mode.h:<p><center><img src="mode_8h__incl.gif" border="0" usemap="#mode.h_map" alt="Include dependency graph"></center>
+Include dependency graph for mode.h:<p><center><img src="mode_8h__incl.gif" border="0" usemap="#mode.h_map" alt=""></center>
<map name="mode.h_map">
-<area href="users_8h.html" shape="rect" coords="248,157,312,184" alt="">
-<area href="channels_8h.html" shape="rect" coords="298,82,384,109" alt="">
+<area href="users_8h-source.html" shape="rect" coords="127,260,191,287" alt="">
+<area href="channels_8h-source.html" shape="rect" coords="251,210,336,236" alt="">
+<area href="connection_8h-source.html" shape="rect" coords="244,362,343,388" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="mode_8h__dep__incl.gif" border="0" usemap="#mode.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="mode_8h__dep__incl.gif" border="0" usemap="#mode.hdep_map" alt=""></center>
<map name="mode.hdep_map">
-<area href="channels_8cpp.html" shape="rect" coords="7,7,106,34" alt="">
-<area href="modules_8cpp.html" shape="rect" coords="130,7,229,34" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="123,7,221,34" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="123,58,221,84" alt="">
</map>
<p>
-<a href="mode_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="mode_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a0">give_ops</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#give_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">give_ops</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a1">give_hops</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#give_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">give_hops</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a2">give_voice</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#give_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">give_voice</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a3">take_ops</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#take_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">take_ops</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a4">take_hops</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#take_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">take_hops</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a5">take_voice</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#take_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">take_voice</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a6">add_ban</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#add_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">add_ban</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a7">take_ban</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#take_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29">take_ban</a> (<a class="el" href="classuserrec.html">userrec</a> *user, char *dest, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a8">process_modes</a> (char **parameters, <a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status, int pcnt, bool servermode, bool silent, bool local)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#process_5Fmodes_28char_20_2A_2Aparameters_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20int_20status_2C_20int_20pcnt_2C_20bool_20servermode_2C_20bool_20silent_2C_20bool_20local_29">process_modes</a> (char **parameters, <a class="el" href="classuserrec.html">userrec</a> *user, <a class="el" href="classchanrec.html">chanrec</a> *chan, int status, int pcnt, bool servermode, bool silent, bool local)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a9">allowed_umode</a> (char umode, char *sourcemodes, bool adding)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#allowed_5Fumode_28char_20umode_2C_20char_20_2Asourcemodes_2C_20bool_20adding_29">allowed_umode</a> (char umode, char *sourcemodes, bool adding)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a10">process_module_umode</a> (char umode, <a class="el" href="classuserrec.html">userrec</a> *source, void *dest, bool adding)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#process_5Fmodule_5Fumode_28char_20umode_2C_20userrec_20_2Asource_2C_20void_20_2Adest_2C_20bool_20adding_29">process_module_umode</a> (char umode, <a class="el" href="classuserrec.html">userrec</a> *source, void *dest, bool adding)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a11">handle_mode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#handle_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">handle_mode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a12">server_mode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">server_mode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a13">merge_mode</a> (char **parameters, int pcnt)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#merge_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_29">merge_mode</a> (char **parameters, int pcnt)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="mode_8h.html#a14">merge_mode2</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="mode_8h.html#merge_5Fmode_32_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">merge_mode2</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
</table>
<hr><h2>Function Documentation</h2>
-<a name="a6" doxytag="mode.h::add_ban"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="add_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29"></a><!-- doxytag: member="mode.h::add_ban" ref="add_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29" args="(userrec *user, char *dest, chanrec *chan, int status)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* add_ban </td>
+ <td class="md" nowrap valign="top">char* add_ban </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -114,40 +116,39 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a9" doxytag="mode.h::allowed_umode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="allowed_5Fumode_28char_20umode_2C_20char_20_2Asourcemodes_2C_20bool_20adding_29"></a><!-- doxytag: member="mode.h::allowed_umode" ref="allowed_5Fumode_28char_20umode_2C_20char_20_2Asourcemodes_2C_20bool_20adding_29" args="(char umode, char *sourcemodes, bool adding)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool allowed_umode </td>
+ <td class="md" nowrap valign="top">bool allowed_umode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>umode</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>sourcemodes</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>adding</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -158,46 +159,45 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a1" doxytag="mode.h::give_hops"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="give_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29"></a><!-- doxytag: member="mode.h::give_hops" ref="give_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29" args="(userrec *user, char *dest, chanrec *chan, int status)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* give_hops </td>
+ <td class="md" nowrap valign="top">char* give_hops </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -208,46 +208,45 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a0" doxytag="mode.h::give_ops"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="give_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29"></a><!-- doxytag: member="mode.h::give_ops" ref="give_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29" args="(userrec *user, char *dest, chanrec *chan, int status)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* give_ops </td>
+ <td class="md" nowrap valign="top">char* give_ops </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -258,46 +257,45 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a2" doxytag="mode.h::give_voice"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="give_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29"></a><!-- doxytag: member="mode.h::give_voice" ref="give_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29" args="(userrec *user, char *dest, chanrec *chan, int status)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* give_voice </td>
+ <td class="md" nowrap valign="top">char* give_voice </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -308,40 +306,39 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a11" doxytag="mode.h::handle_mode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="handle_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="mode.h::handle_mode" ref="handle_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void handle_mode </td>
+ <td class="md" nowrap valign="top">void handle_mode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -352,34 +349,33 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a13" doxytag="mode.h::merge_mode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="merge_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_29"></a><!-- doxytag: member="mode.h::merge_mode" ref="merge_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_29" args="(char **parameters, int pcnt)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void merge_mode </td>
+ <td class="md" nowrap valign="top">void merge_mode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -390,40 +386,39 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a14" doxytag="mode.h::merge_mode2"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="merge_5Fmode_32_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="mode.h::merge_mode2" ref="merge_5Fmode_32_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void merge_mode2 </td>
+ <td class="md" nowrap valign="top">void merge_mode2 </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -434,70 +429,69 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a8" doxytag="mode.h::process_modes"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="process_5Fmodes_28char_20_2A_2Aparameters_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20int_20status_2C_20int_20pcnt_2C_20bool_20servermode_2C_20bool_20silent_2C_20bool_20local_29"></a><!-- doxytag: member="mode.h::process_modes" ref="process_5Fmodes_28char_20_2A_2Aparameters_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20int_20status_2C_20int_20pcnt_2C_20bool_20servermode_2C_20bool_20silent_2C_20bool_20local_29" args="(char **parameters, userrec *user, chanrec *chan, int status, int pcnt, bool servermode, bool silent, bool local)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void process_modes </td>
+ <td class="md" nowrap valign="top">void process_modes </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>servermode</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>silent</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>local</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -508,46 +502,45 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a10" doxytag="mode.h::process_module_umode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="process_5Fmodule_5Fumode_28char_20umode_2C_20userrec_20_2Asource_2C_20void_20_2Adest_2C_20bool_20adding_29"></a><!-- doxytag: member="mode.h::process_module_umode" ref="process_5Fmodule_5Fumode_28char_20umode_2C_20userrec_20_2Asource_2C_20void_20_2Adest_2C_20bool_20adding_29" args="(char umode, userrec *source, void *dest, bool adding)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool process_module_umode </td>
+ <td class="md" nowrap valign="top">bool process_module_umode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>umode</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>void *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>adding</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -558,40 +551,39 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a12" doxytag="mode.h::server_mode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="mode.h::server_mode" ref="server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void server_mode </td>
+ <td class="md" nowrap valign="top">void server_mode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -599,49 +591,50 @@ This graph shows which files directly or indirectly include this file:<p><center
<td>
<p>
- </td>
+
+<p>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00462">Server::SendMode()</a>. </td>
</tr>
</table>
-<a name="a7" doxytag="mode.h::take_ban"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="take_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29"></a><!-- doxytag: member="mode.h::take_ban" ref="take_5Fban_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29" args="(userrec *user, char *dest, chanrec *chan, int status)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* take_ban </td>
+ <td class="md" nowrap valign="top">char* take_ban </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -652,46 +645,45 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a4" doxytag="mode.h::take_hops"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="take_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29"></a><!-- doxytag: member="mode.h::take_hops" ref="take_5Fhops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29" args="(userrec *user, char *dest, chanrec *chan, int status)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* take_hops </td>
+ <td class="md" nowrap valign="top">char* take_hops </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -702,46 +694,45 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a3" doxytag="mode.h::take_ops"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="take_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29"></a><!-- doxytag: member="mode.h::take_ops" ref="take_5Fops_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29" args="(userrec *user, char *dest, chanrec *chan, int status)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* take_ops </td>
+ <td class="md" nowrap valign="top">char* take_ops </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -752,46 +743,45 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<a name="a5" doxytag="mode.h::take_voice"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="take_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29"></a><!-- doxytag: member="mode.h::take_voice" ref="take_5Fvoice_28userrec_20_2Auser_2C_20char_20_2Adest_2C_20chanrec_20_2Achan_2C_20int_20status_29" args="(userrec *user, char *dest, chanrec *chan, int status)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* take_voice </td>
+ <td class="md" nowrap valign="top">char* take_voice </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> <em>user</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>dest</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classchanrec.html">chanrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>chan</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>status</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -802,9 +792,8 @@ This graph shows which files directly or indirectly include this file:<p><center
</td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:53 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/mode_8h__dep__incl.gif b/docs/module-doc/mode_8h__dep__incl.gif
index 9f13f2495..c6b18b5cb 100644
--- a/docs/module-doc/mode_8h__dep__incl.gif
+++ b/docs/module-doc/mode_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/mode_8h__dep__incl.map b/docs/module-doc/mode_8h__dep__incl.map
new file mode 100644
index 000000000..5d61f5f98
--- /dev/null
+++ b/docs/module-doc/mode_8h__dep__incl.map
@@ -0,0 +1,3 @@
+base referer
+rect $channels_8cpp-source.html 123,7 221,34
+rect $modules_8cpp-source.html 123,58 221,84
diff --git a/docs/module-doc/mode_8h__dep__incl.md5 b/docs/module-doc/mode_8h__dep__incl.md5
new file mode 100644
index 000000000..e98ddad91
--- /dev/null
+++ b/docs/module-doc/mode_8h__dep__incl.md5
@@ -0,0 +1 @@
+fd59f64e403f74c533d4d585052df75c \ No newline at end of file
diff --git a/docs/module-doc/mode_8h__incl.gif b/docs/module-doc/mode_8h__incl.gif
index 8fb54ecf1..e9c7fb03a 100644
--- a/docs/module-doc/mode_8h__incl.gif
+++ b/docs/module-doc/mode_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/mode_8h__incl.map b/docs/module-doc/mode_8h__incl.map
new file mode 100644
index 000000000..c4bd501fa
--- /dev/null
+++ b/docs/module-doc/mode_8h__incl.map
@@ -0,0 +1,4 @@
+base referer
+rect $users_8h-source.html 127,260 191,287
+rect $channels_8h-source.html 251,210 336,236
+rect $connection_8h-source.html 244,362 343,388
diff --git a/docs/module-doc/mode_8h__incl.md5 b/docs/module-doc/mode_8h__incl.md5
new file mode 100644
index 000000000..a5d5a9523
--- /dev/null
+++ b/docs/module-doc/mode_8h__incl.md5
@@ -0,0 +1 @@
+e60a56359f355b23ad1b5e5f66fd3fe7 \ No newline at end of file
diff --git a/docs/module-doc/modules_8cpp-source.html b/docs/module-doc/modules_8cpp-source.html
index 51b7ddda5..bfedc2754 100644
--- a/docs/module-doc/modules_8cpp-source.html
+++ b/docs/module-doc/modules_8cpp-source.html
@@ -1,1034 +1,1010 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: modules.cpp Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>modules.cpp</h1><a href="modules_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
-00018
-00019 <span class="preprocessor">#include "inspircd_config.h"</span>
-00020 <span class="preprocessor">#include "inspircd.h"</span>
-00021 <span class="preprocessor">#include "inspircd_io.h"</span>
-00022 <span class="preprocessor">#include "inspircd_util.h"</span>
-00023 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
-00024 <span class="preprocessor">#include &lt;sys/errno.h&gt;</span>
-00025
-00026 <span class="preprocessor">#ifdef USE_KQUEUE</span>
-00027 <span class="preprocessor"></span><span class="preprocessor">#include &lt;sys/types.h&gt;</span>
-00028 <span class="preprocessor">#include &lt;sys/event.h&gt;</span>
-00029 <span class="preprocessor">#include &lt;sys/time.h&gt;</span>
-00030 <span class="preprocessor">#endif</span>
-00031 <span class="preprocessor"></span>
-00032 <span class="preprocessor">#ifdef USE_EPOLL</span>
-00033 <span class="preprocessor"></span><span class="preprocessor">#include &lt;sys/epoll.h&gt;</span>
-00034 <span class="preprocessor">#endif</span>
-00035 <span class="preprocessor"></span>
-00036 <span class="preprocessor">#include &lt;time.h&gt;</span>
-00037 <span class="preprocessor">#include &lt;string&gt;</span>
-00038 <span class="preprocessor">#ifdef GCC3</span>
-00039 <span class="preprocessor"></span><span class="preprocessor">#include &lt;ext/hash_map&gt;</span>
-00040 <span class="preprocessor">#else</span>
-00041 <span class="preprocessor"></span><span class="preprocessor">#include &lt;hash_map&gt;</span>
-00042 <span class="preprocessor">#endif</span>
-00043 <span class="preprocessor"></span><span class="preprocessor">#include &lt;map&gt;</span>
-00044 <span class="preprocessor">#include &lt;sstream&gt;</span>
-00045 <span class="preprocessor">#include &lt;vector&gt;</span>
-00046 <span class="preprocessor">#include &lt;deque&gt;</span>
-00047 <span class="preprocessor">#include "<a class="code" href="connection_8h.html">connection.h</a>"</span>
-00048 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
-00049 <span class="preprocessor">#include "<a class="code" href="servers_8h.html">servers.h</a>"</span>
-00050 <span class="preprocessor">#include "<a class="code" href="ctables_8h.html">ctables.h</a>"</span>
-00051 <span class="preprocessor">#include "globals.h"</span>
-00052 <span class="preprocessor">#include "<a class="code" href="modules_8h.html">modules.h</a>"</span>
-00053 <span class="preprocessor">#include "dynamic.h"</span>
-00054 <span class="preprocessor">#include "wildcard.h"</span>
-00055 <span class="preprocessor">#include "<a class="code" href="message_8h.html">message.h</a>"</span>
-00056 <span class="preprocessor">#include "<a class="code" href="mode_8h.html">mode.h</a>"</span>
-00057 <span class="preprocessor">#include "<a class="code" href="xline_8h.html">xline.h</a>"</span>
-00058 <span class="preprocessor">#include "<a class="code" href="commands_8h.html">commands.h</a>"</span>
-00059 <span class="preprocessor">#include "inspstring.h"</span>
-00060 <span class="preprocessor">#include "helperfuncs.h"</span>
-00061 <span class="preprocessor">#include "<a class="code" href="hashcomp_8h.html">hashcomp.h</a>"</span>
-00062
-00063 <span class="preprocessor">#ifdef USE_KQUEUE</span>
-00064 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">int</span> kq;
-00065 <span class="preprocessor">#endif</span>
-00066 <span class="preprocessor"></span>
-00067 <span class="preprocessor">#ifdef USE_EPOLL</span>
-00068 <span class="preprocessor"></span><span class="keywordtype">int</span> ep;
-00069 <span class="preprocessor">#endif</span>
-00070 <span class="preprocessor"></span>
-00071 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#a1">MODCOUNT</a>;
-<a name="l00072"></a><a class="code" href="modules_8cpp.html#a1">00072</a> <span class="keyword">extern</span> std::vector&lt;Module*&gt; <a class="code" href="channels_8cpp.html#a2">modules</a>;
-<a name="l00073"></a><a class="code" href="modules_8cpp.html#a2">00073</a> <span class="keyword">extern</span> std::vector&lt;ircd_module*&gt; <a class="code" href="channels_8cpp.html#a3">factory</a>;
-00074
-<a name="l00075"></a><a class="code" href="modules_8cpp.html#a3">00075</a> <span class="keyword">extern</span> std::vector&lt;std::string&gt; <a class="code" href="modules_8cpp.html#a3">include_stack</a>;
-00076
-<a name="l00077"></a><a class="code" href="modules_8cpp.html#a4">00077</a> <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#a36">TIME</a>;
-00078
-<a name="l00079"></a><a class="code" href="modules_8cpp.html#a5">00079</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a4">LogLevel</a>;
-<a name="l00080"></a><a class="code" href="modules_8cpp.html#a6">00080</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a5">ServerName</a>[MAXBUF];
-<a name="l00081"></a><a class="code" href="modules_8cpp.html#a7">00081</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a6">Network</a>[MAXBUF];
-<a name="l00082"></a><a class="code" href="modules_8cpp.html#a8">00082</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a7">ServerDesc</a>[MAXBUF];
-<a name="l00083"></a><a class="code" href="modules_8cpp.html#a9">00083</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a8">AdminName</a>[MAXBUF];
-<a name="l00084"></a><a class="code" href="modules_8cpp.html#a10">00084</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a9">AdminEmail</a>[MAXBUF];
-<a name="l00085"></a><a class="code" href="modules_8cpp.html#a11">00085</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a10">AdminNick</a>[MAXBUF];
-<a name="l00086"></a><a class="code" href="modules_8cpp.html#a12">00086</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a11">diepass</a>[MAXBUF];
-<a name="l00087"></a><a class="code" href="modules_8cpp.html#a13">00087</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a12">restartpass</a>[MAXBUF];
-<a name="l00088"></a><a class="code" href="modules_8cpp.html#a14">00088</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a13">motd</a>[MAXBUF];
-<a name="l00089"></a><a class="code" href="modules_8cpp.html#a15">00089</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a14">rules</a>[MAXBUF];
-<a name="l00090"></a><a class="code" href="modules_8cpp.html#a16">00090</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a15">list</a>[MAXBUF];
-<a name="l00091"></a><a class="code" href="modules_8cpp.html#a17">00091</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a16">PrefixQuit</a>[MAXBUF];
-<a name="l00092"></a><a class="code" href="modules_8cpp.html#a18">00092</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a17">DieValue</a>[MAXBUF];
-00093
-<a name="l00094"></a><a class="code" href="modules_8cpp.html#a19">00094</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a18">debugging</a>;
-<a name="l00095"></a><a class="code" href="modules_8cpp.html#a20">00095</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a19">WHOWAS_STALE</a>;
-<a name="l00096"></a><a class="code" href="modules_8cpp.html#a21">00096</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a20">WHOWAS_MAX</a>;
-<a name="l00097"></a><a class="code" href="modules_8cpp.html#a22">00097</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a21">DieDelay</a>;
-<a name="l00098"></a><a class="code" href="modules_8cpp.html#a23">00098</a> <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#a22">startup_time</a>;
-<a name="l00099"></a><a class="code" href="modules_8cpp.html#a24">00099</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a23">NetBufferSize</a>;
-<a name="l00100"></a><a class="code" href="modules_8cpp.html#a25">00100</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a24">MaxWhoResults</a>;
-<a name="l00101"></a><a class="code" href="modules_8cpp.html#a26">00101</a> <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#a25">nb_start</a>;
-00102
-<a name="l00103"></a><a class="code" href="modules_8cpp.html#a27">00103</a> <span class="keyword">extern</span> std::vector&lt;std::string&gt; <a class="code" href="channels_8cpp.html#a26">module_names</a>;
-00104
-<a name="l00105"></a><a class="code" href="modules_8cpp.html#a28">00105</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a27">boundPortCount</a>;
-<a name="l00106"></a><a class="code" href="modules_8cpp.html#a29">00106</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a28">portCount</a>;
-<a name="l00107"></a><a class="code" href="modules_8cpp.html#a30">00107</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a29">SERVERportCount</a>;
-<a name="l00108"></a><a class="code" href="modules_8cpp.html#a31">00108</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a30">ports</a>[MAXSOCKS];
-<a name="l00109"></a><a class="code" href="modules_8cpp.html#a32">00109</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#a31">defaultRoute</a>;
-00110
-<a name="l00111"></a><a class="code" href="modules_8cpp.html#a33">00111</a> <span class="keyword">extern</span> std::vector&lt;long&gt; <a class="code" href="channels_8cpp.html#a32">auth_cookies</a>;
-<a name="l00112"></a><a class="code" href="modules_8cpp.html#a34">00112</a> <span class="keyword">extern</span> std::stringstream <a class="code" href="channels_8cpp.html#a33">config_f</a>;
-00113
-<a name="l00114"></a><a class="code" href="modules_8cpp.html#a35">00114</a> <span class="keyword">extern</span> <a class="code" href="classserverrec.html">serverrec</a>* <a class="code" href="channels_8cpp.html#a34">me</a>[32];
-00115
-<a name="l00116"></a><a class="code" href="modules_8cpp.html#a36">00116</a> <span class="keyword">extern</span> FILE *<a class="code" href="channels_8cpp.html#a35">log_file</a>;
-00117
-<a name="l00118"></a><a class="code" href="modules_8cpp.html#a37">00118</a> <span class="keyword">extern</span> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="modules_8cpp.html#a37">fd_ref_table</a>[65536];
-00119
-<a name="l00120"></a><a class="code" href="modules_8cpp.html#a38">00120</a> <span class="keyword">typedef</span> nspace::hash_map&lt;std::string, userrec*, nspace::hash&lt;string&gt;, <a class="code" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="code" href="modules_8cpp.html#a38">user_hash</a>;
-<a name="l00121"></a><a class="code" href="modules_8cpp.html#a39">00121</a> <span class="keyword">typedef</span> nspace::hash_map&lt;std::string, chanrec*, nspace::hash&lt;string&gt;, <a class="code" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="code" href="modules_8cpp.html#a39">chan_hash</a>;
-<a name="l00122"></a><a class="code" href="modules_8cpp.html#a40">00122</a> <span class="keyword">typedef</span> nspace::hash_map&lt;in_addr,string*, nspace::hash&lt;in_addr&gt;, <a class="code" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a>&gt; <a class="code" href="modules_8cpp.html#a40">address_cache</a>;
-<a name="l00123"></a><a class="code" href="modules_8cpp.html#a41">00123</a> <span class="keyword">typedef</span> nspace::hash_map&lt;std::string, WhoWasUser*, nspace::hash&lt;string&gt;, <a class="code" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="code" href="modules_8cpp.html#a41">whowas_hash</a>;
-<a name="l00124"></a><a class="code" href="modules_8cpp.html#a42">00124</a> <span class="keyword">typedef</span> std::deque&lt;command_t&gt; <a class="code" href="modules_8cpp.html#a42">command_table</a>;
-00125
-00126
-<a name="l00127"></a><a class="code" href="modules_8cpp.html#a43">00127</a> <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#a38">user_hash</a> <a class="code" href="modules_8cpp.html#a43">clientlist</a>;
-<a name="l00128"></a><a class="code" href="modules_8cpp.html#a44">00128</a> <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#a39">chan_hash</a> <a class="code" href="modules_8cpp.html#a44">chanlist</a>;
-<a name="l00129"></a><a class="code" href="modules_8cpp.html#a45">00129</a> <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#a41">whowas_hash</a> <a class="code" href="modules_8cpp.html#a45">whowas</a>;
-<a name="l00130"></a><a class="code" href="modules_8cpp.html#a46">00130</a> <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#a42">command_table</a> <a class="code" href="modules_8cpp.html#a46">cmdlist</a>;
-<a name="l00131"></a><a class="code" href="modules_8cpp.html#a47">00131</a> <span class="keyword">extern</span> <a class="code" href="modules_8h.html#a31">file_cache</a> <a class="code" href="modules_8cpp.html#a47">MOTD</a>;
-<a name="l00132"></a><a class="code" href="modules_8cpp.html#a48">00132</a> <span class="keyword">extern</span> <a class="code" href="modules_8h.html#a31">file_cache</a> <a class="code" href="modules_8cpp.html#a48">RULES</a>;
-<a name="l00133"></a><a class="code" href="modules_8cpp.html#a49">00133</a> <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#a40">address_cache</a> <a class="code" href="modules_8cpp.html#a49">IP</a>;
-00134
-00135
-00136 <span class="comment">// class type for holding an extended mode character - internal to core</span>
-00137
-<a name="l00138"></a><a class="code" href="classExtMode.html">00138</a> <span class="keyword">class </span><a class="code" href="classExtMode.html">ExtMode</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00139 {
-00140 <span class="keyword">public</span>:
-<a name="l00141"></a><a class="code" href="classExtMode.html#o0">00141</a> <span class="keywordtype">char</span> <a class="code" href="classExtMode.html#o0">modechar</a>;
-<a name="l00142"></a><a class="code" href="classExtMode.html#o1">00142</a> <span class="keywordtype">int</span> <a class="code" href="classExtMode.html#o1">type</a>;
-<a name="l00143"></a><a class="code" href="classExtMode.html#o2">00143</a> <span class="keywordtype">int</span> <a class="code" href="classExtMode.html#o2">params_when_on</a>;
-<a name="l00144"></a><a class="code" href="classExtMode.html#o3">00144</a> <span class="keywordtype">int</span> <a class="code" href="classExtMode.html#o3">params_when_off</a>;
-<a name="l00145"></a><a class="code" href="classExtMode.html#o4">00145</a> <span class="keywordtype">bool</span> <a class="code" href="classExtMode.html#o4">needsoper</a>;
-<a name="l00146"></a><a class="code" href="classExtMode.html#o5">00146</a> <span class="keywordtype">bool</span> <a class="code" href="channels_8cpp.html#a15">list</a>;
-<a name="l00147"></a><a class="code" href="classExtMode.html#a0">00147</a> <a class="code" href="classExtMode.html#a0">ExtMode</a>(<span class="keywordtype">char</span> mc, <span class="keywordtype">int</span> ty, <span class="keywordtype">bool</span> oper, <span class="keywordtype">int</span> p_on, <span class="keywordtype">int</span> p_off) : <a class="code" href="classExtMode.html#o0">modechar</a>(mc), <a class="code" href="classExtMode.html#o1">type</a>(ty), <a class="code" href="classExtMode.html#o4">needsoper</a>(oper), <a class="code" href="classExtMode.html#o2">params_when_on</a>(p_on), <a class="code" href="classExtMode.html#o3">params_when_off</a>(p_off) { };
-00148 };
-00149
-<a name="l00150"></a><a class="code" href="modules_8cpp.html#a50">00150</a> <span class="keyword">typedef</span> std::vector&lt;ExtMode&gt; <a class="code" href="modules_8cpp.html#a50">ExtModeList</a>;
-<a name="l00151"></a><a class="code" href="modules_8cpp.html#a51">00151</a> <span class="keyword">typedef</span> ExtModeList::iterator <a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a>;
-00152
-00153
-<a name="l00154"></a><a class="code" href="modules_8cpp.html#a52">00154</a> <a class="code" href="modules_8cpp.html#a50">ExtModeList</a> <a class="code" href="modules_8cpp.html#a52">EMode</a>;
-00155
-00156 <span class="comment">// returns true if an extended mode character is in use</span>
-<a name="l00157"></a><a class="code" href="modules_8cpp.html#a53">00157</a> <span class="keywordtype">bool</span> <a class="code" href="modules_8cpp.html#a53">ModeDefined</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
-00158 {
-00159 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00160 {
-00161 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
-00162 {
-00163 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00164 }
-00165 }
-00166 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00167 }
-00168
-<a name="l00169"></a><a class="code" href="modules_8cpp.html#a54">00169</a> <span class="keywordtype">bool</span> <a class="code" href="modules_8cpp.html#a54">ModeIsListMode</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
-00170 {
-00171 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00172 {
-00173 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type) &amp;&amp; (i-&gt;list == <span class="keyword">true</span>))
-00174 {
-00175 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00176 }
-00177 }
-00178 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00179 }
-00180
-<a name="l00181"></a><a class="code" href="modules_8cpp.html#a55">00181</a> <span class="keywordtype">bool</span> <a class="code" href="modules_8cpp.html#a55">ModeDefinedOper</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
-00182 {
-00183 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00184 {
-00185 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type) &amp;&amp; (i-&gt;needsoper == <span class="keyword">true</span>))
-00186 {
-00187 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00188 }
-00189 }
-00190 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00191 }
-00192
-00193 <span class="comment">// returns number of parameters for a custom mode when it is switched on</span>
-<a name="l00194"></a><a class="code" href="modules_8cpp.html#a56">00194</a> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#a56">ModeDefinedOn</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
-00195 {
-00196 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00197 {
-00198 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
-00199 {
-00200 <span class="keywordflow">return</span> i-&gt;params_when_on;
-00201 }
-00202 }
-00203 <span class="keywordflow">return</span> 0;
-00204 }
-00205
-00206 <span class="comment">// returns number of parameters for a custom mode when it is switched on</span>
-<a name="l00207"></a><a class="code" href="modules_8cpp.html#a57">00207</a> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#a57">ModeDefinedOff</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
-00208 {
-00209 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00210 {
-00211 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
-00212 {
-00213 <span class="keywordflow">return</span> i-&gt;params_when_off;
-00214 }
-00215 }
-00216 <span class="keywordflow">return</span> 0;
-00217 }
-00218
-00219 <span class="comment">// returns true if an extended mode character is in use</span>
-<a name="l00220"></a><a class="code" href="modules_8cpp.html#a58">00220</a> <span class="keywordtype">bool</span> <a class="code" href="modules_8cpp.html#a58">DoAddExtendedMode</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_on, <span class="keywordtype">int</span> params_off)
-00221 {
-00222 <span class="keywordflow">if</span> (<a class="code" href="modules_8cpp.html#a53">ModeDefined</a>(modechar,type)) {
-00223 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00224 }
-00225 <a class="code" href="modules_8cpp.html#a52">EMode</a>.push_back(<a class="code" href="classExtMode.html">ExtMode</a>(modechar,type,requires_oper,params_on,params_off));
-00226 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00227 }
-00228
-00229 <span class="comment">// turns a mode into a listmode</span>
-<a name="l00230"></a><a class="code" href="modules_8cpp.html#a59">00230</a> <span class="keywordtype">void</span> <a class="code" href="modules_8cpp.html#a59">ModeMakeList</a>(<span class="keywordtype">char</span> modechar)
-00231 {
-00232 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00233 {
-00234 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == <a class="code" href="modules_8h.html#a5">MT_CHANNEL</a>))
-00235 {
-00236 i-&gt;list = <span class="keyword">true</span>;
-00237 <span class="keywordflow">return</span>;
-00238 }
-00239 }
-00240 <span class="keywordflow">return</span>;
-00241 }
-00242
-00243 <span class="comment">// version is a simple class for holding a modules version number</span>
-00244
-<a name="l00245"></a><a class="code" href="classVersion.html#a0">00245</a> <a class="code" href="classVersion.html#a0">Version::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, <span class="keywordtype">int</span> flags) : Major(major), Minor(minor), Revision(revision), Build(build), Flags(flags) { };
-00246
-00247 <span class="comment">// admin is a simple class for holding a server's administrative info</span>
-00248
-<a name="l00249"></a><a class="code" href="classAdmin.html#a0">00249</a> <a class="code" href="classAdmin.html#a0">Admin::Admin</a>(std::string name, std::string email, std::string nick) : Name(name), Email(email), Nick(nick) { };
-00250
-<a name="l00251"></a><a class="code" href="classRequest.html#a0">00251</a> <a class="code" href="classRequest.html#a0">Request::Request</a>(<span class="keywordtype">char</span>* anydata, <a class="code" href="classModule.html">Module</a>* src, <a class="code" href="classModule.html">Module</a>* dst) : data(anydata), source(src), dest(dst) { };
-00252
-<a name="l00253"></a><a class="code" href="classRequest.html#a1">00253</a> <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#a1">Request::GetData</a>()
-00254 {
-00255 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#p0">data</a>;
-00256 }
-00257
-<a name="l00258"></a><a class="code" href="classRequest.html#a2">00258</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#a2">Request::GetSource</a>()
-00259 {
-00260 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#p1">source</a>;
-00261 }
-00262
-<a name="l00263"></a><a class="code" href="classRequest.html#a3">00263</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#a3">Request::GetDest</a>()
-00264 {
-00265 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#p2">dest</a>;
-00266 }
-00267
-<a name="l00268"></a><a class="code" href="classRequest.html#a4">00268</a> <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#a4">Request::Send</a>()
-00269 {
-00270 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classRequest.html#p2">dest</a>)
-00271 {
-00272 <span class="keywordflow">return</span> <a class="code" href="classRequest.html#p2">dest</a>-&gt;<a class="code" href="classModule.html#a46">OnRequest</a>(<span class="keyword">this</span>);
-00273 }
-00274 <span class="keywordflow">else</span>
-00275 {
-00276 <span class="keywordflow">return</span> NULL;
-00277 }
-00278 }
-00279
-<a name="l00280"></a><a class="code" href="classEvent.html#a0">00280</a> <a class="code" href="classEvent.html#a0">Event::Event</a>(<span class="keywordtype">char</span>* anydata, <a class="code" href="classModule.html">Module</a>* src, std::string eventid) : data(anydata), source(src), id(eventid) { };
-00281
-<a name="l00282"></a><a class="code" href="classEvent.html#a1">00282</a> <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#a1">Event::GetData</a>()
-00283 {
-00284 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#p0">data</a>;
-00285 }
-00286
-<a name="l00287"></a><a class="code" href="classEvent.html#a2">00287</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classEvent.html#a2">Event::GetSource</a>()
-00288 {
-00289 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#p1">source</a>;
-00290 }
-00291
-<a name="l00292"></a><a class="code" href="classEvent.html#a4">00292</a> <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#a4">Event::Send</a>()
-00293 {
-00294 <a class="code" href="modules_8h.html#a24">FOREACH_MOD</a> OnEvent(<span class="keyword">this</span>);
-00295 <span class="keywordflow">return</span> NULL;
-00296 }
-00297
-<a name="l00298"></a><a class="code" href="classEvent.html#a3">00298</a> std::string <a class="code" href="classEvent.html#a3">Event::GetEventID</a>()
-00299 {
-00300 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#p2">id</a>;
-00301 }
-00302
-00303
-00304 <span class="comment">// These declarations define the behavours of the base class Module (which does nothing at all)</span>
-<a name="l00305"></a><a class="code" href="classModule.html#a0">00305</a> <a class="code" href="classModule.html#a0">Module::Module</a>() { }
-<a name="l00306"></a><a class="code" href="classModule.html#a1">00306</a> <a class="code" href="classModule.html#a1">Module::~Module</a>() { }
-<a name="l00307"></a><a class="code" href="classModule.html#a3">00307</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a3">Module::OnUserConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { }
-<a name="l00308"></a><a class="code" href="classModule.html#a4">00308</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a4">Module::OnUserQuit</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { }
-<a name="l00309"></a><a class="code" href="classModule.html#a5">00309</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a5">Module::OnUserDisconnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { }
-<a name="l00310"></a><a class="code" href="classModule.html#a6">00310</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a6">Module::OnUserJoin</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel) { }
-<a name="l00311"></a><a class="code" href="classModule.html#a7">00311</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a7">Module::OnUserPart</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel) { }
-<a name="l00312"></a><a class="code" href="classModule.html#a8">00312</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a8">Module::OnPacketTransmit</a>(std::string &amp;data, std::string serv) { }
-<a name="l00313"></a><a class="code" href="classModule.html#a9">00313</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a9">Module::OnPacketReceive</a>(std::string &amp;data, std::string serv) { }
-<a name="l00314"></a><a class="code" href="classModule.html#a10">00314</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a10">Module::OnRehash</a>() { }
-<a name="l00315"></a><a class="code" href="classModule.html#a11">00315</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a11">Module::OnServerRaw</a>(std::string &amp;raw, <span class="keywordtype">bool</span> inbound, <a class="code" href="classuserrec.html">userrec</a>* user) { }
-<a name="l00316"></a><a class="code" href="classModule.html#a13">00316</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a13">Module::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) { <span class="keywordflow">return</span> 0; }
-<a name="l00317"></a><a class="code" href="classModule.html#a12">00317</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a12">Module::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) { <span class="keywordflow">return</span> <span class="keyword">false</span>; }
-<a name="l00318"></a><a class="code" href="classModule.html#a2">00318</a> <a class="code" href="classVersion.html">Version</a> <a class="code" href="classModule.html#a2">Module::GetVersion</a>() { <span class="keywordflow">return</span> <a class="code" href="classVersion.html">Version</a>(1,0,0,0,<a class="code" href="modules_8h.html#a21">VF_VENDOR</a>); }
-<a name="l00319"></a><a class="code" href="classModule.html#a16">00319</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a16">Module::OnOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
-<a name="l00320"></a><a class="code" href="classModule.html#a17">00320</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a17">Module::OnInfo</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
-<a name="l00321"></a><a class="code" href="classModule.html#a18">00321</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a18">Module::OnWhois</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest) { };
-<a name="l00322"></a><a class="code" href="classModule.html#a19">00322</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a19">Module::OnUserPreInvite</a>(<a class="code" href="classuserrec.html">userrec</a>* source,<a class="code" href="classuserrec.html">userrec</a>* dest,<a class="code" href="classchanrec.html">chanrec</a>* channel) { <span class="keywordflow">return</span> 0; };
-<a name="l00323"></a><a class="code" href="classModule.html#a20">00323</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a20">Module::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 &amp;text) { <span class="keywordflow">return</span> 0; };
-<a name="l00324"></a><a class="code" href="classModule.html#a21">00324</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a21">Module::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 &amp;text) { <span class="keywordflow">return</span> 0; };
-<a name="l00325"></a><a class="code" href="classModule.html#a22">00325</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a22">Module::OnUserPreNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string newnick) { <span class="keywordflow">return</span> 0; };
-<a name="l00326"></a><a class="code" href="classModule.html#a23">00326</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a23">Module::OnUserPostNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string oldnick) { };
-<a name="l00327"></a><a class="code" href="classModule.html#a24">00327</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a24">Module::OnAccessCheck</a>(<a class="code" href="classuserrec.html">userrec</a>* source,<a class="code" href="classuserrec.html">userrec</a>* dest,<a class="code" href="classchanrec.html">chanrec</a>* channel,<span class="keywordtype">int</span> access_type) { <span class="keywordflow">return</span> <a class="code" href="modules_8h.html#a8">ACR_DEFAULT</a>; };
-<a name="l00328"></a><a class="code" href="classModule.html#a25">00328</a> <a class="code" href="modules_8h.html#a32">string_list</a> <a class="code" href="classModule.html#a25">Module::OnUserSync</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { <a class="code" href="modules_8h.html#a32">string_list</a> empty; <span class="keywordflow">return</span> empty; }
-<a name="l00329"></a><a class="code" href="classModule.html#a26">00329</a> <a class="code" href="modules_8h.html#a32">string_list</a> <a class="code" href="classModule.html#a26">Module::OnChannelSync</a>(<a class="code" href="classchanrec.html">chanrec</a>* chan) { <a class="code" href="modules_8h.html#a32">string_list</a> empty; <span class="keywordflow">return</span> empty; }
-<a name="l00330"></a><a class="code" href="classModule.html#a27">00330</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a27">Module::On005Numeric</a>(std::string &amp;output) { };
-<a name="l00331"></a><a class="code" href="classModule.html#a28">00331</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a28">Module::OnKill</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest, std::string reason) { <span class="keywordflow">return</span> 0; };
-<a name="l00332"></a><a class="code" href="classModule.html#a29">00332</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a29">Module::OnLoadModule</a>(<a class="code" href="classModule.html">Module</a>* mod,std::string name) { };
-<a name="l00333"></a><a class="code" href="classModule.html#a30">00333</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a30">Module::OnBackgroundTimer</a>(time_t curtime) { };
-<a name="l00334"></a><a class="code" href="classModule.html#a31">00334</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a31">Module::OnSendList</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel, <span class="keywordtype">char</span> mode) { };
-<a name="l00335"></a><a class="code" href="classModule.html#a32">00335</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a32">Module::OnPreCommand</a>(std::string command, <span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user) { <span class="keywordflow">return</span> 0; };
-<a name="l00336"></a><a class="code" href="classModule.html#a33">00336</a> <span class="keywordtype">bool</span> <a class="code" href="classModule.html#a33">Module::OnCheckReady</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
-<a name="l00337"></a><a class="code" href="classModule.html#a34">00337</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a34">Module::OnUserRegister</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
-<a name="l00338"></a><a class="code" href="classModule.html#a14">00338</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a14">Module::OnUserPreKick</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, std::string reason) { <span class="keywordflow">return</span> 0; };
-<a name="l00339"></a><a class="code" href="classModule.html#a15">00339</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a15">Module::OnUserKick</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, std::string reason) { };
-<a name="l00340"></a><a class="code" href="classModule.html#a35">00340</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a35">Module::OnRawMode</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <span class="keywordtype">char</span> mode, std::string param, <span class="keywordtype">bool</span> adding, <span class="keywordtype">int</span> pcnt) { <span class="keywordflow">return</span> 0; };
-<a name="l00341"></a><a class="code" href="classModule.html#a36">00341</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a36">Module::OnCheckInvite</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan) { <span class="keywordflow">return</span> 0; };
-<a name="l00342"></a><a class="code" href="classModule.html#a37">00342</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a37">Module::OnCheckKey</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, std::string keygiven) { <span class="keywordflow">return</span> 0; };
-<a name="l00343"></a><a class="code" href="classModule.html#a38">00343</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a38">Module::OnCheckLimit</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan) { <span class="keywordflow">return</span> 0; };
-<a name="l00344"></a><a class="code" href="classModule.html#a39">00344</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a39">Module::OnCheckBan</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan) { <span class="keywordflow">return</span> 0; };
-<a name="l00345"></a><a class="code" href="classModule.html#a40">00345</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a40">Module::OnStats</a>(<span class="keywordtype">char</span> symbol) { };
-<a name="l00346"></a><a class="code" href="classModule.html#a41">00346</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a41">Module::OnChangeLocalUserHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string newhost) { <span class="keywordflow">return</span> 0; };
-<a name="l00347"></a><a class="code" href="classModule.html#a42">00347</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a42">Module::OnChangeLocalUserGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string newhost) { <span class="keywordflow">return</span> 0; };
-<a name="l00348"></a><a class="code" href="classModule.html#a43">00348</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a43">Module::OnLocalTopicChange</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, std::string topic) { <span class="keywordflow">return</span> 0; };
-<a name="l00349"></a><a class="code" href="classModule.html#a44">00349</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a44">Module::OnMeshToken</a>(<span class="keywordtype">char</span> token,string_list params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, std::string tcp_host,std::string ipaddr,<span class="keywordtype">int</span> port) { <span class="keywordflow">return</span> 0; };
-<a name="l00350"></a><a class="code" href="classModule.html#a45">00350</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a45">Module::OnEvent</a>(<a class="code" href="classEvent.html">Event</a>* event) { <span class="keywordflow">return</span>; };
-<a name="l00351"></a><a class="code" href="classModule.html#a46">00351</a> <span class="keywordtype">char</span>* <a class="code" href="classModule.html#a46">Module::OnRequest</a>(<a class="code" href="classRequest.html">Request</a>* request) { <span class="keywordflow">return</span> NULL; };
-<a name="l00352"></a><a class="code" href="classModule.html#a47">00352</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a47">Module::OnOperCompare</a>(std::string password, std::string input) { <span class="keywordflow">return</span> 0; };
-<a name="l00353"></a><a class="code" href="classModule.html#a48">00353</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a48">Module::OnGlobalOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
-<a name="l00354"></a><a class="code" href="classModule.html#a49">00354</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a49">Module::OnGlobalConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
-<a name="l00355"></a><a class="code" href="classModule.html#a50">00355</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a50">Module::OnAddBan</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classchanrec.html">chanrec</a>* channel,std::string banmask) { <span class="keywordflow">return</span> 0; };
-<a name="l00356"></a><a class="code" href="classModule.html#a51">00356</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a51">Module::OnDelBan</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classchanrec.html">chanrec</a>* channel,std::string banmask) { <span class="keywordflow">return</span> 0; };
-<a name="l00357"></a><a class="code" href="classModule.html#a52">00357</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a52">Module::OnRawSocketAccept</a>(<span class="keywordtype">int</span> fd, std::string ip, <span class="keywordtype">int</span> localport) { };
-<a name="l00358"></a><a class="code" href="classModule.html#a53">00358</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a53">Module::OnRawSocketWrite</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">char</span>* buffer, <span class="keywordtype">int</span> count) { <span class="keywordflow">return</span> 0; };
-<a name="l00359"></a><a class="code" href="classModule.html#a54">00359</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a54">Module::OnRawSocketClose</a>(<span class="keywordtype">int</span> fd) { };
-<a name="l00360"></a><a class="code" href="classModule.html#a55">00360</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a55">Module::OnRawSocketRead</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">char</span>* buffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> count, <span class="keywordtype">int</span> &amp;readresult) { <span class="keywordflow">return</span> 0; };
-00361
-00362 <span class="comment">// server is a wrapper class that provides methods to all of the C-style</span>
-00363 <span class="comment">// exports in the core</span>
-00364 <span class="comment">//</span>
-00365
-<a name="l00366"></a><a class="code" href="classServer.html#a0">00366</a> <a class="code" href="classServer.html#a0">Server::Server</a>()
-00367 {
-00368 }
-00369
-<a name="l00370"></a><a class="code" href="classServer.html#a1">00370</a> <a class="code" href="classServer.html#a1">Server::~Server</a>()
-00371 {
-00372 }
-00373
-<a name="l00374"></a><a class="code" href="classServer.html#a2">00374</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a2">Server::SendOpers</a>(std::string s)
-00375 {
-00376 WriteOpers(<span class="stringliteral">"%s"</span>,s.c_str());
-00377 }
-00378
-<a name="l00379"></a><a class="code" href="classServer.html#a33">00379</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a33">Server::MatchText</a>(std::string sliteral, std::string spattern)
-00380 {
-00381 <span class="keywordtype">char</span> literal[MAXBUF],pattern[MAXBUF];
-00382 strlcpy(literal,sliteral.c_str(),MAXBUF);
-00383 strlcpy(pattern,spattern.c_str(),MAXBUF);
-00384 <span class="keywordflow">return</span> match(literal,pattern);
-00385 }
-00386
-<a name="l00387"></a><a class="code" href="classServer.html#a28">00387</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a28">Server::SendToModeMask</a>(std::string modes, <span class="keywordtype">int</span> flags, std::string text)
-00388 {
-00389 WriteMode(modes.c_str(),flags,<span class="stringliteral">"%s"</span>,text.c_str());
-00390 }
-00391
-<a name="l00392"></a><a class="code" href="classServer.html#a29">00392</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a29">Server::JoinUserToChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string key)
-00393 {
-00394 <span class="keywordflow">return</span> add_channel(user,cname.c_str(),key.c_str(),<span class="keyword">false</span>);
-00395 }
-00396
-<a name="l00397"></a><a class="code" href="classServer.html#a30">00397</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a30">Server::PartUserFromChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string reason)
-00398 {
-00399 <span class="keywordflow">return</span> del_channel(user,cname.c_str(),reason.c_str(),<span class="keyword">false</span>);
-00400 }
-00401
-<a name="l00402"></a><a class="code" href="classServer.html#a38">00402</a> <a class="code" href="modules_8h.html#a33">chanuserlist</a> <a class="code" href="classServer.html#a38">Server::GetUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* chan)
-00403 {
-00404 <a class="code" href="modules_8h.html#a33">chanuserlist</a> userl;
-00405 userl.clear();
-00406 std::vector&lt;char*&gt; *<a class="code" href="channels_8cpp.html#a15">list</a> = chan-&gt;<a class="code" href="classchanrec.html#a7">GetUsers</a>();
-00407 <span class="keywordflow">for</span> (std::vector&lt;char*&gt;::iterator i = <a class="code" href="channels_8cpp.html#a15">list</a>-&gt;begin(); i != <a class="code" href="channels_8cpp.html#a15">list</a>-&gt;end(); i++)
-00408 {
-00409 <span class="keywordtype">char</span>* o = *i;
-00410 userl.push_back((<a class="code" href="classuserrec.html">userrec</a>*)o);
-00411 }
-00412 <span class="keywordflow">return</span> userl;
-00413 }
-<a name="l00414"></a><a class="code" href="classServer.html#a31">00414</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a31">Server::ChangeUserNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string nickname)
-00415 {
-00416 force_nickchange(user,nickname.c_str());
-00417 }
-00418
-<a name="l00419"></a><a class="code" href="classServer.html#a32">00419</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a32">Server::QuitUser</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string reason)
-00420 {
-00421 kill_link(user,reason.c_str());
-00422 }
-00423
-<a name="l00424"></a><a class="code" href="classServer.html#a37">00424</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a37">Server::IsUlined</a>(std::string server)
-00425 {
-00426 <span class="keywordflow">return</span> <a class="code" href="commands_8h.html#a75">is_uline</a>(server.c_str());
-00427 }
-00428
-<a name="l00429"></a><a class="code" href="classServer.html#a34">00429</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a34">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)
-00430 {
-00431 call_handler(commandname.c_str(),parameters,pcnt,user);
-00432 }
-00433
-<a name="l00434"></a><a class="code" href="classServer.html#a3">00434</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)
-00435 {
-00436 log(level,<span class="stringliteral">"%s"</span>,s.c_str());
-00437 }
-00438
-<a name="l00439"></a><a class="code" href="classServer.html#a26">00439</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a26">Server::AddCommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams, <span class="keywordtype">char</span>* source)
-00440 {
-00441 <a class="code" href="modules_8h.html#a35">createcommand</a>(cmd,f,flags,minparams,source);
-00442 }
-00443
-<a name="l00444"></a><a class="code" href="classServer.html#a27">00444</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a27">Server::SendMode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user)
-00445 {
-00446 <a class="code" href="modules_8h.html#a36">server_mode</a>(parameters,pcnt,user);
-00447 }
-00448
-<a name="l00449"></a><a class="code" href="classServer.html#a4">00449</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)
-00450 {
-00451 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
-00452 }
-00453
-<a name="l00454"></a><a class="code" href="classServer.html#a5">00454</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)
-00455 {
-00456 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
-00457 }
-00458
-<a name="l00459"></a><a class="code" href="classServer.html#a7">00459</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a7">Server::SendFrom</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="classuserrec.html">userrec</a>* User, std::string s)
-00460 {
-00461 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00462 }
-00463
-<a name="l00464"></a><a class="code" href="classServer.html#a8">00464</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a8">Server::SendTo</a>(<a class="code" href="classuserrec.html">userrec</a>* Source, <a class="code" href="classuserrec.html">userrec</a>* Dest, std::string s)
-00465 {
-00466 <span class="keywordflow">if</span> (!Source)
-00467 {
-00468 <span class="comment">// if source is NULL, then the message originates from the local server</span>
-00469 Write(Dest-&gt;<a class="code" href="classconnection.html#o0">fd</a>,<span class="stringliteral">":%s %s"</span>,this-&gt;GetServerName().c_str(),s.c_str());
-00470 }
-00471 <span class="keywordflow">else</span>
-00472 {
-00473 <span class="comment">// otherwise it comes from the user specified</span>
-00474 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
-00475 }
-00476 }
-00477
-<a name="l00478"></a><a class="code" href="classServer.html#a6">00478</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a6">Server::SendChannelServerNotice</a>(std::string ServName, <a class="code" href="classchanrec.html">chanrec</a>* Channel, std::string text)
-00479 {
-00480 WriteChannelWithServ((<span class="keywordtype">char</span>*)ServName.c_str(), Channel, <span class="stringliteral">"%s"</span>, text.c_str());
-00481 }
-00482
-<a name="l00483"></a><a class="code" href="classServer.html#a9">00483</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a9">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)
-00484 {
-00485 <span class="keywordflow">if</span> (IncludeSender)
-00486 {
-00487 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00488 }
-00489 <span class="keywordflow">else</span>
-00490 {
-00491 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
-00492 }
-00493 }
-00494
-<a name="l00495"></a><a class="code" href="classServer.html#a10">00495</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a10">Server::CommonChannels</a>(<a class="code" href="classuserrec.html">userrec</a>* u1, <a class="code" href="classuserrec.html">userrec</a>* u2)
-00496 {
-00497 <span class="keywordflow">return</span> (<a class="code" href="message_8h.html#a0">common_channels</a>(u1,u2) != 0);
-00498 }
-00499
-<a name="l00500"></a><a class="code" href="classServer.html#a11">00500</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a11">Server::SendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text,<span class="keywordtype">bool</span> IncludeSender)
-00501 {
-00502 <span class="keywordflow">if</span> (IncludeSender)
-00503 {
-00504 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00505 }
-00506 <span class="keywordflow">else</span>
-00507 {
-00508 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
-00509 }
-00510 }
-00511
-<a name="l00512"></a><a class="code" href="classServer.html#a12">00512</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a12">Server::SendWallops</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text)
-00513 {
-00514 WriteWallOps(User,<span class="keyword">false</span>,<span class="stringliteral">"%s"</span>,text.c_str());
-00515 }
-00516
-<a name="l00517"></a><a class="code" href="classServer.html#a35">00517</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a35">Server::ChangeHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string host)
-00518 {
-00519 <a class="code" href="message_8h.html#a9">ChangeDisplayedHost</a>(user,host.c_str());
-00520 }
-00521
-<a name="l00522"></a><a class="code" href="classServer.html#a36">00522</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a36">Server::ChangeGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string gecos)
-00523 {
-00524 <a class="code" href="message_8h.html#a8">ChangeName</a>(user,gecos.c_str());
-00525 }
-00526
-<a name="l00527"></a><a class="code" href="classServer.html#a13">00527</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a13">Server::IsNick</a>(std::string nick)
-00528 {
-00529 <span class="keywordflow">return</span> (<a class="code" href="message_8h.html#a11">isnick</a>(nick.c_str()) != 0);
-00530 }
-00531
-<a name="l00532"></a><a class="code" href="classServer.html#a15">00532</a> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#a15">Server::FindNick</a>(std::string nick)
-00533 {
-00534 <span class="keywordflow">return</span> Find(nick);
-00535 }
-00536
-<a name="l00537"></a><a class="code" href="classServer.html#a16">00537</a> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#a16">Server::FindDescriptor</a>(<span class="keywordtype">int</span> socket)
-00538 {
-00539 <span class="keywordflow">return</span> (socket &lt; 65536 ? <a class="code" href="modules_8cpp.html#a37">fd_ref_table</a>[socket] : NULL);
-00540 }
-00541
-<a name="l00542"></a><a class="code" href="classServer.html#a17">00542</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a17">Server::FindChannel</a>(std::string channel)
-00543 {
-00544 <span class="keywordflow">return</span> FindChan(channel.c_str());
-00545 }
-00546
-<a name="l00547"></a><a class="code" href="classServer.html#a18">00547</a> std::string <a class="code" href="classServer.html#a18">Server::ChanMode</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan)
-00548 {
-00549 <span class="keywordflow">return</span> <a class="code" href="message_8h.html#a12">cmode</a>(User,Chan);
-00550 }
-00551
-<a name="l00552"></a><a class="code" href="classServer.html#a19">00552</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a19">Server::IsOnChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan)
-00553 {
-00554 <span class="keywordflow">return</span> <a class="code" href="message_8h.html#a14">has_channel</a>(User,Chan);
-00555 }
-00556
-<a name="l00557"></a><a class="code" href="classServer.html#a20">00557</a> std::string <a class="code" href="classServer.html#a20">Server::GetServerName</a>()
-00558 {
-00559 <span class="keywordflow">return</span> getservername();
-00560 }
-00561
-<a name="l00562"></a><a class="code" href="classServer.html#a21">00562</a> std::string <a class="code" href="classServer.html#a21">Server::GetNetworkName</a>()
-00563 {
-00564 <span class="keywordflow">return</span> getnetworkname();
-00565 }
-00566
-<a name="l00567"></a><a class="code" href="classServer.html#a22">00567</a> std::string <a class="code" href="classServer.html#a22">Server::GetServerDescription</a>()
-00568 {
-00569 <span class="keywordflow">return</span> getserverdesc();
-00570 }
-00571
-<a name="l00572"></a><a class="code" href="classServer.html#a23">00572</a> <a class="code" href="classAdmin.html">Admin</a> <a class="code" href="classServer.html#a23">Server::GetAdmin</a>()
-00573 {
-00574 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
-00575 }
-00576
-00577
-00578
-<a name="l00579"></a><a class="code" href="classServer.html#a24">00579</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a24">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)
-00580 {
-00581 <span class="keywordflow">if</span> (((modechar &gt;= <span class="charliteral">'A'</span>) &amp;&amp; (modechar &lt;= 'Z')) || ((modechar &gt;= <span class="charliteral">'a'</span>) &amp;&amp; (modechar &lt;= <span class="charliteral">'z'</span>)))
-00582 {
-00583 <span class="keywordflow">if</span> (type == <a class="code" href="modules_8h.html#a7">MT_SERVER</a>)
-00584 {
-00585 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion"</span>);
-00586 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00587 }
-00588 <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>))
-00589 {
-00590 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Parameters on MT_CLIENT modes are not supported"</span>);
-00591 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00592 }
-00593 <span class="keywordflow">if</span> ((params_when_on&gt;1) || (params_when_off&gt;1))
-00594 {
-00595 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported"</span>);
-00596 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00597 }
-00598 <span class="keywordflow">return</span> <a class="code" href="modules_8cpp.html#a58">DoAddExtendedMode</a>(modechar,type,requires_oper,params_when_on,params_when_off);
-00599 }
-00600 <span class="keywordflow">else</span>
-00601 {
-00602 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Muppet modechar detected."</span>);
-00603 }
-00604 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00605 }
-00606
-<a name="l00607"></a><a class="code" href="classServer.html#a25">00607</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a25">Server::AddExtendedListMode</a>(<span class="keywordtype">char</span> modechar)
-00608 {
-00609 <span class="keywordtype">bool</span> res = <a class="code" href="modules_8cpp.html#a58">DoAddExtendedMode</a>(modechar,<a class="code" href="modules_8h.html#a5">MT_CHANNEL</a>,<span class="keyword">false</span>,1,1);
-00610 <span class="keywordflow">if</span> (res)
-00611 <a class="code" href="modules_8cpp.html#a59">ModeMakeList</a>(modechar);
-00612 <span class="keywordflow">return</span> res;
-00613 }
-00614
-<a name="l00615"></a><a class="code" href="classServer.html#a14">00615</a> <span class="keywordtype">int</span> <a class="code" href="classServer.html#a14">Server::CountUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* c)
-00616 {
-00617 <span class="keywordflow">return</span> usercount(c);
-00618 }
-00619
-00620
-<a name="l00621"></a><a class="code" href="classServer.html#a39">00621</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a39">Server::UserToPseudo</a>(<a class="code" href="classuserrec.html">userrec</a>* user,std::string message)
-00622 {
-00623 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> old_fd = user-&gt;<a class="code" href="classconnection.html#o0">fd</a>;
-00624 user-&gt;<a class="code" href="classconnection.html#o0">fd</a> = <a class="code" href="modules_8h.html#a26">FD_MAGIC_NUMBER</a>;
-00625 user-&gt;<a class="code" href="classuserrec.html#a11">ClearBuffer</a>();
-00626 Write(old_fd,<span class="stringliteral">"ERROR :Closing link (%s@%s) [%s]"</span>,user-&gt;<a class="code" href="classuserrec.html#o1">ident</a>,user-&gt;<a class="code" href="classconnection.html#o1">host</a>,message.c_str());
-00627 <span class="preprocessor">#ifdef USE_KQUEUE</span>
-00628 <span class="preprocessor"></span> <span class="keyword">struct </span>kevent ke;
-00629 EV_SET(&amp;ke, old_fd, EVFILT_READ, EV_DELETE, 0, 0, NULL);
-00630 <span class="keywordtype">int</span> i = kevent(kq, &amp;ke, 1, 0, 0, NULL);
-00631 <span class="keywordflow">if</span> (i == -1)
-00632 {
-00633 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"kqueue: Failed to remove user from queue!"</span>);
-00634 }
-00635 <span class="preprocessor">#endif</span>
-00636 <span class="preprocessor"></span><span class="preprocessor">#ifdef USE_EPOLL</span>
-00637 <span class="preprocessor"></span> <span class="keyword">struct </span>epoll_event ev;
-00638 ev.events = EPOLLIN | EPOLLET;
-00639 ev.data.fd = old_fd;
-00640 <span class="keywordtype">int</span> i = epoll_ctl(ep, EPOLL_CTL_DEL, old_fd, &amp;ev);
-00641 <span class="keywordflow">if</span> (i &lt; 0)
-00642 {
-00643 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"epoll: List deletion failure!"</span>);
-00644 }
-00645 <span class="preprocessor">#endif</span>
-00646 <span class="preprocessor"></span>
-00647 shutdown(old_fd,2);
-00648 close(old_fd);
-00649 }
-00650
-<a name="l00651"></a><a class="code" href="classServer.html#a40">00651</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a40">Server::PseudoToUser</a>(<a class="code" href="classuserrec.html">userrec</a>* alive,<a class="code" href="classuserrec.html">userrec</a>* zombie,std::string message)
-00652 {
-00653 zombie-&gt;<a class="code" href="classconnection.html#o0">fd</a> = alive-&gt;<a class="code" href="classconnection.html#o0">fd</a>;
-00654 alive-&gt;<a class="code" href="classconnection.html#o0">fd</a> = <a class="code" href="modules_8h.html#a26">FD_MAGIC_NUMBER</a>;
-00655 alive-&gt;<a class="code" href="classuserrec.html#a11">ClearBuffer</a>();
-00656 Write(zombie-&gt;<a class="code" href="classconnection.html#o0">fd</a>,<span class="stringliteral">":%s!%s@%s NICK %s"</span>,alive-&gt;<a class="code" href="classuserrec.html#o0">nick</a>,alive-&gt;<a class="code" href="classuserrec.html#o1">ident</a>,alive-&gt;<a class="code" href="classconnection.html#o1">host</a>,zombie-&gt;<a class="code" href="classuserrec.html#o0">nick</a>);
-00657 kill_link(alive,message.c_str());
-00658 <a class="code" href="modules_8cpp.html#a37">fd_ref_table</a>[zombie-&gt;<a class="code" href="classconnection.html#o0">fd</a>] = zombie;
-00659 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i != MAXCHANS; i++)
-00660 {
-00661 <span class="keywordflow">if</span> (zombie-&gt;chans[i].channel != NULL)
-00662 {
-00663 <span class="keywordflow">if</span> (zombie-&gt;chans[i].channel-&gt;name)
-00664 {
-00665 <a class="code" href="classchanrec.html">chanrec</a>* Ptr = zombie-&gt;<a class="code" href="classuserrec.html#o5">chans</a>[i].<a class="code" href="classucrec.html#o1">channel</a>;
-00666 WriteFrom(zombie-&gt;fd,zombie,<span class="stringliteral">"JOIN %s"</span>,Ptr-&gt;<a class="code" href="classchanrec.html#o0">name</a>);
-00667 <span class="keywordflow">if</span> (Ptr-&gt;<a class="code" href="classchanrec.html#o5">topicset</a>)
-00668 {
-00669 WriteServ(zombie-&gt;fd,<span class="stringliteral">"332 %s %s :%s"</span>, zombie-&gt;nick, Ptr-&gt;<a class="code" href="classchanrec.html#o0">name</a>, Ptr-&gt;<a class="code" href="classchanrec.html#o3">topic</a>);
-00670 WriteServ(zombie-&gt;fd,<span class="stringliteral">"333 %s %s %s %d"</span>, zombie-&gt;nick, Ptr-&gt;<a class="code" href="classchanrec.html#o0">name</a>, Ptr-&gt;<a class="code" href="classchanrec.html#o6">setby</a>, Ptr-&gt;<a class="code" href="classchanrec.html#o5">topicset</a>);
-00671 }
-00672 userlist(zombie,Ptr);
-00673 WriteServ(zombie-&gt;fd,<span class="stringliteral">"366 %s %s :End of /NAMES list."</span>, zombie-&gt;nick, Ptr-&gt;<a class="code" href="classchanrec.html#o0">name</a>);
-00674
-00675 }
-00676 }
-00677 }
-00678
-00679 }
-00680
-<a name="l00681"></a><a class="code" href="classServer.html#a41">00681</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a41">Server::AddGLine</a>(<span class="keywordtype">long</span> duration, std::string source, std::string reason, std::string hostmask)
-00682 {
-00683 <a class="code" href="xline_8h.html#a1">add_gline</a>(<a class="code" href="commands_8h.html#a76">duration</a>, source.c_str(), reason.c_str(), hostmask.c_str());
-00684 }
-00685
-<a name="l00686"></a><a class="code" href="classServer.html#a42">00686</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a42">Server::AddQLine</a>(<span class="keywordtype">long</span> duration, std::string source, std::string reason, std::string nickname)
-00687 {
-00688 <a class="code" href="xline_8h.html#a2">add_qline</a>(<a class="code" href="commands_8h.html#a76">duration</a>, source.c_str(), reason.c_str(), nickname.c_str());
-00689 }
-00690
-<a name="l00691"></a><a class="code" href="classServer.html#a43">00691</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a43">Server::AddZLine</a>(<span class="keywordtype">long</span> duration, std::string source, std::string reason, std::string ipaddr)
-00692 {
-00693 <a class="code" href="xline_8h.html#a3">add_zline</a>(<a class="code" href="commands_8h.html#a76">duration</a>, source.c_str(), reason.c_str(), ipaddr.c_str());
-00694 }
-00695
-<a name="l00696"></a><a class="code" href="classServer.html#a44">00696</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a44">Server::AddKLine</a>(<span class="keywordtype">long</span> duration, std::string source, std::string reason, std::string hostmask)
-00697 {
-00698 <a class="code" href="xline_8h.html#a4">add_kline</a>(<a class="code" href="commands_8h.html#a76">duration</a>, source.c_str(), reason.c_str(), hostmask.c_str());
-00699 }
-00700
-<a name="l00701"></a><a class="code" href="classServer.html#a45">00701</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a45">Server::AddELine</a>(<span class="keywordtype">long</span> duration, std::string source, std::string reason, std::string hostmask)
-00702 {
-00703 <a class="code" href="xline_8h.html#a5">add_eline</a>(<a class="code" href="commands_8h.html#a76">duration</a>, source.c_str(), reason.c_str(), hostmask.c_str());
-00704 }
-00705
-<a name="l00706"></a><a class="code" href="classServer.html#a46">00706</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a46">Server::DelGLine</a>(std::string hostmask)
-00707 {
-00708 <a class="code" href="xline_8h.html#a6">del_gline</a>(hostmask.c_str());
-00709 }
-00710
-<a name="l00711"></a><a class="code" href="classServer.html#a47">00711</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a47">Server::DelQLine</a>(std::string nickname)
-00712 {
-00713 <a class="code" href="xline_8h.html#a7">del_qline</a>(nickname.c_str());
-00714 }
-00715
-<a name="l00716"></a><a class="code" href="classServer.html#a48">00716</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a48">Server::DelZLine</a>(std::string ipaddr)
-00717 {
-00718 <a class="code" href="xline_8h.html#a8">del_zline</a>(ipaddr.c_str());
-00719 }
-00720
-<a name="l00721"></a><a class="code" href="classServer.html#a49">00721</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a49">Server::DelKLine</a>(std::string hostmask)
-00722 {
-00723 <a class="code" href="xline_8h.html#a9">del_kline</a>(hostmask.c_str());
-00724 }
-00725
-<a name="l00726"></a><a class="code" href="classServer.html#a50">00726</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a50">Server::DelELine</a>(std::string hostmask)
-00727 {
-00728 <a class="code" href="xline_8h.html#a10">del_eline</a>(hostmask.c_str());
-00729 }
-00730
-<a name="l00731"></a><a class="code" href="classServer.html#a51">00731</a> <span class="keywordtype">long</span> <a class="code" href="classServer.html#a51">Server::CalcDuration</a>(std::string delta)
-00732 {
-00733 <span class="keywordflow">return</span> <a class="code" href="commands_8h.html#a76">duration</a>(delta.c_str());
-00734 }
-00735
-<a name="l00736"></a><a class="code" href="classServer.html#a52">00736</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a52">Server::IsValidMask</a>(std::string mask)
-00737 {
-00738 <span class="keyword">const</span> <span class="keywordtype">char</span>* dest = mask.c_str();
-00739 <span class="keywordflow">if</span> (strchr(dest,<span class="charliteral">'!'</span>)==0)
-00740 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00741 <span class="keywordflow">if</span> (strchr(dest,<span class="charliteral">'@'</span>)==0)
-00742 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00743 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
-00744 <span class="keywordflow">if</span> (dest[i] &lt; 32)
-00745 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00746 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
-00747 <span class="keywordflow">if</span> (dest[i] &gt; 126)
-00748 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00749 <span class="keywordtype">int</span> c = 0;
-00750 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
-00751 <span class="keywordflow">if</span> (dest[i] == <span class="charliteral">'!'</span>)
-00752 c++;
-00753 <span class="keywordflow">if</span> (c&gt;1)
-00754 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00755 c = 0;
-00756 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
-00757 <span class="keywordflow">if</span> (dest[i] == <span class="charliteral">'@'</span>)
-00758 c++;
-00759 <span class="keywordflow">if</span> (c&gt;1)
-00760 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00761
-00762 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00763 }
-00764
-<a name="l00765"></a><a class="code" href="classServer.html#a53">00765</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a53">Server::MeshSendAll</a>(std::string text)
-00766 {
-00767 NetSendToAll((<span class="keywordtype">char</span>*)text.c_str());
-00768 }
-00769
-<a name="l00770"></a><a class="code" href="classServer.html#a54">00770</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a54">Server::MeshSendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string text)
-00771 {
-00772 <span class="keywordflow">if</span> (user)
-00773 NetSendToCommon(user,(<span class="keywordtype">char</span>*)text.c_str());
-00774 }
-00775
-<a name="l00776"></a><a class="code" href="classServer.html#a55">00776</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a55">Server::MeshSendAllAlive</a>(std::string text)
-00777 {
-00778 NetSendToAllAlive((<span class="keywordtype">char</span>*)text.c_str());
-00779 }
-00780
-<a name="l00781"></a><a class="code" href="classServer.html#a56">00781</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a56">Server::MeshSendUnicast</a>(std::string destination, std::string text)
-00782 {
-00783 NetSendToOne((<span class="keywordtype">char</span>*)destination.c_str(),(<span class="keywordtype">char</span>*)text.c_str());
-00784 }
-00785
-<a name="l00786"></a><a class="code" href="classServer.html#a57">00786</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a57">Server::MeshSendAllExcept</a>(std::string target, std::string text)
-00787 {
-00788 NetSendToAllExcept(target.c_str(),(<span class="keywordtype">char</span>*)text.c_str());
-00789 }
-00790
-<a name="l00791"></a><a class="code" href="classServer.html#a58">00791</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a58">Server::MeshCheckChan</a>(<a class="code" href="classchanrec.html">chanrec</a> *c,std::string servername)
-00792 {
-00793 <span class="keywordflow">if</span> (c)
-00794 {
-00795 <span class="keywordflow">return</span> ChanAnyOnThisServer(c,(<span class="keywordtype">char</span>*)servername.c_str());
-00796 }
-00797 <span class="keywordflow">else</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00798 }
-00799
-<a name="l00800"></a><a class="code" href="classServer.html#a59">00800</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a59">Server::MeshCheckCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* u,std::string servername)
-00801 {
-00802 <span class="keywordflow">if</span> (u)
-00803 {
-00804 <span class="keywordflow">return</span> CommonOnThisServer(u,(<span class="keywordtype">char</span>*)servername.c_str());
-00805 }
-00806 <span class="keywordflow">else</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00807 }
-00808
-<a name="l00809"></a><a class="code" href="classServer.html#a60">00809</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classServer.html#a60">Server::FindModule</a>(std::string name)
-00810 {
-00811 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= <a class="code" href="modules_8cpp.html#a1">MODCOUNT</a>; i++)
-00812 {
-00813 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a26">module_names</a>[i] == name)
-00814 {
-00815 <span class="keywordflow">return</span> <a class="code" href="channels_8cpp.html#a2">modules</a>[i];
-00816 }
-00817 }
-00818 <span class="keywordflow">return</span> NULL;
-00819 }
-00820
-<a name="l00821"></a><a class="code" href="classConfigReader.html#a0">00821</a> <a class="code" href="classConfigReader.html#a0">ConfigReader::ConfigReader</a>()
-00822 {
-00823 <a class="code" href="modules_8cpp.html#a3">include_stack</a>.clear();
-00824 this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00825 this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00826 this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a> = LoadConf(CONFIG_FILE,this-&gt;cache,this-&gt;errorlog);
-00827 <span class="keywordflow">if</span> (!this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a>)
-00828 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a30">CONF_FILE_NOT_FOUND</a>;
-00829 }
-00830
-00831
-<a name="l00832"></a><a class="code" href="classConfigReader.html#a2">00832</a> <a class="code" href="classConfigReader.html#a2">ConfigReader::~ConfigReader</a>()
-00833 {
-00834 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a>)
-00835 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a>;
-00836 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a>)
-00837 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a>;
-00838 }
-00839
-00840
-<a name="l00841"></a><a class="code" href="classConfigReader.html#a1">00841</a> <a class="code" href="classConfigReader.html#a0">ConfigReader::ConfigReader</a>(std::string filename)
-00842 {
-00843 this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00844 this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
-00845 this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a> = LoadConf(filename.c_str(),this-&gt;<a class="code" href="classConfigReader.html#p0">cache</a>,this-&gt;<a class="code" href="classConfigReader.html#p1">errorlog</a>);
-00846 <span class="keywordflow">if</span> (!this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a>)
-00847 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a30">CONF_FILE_NOT_FOUND</a>;
-00848 };
-00849
-<a name="l00850"></a><a class="code" href="classConfigReader.html#a3">00850</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)
-00851 {
-00852 <span class="keywordtype">char</span> val[MAXBUF];
-00853 <span class="keywordtype">char</span> t[MAXBUF];
-00854 <span class="keywordtype">char</span> n[MAXBUF];
-00855 strlcpy(t,tag.c_str(),MAXBUF);
-00856 strlcpy(n,name.c_str(),MAXBUF);
-00857 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#p0">cache</a>,t,n,index,val);
-00858 <span class="keywordflow">if</span> (!res)
-00859 {
-00860 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a29">CONF_VALUE_NOT_FOUND</a>;
-00861 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-00862 }
-00863 <span class="keywordflow">return</span> val;
-00864 }
-00865
-<a name="l00866"></a><a class="code" href="classConfigReader.html#a4">00866</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#a4">ConfigReader::ReadFlag</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index)
-00867 {
-00868 <span class="keywordtype">char</span> val[MAXBUF];
-00869 <span class="keywordtype">char</span> t[MAXBUF];
-00870 <span class="keywordtype">char</span> n[MAXBUF];
-00871 strlcpy(t,tag.c_str(),MAXBUF);
-00872 strlcpy(n,name.c_str(),MAXBUF);
-00873 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#p0">cache</a>,t,n,index,val);
-00874 <span class="keywordflow">if</span> (!res)
-00875 {
-00876 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a29">CONF_VALUE_NOT_FOUND</a>;
-00877 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00878 }
-00879 std::string s = val;
-00880 <span class="keywordflow">return</span> ((s == <span class="stringliteral">"yes"</span>) || (s == <span class="stringliteral">"YES"</span>) || (s == <span class="stringliteral">"true"</span>) || (s == <span class="stringliteral">"TRUE"</span>) || (s == <span class="stringliteral">"1"</span>));
-00881 }
-00882
-<a name="l00883"></a><a class="code" href="classConfigReader.html#a5">00883</a> <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#a5">ConfigReader::ReadInteger</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index, <span class="keywordtype">bool</span> needs_unsigned)
-00884 {
-00885 <span class="keywordtype">char</span> val[MAXBUF];
-00886 <span class="keywordtype">char</span> t[MAXBUF];
-00887 <span class="keywordtype">char</span> n[MAXBUF];
-00888 strlcpy(t,tag.c_str(),MAXBUF);
-00889 strlcpy(n,name.c_str(),MAXBUF);
-00890 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#p0">cache</a>,t,n,index,val);
-00891 <span class="keywordflow">if</span> (!res)
-00892 {
-00893 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a29">CONF_VALUE_NOT_FOUND</a>;
-00894 <span class="keywordflow">return</span> 0;
-00895 }
-00896 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; strlen(val); i++)
-00897 {
-00898 <span class="keywordflow">if</span> (!isdigit(val[i]))
-00899 {
-00900 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a27">CONF_NOT_A_NUMBER</a>;
-00901 <span class="keywordflow">return</span> 0;
-00902 }
-00903 }
-00904 <span class="keywordflow">if</span> ((needs_unsigned) &amp;&amp; (atoi(val)&lt;0))
-00905 {
-00906 this-&gt;<a class="code" href="classConfigReader.html#p3">error</a> = <a class="code" href="modules_8h.html#a28">CONF_NOT_UNSIGNED</a>;
-00907 <span class="keywordflow">return</span> 0;
-00908 }
-00909 <span class="keywordflow">return</span> atoi(val);
-00910 }
-00911
-<a name="l00912"></a><a class="code" href="classConfigReader.html#a6">00912</a> <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#a6">ConfigReader::GetError</a>()
-00913 {
-00914 <span class="keywordtype">long</span> olderr = this-&gt;<a class="code" href="classConfigReader.html#p3">error</a>;
-00915 this-&gt;error = 0;
-00916 <span class="keywordflow">return</span> olderr;
-00917 }
-00918
-<a name="l00919"></a><a class="code" href="classConfigReader.html#a9">00919</a> <span class="keywordtype">void</span> <a class="code" href="classConfigReader.html#a9">ConfigReader::DumpErrors</a>(<span class="keywordtype">bool</span> bail, <a class="code" href="classuserrec.html">userrec</a>* user)
-00920 {
-00921 <span class="keywordflow">if</span> (bail)
-00922 {
-00923 printf(<span class="stringliteral">"There were errors in your configuration:\n%s"</span>,<a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;str().c_str());
-00924 exit(0);
-00925 }
-00926 <span class="keywordflow">else</span>
-00927 {
-00928 <span class="keywordtype">char</span> dataline[1024];
-00929 <span class="keywordflow">if</span> (user)
-00930 {
-00931 WriteServ(user-&gt;<a class="code" href="classconnection.html#o0">fd</a>,<span class="stringliteral">"NOTICE %s :There were errors in the configuration file:"</span>,user-&gt;<a class="code" href="classuserrec.html#o0">nick</a>);
-00932 <span class="keywordflow">while</span> (!<a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;eof())
-00933 {
-00934 <a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;getline(dataline,1024);
-00935 WriteServ(user-&gt;<a class="code" href="classconnection.html#o0">fd</a>,<span class="stringliteral">"NOTICE %s :%s"</span>,user-&gt;<a class="code" href="classuserrec.html#o0">nick</a>,dataline);
-00936 }
-00937 }
-00938 <span class="keywordflow">else</span>
-00939 {
-00940 WriteOpers(<span class="stringliteral">"There were errors in the configuration file:"</span>,user-&gt;<a class="code" href="classuserrec.html#o0">nick</a>);
-00941 <span class="keywordflow">while</span> (!<a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;eof())
-00942 {
-00943 <a class="code" href="classConfigReader.html#p1">errorlog</a>-&gt;getline(dataline,1024);
-00944 WriteOpers(dataline);
-00945 }
-00946 }
-00947 <span class="keywordflow">return</span>;
-00948 }
-00949 }
-00950
-00951
-<a name="l00952"></a><a class="code" href="classConfigReader.html#a7">00952</a> <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a7">ConfigReader::Enumerate</a>(std::string tag)
-00953 {
-00954 <span class="keywordflow">return</span> EnumConf(<a class="code" href="classConfigReader.html#p0">cache</a>,tag.c_str());
-00955 }
-00956
-<a name="l00957"></a><a class="code" href="classConfigReader.html#a10">00957</a> <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a10">ConfigReader::EnumerateValues</a>(std::string tag, <span class="keywordtype">int</span> index)
-00958 {
-00959 <span class="keywordflow">return</span> EnumValues(<a class="code" href="classConfigReader.html#p0">cache</a>, tag.c_str(), index);
-00960 }
-00961
-<a name="l00962"></a><a class="code" href="classConfigReader.html#a8">00962</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#a8">ConfigReader::Verify</a>()
-00963 {
-00964 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classConfigReader.html#p2">readerror</a>;
-00965 }
-00966
-00967
-<a name="l00968"></a><a class="code" href="classFileReader.html#a1">00968</a> <a class="code" href="classFileReader.html#a0">FileReader::FileReader</a>(std::string filename)
-00969 {
-00970 <a class="code" href="modules_8h.html#a31">file_cache</a> c;
-00971 readfile(c,filename.c_str());
-00972 this-&gt;<a class="code" href="classFileReader.html#r0">fc</a> = c;
-00973 }
-00974
-<a name="l00975"></a><a class="code" href="classFileReader.html#a0">00975</a> <a class="code" href="classFileReader.html#a0">FileReader::FileReader</a>()
-00976 {
-00977 }
-00978
-<a name="l00979"></a><a class="code" href="classFileReader.html#a3">00979</a> <span class="keywordtype">void</span> <a class="code" href="classFileReader.html#a3">FileReader::LoadFile</a>(std::string filename)
-00980 {
-00981 <a class="code" href="modules_8h.html#a31">file_cache</a> c;
-00982 readfile(c,filename.c_str());
-00983 this-&gt;<a class="code" href="classFileReader.html#r0">fc</a> = c;
-00984 }
-00985
-00986
-<a name="l00987"></a><a class="code" href="classFileReader.html#a2">00987</a> <a class="code" href="classFileReader.html#a2">FileReader::~FileReader</a>()
-00988 {
-00989 }
-00990
-<a name="l00991"></a><a class="code" href="classFileReader.html#a4">00991</a> <span class="keywordtype">bool</span> <a class="code" href="classFileReader.html#a4">FileReader::Exists</a>()
-00992 {
-00993 <span class="keywordflow">if</span> (<a class="code" href="classFileReader.html#r0">fc</a>.size() == 0)
-00994 {
-00995 <span class="keywordflow">return</span>(<span class="keyword">false</span>);
-00996 }
-00997 <span class="keywordflow">else</span>
-00998 {
-00999 <span class="keywordflow">return</span>(<span class="keyword">true</span>);
-01000 }
-01001 }
-01002
-<a name="l01003"></a><a class="code" href="classFileReader.html#a5">01003</a> std::string <a class="code" href="classFileReader.html#a5">FileReader::GetLine</a>(<span class="keywordtype">int</span> x)
-01004 {
-01005 <span class="keywordflow">if</span> ((x&lt;0) || (x&gt;<a class="code" href="classFileReader.html#r0">fc</a>.size()))
-01006 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-01007 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#r0">fc</a>[x];
-01008 }
-01009
-<a name="l01010"></a><a class="code" href="classFileReader.html#a6">01010</a> <span class="keywordtype">int</span> <a class="code" href="classFileReader.html#a6">FileReader::FileSize</a>()
-01011 {
-01012 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#r0">fc</a>.size();
-01013 }
-01014
-01015
-01016 std::vector&lt;Module*&gt; <a class="code" href="modules_8cpp.html#a60">modules</a>(255);
-01017 std::vector&lt;ircd_module*&gt; <a class="code" href="modules_8cpp.html#a61">factory</a>(255);
-01018
-<a name="l01019"></a><a class="code" href="modules_8cpp.html#a0">01019</a> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#a1">MODCOUNT</a> = -1;
-01020
-01021
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:20 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>modules.cpp</h1><a href="modules_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
+<a name="l00018"></a>00018
+<a name="l00019"></a>00019 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "inspircd.h"</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include "inspircd_io.h"</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "inspircd_util.h"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;sys/errno.h&gt;</span>
+<a name="l00025"></a>00025
+<a name="l00026"></a>00026 <span class="preprocessor">#ifdef USE_KQUEUE</span>
+<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="preprocessor">#include &lt;sys/types.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;sys/event.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;sys/time.h&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#endif</span>
+<a name="l00031"></a>00031 <span class="preprocessor"></span>
+<a name="l00032"></a>00032 <span class="preprocessor">#ifdef USE_EPOLL</span>
+<a name="l00033"></a>00033 <span class="preprocessor"></span><span class="preprocessor">#include &lt;sys/epoll.h&gt;</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#endif</span>
+<a name="l00035"></a>00035 <span class="preprocessor"></span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include &lt;time.h&gt;</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00038"></a>00038 <span class="preprocessor">#ifdef GCC3</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span><span class="preprocessor">#include &lt;ext/hash_map&gt;</span>
+<a name="l00040"></a>00040 <span class="preprocessor">#else</span>
+<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">#include &lt;hash_map&gt;</span>
+<a name="l00042"></a>00042 <span class="preprocessor">#endif</span>
+<a name="l00043"></a>00043 <span class="preprocessor"></span><span class="preprocessor">#include &lt;map&gt;</span>
+<a name="l00044"></a>00044 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00045"></a>00045 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00046"></a>00046 <span class="preprocessor">#include &lt;deque&gt;</span>
+<a name="l00047"></a>00047 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
+<a name="l00048"></a>00048 <span class="preprocessor">#include "<a class="code" href="ctables_8h.html">ctables.h</a>"</span>
+<a name="l00049"></a>00049 <span class="preprocessor">#include "globals.h"</span>
+<a name="l00050"></a>00050 <span class="preprocessor">#include "<a class="code" href="modules_8h.html">modules.h</a>"</span>
+<a name="l00051"></a>00051 <span class="preprocessor">#include "dynamic.h"</span>
+<a name="l00052"></a>00052 <span class="preprocessor">#include "wildcard.h"</span>
+<a name="l00053"></a>00053 <span class="preprocessor">#include "<a class="code" href="message_8h.html">message.h</a>"</span>
+<a name="l00054"></a>00054 <span class="preprocessor">#include "<a class="code" href="mode_8h.html">mode.h</a>"</span>
+<a name="l00055"></a>00055 <span class="preprocessor">#include "<a class="code" href="xline_8h.html">xline.h</a>"</span>
+<a name="l00056"></a>00056 <span class="preprocessor">#include "<a class="code" href="commands_8h.html">commands.h</a>"</span>
+<a name="l00057"></a>00057 <span class="preprocessor">#include "inspstring.h"</span>
+<a name="l00058"></a>00058 <span class="preprocessor">#include "helperfuncs.h"</span>
+<a name="l00059"></a>00059 <span class="preprocessor">#include "<a class="code" href="hashcomp_8h.html">hashcomp.h</a>"</span>
+<a name="l00060"></a>00060 <span class="preprocessor">#include "<a class="code" href="socket_8h.html">socket.h</a>"</span>
+<a name="l00061"></a>00061
+<a name="l00062"></a>00062 <span class="preprocessor">#ifdef USE_KQUEUE</span>
+<a name="l00063"></a>00063 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">int</span> kq;
+<a name="l00064"></a>00064 <span class="preprocessor">#endif</span>
+<a name="l00065"></a>00065 <span class="preprocessor"></span>
+<a name="l00066"></a>00066 <span class="preprocessor">#ifdef USE_EPOLL</span>
+<a name="l00067"></a>00067 <span class="preprocessor"></span><span class="keywordtype">int</span> ep;
+<a name="l00068"></a>00068 <span class="preprocessor">#endif</span>
+<a name="l00069"></a>00069 <span class="preprocessor"></span>
+<a name="l00070"></a>00070 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#MODCOUNT">MODCOUNT</a>;
+<a name="l00071"></a>00071 <span class="keyword">extern</span> std::vector&lt;Module*&gt; <a class="code" href="channels_8cpp.html#modules">modules</a>;
+<a name="l00072"></a>00072 <span class="keyword">extern</span> std::vector&lt;ircd_module*&gt; <a class="code" href="channels_8cpp.html#factory">factory</a>;
+<a name="l00073"></a>00073
+<a name="l00074"></a>00074 <span class="keyword">extern</span> std::vector&lt;std::string&gt; <a class="code" href="modules_8cpp.html#include_5Fstack">include_stack</a>;
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="keyword">extern</span> std::vector&lt;InspSocket*&gt; <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>;
+<a name="l00077"></a>00077
+<a name="l00078"></a>00078 <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#TIME">TIME</a>;
+<a name="l00079"></a>00079
+<a name="l00080"></a>00080 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#LogLevel">LogLevel</a>;
+<a name="l00081"></a>00081 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a>[MAXBUF];
+<a name="l00082"></a>00082 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#Network_5BMAXBUF_5D">Network</a>[MAXBUF];
+<a name="l00083"></a>00083 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#ServerDesc_5BMAXBUF_5D">ServerDesc</a>[MAXBUF];
+<a name="l00084"></a>00084 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#AdminName_5BMAXBUF_5D">AdminName</a>[MAXBUF];
+<a name="l00085"></a>00085 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#AdminEmail_5BMAXBUF_5D">AdminEmail</a>[MAXBUF];
+<a name="l00086"></a>00086 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#AdminNick_5BMAXBUF_5D">AdminNick</a>[MAXBUF];
+<a name="l00087"></a>00087 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#diepass_5BMAXBUF_5D">diepass</a>[MAXBUF];
+<a name="l00088"></a>00088 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#restartpass_5BMAXBUF_5D">restartpass</a>[MAXBUF];
+<a name="l00089"></a>00089 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#motd_5BMAXBUF_5D">motd</a>[MAXBUF];
+<a name="l00090"></a>00090 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#rules_5BMAXBUF_5D">rules</a>[MAXBUF];
+<a name="l00091"></a>00091 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#list_5BMAXBUF_5D">list</a>[MAXBUF];
+<a name="l00092"></a>00092 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#PrefixQuit_5BMAXBUF_5D">PrefixQuit</a>[MAXBUF];
+<a name="l00093"></a>00093 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#DieValue_5BMAXBUF_5D">DieValue</a>[MAXBUF];
+<a name="l00094"></a>00094
+<a name="l00095"></a>00095 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#debugging">debugging</a>;
+<a name="l00096"></a>00096 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#WHOWAS_5FSTALE">WHOWAS_STALE</a>;
+<a name="l00097"></a>00097 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#WHOWAS_5FMAX">WHOWAS_MAX</a>;
+<a name="l00098"></a>00098 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#DieDelay">DieDelay</a>;
+<a name="l00099"></a>00099 <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#startup_5Ftime">startup_time</a>;
+<a name="l00100"></a>00100 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#NetBufferSize">NetBufferSize</a>;
+<a name="l00101"></a>00101 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#MaxWhoResults">MaxWhoResults</a>;
+<a name="l00102"></a>00102 <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#nb_5Fstart">nb_start</a>;
+<a name="l00103"></a>00103
+<a name="l00104"></a>00104 <span class="keyword">extern</span> std::vector&lt;std::string&gt; <a class="code" href="channels_8cpp.html#module_5Fnames">module_names</a>;
+<a name="l00105"></a>00105
+<a name="l00106"></a>00106 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#boundPortCount">boundPortCount</a>;
+<a name="l00107"></a>00107 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#portCount">portCount</a>;
+<a name="l00108"></a>00108
+<a name="l00109"></a>00109 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#ports_5BMAXSOCKS_5D">ports</a>[MAXSOCKS];
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111
+<a name="l00112"></a>00112
+<a name="l00113"></a>00113 <span class="keyword">extern</span> std::stringstream <a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>;
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115
+<a name="l00116"></a>00116
+<a name="l00117"></a>00117 <span class="keyword">extern</span> FILE *<a class="code" href="channels_8cpp.html#log_5Ffile">log_file</a>;
+<a name="l00118"></a>00118
+<a name="l00119"></a>00119 <span class="keyword">extern</span> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="modules_8cpp.html#fd_5Fref_5Ftable_5B_36_35_35_33_36_5D">fd_ref_table</a>[65536];
+<a name="l00120"></a>00120
+<a name="l00121"></a><a class="code" href="modules_8cpp.html#user_5Fhash">00121</a> <span class="keyword">typedef</span> nspace::hash_map&lt;std::string, userrec*, nspace::hash&lt;string&gt;, <a class="code" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="code" href="modules_8cpp.html#user_5Fhash">user_hash</a>;
+<a name="l00122"></a><a class="code" href="modules_8cpp.html#chan_5Fhash">00122</a> <span class="keyword">typedef</span> nspace::hash_map&lt;std::string, chanrec*, nspace::hash&lt;string&gt;, <a class="code" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="code" href="modules_8cpp.html#chan_5Fhash">chan_hash</a>;
+<a name="l00123"></a><a class="code" href="modules_8cpp.html#address_5Fcache">00123</a> <span class="keyword">typedef</span> nspace::hash_map&lt;in_addr,string*, nspace::hash&lt;in_addr&gt;, <a class="code" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a>&gt; <a class="code" href="modules_8cpp.html#address_5Fcache">address_cache</a>;
+<a name="l00124"></a><a class="code" href="modules_8cpp.html#whowas_5Fhash">00124</a> <span class="keyword">typedef</span> nspace::hash_map&lt;std::string, WhoWasUser*, nspace::hash&lt;string&gt;, <a class="code" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="code" href="modules_8cpp.html#whowas_5Fhash">whowas_hash</a>;
+<a name="l00125"></a><a class="code" href="modules_8cpp.html#command_5Ftable">00125</a> <span class="keyword">typedef</span> std::deque&lt;command_t&gt; <a class="code" href="modules_8cpp.html#command_5Ftable">command_table</a>;
+<a name="l00126"></a>00126
+<a name="l00127"></a>00127
+<a name="l00128"></a>00128 <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#user_5Fhash">user_hash</a> <a class="code" href="modules_8cpp.html#clientlist">clientlist</a>;
+<a name="l00129"></a>00129 <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#chan_5Fhash">chan_hash</a> <a class="code" href="modules_8cpp.html#chanlist">chanlist</a>;
+<a name="l00130"></a>00130 <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#whowas_5Fhash">whowas_hash</a> <a class="code" href="modules_8cpp.html#whowas">whowas</a>;
+<a name="l00131"></a>00131 <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#command_5Ftable">command_table</a> <a class="code" href="modules_8cpp.html#cmdlist">cmdlist</a>;
+<a name="l00132"></a>00132 <span class="keyword">extern</span> <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a> <a class="code" href="modules_8cpp.html#MOTD">MOTD</a>;
+<a name="l00133"></a>00133 <span class="keyword">extern</span> <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a> <a class="code" href="modules_8cpp.html#RULES">RULES</a>;
+<a name="l00134"></a>00134 <span class="keyword">extern</span> <a class="code" href="modules_8cpp.html#address_5Fcache">address_cache</a> <a class="code" href="modules_8cpp.html#IP">IP</a>;
+<a name="l00135"></a>00135
+<a name="l00136"></a>00136
+<a name="l00137"></a>00137 <span class="comment">// class type for holding an extended mode character - internal to core</span>
+<a name="l00138"></a>00138
+<a name="l00139"></a><a class="code" href="classExtMode.html">00139</a> <span class="keyword">class </span><a class="code" href="classExtMode.html">ExtMode</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+<a name="l00140"></a>00140 {
+<a name="l00141"></a>00141 <span class="keyword">public</span>:
+<a name="l00142"></a><a class="code" href="classExtMode.html#modechar">00142</a> <span class="keywordtype">char</span> <a class="code" href="classExtMode.html#modechar">modechar</a>;
+<a name="l00143"></a><a class="code" href="classExtMode.html#type">00143</a> <span class="keywordtype">int</span> <a class="code" href="classExtMode.html#type">type</a>;
+<a name="l00144"></a><a class="code" href="classExtMode.html#needsoper">00144</a> <span class="keywordtype">bool</span> <a class="code" href="classExtMode.html#needsoper">needsoper</a>;
+<a name="l00145"></a><a class="code" href="classExtMode.html#params_5Fwhen_5Fon">00145</a> <span class="keywordtype">int</span> <a class="code" href="classExtMode.html#params_5Fwhen_5Fon">params_when_on</a>;
+<a name="l00146"></a><a class="code" href="classExtMode.html#params_5Fwhen_5Foff">00146</a> <span class="keywordtype">int</span> <a class="code" href="classExtMode.html#params_5Fwhen_5Foff">params_when_off</a>;
+<a name="l00147"></a><a class="code" href="classExtMode.html#list">00147</a> <span class="keywordtype">bool</span> <a class="code" href="classExtMode.html#list">list</a>;
+<a name="l00148"></a><a class="code" href="classExtMode.html#ExtMode_28char_20mc_2C_20int_20ty_2C_20bool_20oper_2C_20int_20p_5Fon_2C_20int_20p_5Foff_29">00148</a> <a class="code" href="classExtMode.html#ExtMode_28char_20mc_2C_20int_20ty_2C_20bool_20oper_2C_20int_20p_5Fon_2C_20int_20p_5Foff_29">ExtMode</a>(<span class="keywordtype">char</span> mc, <span class="keywordtype">int</span> ty, <span class="keywordtype">bool</span> oper, <span class="keywordtype">int</span> p_on, <span class="keywordtype">int</span> p_off) : <a class="code" href="classExtMode.html#modechar">modechar</a>(mc), <a class="code" href="classExtMode.html#type">type</a>(ty), <a class="code" href="classExtMode.html#needsoper">needsoper</a>(oper), <a class="code" href="classExtMode.html#params_5Fwhen_5Fon">params_when_on</a>(p_on), <a class="code" href="classExtMode.html#params_5Fwhen_5Foff">params_when_off</a>(p_off) { };
+<a name="l00149"></a>00149 };
+<a name="l00150"></a>00150
+<a name="l00151"></a><a class="code" href="modules_8cpp.html#ExtModeList">00151</a> <span class="keyword">typedef</span> std::vector&lt;ExtMode&gt; <a class="code" href="modules_8cpp.html#ExtModeList">ExtModeList</a>;
+<a name="l00152"></a><a class="code" href="modules_8cpp.html#ExtModeListIter">00152</a> <span class="keyword">typedef</span> ExtModeList::iterator <a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a>;
+<a name="l00153"></a>00153
+<a name="l00154"></a>00154
+<a name="l00155"></a><a class="code" href="modules_8cpp.html#EMode">00155</a> <a class="code" href="modules_8cpp.html#ExtModeList">ExtModeList</a> <a class="code" href="modules_8cpp.html#EMode">EMode</a>;
+<a name="l00156"></a>00156
+<a name="l00157"></a>00157 <span class="comment">// returns true if an extended mode character is in use</span>
+<a name="l00158"></a><a class="code" href="modules_8cpp.html#ModeDefined_28char_20modechar_2C_20int_20type_29">00158</a> <span class="keywordtype">bool</span> <a class="code" href="modules_8cpp.html#ModeDefined_28char_20modechar_2C_20int_20type_29">ModeDefined</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
+<a name="l00159"></a>00159 {
+<a name="l00160"></a>00160 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00161"></a>00161 {
+<a name="l00162"></a>00162 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
+<a name="l00163"></a>00163 {
+<a name="l00164"></a>00164 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00165"></a>00165 }
+<a name="l00166"></a>00166 }
+<a name="l00167"></a>00167 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00168"></a>00168 }
+<a name="l00169"></a>00169
+<a name="l00170"></a><a class="code" href="modules_8cpp.html#ModeIsListMode_28char_20modechar_2C_20int_20type_29">00170</a> <span class="keywordtype">bool</span> <a class="code" href="modules_8cpp.html#ModeIsListMode_28char_20modechar_2C_20int_20type_29">ModeIsListMode</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
+<a name="l00171"></a>00171 {
+<a name="l00172"></a>00172 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00173"></a>00173 {
+<a name="l00174"></a>00174 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type) &amp;&amp; (i-&gt;list == <span class="keyword">true</span>))
+<a name="l00175"></a>00175 {
+<a name="l00176"></a>00176 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00177"></a>00177 }
+<a name="l00178"></a>00178 }
+<a name="l00179"></a>00179 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00180"></a>00180 }
+<a name="l00181"></a>00181
+<a name="l00182"></a><a class="code" href="modules_8cpp.html#ModeDefinedOper_28char_20modechar_2C_20int_20type_29">00182</a> <span class="keywordtype">bool</span> <a class="code" href="modules_8cpp.html#ModeDefinedOper_28char_20modechar_2C_20int_20type_29">ModeDefinedOper</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
+<a name="l00183"></a>00183 {
+<a name="l00184"></a>00184 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00185"></a>00185 {
+<a name="l00186"></a>00186 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type) &amp;&amp; (i-&gt;needsoper == <span class="keyword">true</span>))
+<a name="l00187"></a>00187 {
+<a name="l00188"></a>00188 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00189"></a>00189 }
+<a name="l00190"></a>00190 }
+<a name="l00191"></a>00191 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00192"></a>00192 }
+<a name="l00193"></a>00193
+<a name="l00194"></a>00194 <span class="comment">// returns number of parameters for a custom mode when it is switched on</span>
+<a name="l00195"></a><a class="code" href="modules_8cpp.html#ModeDefinedOn_28char_20modechar_2C_20int_20type_29">00195</a> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#ModeDefinedOn_28char_20modechar_2C_20int_20type_29">ModeDefinedOn</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
+<a name="l00196"></a>00196 {
+<a name="l00197"></a>00197 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00198"></a>00198 {
+<a name="l00199"></a>00199 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
+<a name="l00200"></a>00200 {
+<a name="l00201"></a>00201 <span class="keywordflow">return</span> i-&gt;params_when_on;
+<a name="l00202"></a>00202 }
+<a name="l00203"></a>00203 }
+<a name="l00204"></a>00204 <span class="keywordflow">return</span> 0;
+<a name="l00205"></a>00205 }
+<a name="l00206"></a>00206
+<a name="l00207"></a>00207 <span class="comment">// returns number of parameters for a custom mode when it is switched on</span>
+<a name="l00208"></a><a class="code" href="modules_8cpp.html#ModeDefinedOff_28char_20modechar_2C_20int_20type_29">00208</a> <span class="keywordtype">int</span> <a class="code" href="modules_8cpp.html#ModeDefinedOff_28char_20modechar_2C_20int_20type_29">ModeDefinedOff</a>(<span class="keywordtype">char</span> modechar, <span class="keywordtype">int</span> type)
+<a name="l00209"></a>00209 {
+<a name="l00210"></a>00210 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00211"></a>00211 {
+<a name="l00212"></a>00212 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
+<a name="l00213"></a>00213 {
+<a name="l00214"></a>00214 <span class="keywordflow">return</span> i-&gt;params_when_off;
+<a name="l00215"></a>00215 }
+<a name="l00216"></a>00216 }
+<a name="l00217"></a>00217 <span class="keywordflow">return</span> 0;
+<a name="l00218"></a>00218 }
+<a name="l00219"></a>00219
+<a name="l00220"></a>00220 <span class="comment">// returns true if an extended mode character is in use</span>
+<a name="l00221"></a><a class="code" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">00221</a> <span class="keywordtype">bool</span> <a class="code" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">DoAddExtendedMode</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_on, <span class="keywordtype">int</span> params_off)
+<a name="l00222"></a>00222 {
+<a name="l00223"></a>00223 <span class="keywordflow">if</span> (<a class="code" href="modules_8cpp.html#ModeDefined_28char_20modechar_2C_20int_20type_29">ModeDefined</a>(modechar,type)) {
+<a name="l00224"></a>00224 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00225"></a>00225 }
+<a name="l00226"></a>00226 <a class="code" href="modules_8cpp.html#EMode">EMode</a>.push_back(<a class="code" href="classExtMode.html">ExtMode</a>(modechar,type,requires_oper,params_on,params_off));
+<a name="l00227"></a>00227 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00228"></a>00228 }
+<a name="l00229"></a>00229
+<a name="l00230"></a>00230 <span class="comment">// turns a mode into a listmode</span>
+<a name="l00231"></a><a class="code" href="modules_8cpp.html#ModeMakeList_28char_20modechar_29">00231</a> <span class="keywordtype">void</span> <a class="code" href="modules_8cpp.html#ModeMakeList_28char_20modechar_29">ModeMakeList</a>(<span class="keywordtype">char</span> modechar)
+<a name="l00232"></a>00232 {
+<a name="l00233"></a>00233 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00234"></a>00234 {
+<a name="l00235"></a>00235 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == <a class="code" href="modules_8h.html#MT_5FCHANNEL">MT_CHANNEL</a>))
+<a name="l00236"></a>00236 {
+<a name="l00237"></a>00237 i-&gt;list = <span class="keyword">true</span>;
+<a name="l00238"></a>00238 <span class="keywordflow">return</span>;
+<a name="l00239"></a>00239 }
+<a name="l00240"></a>00240 }
+<a name="l00241"></a>00241 <span class="keywordflow">return</span>;
+<a name="l00242"></a>00242 }
+<a name="l00243"></a>00243
+<a name="l00244"></a>00244 <span class="comment">// version is a simple class for holding a modules version number</span>
+<a name="l00245"></a>00245
+<a name="l00246"></a><a class="code" href="classVersion.html#Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29">00246</a> <a class="code" href="classVersion.html#Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29">Version::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, <span class="keywordtype">int</span> flags) : Major(major), Minor(minor), Revision(revision), Build(build), Flags(flags) { };
+<a name="l00247"></a>00247
+<a name="l00248"></a>00248 <span class="comment">// admin is a simple class for holding a server's administrative info</span>
+<a name="l00249"></a>00249
+<a name="l00250"></a><a class="code" href="classAdmin.html#Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29">00250</a> <a class="code" href="classAdmin.html#Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29">Admin::Admin</a>(<a class="code" href="namespaceirc.html#string">std::string</a> name, <a class="code" href="namespaceirc.html#string">std::string</a> email, <a class="code" href="namespaceirc.html#string">std::string</a> nick) : Name(name), Email(email), Nick(nick) { };
+<a name="l00251"></a>00251
+<a name="l00252"></a><a class="code" href="classRequest.html#Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29">00252</a> <a class="code" href="classRequest.html#Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29">Request::Request</a>(<span class="keywordtype">char</span>* anydata, <a class="code" href="classModule.html">Module</a>* src, <a class="code" href="classModule.html">Module</a>* dst) : data(anydata), source(src), dest(dst) { };
+<a name="l00253"></a>00253
+<a name="l00254"></a><a class="code" href="classRequest.html#GetData_28_29">00254</a> <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#GetData_28_29">Request::GetData</a>()
+<a name="l00255"></a>00255 {
+<a name="l00256"></a>00256 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#data">data</a>;
+<a name="l00257"></a>00257 }
+<a name="l00258"></a>00258
+<a name="l00259"></a><a class="code" href="classRequest.html#GetSource_28_29">00259</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#GetSource_28_29">Request::GetSource</a>()
+<a name="l00260"></a>00260 {
+<a name="l00261"></a>00261 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#source">source</a>;
+<a name="l00262"></a>00262 }
+<a name="l00263"></a>00263
+<a name="l00264"></a><a class="code" href="classRequest.html#GetDest_28_29">00264</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#GetDest_28_29">Request::GetDest</a>()
+<a name="l00265"></a>00265 {
+<a name="l00266"></a>00266 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classRequest.html#dest">dest</a>;
+<a name="l00267"></a>00267 }
+<a name="l00268"></a>00268
+<a name="l00269"></a><a class="code" href="classRequest.html#Send_28_29">00269</a> <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#Send_28_29">Request::Send</a>()
+<a name="l00270"></a>00270 {
+<a name="l00271"></a>00271 <span class="keywordflow">if</span> (this-&gt;dest)
+<a name="l00272"></a>00272 {
+<a name="l00273"></a>00273 <span class="keywordflow">return</span> <a class="code" href="classRequest.html#dest">dest</a>-&gt;<a class="code" href="classModule.html#OnRequest_28Request_20_2Arequest_29">OnRequest</a>(<span class="keyword">this</span>);
+<a name="l00274"></a>00274 }
+<a name="l00275"></a>00275 <span class="keywordflow">else</span>
+<a name="l00276"></a>00276 {
+<a name="l00277"></a>00277 <span class="keywordflow">return</span> NULL;
+<a name="l00278"></a>00278 }
+<a name="l00279"></a>00279 }
+<a name="l00280"></a>00280
+<a name="l00281"></a><a class="code" href="classEvent.html#Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29">00281</a> <a class="code" href="classEvent.html#Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29">Event::Event</a>(<span class="keywordtype">char</span>* anydata, <a class="code" href="classModule.html">Module</a>* src, <a class="code" href="namespaceirc.html#string">std::string</a> eventid) : data(anydata), source(src), id(eventid) { };
+<a name="l00282"></a>00282
+<a name="l00283"></a><a class="code" href="classEvent.html#GetData_28_29">00283</a> <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#GetData_28_29">Event::GetData</a>()
+<a name="l00284"></a>00284 {
+<a name="l00285"></a>00285 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#data">data</a>;
+<a name="l00286"></a>00286 }
+<a name="l00287"></a>00287
+<a name="l00288"></a><a class="code" href="classEvent.html#GetSource_28_29">00288</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classEvent.html#GetSource_28_29">Event::GetSource</a>()
+<a name="l00289"></a>00289 {
+<a name="l00290"></a>00290 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#source">source</a>;
+<a name="l00291"></a>00291 }
+<a name="l00292"></a>00292
+<a name="l00293"></a><a class="code" href="classEvent.html#Send_28_29">00293</a> <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#Send_28_29">Event::Send</a>()
+<a name="l00294"></a>00294 {
+<a name="l00295"></a>00295 <a class="code" href="modules_8h.html#FOREACH_5FMOD">FOREACH_MOD</a> OnEvent(<span class="keyword">this</span>);
+<a name="l00296"></a>00296 <span class="keywordflow">return</span> NULL;
+<a name="l00297"></a>00297 }
+<a name="l00298"></a>00298
+<a name="l00299"></a><a class="code" href="classEvent.html#GetEventID_28_29">00299</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classEvent.html#GetEventID_28_29">Event::GetEventID</a>()
+<a name="l00300"></a>00300 {
+<a name="l00301"></a>00301 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEvent.html#id">id</a>;
+<a name="l00302"></a>00302 }
+<a name="l00303"></a>00303
+<a name="l00304"></a>00304
+<a name="l00305"></a>00305 <span class="comment">// These declarations define the behavours of the base class Module (which does nothing at all)</span>
+<a name="l00306"></a><a class="code" href="classModule.html#Module_28_29">00306</a> <a class="code" href="classModule.html#Module_28_29">Module::Module</a>() { }
+<a name="l00307"></a><a class="code" href="classModule.html#_7EModule_28_29">00307</a> <a class="code" href="classModule.html#_7EModule_28_29">Module::~Module</a>() { }
+<a name="l00308"></a><a class="code" href="classModule.html#OnUserConnect_28userrec_20_2Auser_29">00308</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserConnect_28userrec_20_2Auser_29">Module::OnUserConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { }
+<a name="l00309"></a><a class="code" href="classModule.html#OnUserQuit_28userrec_20_2Auser_29">00309</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserQuit_28userrec_20_2Auser_29">Module::OnUserQuit</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { }
+<a name="l00310"></a><a class="code" href="classModule.html#OnUserDisconnect_28userrec_20_2Auser_29">00310</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserDisconnect_28userrec_20_2Auser_29">Module::OnUserDisconnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { }
+<a name="l00311"></a><a class="code" href="classModule.html#OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">00311</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">Module::OnUserJoin</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel) { }
+<a name="l00312"></a><a class="code" href="classModule.html#OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">00312</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">Module::OnUserPart</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel) { }
+<a name="l00313"></a><a class="code" href="classModule.html#OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">00313</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">Module::OnPacketTransmit</a>(<a class="code" href="namespaceirc.html#string">std::string</a> &amp;data, <a class="code" href="namespaceirc.html#string">std::string</a> serv) { }
+<a name="l00314"></a><a class="code" href="classModule.html#OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">00314</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">Module::OnPacketReceive</a>(<a class="code" href="namespaceirc.html#string">std::string</a> &amp;data, <a class="code" href="namespaceirc.html#string">std::string</a> serv) { }
+<a name="l00315"></a><a class="code" href="classModule.html#OnRehash_28_29">00315</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnRehash_28_29">Module::OnRehash</a>() { }
+<a name="l00316"></a><a class="code" href="classModule.html#OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29">00316</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29">Module::OnServerRaw</a>(<a class="code" href="namespaceirc.html#string">std::string</a> &amp;raw, <span class="keywordtype">bool</span> inbound, <a class="code" href="classuserrec.html">userrec</a>* user) { }
+<a name="l00317"></a><a class="code" href="classModule.html#OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29">00317</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29">Module::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) { <span class="keywordflow">return</span> 0; }
+<a name="l00318"></a><a class="code" href="classModule.html#OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29">00318</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29">Module::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, <a class="code" href="modules_8h.html#string_5Flist">string_list</a> &amp;params) { <span class="keywordflow">return</span> <span class="keyword">false</span>; }
+<a name="l00319"></a><a class="code" href="classModule.html#GetVersion_28_29">00319</a> <a class="code" href="classVersion.html">Version</a> <a class="code" href="classModule.html#GetVersion_28_29">Module::GetVersion</a>() { <span class="keywordflow">return</span> <a class="code" href="classVersion.html">Version</a>(1,0,0,0,<a class="code" href="modules_8h.html#VF_5FVENDOR">VF_VENDOR</a>); }
+<a name="l00320"></a><a class="code" href="classModule.html#OnOper_28userrec_20_2Auser_29">00320</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnOper_28userrec_20_2Auser_29">Module::OnOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
+<a name="l00321"></a><a class="code" href="classModule.html#OnInfo_28userrec_20_2Auser_29">00321</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnInfo_28userrec_20_2Auser_29">Module::OnInfo</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
+<a name="l00322"></a><a class="code" href="classModule.html#OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29">00322</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29">Module::OnWhois</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest) { };
+<a name="l00323"></a><a class="code" href="classModule.html#OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29">00323</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29">Module::OnUserPreInvite</a>(<a class="code" href="classuserrec.html">userrec</a>* source,<a class="code" href="classuserrec.html">userrec</a>* dest,<a class="code" href="classchanrec.html">chanrec</a>* channel) { <span class="keywordflow">return</span> 0; };
+<a name="l00324"></a><a class="code" href="classModule.html#OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">00324</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">Module::OnUserPreMessage</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<span class="keywordtype">void</span>* dest,<span class="keywordtype">int</span> target_type, <a class="code" href="namespaceirc.html#string">std::string</a> &amp;text) { <span class="keywordflow">return</span> 0; };
+<a name="l00325"></a><a class="code" href="classModule.html#OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">00325</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">Module::OnUserPreNotice</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<span class="keywordtype">void</span>* dest,<span class="keywordtype">int</span> target_type, <a class="code" href="namespaceirc.html#string">std::string</a> &amp;text) { <span class="keywordflow">return</span> 0; };
+<a name="l00326"></a><a class="code" href="classModule.html#OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29">00326</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29">Module::OnUserPreNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> newnick) { <span class="keywordflow">return</span> 0; };
+<a name="l00327"></a><a class="code" href="classModule.html#OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29">00327</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29">Module::OnUserPostNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> oldnick) { };
+<a name="l00328"></a><a class="code" href="classModule.html#OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29">00328</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29">Module::OnAccessCheck</a>(<a class="code" href="classuserrec.html">userrec</a>* source,<a class="code" href="classuserrec.html">userrec</a>* dest,<a class="code" href="classchanrec.html">chanrec</a>* channel,<span class="keywordtype">int</span> access_type) { <span class="keywordflow">return</span> <a class="code" href="modules_8h.html#ACR_5FDEFAULT">ACR_DEFAULT</a>; };
+<a name="l00329"></a><a class="code" href="classModule.html#OnUserSync_28userrec_20_2Auser_29">00329</a> <a class="code" href="modules_8h.html#string_5Flist">string_list</a> <a class="code" href="classModule.html#OnUserSync_28userrec_20_2Auser_29">Module::OnUserSync</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { <a class="code" href="modules_8h.html#string_5Flist">string_list</a> empty; <span class="keywordflow">return</span> empty; }
+<a name="l00330"></a><a class="code" href="classModule.html#OnChannelSync_28chanrec_20_2Achan_29">00330</a> <a class="code" href="modules_8h.html#string_5Flist">string_list</a> <a class="code" href="classModule.html#OnChannelSync_28chanrec_20_2Achan_29">Module::OnChannelSync</a>(<a class="code" href="classchanrec.html">chanrec</a>* chan) { <a class="code" href="modules_8h.html#string_5Flist">string_list</a> empty; <span class="keywordflow">return</span> empty; }
+<a name="l00331"></a><a class="code" href="classModule.html#On_30_30_35Numeric_28std_3A_3Astring_20_26output_29">00331</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#On_30_30_35Numeric_28std_3A_3Astring_20_26output_29">Module::On005Numeric</a>(<a class="code" href="namespaceirc.html#string">std::string</a> &amp;output) { };
+<a name="l00332"></a><a class="code" href="classModule.html#OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29">00332</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29">Module::OnKill</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest, <a class="code" href="namespaceirc.html#string">std::string</a> reason) { <span class="keywordflow">return</span> 0; };
+<a name="l00333"></a><a class="code" href="classModule.html#OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">00333</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">Module::OnLoadModule</a>(<a class="code" href="classModule.html">Module</a>* mod,<a class="code" href="namespaceirc.html#string">std::string</a> name) { };
+<a name="l00334"></a><a class="code" href="classModule.html#OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">00334</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">Module::OnUnloadModule</a>(<a class="code" href="classModule.html">Module</a>* mod,<a class="code" href="namespaceirc.html#string">std::string</a> name) { };
+<a name="l00335"></a><a class="code" href="classModule.html#OnBackgroundTimer_28time_5Ft_20curtime_29">00335</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnBackgroundTimer_28time_5Ft_20curtime_29">Module::OnBackgroundTimer</a>(time_t curtime) { };
+<a name="l00336"></a><a class="code" href="classModule.html#OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29">00336</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29">Module::OnSendList</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel, <span class="keywordtype">char</span> mode) { };
+<a name="l00337"></a><a class="code" href="classModule.html#OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">00337</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">Module::OnPreCommand</a>(<a class="code" href="namespaceirc.html#string">std::string</a> command, <span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user) { <span class="keywordflow">return</span> 0; };
+<a name="l00338"></a><a class="code" href="classModule.html#OnCheckReady_28userrec_20_2Auser_29">00338</a> <span class="keywordtype">bool</span> <a class="code" href="classModule.html#OnCheckReady_28userrec_20_2Auser_29">Module::OnCheckReady</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
+<a name="l00339"></a><a class="code" href="classModule.html#OnUserRegister_28userrec_20_2Auser_29">00339</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserRegister_28userrec_20_2Auser_29">Module::OnUserRegister</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
+<a name="l00340"></a><a class="code" href="classModule.html#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">00340</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">Module::OnUserPreKick</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <a class="code" href="namespaceirc.html#string">std::string</a> reason) { <span class="keywordflow">return</span> 0; };
+<a name="l00341"></a><a class="code" href="classModule.html#OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">00341</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">Module::OnUserKick</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <a class="code" href="namespaceirc.html#string">std::string</a> reason) { };
+<a name="l00342"></a><a class="code" href="classModule.html#OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29">00342</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29">Module::OnRawMode</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <span class="keywordtype">char</span> mode, <a class="code" href="namespaceirc.html#string">std::string</a> param, <span class="keywordtype">bool</span> adding, <span class="keywordtype">int</span> pcnt) { <span class="keywordflow">return</span> 0; };
+<a name="l00343"></a><a class="code" href="classModule.html#OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">00343</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module::OnCheckInvite</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan) { <span class="keywordflow">return</span> 0; };
+<a name="l00344"></a><a class="code" href="classModule.html#OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29">00344</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29">Module::OnCheckKey</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <a class="code" href="namespaceirc.html#string">std::string</a> keygiven) { <span class="keywordflow">return</span> 0; };
+<a name="l00345"></a><a class="code" href="classModule.html#OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">00345</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module::OnCheckLimit</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan) { <span class="keywordflow">return</span> 0; };
+<a name="l00346"></a><a class="code" href="classModule.html#OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">00346</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">Module::OnCheckBan</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan) { <span class="keywordflow">return</span> 0; };
+<a name="l00347"></a><a class="code" href="classModule.html#OnStats_28char_20symbol_29">00347</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnStats_28char_20symbol_29">Module::OnStats</a>(<span class="keywordtype">char</span> symbol) { };
+<a name="l00348"></a><a class="code" href="classModule.html#OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">00348</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">Module::OnChangeLocalUserHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> newhost) { <span class="keywordflow">return</span> 0; };
+<a name="l00349"></a><a class="code" href="classModule.html#OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">00349</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">Module::OnChangeLocalUserGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> newhost) { <span class="keywordflow">return</span> 0; };
+<a name="l00350"></a><a class="code" href="classModule.html#OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29">00350</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29">Module::OnLocalTopicChange</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <a class="code" href="namespaceirc.html#string">std::string</a> topic) { <span class="keywordflow">return</span> 0; };
+<a name="l00351"></a><a class="code" href="classModule.html#OnEvent_28Event_20_2Aevent_29">00351</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnEvent_28Event_20_2Aevent_29">Module::OnEvent</a>(<a class="code" href="classEvent.html">Event</a>* event) { <span class="keywordflow">return</span>; };
+<a name="l00352"></a><a class="code" href="classModule.html#OnRequest_28Request_20_2Arequest_29">00352</a> <span class="keywordtype">char</span>* <a class="code" href="classModule.html#OnRequest_28Request_20_2Arequest_29">Module::OnRequest</a>(<a class="code" href="classRequest.html">Request</a>* request) { <span class="keywordflow">return</span> NULL; };
+<a name="l00353"></a><a class="code" href="classModule.html#OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29">00353</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29">Module::OnOperCompare</a>(<a class="code" href="namespaceirc.html#string">std::string</a> password, <a class="code" href="namespaceirc.html#string">std::string</a> input) { <span class="keywordflow">return</span> 0; };
+<a name="l00354"></a><a class="code" href="classModule.html#OnGlobalOper_28userrec_20_2Auser_29">00354</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnGlobalOper_28userrec_20_2Auser_29">Module::OnGlobalOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
+<a name="l00355"></a><a class="code" href="classModule.html#OnGlobalConnect_28userrec_20_2Auser_29">00355</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnGlobalConnect_28userrec_20_2Auser_29">Module::OnGlobalConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user) { };
+<a name="l00356"></a><a class="code" href="classModule.html#OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">00356</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">Module::OnAddBan</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classchanrec.html">chanrec</a>* channel,<a class="code" href="namespaceirc.html#string">std::string</a> banmask) { <span class="keywordflow">return</span> 0; };
+<a name="l00357"></a><a class="code" href="classModule.html#OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">00357</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">Module::OnDelBan</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classchanrec.html">chanrec</a>* channel,<a class="code" href="namespaceirc.html#string">std::string</a> banmask) { <span class="keywordflow">return</span> 0; };
+<a name="l00358"></a><a class="code" href="classModule.html#OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29">00358</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29">Module::OnRawSocketAccept</a>(<span class="keywordtype">int</span> fd, <a class="code" href="namespaceirc.html#string">std::string</a> ip, <span class="keywordtype">int</span> localport) { };
+<a name="l00359"></a><a class="code" href="classModule.html#OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29">00359</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29">Module::OnRawSocketWrite</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">char</span>* buffer, <span class="keywordtype">int</span> count) { <span class="keywordflow">return</span> 0; };
+<a name="l00360"></a><a class="code" href="classModule.html#OnRawSocketClose_28int_20fd_29">00360</a> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnRawSocketClose_28int_20fd_29">Module::OnRawSocketClose</a>(<span class="keywordtype">int</span> fd) { };
+<a name="l00361"></a><a class="code" href="classModule.html#OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29">00361</a> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29">Module::OnRawSocketRead</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">char</span>* buffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> count, <span class="keywordtype">int</span> &amp;readresult) { <span class="keywordflow">return</span> 0; };
+<a name="l00362"></a>00362
+<a name="l00363"></a>00363 <span class="comment">// server is a wrapper class that provides methods to all of the C-style</span>
+<a name="l00364"></a>00364 <span class="comment">// exports in the core</span>
+<a name="l00365"></a>00365 <span class="comment">//</span>
+<a name="l00366"></a>00366
+<a name="l00367"></a><a class="code" href="classServer.html#Server_28_29">00367</a> <a class="code" href="classServer.html#Server_28_29">Server::Server</a>()
+<a name="l00368"></a>00368 {
+<a name="l00369"></a>00369 }
+<a name="l00370"></a>00370
+<a name="l00371"></a><a class="code" href="classServer.html#_7EServer_28_29">00371</a> <a class="code" href="classServer.html#_7EServer_28_29">Server::~Server</a>()
+<a name="l00372"></a>00372 {
+<a name="l00373"></a>00373 }
+<a name="l00374"></a>00374
+<a name="l00375"></a><a class="code" href="classServer.html#AddSocket_28InspSocket_20_2Asock_29">00375</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddSocket_28InspSocket_20_2Asock_29">Server::AddSocket</a>(<a class="code" href="classInspSocket.html">InspSocket</a>* sock)
+<a name="l00376"></a>00376 {
+<a name="l00377"></a>00377 <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.push_back(sock);
+<a name="l00378"></a>00378 }
+<a name="l00379"></a>00379
+<a name="l00380"></a><a class="code" href="classServer.html#DelSocket_28InspSocket_20_2Asock_29">00380</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#DelSocket_28InspSocket_20_2Asock_29">Server::DelSocket</a>(<a class="code" href="classInspSocket.html">InspSocket</a>* sock)
+<a name="l00381"></a>00381 {
+<a name="l00382"></a>00382 <span class="keywordflow">for</span> (std::vector&lt;InspSocket*&gt;::iterator a = <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.begin(); a &lt; <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.end(); a++)
+<a name="l00383"></a>00383 {
+<a name="l00384"></a>00384 <span class="keywordflow">if</span> (*a == sock)
+<a name="l00385"></a>00385 {
+<a name="l00386"></a>00386 <a class="code" href="modules_8cpp.html#module_5Fsockets">module_sockets</a>.erase(a);
+<a name="l00387"></a>00387 <span class="keywordflow">return</span>;
+<a name="l00388"></a>00388 }
+<a name="l00389"></a>00389 }
+<a name="l00390"></a>00390 }
+<a name="l00391"></a>00391
+<a name="l00392"></a><a class="code" href="classServer.html#SendOpers_28std_3A_3Astring_20s_29">00392</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendOpers_28std_3A_3Astring_20s_29">Server::SendOpers</a>(<a class="code" href="namespaceirc.html#string">std::string</a> s)
+<a name="l00393"></a>00393 {
+<a name="l00394"></a>00394 WriteOpers(<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00395"></a>00395 }
+<a name="l00396"></a>00396
+<a name="l00397"></a><a class="code" href="classServer.html#MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29">00397</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29">Server::MatchText</a>(<a class="code" href="namespaceirc.html#string">std::string</a> sliteral, <a class="code" href="namespaceirc.html#string">std::string</a> spattern)
+<a name="l00398"></a>00398 {
+<a name="l00399"></a>00399 <span class="keywordtype">char</span> literal[MAXBUF],pattern[MAXBUF];
+<a name="l00400"></a>00400 strlcpy(literal,sliteral.c_str(),MAXBUF);
+<a name="l00401"></a>00401 strlcpy(pattern,spattern.c_str(),MAXBUF);
+<a name="l00402"></a>00402 <span class="keywordflow">return</span> match(literal,pattern);
+<a name="l00403"></a>00403 }
+<a name="l00404"></a>00404
+<a name="l00405"></a><a class="code" href="classServer.html#SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29">00405</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29">Server::SendToModeMask</a>(<a class="code" href="namespaceirc.html#string">std::string</a> modes, <span class="keywordtype">int</span> flags, <a class="code" href="namespaceirc.html#string">std::string</a> text)
+<a name="l00406"></a>00406 {
+<a name="l00407"></a>00407 WriteMode(modes.c_str(),flags,<span class="stringliteral">"%s"</span>,text.c_str());
+<a name="l00408"></a>00408 }
+<a name="l00409"></a>00409
+<a name="l00410"></a><a class="code" href="classServer.html#JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29">00410</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29">Server::JoinUserToChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> cname, <a class="code" href="namespaceirc.html#string">std::string</a> key)
+<a name="l00411"></a>00411 {
+<a name="l00412"></a>00412 <span class="keywordflow">return</span> add_channel(user,cname.c_str(),key.c_str(),<span class="keyword">false</span>);
+<a name="l00413"></a>00413 }
+<a name="l00414"></a>00414
+<a name="l00415"></a><a class="code" href="classServer.html#PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29">00415</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29">Server::PartUserFromChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> cname, <a class="code" href="namespaceirc.html#string">std::string</a> reason)
+<a name="l00416"></a>00416 {
+<a name="l00417"></a>00417 <span class="keywordflow">return</span> del_channel(user,cname.c_str(),reason.c_str(),<span class="keyword">false</span>);
+<a name="l00418"></a>00418 }
+<a name="l00419"></a>00419
+<a name="l00420"></a><a class="code" href="classServer.html#GetUsers_28chanrec_20_2Achan_29">00420</a> <a class="code" href="modules_8h.html#chanuserlist">chanuserlist</a> <a class="code" href="classServer.html#GetUsers_28chanrec_20_2Achan_29">Server::GetUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* chan)
+<a name="l00421"></a>00421 {
+<a name="l00422"></a>00422 <a class="code" href="modules_8h.html#chanuserlist">chanuserlist</a> userl;
+<a name="l00423"></a>00423 userl.clear();
+<a name="l00424"></a>00424 std::vector&lt;char*&gt; *<a class="code" href="channels_8cpp.html#list_5BMAXBUF_5D">list</a> = chan-&gt;<a class="code" href="classchanrec.html#GetUsers_28_29">GetUsers</a>();
+<a name="l00425"></a>00425 <span class="keywordflow">for</span> (std::vector&lt;char*&gt;::iterator i = list-&gt;begin(); i != list-&gt;end(); i++)
+<a name="l00426"></a>00426 {
+<a name="l00427"></a>00427 <span class="keywordtype">char</span>* o = *i;
+<a name="l00428"></a>00428 userl.push_back((<a class="code" href="classuserrec.html">userrec</a>*)o);
+<a name="l00429"></a>00429 }
+<a name="l00430"></a>00430 <span class="keywordflow">return</span> userl;
+<a name="l00431"></a>00431 }
+<a name="l00432"></a><a class="code" href="classServer.html#ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29">00432</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29">Server::ChangeUserNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> nickname)
+<a name="l00433"></a>00433 {
+<a name="l00434"></a>00434 force_nickchange(user,nickname.c_str());
+<a name="l00435"></a>00435 }
+<a name="l00436"></a>00436
+<a name="l00437"></a><a class="code" href="classServer.html#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29">00437</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29">Server::QuitUser</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> reason)
+<a name="l00438"></a>00438 {
+<a name="l00439"></a>00439 kill_link(user,reason.c_str());
+<a name="l00440"></a>00440 }
+<a name="l00441"></a>00441
+<a name="l00442"></a><a class="code" href="classServer.html#IsUlined_28std_3A_3Astring_20server_29">00442</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#IsUlined_28std_3A_3Astring_20server_29">Server::IsUlined</a>(<a class="code" href="namespaceirc.html#string">std::string</a> server)
+<a name="l00443"></a>00443 {
+<a name="l00444"></a>00444 <span class="keywordflow">return</span> <a class="code" href="commands_8h.html#is_5Fuline_28const_20char_20_2Aserver_29">is_uline</a>(server.c_str());
+<a name="l00445"></a>00445 }
+<a name="l00446"></a>00446
+<a name="l00447"></a><a class="code" href="classServer.html#CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">00447</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">Server::CallCommandHandler</a>(<a class="code" href="namespaceirc.html#string">std::string</a> commandname, <span class="keywordtype">char</span>** parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a>* user)
+<a name="l00448"></a>00448 {
+<a name="l00449"></a>00449 call_handler(commandname.c_str(),parameters,pcnt,user);
+<a name="l00450"></a>00450 }
+<a name="l00451"></a>00451
+<a name="l00452"></a><a class="code" href="classServer.html#Log_28int_20level_2C_20std_3A_3Astring_20s_29">00452</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#Log_28int_20level_2C_20std_3A_3Astring_20s_29">Server::Log</a>(<span class="keywordtype">int</span> level, <a class="code" href="namespaceirc.html#string">std::string</a> s)
+<a name="l00453"></a>00453 {
+<a name="l00454"></a>00454 log(level,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00455"></a>00455 }
+<a name="l00456"></a>00456
+<a name="l00457"></a><a class="code" href="classServer.html#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">00457</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">Server::AddCommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams, <span class="keywordtype">char</span>* source)
+<a name="l00458"></a>00458 {
+<a name="l00459"></a>00459 <a class="code" href="modules_8h.html#createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">createcommand</a>(cmd,f,flags,minparams,source);
+<a name="l00460"></a>00460 }
+<a name="l00461"></a>00461
+<a name="l00462"></a><a class="code" href="classServer.html#SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">00462</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">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="l00463"></a>00463 {
+<a name="l00464"></a>00464 <a class="code" href="mode_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">server_mode</a>(parameters,pcnt,user);
+<a name="l00465"></a>00465 }
+<a name="l00466"></a>00466
+<a name="l00467"></a><a class="code" href="classServer.html#Send_28int_20Socket_2C_20std_3A_3Astring_20s_29">00467</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#Send_28int_20Socket_2C_20std_3A_3Astring_20s_29">Server::Send</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="namespaceirc.html#string">std::string</a> s)
+<a name="l00468"></a>00468 {
+<a name="l00469"></a>00469 Write(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00470"></a>00470 }
+<a name="l00471"></a>00471
+<a name="l00472"></a><a class="code" href="classServer.html#SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29">00472</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29">Server::SendServ</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="namespaceirc.html#string">std::string</a> s)
+<a name="l00473"></a>00473 {
+<a name="l00474"></a>00474 WriteServ(Socket,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00475"></a>00475 }
+<a name="l00476"></a>00476
+<a name="l00477"></a><a class="code" href="classServer.html#SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29">00477</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29">Server::SendFrom</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="namespaceirc.html#string">std::string</a> s)
+<a name="l00478"></a>00478 {
+<a name="l00479"></a>00479 WriteFrom(Socket,User,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00480"></a>00480 }
+<a name="l00481"></a>00481
+<a name="l00482"></a><a class="code" href="classServer.html#SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29">00482</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29">Server::SendTo</a>(<a class="code" href="classuserrec.html">userrec</a>* Source, <a class="code" href="classuserrec.html">userrec</a>* Dest, <a class="code" href="namespaceirc.html#string">std::string</a> s)
+<a name="l00483"></a>00483 {
+<a name="l00484"></a>00484 <span class="keywordflow">if</span> (!Source)
+<a name="l00485"></a>00485 {
+<a name="l00486"></a>00486 <span class="comment">// if source is NULL, then the message originates from the local server</span>
+<a name="l00487"></a>00487 Write(Dest-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">":%s %s"</span>,this-&gt;GetServerName().c_str(),s.c_str());
+<a name="l00488"></a>00488 }
+<a name="l00489"></a>00489 <span class="keywordflow">else</span>
+<a name="l00490"></a>00490 {
+<a name="l00491"></a>00491 <span class="comment">// otherwise it comes from the user specified</span>
+<a name="l00492"></a>00492 WriteTo(Source,Dest,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00493"></a>00493 }
+<a name="l00494"></a>00494 }
+<a name="l00495"></a>00495
+<a name="l00496"></a><a class="code" href="classServer.html#SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29">00496</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29">Server::SendChannelServerNotice</a>(<a class="code" href="namespaceirc.html#string">std::string</a> ServName, <a class="code" href="classchanrec.html">chanrec</a>* Channel, <a class="code" href="namespaceirc.html#string">std::string</a> text)
+<a name="l00497"></a>00497 {
+<a name="l00498"></a>00498 WriteChannelWithServ((<span class="keywordtype">char</span>*)ServName.c_str(), Channel, <span class="stringliteral">"%s"</span>, text.c_str());
+<a name="l00499"></a>00499 }
+<a name="l00500"></a>00500
+<a name="l00501"></a><a class="code" href="classServer.html#SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29">00501</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29">Server::SendChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Channel, <a class="code" href="namespaceirc.html#string">std::string</a> s,<span class="keywordtype">bool</span> IncludeSender)
+<a name="l00502"></a>00502 {
+<a name="l00503"></a>00503 <span class="keywordflow">if</span> (IncludeSender)
+<a name="l00504"></a>00504 {
+<a name="l00505"></a>00505 WriteChannel(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00506"></a>00506 }
+<a name="l00507"></a>00507 <span class="keywordflow">else</span>
+<a name="l00508"></a>00508 {
+<a name="l00509"></a>00509 ChanExceptSender(Channel,User,<span class="stringliteral">"%s"</span>,s.c_str());
+<a name="l00510"></a>00510 }
+<a name="l00511"></a>00511 }
+<a name="l00512"></a>00512
+<a name="l00513"></a><a class="code" href="classServer.html#CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29">00513</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29">Server::CommonChannels</a>(<a class="code" href="classuserrec.html">userrec</a>* u1, <a class="code" href="classuserrec.html">userrec</a>* u2)
+<a name="l00514"></a>00514 {
+<a name="l00515"></a>00515 <span class="keywordflow">return</span> (<a class="code" href="message_8h.html#common_5Fchannels_28userrec_20_2Au_2C_20userrec_20_2Au_32_29">common_channels</a>(u1,u2) != 0);
+<a name="l00516"></a>00516 }
+<a name="l00517"></a>00517
+<a name="l00518"></a><a class="code" href="classServer.html#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29">00518</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29">Server::SendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="namespaceirc.html#string">std::string</a> text,<span class="keywordtype">bool</span> IncludeSender)
+<a name="l00519"></a>00519 {
+<a name="l00520"></a>00520 <span class="keywordflow">if</span> (IncludeSender)
+<a name="l00521"></a>00521 {
+<a name="l00522"></a>00522 WriteCommon(User,<span class="stringliteral">"%s"</span>,text.c_str());
+<a name="l00523"></a>00523 }
+<a name="l00524"></a>00524 <span class="keywordflow">else</span>
+<a name="l00525"></a>00525 {
+<a name="l00526"></a>00526 WriteCommonExcept(User,<span class="stringliteral">"%s"</span>,text.c_str());
+<a name="l00527"></a>00527 }
+<a name="l00528"></a>00528 }
+<a name="l00529"></a>00529
+<a name="l00530"></a><a class="code" href="classServer.html#SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29">00530</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29">Server::SendWallops</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="namespaceirc.html#string">std::string</a> text)
+<a name="l00531"></a>00531 {
+<a name="l00532"></a>00532 WriteWallOps(User,<span class="keyword">false</span>,<span class="stringliteral">"%s"</span>,text.c_str());
+<a name="l00533"></a>00533 }
+<a name="l00534"></a>00534
+<a name="l00535"></a><a class="code" href="classServer.html#ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29">00535</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29">Server::ChangeHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> host)
+<a name="l00536"></a>00536 {
+<a name="l00537"></a>00537 <a class="code" href="message_8h.html#ChangeDisplayedHost_28userrec_20_2Auser_2C_20const_20char_20_2Ahost_29">ChangeDisplayedHost</a>(user,host.c_str());
+<a name="l00538"></a>00538 }
+<a name="l00539"></a>00539
+<a name="l00540"></a><a class="code" href="classServer.html#ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29">00540</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29">Server::ChangeGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> gecos)
+<a name="l00541"></a>00541 {
+<a name="l00542"></a>00542 <a class="code" href="message_8h.html#ChangeName_28userrec_20_2Auser_2C_20const_20char_20_2Agecos_29">ChangeName</a>(user,gecos.c_str());
+<a name="l00543"></a>00543 }
+<a name="l00544"></a>00544
+<a name="l00545"></a><a class="code" href="classServer.html#IsNick_28std_3A_3Astring_20nick_29">00545</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#IsNick_28std_3A_3Astring_20nick_29">Server::IsNick</a>(<a class="code" href="namespaceirc.html#string">std::string</a> nick)
+<a name="l00546"></a>00546 {
+<a name="l00547"></a>00547 <span class="keywordflow">return</span> (<a class="code" href="message_8h.html#isnick_28const_20char_20_2An_29">isnick</a>(nick.c_str()) != 0);
+<a name="l00548"></a>00548 }
+<a name="l00549"></a>00549
+<a name="l00550"></a><a class="code" href="classServer.html#FindNick_28std_3A_3Astring_20nick_29">00550</a> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#FindNick_28std_3A_3Astring_20nick_29">Server::FindNick</a>(<a class="code" href="namespaceirc.html#string">std::string</a> nick)
+<a name="l00551"></a>00551 {
+<a name="l00552"></a>00552 <span class="keywordflow">return</span> Find(nick);
+<a name="l00553"></a>00553 }
+<a name="l00554"></a>00554
+<a name="l00555"></a><a class="code" href="classServer.html#FindDescriptor_28int_20socket_29">00555</a> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#FindDescriptor_28int_20socket_29">Server::FindDescriptor</a>(<span class="keywordtype">int</span> socket)
+<a name="l00556"></a>00556 {
+<a name="l00557"></a>00557 <span class="keywordflow">return</span> (socket &lt; 65536 ? fd_ref_table[socket] : NULL);
+<a name="l00558"></a>00558 }
+<a name="l00559"></a>00559
+<a name="l00560"></a><a class="code" href="classServer.html#FindChannel_28std_3A_3Astring_20channel_29">00560</a> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#FindChannel_28std_3A_3Astring_20channel_29">Server::FindChannel</a>(<a class="code" href="namespaceirc.html#string">std::string</a> channel)
+<a name="l00561"></a>00561 {
+<a name="l00562"></a>00562 <span class="keywordflow">return</span> FindChan(channel.c_str());
+<a name="l00563"></a>00563 }
+<a name="l00564"></a>00564
+<a name="l00565"></a><a class="code" href="classServer.html#ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">00565</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classServer.html#ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">Server::ChanMode</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan)
+<a name="l00566"></a>00566 {
+<a name="l00567"></a>00567 <span class="keywordflow">return</span> <a class="code" href="message_8h.html#cmode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">cmode</a>(User,Chan);
+<a name="l00568"></a>00568 }
+<a name="l00569"></a>00569
+<a name="l00570"></a><a class="code" href="classServer.html#IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">00570</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">Server::IsOnChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan)
+<a name="l00571"></a>00571 {
+<a name="l00572"></a>00572 <span class="keywordflow">return</span> <a class="code" href="message_8h.html#has_5Fchannel_28userrec_20_2Au_2C_20chanrec_20_2Ac_29">has_channel</a>(User,Chan);
+<a name="l00573"></a>00573 }
+<a name="l00574"></a>00574
+<a name="l00575"></a><a class="code" href="classServer.html#GetServerName_28_29">00575</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classServer.html#GetServerName_28_29">Server::GetServerName</a>()
+<a name="l00576"></a>00576 {
+<a name="l00577"></a>00577 <span class="keywordflow">return</span> getservername();
+<a name="l00578"></a>00578 }
+<a name="l00579"></a>00579
+<a name="l00580"></a><a class="code" href="classServer.html#GetNetworkName_28_29">00580</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classServer.html#GetNetworkName_28_29">Server::GetNetworkName</a>()
+<a name="l00581"></a>00581 {
+<a name="l00582"></a>00582 <span class="keywordflow">return</span> getnetworkname();
+<a name="l00583"></a>00583 }
+<a name="l00584"></a>00584
+<a name="l00585"></a><a class="code" href="classServer.html#GetServerDescription_28_29">00585</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classServer.html#GetServerDescription_28_29">Server::GetServerDescription</a>()
+<a name="l00586"></a>00586 {
+<a name="l00587"></a>00587 <span class="keywordflow">return</span> getserverdesc();
+<a name="l00588"></a>00588 }
+<a name="l00589"></a>00589
+<a name="l00590"></a><a class="code" href="classServer.html#GetAdmin_28_29">00590</a> <a class="code" href="classAdmin.html">Admin</a> <a class="code" href="classServer.html#GetAdmin_28_29">Server::GetAdmin</a>()
+<a name="l00591"></a>00591 {
+<a name="l00592"></a>00592 <span class="keywordflow">return</span> <a class="code" href="classAdmin.html">Admin</a>(getadminname(),getadminemail(),getadminnick());
+<a name="l00593"></a>00593 }
+<a name="l00594"></a>00594
+<a name="l00595"></a>00595
+<a name="l00596"></a>00596
+<a name="l00597"></a><a class="code" href="classServer.html#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29">00597</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29">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)
+<a name="l00598"></a>00598 {
+<a name="l00599"></a>00599 <span class="keywordflow">if</span> (((modechar &gt;= <span class="charliteral">'A'</span>) &amp;&amp; (modechar &lt;= <span class="charliteral">'Z'</span>)) || ((modechar &gt;= <span class="charliteral">'a'</span>) &amp;&amp; (modechar &lt;= <span class="charliteral">'z'</span>)))
+<a name="l00600"></a>00600 {
+<a name="l00601"></a>00601 <span class="keywordflow">if</span> (type == <a class="code" href="modules_8h.html#MT_5FSERVER">MT_SERVER</a>)
+<a name="l00602"></a>00602 {
+<a name="l00603"></a>00603 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Modes of type MT_SERVER are reserved for future expansion"</span>);
+<a name="l00604"></a>00604 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00605"></a>00605 }
+<a name="l00606"></a>00606 <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#MT_5FCLIENT">MT_CLIENT</a>))
+<a name="l00607"></a>00607 {
+<a name="l00608"></a>00608 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Parameters on MT_CLIENT modes are not supported"</span>);
+<a name="l00609"></a>00609 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00610"></a>00610 }
+<a name="l00611"></a>00611 <span class="keywordflow">if</span> ((params_when_on&gt;1) || (params_when_off&gt;1))
+<a name="l00612"></a>00612 {
+<a name="l00613"></a>00613 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** More than one parameter for an MT_CHANNEL mode is not yet supported"</span>);
+<a name="l00614"></a>00614 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00615"></a>00615 }
+<a name="l00616"></a>00616 <span class="keywordflow">return</span> <a class="code" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">DoAddExtendedMode</a>(modechar,type,requires_oper,params_when_on,params_when_off);
+<a name="l00617"></a>00617 }
+<a name="l00618"></a>00618 <span class="keywordflow">else</span>
+<a name="l00619"></a>00619 {
+<a name="l00620"></a>00620 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** API ERROR *** Muppet modechar detected."</span>);
+<a name="l00621"></a>00621 }
+<a name="l00622"></a>00622 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00623"></a>00623 }
+<a name="l00624"></a>00624
+<a name="l00625"></a><a class="code" href="classServer.html#AddExtendedListMode_28char_20modechar_29">00625</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#AddExtendedListMode_28char_20modechar_29">Server::AddExtendedListMode</a>(<span class="keywordtype">char</span> modechar)
+<a name="l00626"></a>00626 {
+<a name="l00627"></a>00627 <span class="keywordtype">bool</span> res = <a class="code" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">DoAddExtendedMode</a>(modechar,<a class="code" href="modules_8h.html#MT_5FCHANNEL">MT_CHANNEL</a>,<span class="keyword">false</span>,1,1);
+<a name="l00628"></a>00628 <span class="keywordflow">if</span> (res)
+<a name="l00629"></a>00629 <a class="code" href="modules_8cpp.html#ModeMakeList_28char_20modechar_29">ModeMakeList</a>(modechar);
+<a name="l00630"></a>00630 <span class="keywordflow">return</span> res;
+<a name="l00631"></a>00631 }
+<a name="l00632"></a>00632
+<a name="l00633"></a><a class="code" href="classServer.html#CountUsers_28chanrec_20_2Ac_29">00633</a> <span class="keywordtype">int</span> <a class="code" href="classServer.html#CountUsers_28chanrec_20_2Ac_29">Server::CountUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* c)
+<a name="l00634"></a>00634 {
+<a name="l00635"></a>00635 <span class="keywordflow">return</span> usercount(c);
+<a name="l00636"></a>00636 }
+<a name="l00637"></a>00637
+<a name="l00638"></a>00638
+<a name="l00639"></a><a class="code" href="classServer.html#UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29">00639</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29">Server::UserToPseudo</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<a class="code" href="namespaceirc.html#string">std::string</a> message)
+<a name="l00640"></a>00640 {
+<a name="l00641"></a>00641 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> old_fd = user-&gt;<a class="code" href="classconnection.html#fd">fd</a>;
+<a name="l00642"></a>00642 user-&gt;<a class="code" href="classconnection.html#fd">fd</a> = <a class="code" href="modules_8h.html#FD_5FMAGIC_5FNUMBER">FD_MAGIC_NUMBER</a>;
+<a name="l00643"></a>00643 user-&gt;<a class="code" href="classuserrec.html#ClearBuffer_28_29">ClearBuffer</a>();
+<a name="l00644"></a>00644 Write(old_fd,<span class="stringliteral">"ERROR :Closing link (%s@%s) [%s]"</span>,user-&gt;<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,user-&gt;<a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>,message.c_str());
+<a name="l00645"></a>00645 <span class="preprocessor">#ifdef USE_KQUEUE</span>
+<a name="l00646"></a>00646 <span class="preprocessor"></span> <span class="keyword">struct </span>kevent ke;
+<a name="l00647"></a>00647 EV_SET(&amp;ke, old_fd, EVFILT_READ, EV_DELETE, 0, 0, NULL);
+<a name="l00648"></a>00648 <span class="keywordtype">int</span> i = kevent(kq, &amp;ke, 1, 0, 0, NULL);
+<a name="l00649"></a>00649 <span class="keywordflow">if</span> (i == -1)
+<a name="l00650"></a>00650 {
+<a name="l00651"></a>00651 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"kqueue: Failed to remove user from queue!"</span>);
+<a name="l00652"></a>00652 }
+<a name="l00653"></a>00653 <span class="preprocessor">#endif</span>
+<a name="l00654"></a>00654 <span class="preprocessor"></span><span class="preprocessor">#ifdef USE_EPOLL</span>
+<a name="l00655"></a>00655 <span class="preprocessor"></span> <span class="keyword">struct </span>epoll_event ev;
+<a name="l00656"></a>00656 ev.events = EPOLLIN | EPOLLET;
+<a name="l00657"></a>00657 ev.data.fd = old_fd;
+<a name="l00658"></a>00658 <span class="keywordtype">int</span> i = epoll_ctl(ep, EPOLL_CTL_DEL, old_fd, &amp;ev);
+<a name="l00659"></a>00659 <span class="keywordflow">if</span> (i &lt; 0)
+<a name="l00660"></a>00660 {
+<a name="l00661"></a>00661 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"epoll: List deletion failure!"</span>);
+<a name="l00662"></a>00662 }
+<a name="l00663"></a>00663 <span class="preprocessor">#endif</span>
+<a name="l00664"></a>00664 <span class="preprocessor"></span>
+<a name="l00665"></a>00665 shutdown(old_fd,2);
+<a name="l00666"></a>00666 close(old_fd);
+<a name="l00667"></a>00667 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00668"></a>00668 }
+<a name="l00669"></a>00669
+<a name="l00670"></a><a class="code" href="classServer.html#PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29">00670</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29">Server::PseudoToUser</a>(<a class="code" href="classuserrec.html">userrec</a>* alive,<a class="code" href="classuserrec.html">userrec</a>* zombie,<a class="code" href="namespaceirc.html#string">std::string</a> message)
+<a name="l00671"></a>00671 {
+<a name="l00672"></a>00672 zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a> = alive-&gt;<a class="code" href="classconnection.html#fd">fd</a>;
+<a name="l00673"></a>00673 alive-&gt;<a class="code" href="classconnection.html#fd">fd</a> = <a class="code" href="modules_8h.html#FD_5FMAGIC_5FNUMBER">FD_MAGIC_NUMBER</a>;
+<a name="l00674"></a>00674 alive-&gt;<a class="code" href="classuserrec.html#ClearBuffer_28_29">ClearBuffer</a>();
+<a name="l00675"></a>00675 Write(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">":%s!%s@%s NICK %s"</span>,alive-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,alive-&gt;<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,alive-&gt;<a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>,zombie-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>);
+<a name="l00676"></a>00676 kill_link(alive,message.c_str());
+<a name="l00677"></a>00677 fd_ref_table[zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>] = zombie;
+<a name="l00678"></a>00678 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i != MAXCHANS; i++)
+<a name="l00679"></a>00679 {
+<a name="l00680"></a>00680 <span class="keywordflow">if</span> (zombie-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#channel">channel</a> != NULL)
+<a name="l00681"></a>00681 {
+<a name="l00682"></a>00682 <span class="keywordflow">if</span> (zombie-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#channel">channel</a>-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>)
+<a name="l00683"></a>00683 {
+<a name="l00684"></a>00684 <a class="code" href="classchanrec.html">chanrec</a>* Ptr = zombie-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#channel">channel</a>;
+<a name="l00685"></a>00685 WriteFrom(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,zombie,<span class="stringliteral">"JOIN %s"</span>,Ptr-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>);
+<a name="l00686"></a>00686 <span class="keywordflow">if</span> (Ptr-&gt;<a class="code" href="classchanrec.html#topicset">topicset</a>)
+<a name="l00687"></a>00687 {
+<a name="l00688"></a>00688 WriteServ(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"332 %s %s :%s"</span>, zombie-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>, Ptr-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>, Ptr-&gt;<a class="code" href="classchanrec.html#topic_5BMAXBUF_5D">topic</a>);
+<a name="l00689"></a>00689 WriteServ(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"333 %s %s %s %d"</span>, zombie-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>, Ptr-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>, Ptr-&gt;<a class="code" href="classchanrec.html#setby_5BNICKMAX_5D">setby</a>, Ptr-&gt;<a class="code" href="classchanrec.html#topicset">topicset</a>);
+<a name="l00690"></a>00690 }
+<a name="l00691"></a>00691 userlist(zombie,Ptr);
+<a name="l00692"></a>00692 WriteServ(zombie-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"366 %s %s :End of /NAMES list."</span>, zombie-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>, Ptr-&gt;<a class="code" href="classchanrec.html#name_5BCHANMAX_5D">name</a>);
+<a name="l00693"></a>00693
+<a name="l00694"></a>00694 }
+<a name="l00695"></a>00695 }
+<a name="l00696"></a>00696 }
+<a name="l00697"></a>00697 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00698"></a>00698 }
+<a name="l00699"></a>00699
+<a name="l00700"></a><a class="code" href="classServer.html#AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">00700</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server::AddGLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> hostmask)
+<a name="l00701"></a>00701 {
+<a name="l00702"></a>00702 <a class="code" href="xline_8h.html#add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_gline</a>(duration, source.c_str(), reason.c_str(), hostmask.c_str());
+<a name="l00703"></a>00703 }
+<a name="l00704"></a>00704
+<a name="l00705"></a><a class="code" href="classServer.html#AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29">00705</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29">Server::AddQLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> nickname)
+<a name="l00706"></a>00706 {
+<a name="l00707"></a>00707 <a class="code" href="xline_8h.html#add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29">add_qline</a>(duration, source.c_str(), reason.c_str(), nickname.c_str());
+<a name="l00708"></a>00708 }
+<a name="l00709"></a>00709
+<a name="l00710"></a><a class="code" href="classServer.html#AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29">00710</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29">Server::AddZLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> ipaddr)
+<a name="l00711"></a>00711 {
+<a name="l00712"></a>00712 <a class="code" href="xline_8h.html#add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29">add_zline</a>(duration, source.c_str(), reason.c_str(), ipaddr.c_str());
+<a name="l00713"></a>00713 }
+<a name="l00714"></a>00714
+<a name="l00715"></a><a class="code" href="classServer.html#AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">00715</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server::AddKLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> hostmask)
+<a name="l00716"></a>00716 {
+<a name="l00717"></a>00717 <a class="code" href="xline_8h.html#add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_kline</a>(duration, source.c_str(), reason.c_str(), hostmask.c_str());
+<a name="l00718"></a>00718 }
+<a name="l00719"></a>00719
+<a name="l00720"></a><a class="code" href="classServer.html#AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">00720</a> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">Server::AddELine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> hostmask)
+<a name="l00721"></a>00721 {
+<a name="l00722"></a>00722 <a class="code" href="xline_8h.html#add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_eline</a>(duration, source.c_str(), reason.c_str(), hostmask.c_str());
+<a name="l00723"></a>00723 }
+<a name="l00724"></a>00724
+<a name="l00725"></a><a class="code" href="classServer.html#DelGLine_28std_3A_3Astring_20hostmask_29">00725</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelGLine_28std_3A_3Astring_20hostmask_29">Server::DelGLine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> hostmask)
+<a name="l00726"></a>00726 {
+<a name="l00727"></a>00727 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Fgline_28const_20char_20_2Ahostmask_29">del_gline</a>(hostmask.c_str());
+<a name="l00728"></a>00728 }
+<a name="l00729"></a>00729
+<a name="l00730"></a><a class="code" href="classServer.html#DelQLine_28std_3A_3Astring_20nickname_29">00730</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelQLine_28std_3A_3Astring_20nickname_29">Server::DelQLine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> nickname)
+<a name="l00731"></a>00731 {
+<a name="l00732"></a>00732 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Fqline_28const_20char_20_2Anickname_29">del_qline</a>(nickname.c_str());
+<a name="l00733"></a>00733 }
+<a name="l00734"></a>00734
+<a name="l00735"></a><a class="code" href="classServer.html#DelZLine_28std_3A_3Astring_20ipaddr_29">00735</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelZLine_28std_3A_3Astring_20ipaddr_29">Server::DelZLine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> ipaddr)
+<a name="l00736"></a>00736 {
+<a name="l00737"></a>00737 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Fzline_28const_20char_20_2Aipaddr_29">del_zline</a>(ipaddr.c_str());
+<a name="l00738"></a>00738 }
+<a name="l00739"></a>00739
+<a name="l00740"></a><a class="code" href="classServer.html#DelKLine_28std_3A_3Astring_20hostmask_29">00740</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelKLine_28std_3A_3Astring_20hostmask_29">Server::DelKLine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> hostmask)
+<a name="l00741"></a>00741 {
+<a name="l00742"></a>00742 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Fkline_28const_20char_20_2Ahostmask_29">del_kline</a>(hostmask.c_str());
+<a name="l00743"></a>00743 }
+<a name="l00744"></a>00744
+<a name="l00745"></a><a class="code" href="classServer.html#DelELine_28std_3A_3Astring_20hostmask_29">00745</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelELine_28std_3A_3Astring_20hostmask_29">Server::DelELine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> hostmask)
+<a name="l00746"></a>00746 {
+<a name="l00747"></a>00747 <span class="keywordflow">return</span> <a class="code" href="xline_8h.html#del_5Feline_28const_20char_20_2Ahostmask_29">del_eline</a>(hostmask.c_str());
+<a name="l00748"></a>00748 }
+<a name="l00749"></a>00749
+<a name="l00750"></a><a class="code" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">00750</a> <span class="keywordtype">long</span> <a class="code" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">Server::CalcDuration</a>(<a class="code" href="namespaceirc.html#string">std::string</a> delta)
+<a name="l00751"></a>00751 {
+<a name="l00752"></a>00752 <span class="keywordflow">return</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>(delta.c_str());
+<a name="l00753"></a>00753 }
+<a name="l00754"></a>00754
+<a name="l00755"></a><a class="code" href="classServer.html#IsValidMask_28std_3A_3Astring_20mask_29">00755</a> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#IsValidMask_28std_3A_3Astring_20mask_29">Server::IsValidMask</a>(<a class="code" href="namespaceirc.html#string">std::string</a> mask)
+<a name="l00756"></a>00756 {
+<a name="l00757"></a>00757 <span class="keyword">const</span> <span class="keywordtype">char</span>* dest = mask.c_str();
+<a name="l00758"></a>00758 <span class="keywordflow">if</span> (strchr(dest,<span class="charliteral">'!'</span>)==0)
+<a name="l00759"></a>00759 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00760"></a>00760 <span class="keywordflow">if</span> (strchr(dest,<span class="charliteral">'@'</span>)==0)
+<a name="l00761"></a>00761 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00762"></a>00762 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
+<a name="l00763"></a>00763 <span class="keywordflow">if</span> (dest[i] &lt; 32)
+<a name="l00764"></a>00764 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00765"></a>00765 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
+<a name="l00766"></a>00766 <span class="keywordflow">if</span> (dest[i] &gt; 126)
+<a name="l00767"></a>00767 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00768"></a>00768 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> c = 0;
+<a name="l00769"></a>00769 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
+<a name="l00770"></a>00770 <span class="keywordflow">if</span> (dest[i] == <span class="charliteral">'!'</span>)
+<a name="l00771"></a>00771 c++;
+<a name="l00772"></a>00772 <span class="keywordflow">if</span> (c&gt;1)
+<a name="l00773"></a>00773 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00774"></a>00774 c = 0;
+<a name="l00775"></a>00775 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(dest); i++)
+<a name="l00776"></a>00776 <span class="keywordflow">if</span> (dest[i] == <span class="charliteral">'@'</span>)
+<a name="l00777"></a>00777 c++;
+<a name="l00778"></a>00778 <span class="keywordflow">if</span> (c&gt;1)
+<a name="l00779"></a>00779 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00780"></a>00780
+<a name="l00781"></a>00781 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00782"></a>00782 }
+<a name="l00783"></a>00783
+<a name="l00784"></a><a class="code" href="classServer.html#FindModule_28std_3A_3Astring_20name_29">00784</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classServer.html#FindModule_28std_3A_3Astring_20name_29">Server::FindModule</a>(<a class="code" href="namespaceirc.html#string">std::string</a> name)
+<a name="l00785"></a>00785 {
+<a name="l00786"></a>00786 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;= <a class="code" href="channels_8cpp.html#MODCOUNT">MODCOUNT</a>; i++)
+<a name="l00787"></a>00787 {
+<a name="l00788"></a>00788 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#module_5Fnames">module_names</a>[i] == name)
+<a name="l00789"></a>00789 {
+<a name="l00790"></a>00790 <span class="keywordflow">return</span> <a class="code" href="channels_8cpp.html#modules">modules</a>[i];
+<a name="l00791"></a>00791 }
+<a name="l00792"></a>00792 }
+<a name="l00793"></a>00793 <span class="keywordflow">return</span> NULL;
+<a name="l00794"></a>00794 }
+<a name="l00795"></a>00795
+<a name="l00796"></a><a class="code" href="classConfigReader.html#ConfigReader_28_29">00796</a> <a class="code" href="classConfigReader.html#ConfigReader_28_29">ConfigReader::ConfigReader</a>()
+<a name="l00797"></a>00797 {
+<a name="l00798"></a>00798 <a class="code" href="modules_8cpp.html#include_5Fstack">include_stack</a>.clear();
+<a name="l00799"></a>00799 this-&gt;<a class="code" href="classConfigReader.html#cache">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+<a name="l00800"></a>00800 this-&gt;<a class="code" href="classConfigReader.html#errorlog">errorlog</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+<a name="l00801"></a>00801 this-&gt;<a class="code" href="classConfigReader.html#readerror">readerror</a> = LoadConf(CONFIG_FILE,this-&gt;cache,this-&gt;errorlog);
+<a name="l00802"></a>00802 <span class="keywordflow">if</span> (!this-&gt;readerror)
+<a name="l00803"></a>00803 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FFILE_5FNOT_5FFOUND">CONF_FILE_NOT_FOUND</a>;
+<a name="l00804"></a>00804 }
+<a name="l00805"></a>00805
+<a name="l00806"></a>00806
+<a name="l00807"></a><a class="code" href="classConfigReader.html#_7EConfigReader_28_29">00807</a> <a class="code" href="classConfigReader.html#_7EConfigReader_28_29">ConfigReader::~ConfigReader</a>()
+<a name="l00808"></a>00808 {
+<a name="l00809"></a>00809 <span class="keywordflow">if</span> (this-&gt;cache)
+<a name="l00810"></a>00810 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#cache">cache</a>;
+<a name="l00811"></a>00811 <span class="keywordflow">if</span> (this-&gt;errorlog)
+<a name="l00812"></a>00812 <span class="keyword">delete</span> this-&gt;<a class="code" href="classConfigReader.html#errorlog">errorlog</a>;
+<a name="l00813"></a>00813 }
+<a name="l00814"></a>00814
+<a name="l00815"></a>00815
+<a name="l00816"></a><a class="code" href="classConfigReader.html#ConfigReader_28std_3A_3Astring_20filename_29">00816</a> <a class="code" href="classConfigReader.html#ConfigReader_28_29">ConfigReader::ConfigReader</a>(<a class="code" href="namespaceirc.html#string">std::string</a> filename)
+<a name="l00817"></a>00817 {
+<a name="l00818"></a>00818 this-&gt;<a class="code" href="classConfigReader.html#cache">cache</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+<a name="l00819"></a>00819 this-&gt;<a class="code" href="classConfigReader.html#errorlog">errorlog</a> = <span class="keyword">new</span> std::stringstream(std::stringstream::in | std::stringstream::out);
+<a name="l00820"></a>00820 this-&gt;<a class="code" href="classConfigReader.html#readerror">readerror</a> = LoadConf(filename.c_str(),this-&gt;<a class="code" href="classConfigReader.html#cache">cache</a>,this-&gt;<a class="code" href="classConfigReader.html#errorlog">errorlog</a>);
+<a name="l00821"></a>00821 <span class="keywordflow">if</span> (!this-&gt;readerror)
+<a name="l00822"></a>00822 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FFILE_5FNOT_5FFOUND">CONF_FILE_NOT_FOUND</a>;
+<a name="l00823"></a>00823 };
+<a name="l00824"></a>00824
+<a name="l00825"></a><a class="code" href="classConfigReader.html#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">00825</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classConfigReader.html#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ConfigReader::ReadValue</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag, <a class="code" href="namespaceirc.html#string">std::string</a> name, <span class="keywordtype">int</span> index)
+<a name="l00826"></a>00826 {
+<a name="l00827"></a>00827 <span class="keywordtype">char</span> val[MAXBUF];
+<a name="l00828"></a>00828 <span class="keywordtype">char</span> t[MAXBUF];
+<a name="l00829"></a>00829 <span class="keywordtype">char</span> n[MAXBUF];
+<a name="l00830"></a>00830 strlcpy(t,tag.c_str(),MAXBUF);
+<a name="l00831"></a>00831 strlcpy(n,name.c_str(),MAXBUF);
+<a name="l00832"></a>00832 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#cache">cache</a>,t,n,index,val);
+<a name="l00833"></a>00833 <span class="keywordflow">if</span> (!res)
+<a name="l00834"></a>00834 {
+<a name="l00835"></a>00835 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">CONF_VALUE_NOT_FOUND</a>;
+<a name="l00836"></a>00836 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+<a name="l00837"></a>00837 }
+<a name="l00838"></a>00838 <span class="keywordflow">return</span> val;
+<a name="l00839"></a>00839 }
+<a name="l00840"></a>00840
+<a name="l00841"></a><a class="code" href="classConfigReader.html#ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">00841</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ConfigReader::ReadFlag</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag, <a class="code" href="namespaceirc.html#string">std::string</a> name, <span class="keywordtype">int</span> index)
+<a name="l00842"></a>00842 {
+<a name="l00843"></a>00843 <span class="keywordtype">char</span> val[MAXBUF];
+<a name="l00844"></a>00844 <span class="keywordtype">char</span> t[MAXBUF];
+<a name="l00845"></a>00845 <span class="keywordtype">char</span> n[MAXBUF];
+<a name="l00846"></a>00846 strlcpy(t,tag.c_str(),MAXBUF);
+<a name="l00847"></a>00847 strlcpy(n,name.c_str(),MAXBUF);
+<a name="l00848"></a>00848 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#cache">cache</a>,t,n,index,val);
+<a name="l00849"></a>00849 <span class="keywordflow">if</span> (!res)
+<a name="l00850"></a>00850 {
+<a name="l00851"></a>00851 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">CONF_VALUE_NOT_FOUND</a>;
+<a name="l00852"></a>00852 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00853"></a>00853 }
+<a name="l00854"></a>00854 <a class="code" href="namespaceirc.html#string">std::string</a> s = val;
+<a name="l00855"></a>00855 <span class="keywordflow">return</span> ((s == <span class="stringliteral">"yes"</span>) || (s == <span class="stringliteral">"YES"</span>) || (s == <span class="stringliteral">"true"</span>) || (s == <span class="stringliteral">"TRUE"</span>) || (s == <span class="stringliteral">"1"</span>));
+<a name="l00856"></a>00856 }
+<a name="l00857"></a>00857
+<a name="l00858"></a><a class="code" href="classConfigReader.html#ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29">00858</a> <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29">ConfigReader::ReadInteger</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag, <a class="code" href="namespaceirc.html#string">std::string</a> name, <span class="keywordtype">int</span> index, <span class="keywordtype">bool</span> needs_unsigned)
+<a name="l00859"></a>00859 {
+<a name="l00860"></a>00860 <span class="keywordtype">char</span> val[MAXBUF];
+<a name="l00861"></a>00861 <span class="keywordtype">char</span> t[MAXBUF];
+<a name="l00862"></a>00862 <span class="keywordtype">char</span> n[MAXBUF];
+<a name="l00863"></a>00863 strlcpy(t,tag.c_str(),MAXBUF);
+<a name="l00864"></a>00864 strlcpy(n,name.c_str(),MAXBUF);
+<a name="l00865"></a>00865 <span class="keywordtype">int</span> res = ReadConf(<a class="code" href="classConfigReader.html#cache">cache</a>,t,n,index,val);
+<a name="l00866"></a>00866 <span class="keywordflow">if</span> (!res)
+<a name="l00867"></a>00867 {
+<a name="l00868"></a>00868 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">CONF_VALUE_NOT_FOUND</a>;
+<a name="l00869"></a>00869 <span class="keywordflow">return</span> 0;
+<a name="l00870"></a>00870 }
+<a name="l00871"></a>00871 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; strlen(val); i++)
+<a name="l00872"></a>00872 {
+<a name="l00873"></a>00873 <span class="keywordflow">if</span> (!isdigit(val[i]))
+<a name="l00874"></a>00874 {
+<a name="l00875"></a>00875 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FNOT_5FA_5FNUMBER">CONF_NOT_A_NUMBER</a>;
+<a name="l00876"></a>00876 <span class="keywordflow">return</span> 0;
+<a name="l00877"></a>00877 }
+<a name="l00878"></a>00878 }
+<a name="l00879"></a>00879 <span class="keywordflow">if</span> ((needs_unsigned) &amp;&amp; (atoi(val)&lt;0))
+<a name="l00880"></a>00880 {
+<a name="l00881"></a>00881 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = <a class="code" href="modules_8h.html#CONF_5FNOT_5FUNSIGNED">CONF_NOT_UNSIGNED</a>;
+<a name="l00882"></a>00882 <span class="keywordflow">return</span> 0;
+<a name="l00883"></a>00883 }
+<a name="l00884"></a>00884 <span class="keywordflow">return</span> atoi(val);
+<a name="l00885"></a>00885 }
+<a name="l00886"></a>00886
+<a name="l00887"></a><a class="code" href="classConfigReader.html#GetError_28_29">00887</a> <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#GetError_28_29">ConfigReader::GetError</a>()
+<a name="l00888"></a>00888 {
+<a name="l00889"></a>00889 <span class="keywordtype">long</span> olderr = this-&gt;<a class="code" href="classConfigReader.html#error">error</a>;
+<a name="l00890"></a>00890 this-&gt;<a class="code" href="classConfigReader.html#error">error</a> = 0;
+<a name="l00891"></a>00891 <span class="keywordflow">return</span> olderr;
+<a name="l00892"></a>00892 }
+<a name="l00893"></a>00893
+<a name="l00894"></a><a class="code" href="classConfigReader.html#DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29">00894</a> <span class="keywordtype">void</span> <a class="code" href="classConfigReader.html#DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29">ConfigReader::DumpErrors</a>(<span class="keywordtype">bool</span> bail, <a class="code" href="classuserrec.html">userrec</a>* user)
+<a name="l00895"></a>00895 {
+<a name="l00896"></a>00896 <span class="keywordflow">if</span> (bail)
+<a name="l00897"></a>00897 {
+<a name="l00898"></a>00898 printf(<span class="stringliteral">"There were errors in your configuration:\n%s"</span>,<a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;str().c_str());
+<a name="l00899"></a>00899 exit(0);
+<a name="l00900"></a>00900 }
+<a name="l00901"></a>00901 <span class="keywordflow">else</span>
+<a name="l00902"></a>00902 {
+<a name="l00903"></a>00903 <span class="keywordtype">char</span> dataline[1024];
+<a name="l00904"></a>00904 <span class="keywordflow">if</span> (user)
+<a name="l00905"></a>00905 {
+<a name="l00906"></a>00906 WriteServ(user-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"NOTICE %s :There were errors in the configuration file:"</span>,user-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>);
+<a name="l00907"></a>00907 <span class="keywordflow">while</span> (!<a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;eof())
+<a name="l00908"></a>00908 {
+<a name="l00909"></a>00909 <a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;getline(dataline,1024);
+<a name="l00910"></a>00910 WriteServ(user-&gt;<a class="code" href="classconnection.html#fd">fd</a>,<span class="stringliteral">"NOTICE %s :%s"</span>,user-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,dataline);
+<a name="l00911"></a>00911 }
+<a name="l00912"></a>00912 }
+<a name="l00913"></a>00913 <span class="keywordflow">else</span>
+<a name="l00914"></a>00914 {
+<a name="l00915"></a>00915 WriteOpers(<span class="stringliteral">"There were errors in the configuration file:"</span>,user-&gt;<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>);
+<a name="l00916"></a>00916 <span class="keywordflow">while</span> (!<a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;eof())
+<a name="l00917"></a>00917 {
+<a name="l00918"></a>00918 <a class="code" href="classConfigReader.html#errorlog">errorlog</a>-&gt;getline(dataline,1024);
+<a name="l00919"></a>00919 WriteOpers(dataline);
+<a name="l00920"></a>00920 }
+<a name="l00921"></a>00921 }
+<a name="l00922"></a>00922 <span class="keywordflow">return</span>;
+<a name="l00923"></a>00923 }
+<a name="l00924"></a>00924 }
+<a name="l00925"></a>00925
+<a name="l00926"></a>00926
+<a name="l00927"></a><a class="code" href="classConfigReader.html#Enumerate_28std_3A_3Astring_20tag_29">00927</a> <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#Enumerate_28std_3A_3Astring_20tag_29">ConfigReader::Enumerate</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag)
+<a name="l00928"></a>00928 {
+<a name="l00929"></a>00929 <span class="keywordflow">return</span> EnumConf(<a class="code" href="classConfigReader.html#cache">cache</a>,tag.c_str());
+<a name="l00930"></a>00930 }
+<a name="l00931"></a>00931
+<a name="l00932"></a><a class="code" href="classConfigReader.html#EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29">00932</a> <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29">ConfigReader::EnumerateValues</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag, <span class="keywordtype">int</span> index)
+<a name="l00933"></a>00933 {
+<a name="l00934"></a>00934 <span class="keywordflow">return</span> EnumValues(<a class="code" href="classConfigReader.html#cache">cache</a>, tag.c_str(), index);
+<a name="l00935"></a>00935 }
+<a name="l00936"></a>00936
+<a name="l00937"></a><a class="code" href="classConfigReader.html#Verify_28_29">00937</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#Verify_28_29">ConfigReader::Verify</a>()
+<a name="l00938"></a>00938 {
+<a name="l00939"></a>00939 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classConfigReader.html#readerror">readerror</a>;
+<a name="l00940"></a>00940 }
+<a name="l00941"></a>00941
+<a name="l00942"></a>00942
+<a name="l00943"></a><a class="code" href="classFileReader.html#FileReader_28std_3A_3Astring_20filename_29">00943</a> <a class="code" href="classFileReader.html#FileReader_28_29">FileReader::FileReader</a>(<a class="code" href="namespaceirc.html#string">std::string</a> filename)
+<a name="l00944"></a>00944 {
+<a name="l00945"></a>00945 <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a> c;
+<a name="l00946"></a>00946 readfile(c,filename.c_str());
+<a name="l00947"></a>00947 this-&gt;<a class="code" href="classFileReader.html#fc">fc</a> = c;
+<a name="l00948"></a>00948 }
+<a name="l00949"></a>00949
+<a name="l00950"></a><a class="code" href="classFileReader.html#FileReader_28_29">00950</a> <a class="code" href="classFileReader.html#FileReader_28_29">FileReader::FileReader</a>()
+<a name="l00951"></a>00951 {
+<a name="l00952"></a>00952 }
+<a name="l00953"></a>00953
+<a name="l00954"></a><a class="code" href="classFileReader.html#LoadFile_28std_3A_3Astring_20filename_29">00954</a> <span class="keywordtype">void</span> <a class="code" href="classFileReader.html#LoadFile_28std_3A_3Astring_20filename_29">FileReader::LoadFile</a>(<a class="code" href="namespaceirc.html#string">std::string</a> filename)
+<a name="l00955"></a>00955 {
+<a name="l00956"></a>00956 <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a> c;
+<a name="l00957"></a>00957 readfile(c,filename.c_str());
+<a name="l00958"></a>00958 this-&gt;<a class="code" href="classFileReader.html#fc">fc</a> = c;
+<a name="l00959"></a>00959 }
+<a name="l00960"></a>00960
+<a name="l00961"></a>00961
+<a name="l00962"></a><a class="code" href="classFileReader.html#_7EFileReader_28_29">00962</a> <a class="code" href="classFileReader.html#_7EFileReader_28_29">FileReader::~FileReader</a>()
+<a name="l00963"></a>00963 {
+<a name="l00964"></a>00964 }
+<a name="l00965"></a>00965
+<a name="l00966"></a><a class="code" href="classFileReader.html#Exists_28_29">00966</a> <span class="keywordtype">bool</span> <a class="code" href="classFileReader.html#Exists_28_29">FileReader::Exists</a>()
+<a name="l00967"></a>00967 {
+<a name="l00968"></a>00968 <span class="keywordflow">if</span> (<a class="code" href="classFileReader.html#fc">fc</a>.size() == 0)
+<a name="l00969"></a>00969 {
+<a name="l00970"></a>00970 <span class="keywordflow">return</span>(<span class="keyword">false</span>);
+<a name="l00971"></a>00971 }
+<a name="l00972"></a>00972 <span class="keywordflow">else</span>
+<a name="l00973"></a>00973 {
+<a name="l00974"></a>00974 <span class="keywordflow">return</span>(<span class="keyword">true</span>);
+<a name="l00975"></a>00975 }
+<a name="l00976"></a>00976 }
+<a name="l00977"></a>00977
+<a name="l00978"></a><a class="code" href="classFileReader.html#GetLine_28int_20x_29">00978</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classFileReader.html#GetLine_28int_20x_29">FileReader::GetLine</a>(<span class="keywordtype">int</span> x)
+<a name="l00979"></a>00979 {
+<a name="l00980"></a>00980 <span class="keywordflow">if</span> ((x&lt;0) || ((<span class="keywordtype">unsigned</span>)x&gt;<a class="code" href="classFileReader.html#fc">fc</a>.size()))
+<a name="l00981"></a>00981 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+<a name="l00982"></a>00982 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#fc">fc</a>[x];
+<a name="l00983"></a>00983 }
+<a name="l00984"></a>00984
+<a name="l00985"></a><a class="code" href="classFileReader.html#FileSize_28_29">00985</a> <span class="keywordtype">int</span> <a class="code" href="classFileReader.html#FileSize_28_29">FileReader::FileSize</a>()
+<a name="l00986"></a>00986 {
+<a name="l00987"></a>00987 <span class="keywordflow">return</span> <a class="code" href="classFileReader.html#fc">fc</a>.size();
+<a name="l00988"></a>00988 }
+<a name="l00989"></a>00989
+<a name="l00990"></a>00990
+<a name="l00991"></a>00991 std::vector&lt;Module*&gt; <a class="code" href="channels_8cpp.html#modules">modules</a>(255);
+<a name="l00992"></a>00992 std::vector&lt;ircd_module*&gt; <a class="code" href="channels_8cpp.html#factory">factory</a>(255);
+<a name="l00993"></a>00993
+<a name="l00994"></a><a class="code" href="modules_8cpp.html#MODCOUNT">00994</a> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#MODCOUNT">MODCOUNT</a> = -1;
+<a name="l00995"></a>00995
+<a name="l00996"></a>00996
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/modules_8cpp.html b/docs/module-doc/modules_8cpp.html
index 97b101a7f..a7853803c 100644
--- a/docs/module-doc/modules_8cpp.html
+++ b/docs/module-doc/modules_8cpp.html
@@ -1,14 +1,16 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: modules.cpp File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>modules.cpp File Reference</h1><code>#include "inspircd_config.h"</code><br>
-<code>#include "inspircd.h"</code><br>
-<code>#include "inspircd_io.h"</code><br>
-<code>#include "inspircd_util.h"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>modules.cpp File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
+<code>#include &quot;inspircd.h&quot;</code><br>
+<code>#include &quot;inspircd_io.h&quot;</code><br>
+<code>#include &quot;inspircd_util.h&quot;</code><br>
<code>#include &lt;unistd.h&gt;</code><br>
<code>#include &lt;sys/errno.h&gt;</code><br>
<code>#include &lt;time.h&gt;</code><br>
@@ -18,192 +20,185 @@
<code>#include &lt;sstream&gt;</code><br>
<code>#include &lt;vector&gt;</code><br>
<code>#include &lt;deque&gt;</code><br>
-<code>#include "<a class="el" href="connection_8h-source.html">connection.h</a>"</code><br>
-<code>#include "<a class="el" href="users_8h-source.html">users.h</a>"</code><br>
-<code>#include "<a class="el" href="servers_8h-source.html">servers.h</a>"</code><br>
-<code>#include "<a class="el" href="ctables_8h-source.html">ctables.h</a>"</code><br>
-<code>#include "globals.h"</code><br>
-<code>#include "<a class="el" href="modules_8h-source.html">modules.h</a>"</code><br>
-<code>#include "dynamic.h"</code><br>
-<code>#include "wildcard.h"</code><br>
-<code>#include "<a class="el" href="message_8h-source.html">message.h</a>"</code><br>
-<code>#include "<a class="el" href="mode_8h-source.html">mode.h</a>"</code><br>
-<code>#include "<a class="el" href="xline_8h-source.html">xline.h</a>"</code><br>
-<code>#include "<a class="el" href="commands_8h-source.html">commands.h</a>"</code><br>
-<code>#include "inspstring.h"</code><br>
-<code>#include "helperfuncs.h"</code><br>
-<code>#include "<a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>"</code><br>
-
-<p>
-Include dependency graph for modules.cpp:<p><center><img src="modules_8cpp__incl.gif" border="0" usemap="#modules.cpp_map" alt="Include dependency graph"></center>
+<code>#include &quot;<a class="el" href="users_8h-source.html">users.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="ctables_8h-source.html">ctables.h</a>&quot;</code><br>
+<code>#include &quot;globals.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="modules_8h-source.html">modules.h</a>&quot;</code><br>
+<code>#include &quot;dynamic.h&quot;</code><br>
+<code>#include &quot;wildcard.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="message_8h-source.html">message.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="mode_8h-source.html">mode.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="xline_8h-source.html">xline.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="commands_8h-source.html">commands.h</a>&quot;</code><br>
+<code>#include &quot;inspstring.h&quot;</code><br>
+<code>#include &quot;helperfuncs.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="socket_8h-source.html">socket.h</a>&quot;</code><br>
+
+<p>
+Include dependency graph for modules.cpp:<p><center><img src="modules_8cpp__incl.gif" border="0" usemap="#modules.cpp_map" alt=""></center>
<map name="modules.cpp_map">
-<area href="connection_8h.html" shape="rect" coords="178,616,277,642" alt="">
-<area href="users_8h.html" shape="rect" coords="341,1021,405,1048" alt="">
-<area href="servers_8h.html" shape="rect" coords="334,565,412,592" alt="">
-<area href="ctables_8h.html" shape="rect" coords="190,362,265,389" alt="">
-<area href="hashcomp_8h.html" shape="rect" coords="326,501,420,528" alt="">
-<area href="modules_8h.html" shape="rect" coords="332,717,414,744" alt="">
-<area href="message_8h.html" shape="rect" coords="478,1502,564,1529" alt="">
-<area href="mode_8h.html" shape="rect" coords="488,1604,554,1630" alt="">
-<area href="xline_8h.html" shape="rect" coords="490,1553,552,1580" alt="">
-<area href="commands_8h.html" shape="rect" coords="472,1097,570,1124" alt="">
+<area href="users_8h-source.html" shape="rect" coords="322,738,386,764" alt="">
+<area href="ctables_8h-source.html" shape="rect" coords="316,180,391,207" alt="">
+<area href="modules_8h-source.html" shape="rect" coords="164,383,247,410" alt="">
+<area href="socket_8h-source.html" shape="rect" coords="318,383,390,410" alt="">
+<area href="message_8h-source.html" shape="rect" coords="163,839,248,866" alt="">
+<area href="mode_8h-source.html" shape="rect" coords="172,586,239,612" alt="">
+<area href="xline_8h-source.html" shape="rect" coords="175,788,236,815" alt="">
+<area href="commands_8h-source.html" shape="rect" coords="156,687,255,714" alt="">
+<area href="hashcomp_8h-source.html" shape="rect" coords="307,79,400,106" alt="">
</map>
<p>
-<a href="modules_8cpp-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="modules_8cpp-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classExtMode.html">ExtMode</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classExtMode.html">ExtMode</a></td></tr>
-<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef nspace::hash_map&lt;<br>
- std::string, <a class="el" href="classuserrec.html">userrec</a> *, nspace::hash&lt;<br>
- string &gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a38">user_hash</a></td></tr>
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef nspace::hash_map&lt;<br>
+ <a class="el" href="namespaceirc.html#string">std::string</a>, <a class="el" href="classuserrec.html">userrec</a> *, nspace::hash&lt;<br>
+ <a class="el" href="namespaceirc.html#string">string</a> &gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#user_5Fhash">user_hash</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef nspace::hash_map&lt;<br>
- std::string, <a class="el" href="classchanrec.html">chanrec</a> *, nspace::hash&lt;<br>
- string &gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a39">chan_hash</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef nspace::hash_map&lt;<br>
+ <a class="el" href="namespaceirc.html#string">std::string</a>, <a class="el" href="classchanrec.html">chanrec</a> *, nspace::hash&lt;<br>
+ <a class="el" href="namespaceirc.html#string">string</a> &gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#chan_5Fhash">chan_hash</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef nspace::hash_map&lt;<br>
- in_addr, string *, nspace::hash&lt;<br>
- in_addr &gt;, <a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a40">address_cache</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef nspace::hash_map&lt;<br>
+ in_addr, <a class="el" href="namespaceirc.html#string">string</a> *, nspace::hash&lt;<br>
+ in_addr &gt;, <a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#address_5Fcache">address_cache</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef nspace::hash_map&lt;<br>
- std::string, <a class="el" href="classWhoWasUser.html">WhoWasUser</a> *,<br>
- nspace::hash&lt; string &gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a41">whowas_hash</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef nspace::hash_map&lt;<br>
+ <a class="el" href="namespaceirc.html#string">std::string</a>, <a class="el" href="classWhoWasUser.html">WhoWasUser</a> *,<br>
+ nspace::hash&lt; <a class="el" href="namespaceirc.html#string">string</a> &gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#whowas_5Fhash">whowas_hash</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::deque&lt; <a class="el" href="classcommand__t.html">command_t</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a42">command_table</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::deque&lt; <a class="el" href="classcommand__t.html">command_t</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#command_5Ftable">command_table</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classExtMode.html">ExtMode</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a50">ExtModeList</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="classExtMode.html">ExtMode</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ExtModeList">ExtModeList</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef ExtModeList::iterator&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a51">ExtModeListIter</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ExtModeList::iterator&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a></td></tr>
-<tr><td colspan=2><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a53">ModeDefined</a> (char modechar, int type)</td></tr>
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ModeDefined_28char_20modechar_2C_20int_20type_29">ModeDefined</a> (char modechar, int type)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a54">ModeIsListMode</a> (char modechar, int type)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ModeIsListMode_28char_20modechar_2C_20int_20type_29">ModeIsListMode</a> (char modechar, int type)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a55">ModeDefinedOper</a> (char modechar, int type)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ModeDefinedOper_28char_20modechar_2C_20int_20type_29">ModeDefinedOper</a> (char modechar, int type)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a56">ModeDefinedOn</a> (char modechar, int type)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ModeDefinedOn_28char_20modechar_2C_20int_20type_29">ModeDefinedOn</a> (char modechar, int type)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a57">ModeDefinedOff</a> (char modechar, int type)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ModeDefinedOff_28char_20modechar_2C_20int_20type_29">ModeDefinedOff</a> (char modechar, int type)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a58">DoAddExtendedMode</a> (char modechar, int type, bool requires_oper, int params_on, int params_off)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29">DoAddExtendedMode</a> (char modechar, int type, bool requires_oper, int params_on, int params_off)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a59">ModeMakeList</a> (char modechar)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ModeMakeList_28char_20modechar_29">ModeMakeList</a> (char modechar)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="classModule.html">Module</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a60">modules</a> (255)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="classModule.html">Module</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#modules_28_32_35_35_29">modules</a> (255)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="modules_8h.html#a34">ircd_module</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a61">factory</a> (255)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="modules_8h.html#ircd_5Fmodule">ircd_module</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#factory_28_32_35_35_29">factory</a> (255)</td></tr>
-<tr><td colspan=2><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a0">MODCOUNT</a> = -1</td></tr>
+<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#MODCOUNT">MODCOUNT</a> = -1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="classModule.html">Module</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a1">modules</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="classModule.html">Module</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#modules">modules</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="modules_8h.html#a34">ircd_module</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a2">factory</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="modules_8h.html#ircd_5Fmodule">ircd_module</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#factory">factory</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a3">include_stack</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="namespaceirc.html#string">std::string</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#include_5Fstack">include_stack</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a4">TIME</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="classInspSocket.html">InspSocket</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#module_5Fsockets">module_sockets</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a5">LogLevel</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#TIME">TIME</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a6">ServerName</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#LogLevel">LogLevel</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a7">Network</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a8">ServerDesc</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#Network_5BMAXBUF_5D">Network</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a9">AdminName</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ServerDesc_5BMAXBUF_5D">ServerDesc</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a10">AdminEmail</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#AdminName_5BMAXBUF_5D">AdminName</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a11">AdminNick</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#AdminEmail_5BMAXBUF_5D">AdminEmail</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a12">diepass</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#AdminNick_5BMAXBUF_5D">AdminNick</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a13">restartpass</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#diepass_5BMAXBUF_5D">diepass</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a14">motd</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#restartpass_5BMAXBUF_5D">restartpass</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a15">rules</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#motd_5BMAXBUF_5D">motd</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a16">list</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#rules_5BMAXBUF_5D">rules</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a17">PrefixQuit</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#list_5BMAXBUF_5D">list</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a18">DieValue</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#PrefixQuit_5BMAXBUF_5D">PrefixQuit</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a19">debugging</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#DieValue_5BMAXBUF_5D">DieValue</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a20">WHOWAS_STALE</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#debugging">debugging</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a21">WHOWAS_MAX</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#WHOWAS_5FSTALE">WHOWAS_STALE</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a22">DieDelay</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#WHOWAS_5FMAX">WHOWAS_MAX</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a23">startup_time</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#DieDelay">DieDelay</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a24">NetBufferSize</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#startup_5Ftime">startup_time</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a25">MaxWhoResults</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#NetBufferSize">NetBufferSize</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a26">nb_start</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#MaxWhoResults">MaxWhoResults</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a27">module_names</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#nb_5Fstart">nb_start</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a28">boundPortCount</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::vector&lt; <a class="el" href="namespaceirc.html#string">std::string</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#module_5Fnames">module_names</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a29">portCount</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#boundPortCount">boundPortCount</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a30">SERVERportCount</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#portCount">portCount</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a31">ports</a> [MAXSOCKS]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#ports_5BMAXSOCKS_5D">ports</a> [MAXSOCKS]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a32">defaultRoute</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::stringstream&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#config_5Ff">config_f</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; long &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a33">auth_cookies</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">FILE *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#log_5Ffile">log_file</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::stringstream&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a34">config_f</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#fd_5Fref_5Ftable_5B_36_35_35_33_36_5D">fd_ref_table</a> [65536]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a35">me</a> [32]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8cpp.html#user_5Fhash">user_hash</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#clientlist">clientlist</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>FILE *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a36">log_file</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8cpp.html#chan_5Fhash">chan_hash</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#chanlist">chanlist</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a37">fd_ref_table</a> [65536]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8cpp.html#whowas_5Fhash">whowas_hash</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#whowas">whowas</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8cpp.html#a38">user_hash</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a43">clientlist</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8cpp.html#command_5Ftable">command_table</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#cmdlist">cmdlist</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8cpp.html#a39">chan_hash</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a44">chanlist</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8h.html#file_5Fcache">file_cache</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#MOTD">MOTD</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8cpp.html#a41">whowas_hash</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a45">whowas</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8h.html#file_5Fcache">file_cache</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#RULES">RULES</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8cpp.html#a42">command_table</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a46">cmdlist</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8cpp.html#address_5Fcache">address_cache</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#IP">IP</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8h.html#a31">file_cache</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a47">MOTD</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8h.html#a31">file_cache</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a48">RULES</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8cpp.html#a40">address_cache</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a49">IP</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="modules_8cpp.html#a50">ExtModeList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8cpp.html#a52">EMode</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="modules_8cpp.html#ExtModeList">ExtModeList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8cpp.html#EMode">EMode</a></td></tr>
</table>
<hr><h2>Typedef Documentation</h2>
-<a name="a40" doxytag="modules.cpp::address_cache"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="address_5Fcache"></a><!-- doxytag: member="modules.cpp::address_cache" ref="address_5Fcache" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef nspace::hash_map&lt;in_addr,string*, nspace::hash&lt;in_addr&gt;, <a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a>&gt; <a class="el" href="modules_8cpp.html#a40">address_cache</a>
+ <td class="md" nowrap valign="top">typedef nspace::hash_map&lt;in_addr,<a class="el" href="namespaceirc.html#string">string</a>*, nspace::hash&lt;in_addr&gt;, <a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a>&gt; <a class="el" href="modules_8cpp.html#address_5Fcache">address_cache</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -213,21 +208,22 @@ Include dependency graph for modules.cpp:<p><center><img src="modules_8cpp__incl
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00122">122</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#l00123">123</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="a39" doxytag="modules.cpp::chan_hash"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="chan_5Fhash"></a><!-- doxytag: member="modules.cpp::chan_hash" ref="chan_5Fhash" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef nspace::hash_map&lt;std::string, <a class="el" href="classchanrec.html">chanrec</a>*, nspace::hash&lt;string&gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="el" href="modules_8cpp.html#a39">chan_hash</a>
+ <td class="md" nowrap valign="top">typedef nspace::hash_map&lt;<a class="el" href="namespaceirc.html#string">std::string</a>, <a class="el" href="classchanrec.html">chanrec</a>*, nspace::hash&lt;<a class="el" href="namespaceirc.html#string">string</a>&gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="el" href="modules_8cpp.html#chan_5Fhash">chan_hash</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -237,21 +233,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00122">122</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00121">121</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#l00122">122</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="a42" doxytag="modules.cpp::command_table"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="command_5Ftable"></a><!-- doxytag: member="modules.cpp::command_table" ref="command_5Ftable" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::deque&lt;<a class="el" href="classcommand__t.html">command_t</a>&gt; <a class="el" href="modules_8cpp.html#a42">command_table</a>
+ <td class="md" nowrap valign="top">typedef std::deque&lt;<a class="el" href="classcommand__t.html">command_t</a>&gt; <a class="el" href="modules_8cpp.html#command_5Ftable">command_table</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -261,21 +258,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00121">121</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00124">124</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#l00125">125</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="a50" doxytag="modules.cpp::ExtModeList"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ExtModeList"></a><!-- doxytag: member="modules.cpp::ExtModeList" ref="ExtModeList" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classExtMode.html">ExtMode</a>&gt; <a class="el" href="modules_8cpp.html#a50">ExtModeList</a>
+ <td class="md" nowrap valign="top">typedef std::vector&lt;<a class="el" href="classExtMode.html">ExtMode</a>&gt; <a class="el" href="modules_8cpp.html#ExtModeList">ExtModeList</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -285,21 +283,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00124">124</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00150">150</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#l00151">151</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="a51" doxytag="modules.cpp::ExtModeListIter"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ExtModeListIter"></a><!-- doxytag: member="modules.cpp::ExtModeListIter" ref="ExtModeListIter" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef ExtModeList::iterator <a class="el" href="modules_8cpp.html#a51">ExtModeListIter</a>
+ <td class="md" nowrap valign="top">typedef ExtModeList::iterator <a class="el" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -309,23 +308,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00150">150</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00151">151</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00157">ModeDefined()</a>, <a class="el" href="modules_8cpp-source.html#l00207">ModeDefinedOff()</a>, <a class="el" href="modules_8cpp-source.html#l00194">ModeDefinedOn()</a>, <a class="el" href="modules_8cpp-source.html#l00181">ModeDefinedOper()</a>, <a class="el" href="modules_8cpp-source.html#l00169">ModeIsListMode()</a>, and <a class="el" href="modules_8cpp-source.html#l00230">ModeMakeList()</a>. </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00152">152</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="a38" doxytag="modules.cpp::user_hash"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="user_5Fhash"></a><!-- doxytag: member="modules.cpp::user_hash" ref="user_5Fhash" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef nspace::hash_map&lt;std::string, <a class="el" href="classuserrec.html">userrec</a>*, nspace::hash&lt;string&gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="el" href="modules_8cpp.html#a38">user_hash</a>
+ <td class="md" nowrap valign="top">typedef nspace::hash_map&lt;<a class="el" href="namespaceirc.html#string">std::string</a>, <a class="el" href="classuserrec.html">userrec</a>*, nspace::hash&lt;<a class="el" href="namespaceirc.html#string">string</a>&gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="el" href="modules_8cpp.html#user_5Fhash">user_hash</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -335,21 +333,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00157">ModeDefined()
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00120">120</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#l00121">121</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="a41" doxytag="modules.cpp::whowas_hash"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="whowas_5Fhash"></a><!-- doxytag: member="modules.cpp::whowas_hash" ref="whowas_5Fhash" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef nspace::hash_map&lt;std::string, <a class="el" href="classWhoWasUser.html">WhoWasUser</a>*, nspace::hash&lt;string&gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="el" href="modules_8cpp.html#a41">whowas_hash</a>
+ <td class="md" nowrap valign="top">typedef nspace::hash_map&lt;<a class="el" href="namespaceirc.html#string">std::string</a>, <a class="el" href="classWhoWasUser.html">WhoWasUser</a>*, nspace::hash&lt;<a class="el" href="namespaceirc.html#string">string</a>&gt;, <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>&gt; <a class="el" href="modules_8cpp.html#whowas_5Fhash">whowas_hash</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -359,56 +358,55 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00120">120</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00123">123</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+Definition at line <a class="el" href="modules_8cpp-source.html#l00124">124</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
<hr><h2>Function Documentation</h2>
-<a name="a58" doxytag="modules.cpp::DoAddExtendedMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29"></a><!-- doxytag: member="modules.cpp::DoAddExtendedMode" ref="DoAddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fon_2C_20int_20params_5Foff_29" args="(char modechar, int type, bool requires_oper, int params_on, int params_off)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool DoAddExtendedMode </td>
+ <td class="md" nowrap valign="top">bool DoAddExtendedMode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>modechar</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap> <em>requires_oper</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>params_on</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>params_off</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -418,41 +416,40 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00123">123</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00220">220</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00221">221</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <a class="el" href="modules_8cpp-source.html#l00157">ModeDefined()</a>.
+References <a class="el" href="modules_8cpp-source.html#l00155">EMode</a>, and <a class="el" href="modules_8cpp-source.html#l00158">ModeDefined()</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00607">Server::AddExtendedListMode()</a>, and <a class="el" href="modules_8cpp-source.html#l00579">Server::AddExtendedMode()</a>.
+Referenced by <a class="el" href="modules_8cpp-source.html#l00625">Server::AddExtendedListMode()</a>, and <a class="el" href="modules_8cpp-source.html#l00597">Server::AddExtendedMode()</a>.<div class="fragment"><pre class="fragment"><a name="l00222"></a>00222 {
+<a name="l00223"></a>00223 <span class="keywordflow">if</span> (<a class="code" href="modules_8cpp.html#ModeDefined_28char_20modechar_2C_20int_20type_29">ModeDefined</a>(modechar,type)) {
+<a name="l00224"></a>00224 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00225"></a>00225 }
+<a name="l00226"></a>00226 <a class="code" href="modules_8cpp.html#EMode">EMode</a>.push_back(<a class="code" href="classExtMode.html">ExtMode</a>(modechar,type,requires_oper,params_on,params_off));
+<a name="l00227"></a>00227 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00228"></a>00228 }
+</pre></div>
<p>
-<div class="fragment"><pre>00221 {
-00222 <span class="keywordflow">if</span> (<a class="code" href="modules_8cpp.html#a53">ModeDefined</a>(modechar,type)) {
-00223 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00224 }
-00225 <a class="code" href="modules_8cpp.html#a52">EMode</a>.push_back(<a class="code" href="classExtMode.html">ExtMode</a>(modechar,type,requires_oper,params_on,params_off));
-00226 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00227 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a61" doxytag="modules.cpp::factory"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="factory_28_32_35_35_29"></a><!-- doxytag: member="modules.cpp::factory" ref="factory_28_32_35_35_29" args="(255)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="modules_8h.html#a34">ircd_module</a>*&gt; factory </td>
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="modules_8h.html#ircd_5Fmodule">ircd_module</a>*&gt; factory </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">255&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -463,34 +460,33 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00607">Server::AddEx
</td>
</tr>
</table>
-<a name="a53" doxytag="modules.cpp::ModeDefined"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ModeDefined_28char_20modechar_2C_20int_20type_29"></a><!-- doxytag: member="modules.cpp::ModeDefined" ref="ModeDefined_28char_20modechar_2C_20int_20type_29" args="(char modechar, int type)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool ModeDefined </td>
+ <td class="md" nowrap valign="top">bool ModeDefined </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>modechar</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -500,53 +496,52 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00607">Server::AddEx
<p>
<p>
-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>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00158">158</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <a class="el" href="modules_8cpp-source.html#l00151">ExtModeListIter</a>.
+References <a class="el" href="modules_8cpp-source.html#l00155">EMode</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00220">DoAddExtendedMode()</a>.
+Referenced by <a class="el" href="modules_8cpp-source.html#l00221">DoAddExtendedMode()</a>.<div class="fragment"><pre class="fragment"><a name="l00159"></a>00159 {
+<a name="l00160"></a>00160 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00161"></a>00161 {
+<a name="l00162"></a>00162 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
+<a name="l00163"></a>00163 {
+<a name="l00164"></a>00164 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00165"></a>00165 }
+<a name="l00166"></a>00166 }
+<a name="l00167"></a>00167 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00168"></a>00168 }
+</pre></div>
<p>
-<div class="fragment"><pre>00158 {
-00159 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00160 {
-00161 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
-00162 {
-00163 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00164 }
-00165 }
-00166 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00167 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a57" doxytag="modules.cpp::ModeDefinedOff"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ModeDefinedOff_28char_20modechar_2C_20int_20type_29"></a><!-- doxytag: member="modules.cpp::ModeDefinedOff" ref="ModeDefinedOff_28char_20modechar_2C_20int_20type_29" args="(char modechar, int type)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int ModeDefinedOff </td>
+ <td class="md" nowrap valign="top">int ModeDefinedOff </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>modechar</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -556,51 +551,50 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00220">DoAddExtended
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00207">207</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+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>
-References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <a class="el" href="modules_8cpp-source.html#l00151">ExtModeListIter</a>.
+References <a class="el" href="modules_8cpp-source.html#l00155">EMode</a>.<div class="fragment"><pre class="fragment"><a name="l00209"></a>00209 {
+<a name="l00210"></a>00210 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00211"></a>00211 {
+<a name="l00212"></a>00212 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
+<a name="l00213"></a>00213 {
+<a name="l00214"></a>00214 <span class="keywordflow">return</span> i-&gt;params_when_off;
+<a name="l00215"></a>00215 }
+<a name="l00216"></a>00216 }
+<a name="l00217"></a>00217 <span class="keywordflow">return</span> 0;
+<a name="l00218"></a>00218 }
+</pre></div>
<p>
-<div class="fragment"><pre>00208 {
-00209 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00210 {
-00211 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
-00212 {
-00213 <span class="keywordflow">return</span> i-&gt;params_when_off;
-00214 }
-00215 }
-00216 <span class="keywordflow">return</span> 0;
-00217 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a56" doxytag="modules.cpp::ModeDefinedOn"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ModeDefinedOn_28char_20modechar_2C_20int_20type_29"></a><!-- doxytag: member="modules.cpp::ModeDefinedOn" ref="ModeDefinedOn_28char_20modechar_2C_20int_20type_29" args="(char modechar, int type)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int ModeDefinedOn </td>
+ <td class="md" nowrap valign="top">int ModeDefinedOn </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>modechar</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -610,51 +604,50 @@ References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00194">194</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#l00195">195</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <a class="el" href="modules_8cpp-source.html#l00151">ExtModeListIter</a>.
+References <a class="el" href="modules_8cpp-source.html#l00155">EMode</a>.<div class="fragment"><pre class="fragment"><a name="l00196"></a>00196 {
+<a name="l00197"></a>00197 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00198"></a>00198 {
+<a name="l00199"></a>00199 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
+<a name="l00200"></a>00200 {
+<a name="l00201"></a>00201 <span class="keywordflow">return</span> i-&gt;params_when_on;
+<a name="l00202"></a>00202 }
+<a name="l00203"></a>00203 }
+<a name="l00204"></a>00204 <span class="keywordflow">return</span> 0;
+<a name="l00205"></a>00205 }
+</pre></div>
<p>
-<div class="fragment"><pre>00195 {
-00196 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00197 {
-00198 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type))
-00199 {
-00200 <span class="keywordflow">return</span> i-&gt;params_when_on;
-00201 }
-00202 }
-00203 <span class="keywordflow">return</span> 0;
-00204 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a55" doxytag="modules.cpp::ModeDefinedOper"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ModeDefinedOper_28char_20modechar_2C_20int_20type_29"></a><!-- doxytag: member="modules.cpp::ModeDefinedOper" ref="ModeDefinedOper_28char_20modechar_2C_20int_20type_29" args="(char modechar, int type)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool ModeDefinedOper </td>
+ <td class="md" nowrap valign="top">bool ModeDefinedOper </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>modechar</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -664,51 +657,50 @@ References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00181">181</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00182">182</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <a class="el" href="modules_8cpp-source.html#l00151">ExtModeListIter</a>.
+References <a class="el" href="modules_8cpp-source.html#l00155">EMode</a>.<div class="fragment"><pre class="fragment"><a name="l00183"></a>00183 {
+<a name="l00184"></a>00184 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00185"></a>00185 {
+<a name="l00186"></a>00186 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type) &amp;&amp; (i-&gt;needsoper == <span class="keyword">true</span>))
+<a name="l00187"></a>00187 {
+<a name="l00188"></a>00188 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00189"></a>00189 }
+<a name="l00190"></a>00190 }
+<a name="l00191"></a>00191 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00192"></a>00192 }
+</pre></div>
<p>
-<div class="fragment"><pre>00182 {
-00183 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00184 {
-00185 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type) &amp;&amp; (i-&gt;needsoper == <span class="keyword">true</span>))
-00186 {
-00187 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00188 }
-00189 }
-00190 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00191 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a54" doxytag="modules.cpp::ModeIsListMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ModeIsListMode_28char_20modechar_2C_20int_20type_29"></a><!-- doxytag: member="modules.cpp::ModeIsListMode" ref="ModeIsListMode_28char_20modechar_2C_20int_20type_29" args="(char modechar, int type)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool ModeIsListMode </td>
+ <td class="md" nowrap valign="top">bool ModeIsListMode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>modechar</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>type</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -718,42 +710,41 @@ References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00169">169</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
+Definition at line <a class="el" href="modules_8cpp-source.html#l00170">170</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <a class="el" href="modules_8cpp-source.html#l00151">ExtModeListIter</a>.
+References <a class="el" href="modules_8cpp-source.html#l00155">EMode</a>.<div class="fragment"><pre class="fragment"><a name="l00171"></a>00171 {
+<a name="l00172"></a>00172 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00173"></a>00173 {
+<a name="l00174"></a>00174 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type) &amp;&amp; (i-&gt;list == <span class="keyword">true</span>))
+<a name="l00175"></a>00175 {
+<a name="l00176"></a>00176 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00177"></a>00177 }
+<a name="l00178"></a>00178 }
+<a name="l00179"></a>00179 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00180"></a>00180 }
+</pre></div>
<p>
-<div class="fragment"><pre>00170 {
-00171 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00172 {
-00173 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == type) &amp;&amp; (i-&gt;list == <span class="keyword">true</span>))
-00174 {
-00175 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00176 }
-00177 }
-00178 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00179 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a59" doxytag="modules.cpp::ModeMakeList"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ModeMakeList_28char_20modechar_29"></a><!-- doxytag: member="modules.cpp::ModeMakeList" ref="ModeMakeList_28char_20modechar_29" args="(char modechar)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void ModeMakeList </td>
+ <td class="md" nowrap valign="top">void ModeMakeList </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>modechar</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -763,45 +754,44 @@ References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, and <
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00230">230</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#l00231">231</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-References <a class="el" href="modules_8cpp-source.html#l00154">EMode</a>, <a class="el" href="modules_8cpp-source.html#l00151">ExtModeListIter</a>, and <a class="el" href="modules_8h-source.html#l00031">MT_CHANNEL</a>.
+References <a class="el" href="modules_8cpp-source.html#l00155">EMode</a>, and <a class="el" href="modules_8h-source.html#l00031">MT_CHANNEL</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00607">Server::AddExtendedListMode()</a>.
+Referenced by <a class="el" href="modules_8cpp-source.html#l00625">Server::AddExtendedListMode()</a>.<div class="fragment"><pre class="fragment"><a name="l00232"></a>00232 {
+<a name="l00233"></a>00233 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#ExtModeListIter">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#EMode">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#EMode">EMode</a>.end(); i++)
+<a name="l00234"></a>00234 {
+<a name="l00235"></a>00235 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == <a class="code" href="modules_8h.html#MT_5FCHANNEL">MT_CHANNEL</a>))
+<a name="l00236"></a>00236 {
+<a name="l00237"></a>00237 i-&gt;list = <span class="keyword">true</span>;
+<a name="l00238"></a>00238 <span class="keywordflow">return</span>;
+<a name="l00239"></a>00239 }
+<a name="l00240"></a>00240 }
+<a name="l00241"></a>00241 <span class="keywordflow">return</span>;
+<a name="l00242"></a>00242 }
+</pre></div>
<p>
-<div class="fragment"><pre>00231 {
-00232 <span class="keywordflow">for</span> (<a class="code" href="modules_8cpp.html#a51">ExtModeListIter</a> i = <a class="code" href="modules_8cpp.html#a52">EMode</a>.begin(); i &lt; <a class="code" href="modules_8cpp.html#a52">EMode</a>.end(); i++)
-00233 {
-00234 <span class="keywordflow">if</span> ((i-&gt;modechar == modechar) &amp;&amp; (i-&gt;type == <a class="code" href="modules_8h.html#a5">MT_CHANNEL</a>))
-00235 {
-00236 i-&gt;list = <span class="keyword">true</span>;
-00237 <span class="keywordflow">return</span>;
-00238 }
-00239 }
-00240 <span class="keywordflow">return</span>;
-00241 }
-</pre></div> </td>
+ </td>
</tr>
</table>
-<a name="a60" doxytag="modules.cpp::modules"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="modules_28_32_35_35_29"></a><!-- doxytag: member="modules.cpp::modules" ref="modules_28_32_35_35_29" args="(255)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="classModule.html">Module</a>*&gt; modules </td>
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="classModule.html">Module</a>*&gt; modules </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">255&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -813,18 +803,19 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00607">Server::AddEx
</tr>
</table>
<hr><h2>Variable Documentation</h2>
-<a name="a10" doxytag="modules.cpp::AdminEmail"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AdminEmail_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::AdminEmail" ref="AdminEmail_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a10">AdminEmail</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#AdminEmail_5BMAXBUF_5D">AdminEmail</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -832,47 +823,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00607">Server::AddEx
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00084">84</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
- </tr>
-</table>
-<a name="a9" doxytag="modules.cpp::AdminName"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a9">AdminName</a>[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="modules_8cpp-source.html#l00083">83</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
- </tr>
-</table>
-<a name="a11" doxytag="modules.cpp::AdminNick"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AdminName_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::AdminName" ref="AdminName_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a11">AdminNick</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#AdminName_5BMAXBUF_5D">AdminName</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -880,47 +846,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00083">83</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00085">85</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
- </tr>
-</table>
-<a name="a33" doxytag="modules.cpp::auth_cookies"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> std::vector&lt;long&gt; <a class="el" href="modules_8cpp.html#a33">auth_cookies</a>
- </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="modules_8cpp-source.html#l00111">111</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="a28" doxytag="modules.cpp::boundPortCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AdminNick_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::AdminNick" ref="AdminNick_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a28">boundPortCount</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#AdminNick_5BMAXBUF_5D">AdminNick</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -928,23 +869,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00111">111</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00105">105</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a44" doxytag="modules.cpp::chanlist"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="boundPortCount"></a><!-- doxytag: member="modules.cpp::boundPortCount" ref="boundPortCount" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8cpp.html#a39">chan_hash</a> <a class="el" href="modules_8cpp.html#a44">chanlist</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="socket_8cpp.html#boundPortCount">boundPortCount</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -952,23 +892,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00105">105</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00128">128</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a43" doxytag="modules.cpp::clientlist"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="chanlist"></a><!-- doxytag: member="modules.cpp::chanlist" ref="chanlist" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8cpp.html#a38">user_hash</a> <a class="el" href="modules_8cpp.html#a43">clientlist</a>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8cpp.html#chan_5Fhash">chan_hash</a> <a class="el" href="modules_8cpp.html#chanlist">chanlist</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -976,23 +915,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00128">128</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00127">127</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a46" doxytag="modules.cpp::cmdlist"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="clientlist"></a><!-- doxytag: member="modules.cpp::clientlist" ref="clientlist" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8cpp.html#a42">command_table</a> <a class="el" href="modules_8cpp.html#a46">cmdlist</a>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8cpp.html#user_5Fhash">user_hash</a> <a class="el" href="modules_8cpp.html#clientlist">clientlist</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1000,23 +938,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00127">127</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00130">130</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a34" doxytag="modules.cpp::config_f"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="cmdlist"></a><!-- doxytag: member="modules.cpp::cmdlist" ref="cmdlist" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::stringstream <a class="el" href="users_8cpp.html#a0">config_f</a>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8cpp.html#command_5Ftable">command_table</a> <a class="el" href="modules_8cpp.html#cmdlist">cmdlist</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1024,23 +961,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00130">130</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00112">112</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a19" doxytag="modules.cpp::debugging"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="config_5Ff"></a><!-- doxytag: member="modules.cpp::config_f" ref="config_5Ff" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a19">debugging</a>
+ <td class="md" nowrap valign="top">std::stringstream <a class="el" href="users_8cpp.html#config_5Ff">config_f</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1048,23 +984,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00112">112</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00094">94</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a32" doxytag="modules.cpp::defaultRoute"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="debugging"></a><!-- doxytag: member="modules.cpp::debugging" ref="debugging" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a32">defaultRoute</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#debugging">debugging</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1072,23 +1007,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00094">94</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00109">109</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a22" doxytag="modules.cpp::DieDelay"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DieDelay"></a><!-- doxytag: member="modules.cpp::DieDelay" ref="DieDelay" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a22">DieDelay</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#DieDelay">DieDelay</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1096,23 +1030,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00109">109</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00097">97</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a12" doxytag="modules.cpp::diepass"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="diepass_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::diepass" ref="diepass_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a12">diepass</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#diepass_5BMAXBUF_5D">diepass</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1120,23 +1053,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00097">97</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00086">86</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a18" doxytag="modules.cpp::DieValue"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DieValue_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::DieValue" ref="DieValue_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a18">DieValue</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#DieValue_5BMAXBUF_5D">DieValue</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1144,23 +1076,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00086">86</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00092">92</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a52" doxytag="modules.cpp::EMode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="EMode"></a><!-- doxytag: member="modules.cpp::EMode" ref="EMode" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8cpp.html#a50">ExtModeList</a> <a class="el" href="modules_8cpp.html#a52">EMode</a>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8cpp.html#ExtModeList">ExtModeList</a> <a class="el" href="modules_8cpp.html#EMode">EMode</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1170,23 +1101,24 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00092">92</a> o
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00154">154</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#l00155">155</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00220">DoAddExtendedMode()</a>, <a class="el" href="modules_8cpp-source.html#l00157">ModeDefined()</a>, <a class="el" href="modules_8cpp-source.html#l00207">ModeDefinedOff()</a>, <a class="el" href="modules_8cpp-source.html#l00194">ModeDefinedOn()</a>, <a class="el" href="modules_8cpp-source.html#l00181">ModeDefinedOper()</a>, <a class="el" href="modules_8cpp-source.html#l00169">ModeIsListMode()</a>, and <a class="el" href="modules_8cpp-source.html#l00230">ModeMakeList()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00221">DoAddExtendedMode()</a>, <a class="el" href="modules_8cpp-source.html#l00158">ModeDefined()</a>, <a class="el" href="modules_8cpp-source.html#l00208">ModeDefinedOff()</a>, <a class="el" href="modules_8cpp-source.html#l00195">ModeDefinedOn()</a>, <a class="el" href="modules_8cpp-source.html#l00182">ModeDefinedOper()</a>, <a class="el" href="modules_8cpp-source.html#l00170">ModeIsListMode()</a>, and <a class="el" href="modules_8cpp-source.html#l00231">ModeMakeList()</a>. </td>
</tr>
</table>
-<a name="a2" doxytag="modules.cpp::factory"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="factory"></a><!-- doxytag: member="modules.cpp::factory" ref="factory" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="modules_8h.html#a34">ircd_module</a>*&gt; factory
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="modules_8h.html#ircd_5Fmodule">ircd_module</a>*&gt; factory </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1194,49 +1126,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00220">DoAddExtended
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00073">73</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
- </tr>
-</table>
-<a name="a37" doxytag="modules.cpp::fd_ref_table"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classuserrec.html">userrec</a>* <a class="el" href="modules_8cpp.html#a37">fd_ref_table</a>[65536]
- </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="modules_8cpp-source.html#l00118">118</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00537">Server::FindDescriptor()</a>, and <a class="el" href="modules_8cpp-source.html#l00651">Server::PseudoToUser()</a>. </td>
- </tr>
-</table>
-<a name="a3" doxytag="modules.cpp::include_stack"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="fd_5Fref_5Ftable_5B_36_35_35_33_36_5D"></a><!-- doxytag: member="modules.cpp::fd_ref_table" ref="fd_5Fref_5Ftable_5B_36_35_35_33_36_5D" args="[65536]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;std::string&gt; <a class="el" href="modules_8cpp.html#a3">include_stack</a>
+ <td class="md" nowrap valign="top"><a class="el" href="classuserrec.html">userrec</a>* <a class="el" href="modules_8cpp.html#fd_5Fref_5Ftable_5B_36_35_35_33_36_5D">fd_ref_table</a>[65536] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1244,25 +1149,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00537">Server::FindD
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00075">75</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00821">ConfigReader::ConfigReader()</a>. </td>
+ </td>
</tr>
</table>
-<a name="a49" doxytag="modules.cpp::IP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="include_5Fstack"></a><!-- doxytag: member="modules.cpp::include_stack" ref="include_5Fstack" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8cpp.html#a40">address_cache</a> <a class="el" href="modules_8cpp.html#a49">IP</a>
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="namespaceirc.html#string">std::string</a>&gt; <a class="el" href="modules_8cpp.html#include_5Fstack">include_stack</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1272,21 +1174,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00821">ConfigReader:
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00133">133</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00796">ConfigReader::ConfigReader()</a>. </td>
</tr>
</table>
-<a name="a16" doxytag="modules.cpp::list"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="IP"></a><!-- doxytag: member="modules.cpp::IP" ref="IP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a16">list</a>[MAXBUF]
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8cpp.html#address_5Fcache">address_cache</a> <a class="el" href="modules_8cpp.html#IP">IP</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1294,23 +1197,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00133">133</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00090">90</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a36" doxytag="modules.cpp::log_file"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="list_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::list" ref="list_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> FILE* <a class="el" href="modules_8cpp.html#a36">log_file</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#list_5BMAXBUF_5D">list</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1318,23 +1220,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00090">90</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00116">116</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a5" doxytag="modules.cpp::LogLevel"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="log_5Ffile"></a><!-- doxytag: member="modules.cpp::log_file" ref="log_5Ffile" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a5">LogLevel</a>
+ <td class="md" nowrap valign="top">FILE* <a class="el" href="socket_8cpp.html#log_5Ffile">log_file</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1342,23 +1243,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00116">116</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00079">79</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a25" doxytag="modules.cpp::MaxWhoResults"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="LogLevel"></a><!-- doxytag: member="modules.cpp::LogLevel" ref="LogLevel" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a25">MaxWhoResults</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#LogLevel">LogLevel</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1366,23 +1266,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00079">79</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00100">100</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a35" doxytag="modules.cpp::me"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MaxWhoResults"></a><!-- doxytag: member="modules.cpp::MaxWhoResults" ref="MaxWhoResults" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="classserverrec.html">serverrec</a>* <a class="el" href="servers_8cpp.html#a2">me</a>[32]
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#MaxWhoResults">MaxWhoResults</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1392,21 +1291,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00100">100</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00114">114</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+Definition at line <a class="el" href="channels_8cpp-source.html#l00081">81</a> of file <a class="el" href="channels_8cpp-source.html">channels.cpp</a>. </td>
</tr>
</table>
-<a name="a0" doxytag="modules.cpp::MODCOUNT"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MODCOUNT"></a><!-- doxytag: member="modules.cpp::MODCOUNT" ref="MODCOUNT" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a0">MODCOUNT</a> = -1
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#MODCOUNT">MODCOUNT</a> = -1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1416,21 +1316,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00114">114</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l01019">1019</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#l00994">994</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
</tr>
</table>
-<a name="a27" doxytag="modules.cpp::module_names"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="module_5Fnames"></a><!-- doxytag: member="modules.cpp::module_names" ref="module_5Fnames" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;std::string&gt; <a class="el" href="modules_8cpp.html#a27">module_names</a>
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="namespaceirc.html#string">std::string</a>&gt; <a class="el" href="modules_8cpp.html#module_5Fnames">module_names</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1438,23 +1339,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l01019">1019</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00103">103</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="modules.cpp::modules"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="module_5Fsockets"></a><!-- doxytag: member="modules.cpp::module_sockets" ref="module_5Fsockets" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="classModule.html">Module</a>*&gt; modules
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="classInspSocket.html">InspSocket</a>*&gt; <a class="el" href="modules_8cpp.html#module_5Fsockets">module_sockets</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1464,21 +1364,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00103">103</a>
<p>
<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00072">72</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00375">Server::AddSocket()</a>, and <a class="el" href="modules_8cpp-source.html#l00380">Server::DelSocket()</a>. </td>
</tr>
</table>
-<a name="a47" doxytag="modules.cpp::MOTD"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="modules"></a><!-- doxytag: member="modules.cpp::modules" ref="modules" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8h.html#a31">file_cache</a> <a class="el" href="modules_8cpp.html#a47">MOTD</a>
+ <td class="md" nowrap valign="top">std::vector&lt;<a class="el" href="classModule.html">Module</a>*&gt; modules </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1486,23 +1387,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00072">72</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00131">131</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a14" doxytag="modules.cpp::motd"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MOTD"></a><!-- doxytag: member="modules.cpp::MOTD" ref="MOTD" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a14">motd</a>[MAXBUF]
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8h.html#file_5Fcache">file_cache</a> <a class="el" href="modules_8cpp.html#MOTD">MOTD</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1510,23 +1410,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00131">131</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00088">88</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a26" doxytag="modules.cpp::nb_start"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="motd_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::motd" ref="motd_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="modules_8cpp.html#a26">nb_start</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#motd_5BMAXBUF_5D">motd</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1534,23 +1433,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00088">88</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00101">101</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a24" doxytag="modules.cpp::NetBufferSize"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="nb_5Fstart"></a><!-- doxytag: member="modules.cpp::nb_start" ref="nb_5Fstart" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a24">NetBufferSize</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="modules_8cpp.html#nb_5Fstart">nb_start</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1558,23 +1456,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00101">101</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00099">99</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a7" doxytag="modules.cpp::Network"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="NetBufferSize"></a><!-- doxytag: member="modules.cpp::NetBufferSize" ref="NetBufferSize" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a7">Network</a>[MAXBUF]
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#NetBufferSize">NetBufferSize</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1582,23 +1479,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00099">99</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00081">81</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a29" doxytag="modules.cpp::portCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="Network_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::Network" ref="Network_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a29">portCount</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#Network_5BMAXBUF_5D">Network</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1606,23 +1502,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00081">81</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00106">106</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a31" doxytag="modules.cpp::ports"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="portCount"></a><!-- doxytag: member="modules.cpp::portCount" ref="portCount" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a31">ports</a>[MAXSOCKS]
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#portCount">portCount</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1630,23 +1525,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00106">106</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00108">108</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a17" doxytag="modules.cpp::PrefixQuit"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ports_5BMAXSOCKS_5D"></a><!-- doxytag: member="modules.cpp::ports" ref="ports_5BMAXSOCKS_5D" args="[MAXSOCKS]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a17">PrefixQuit</a>[MAXBUF]
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#ports_5BMAXSOCKS_5D">ports</a>[MAXSOCKS] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1654,23 +1548,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00108">108</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00091">91</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a13" doxytag="modules.cpp::restartpass"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="PrefixQuit_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::PrefixQuit" ref="PrefixQuit_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a13">restartpass</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#PrefixQuit_5BMAXBUF_5D">PrefixQuit</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1678,23 +1571,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00091">91</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00087">87</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a48" doxytag="modules.cpp::RULES"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="restartpass_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::restartpass" ref="restartpass_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8h.html#a31">file_cache</a> <a class="el" href="modules_8cpp.html#a48">RULES</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#restartpass_5BMAXBUF_5D">restartpass</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1702,23 +1594,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00087">87</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00132">132</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a15" doxytag="modules.cpp::rules"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="RULES"></a><!-- doxytag: member="modules.cpp::RULES" ref="RULES" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a15">rules</a>[MAXBUF]
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8h.html#file_5Fcache">file_cache</a> <a class="el" href="modules_8cpp.html#RULES">RULES</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1726,23 +1617,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00132">132</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00089">89</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a8" doxytag="modules.cpp::ServerDesc"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="rules_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::rules" ref="rules_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="modules_8cpp.html#a8">ServerDesc</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#rules_5BMAXBUF_5D">rules</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1750,23 +1640,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00089">89</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00082">82</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a6" doxytag="modules.cpp::ServerName"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ServerDesc_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::ServerDesc" ref="ServerDesc_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="users_8cpp.html#a1">ServerName</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="modules_8cpp.html#ServerDesc_5BMAXBUF_5D">ServerDesc</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1774,23 +1663,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00082">82</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00080">80</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a30" doxytag="modules.cpp::SERVERportCount"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ServerName_5BMAXBUF_5D"></a><!-- doxytag: member="modules.cpp::ServerName" ref="ServerName_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a30">SERVERportCount</a>
+ <td class="md" nowrap valign="top">char <a class="el" href="users_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1798,23 +1686,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00080">80</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00107">107</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a23" doxytag="modules.cpp::startup_time"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="startup_5Ftime"></a><!-- doxytag: member="modules.cpp::startup_time" ref="startup_5Ftime" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="modules_8cpp.html#a23">startup_time</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="modules_8cpp.html#startup_5Ftime">startup_time</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1822,23 +1709,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00107">107</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00098">98</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a4" doxytag="modules.cpp::TIME"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="TIME"></a><!-- doxytag: member="modules.cpp::TIME" ref="TIME" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="users_8cpp.html#a2">TIME</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="users_8cpp.html#TIME">TIME</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1846,23 +1732,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00098">98</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00077">77</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a45" doxytag="modules.cpp::whowas"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="whowas"></a><!-- doxytag: member="modules.cpp::whowas" ref="whowas" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="modules_8cpp.html#a41">whowas_hash</a> <a class="el" href="modules_8cpp.html#a45">whowas</a>
+ <td class="md" nowrap valign="top"><a class="el" href="modules_8cpp.html#whowas_5Fhash">whowas_hash</a> <a class="el" href="modules_8cpp.html#whowas">whowas</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1870,23 +1755,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00077">77</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00129">129</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a21" doxytag="modules.cpp::WHOWAS_MAX"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="WHOWAS_5FMAX"></a><!-- doxytag: member="modules.cpp::WHOWAS_MAX" ref="WHOWAS_5FMAX" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a21">WHOWAS_MAX</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#WHOWAS_5FMAX">WHOWAS_MAX</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1894,23 +1778,22 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00129">129</a>
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00096">96</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a20" doxytag="modules.cpp::WHOWAS_STALE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="WHOWAS_5FSTALE"></a><!-- doxytag: member="modules.cpp::WHOWAS_STALE" ref="WHOWAS_5FSTALE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int <a class="el" href="modules_8cpp.html#a20">WHOWAS_STALE</a>
+ <td class="md" nowrap valign="top">int <a class="el" href="modules_8cpp.html#WHOWAS_5FSTALE">WHOWAS_STALE</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1918,14 +1801,11 @@ Definition at line <a class="el" href="modules_8cpp-source.html#l00096">96</a> o
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="modules_8cpp-source.html#l00095">95</a> of file <a class="el" href="modules_8cpp-source.html">modules.cpp</a>. </td>
+ </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:04 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/modules_8cpp__incl.gif b/docs/module-doc/modules_8cpp__incl.gif
index f603ade24..19414b0cf 100644
--- a/docs/module-doc/modules_8cpp__incl.gif
+++ b/docs/module-doc/modules_8cpp__incl.gif
Binary files differ
diff --git a/docs/module-doc/modules_8cpp__incl.map b/docs/module-doc/modules_8cpp__incl.map
new file mode 100644
index 000000000..af1895853
--- /dev/null
+++ b/docs/module-doc/modules_8cpp__incl.map
@@ -0,0 +1,10 @@
+base referer
+rect $users_8h-source.html 322,738 386,764
+rect $ctables_8h-source.html 316,180 391,207
+rect $modules_8h-source.html 164,383 247,410
+rect $socket_8h-source.html 318,383 390,410
+rect $message_8h-source.html 163,839 248,866
+rect $mode_8h-source.html 172,586 239,612
+rect $xline_8h-source.html 175,788 236,815
+rect $commands_8h-source.html 156,687 255,714
+rect $hashcomp_8h-source.html 307,79 400,106
diff --git a/docs/module-doc/modules_8cpp__incl.md5 b/docs/module-doc/modules_8cpp__incl.md5
new file mode 100644
index 000000000..075b4d32d
--- /dev/null
+++ b/docs/module-doc/modules_8cpp__incl.md5
@@ -0,0 +1 @@
+ef223cbef13898617d55573e4017c641 \ No newline at end of file
diff --git a/docs/module-doc/modules_8h-source.html b/docs/module-doc/modules_8h-source.html
index 9e01f90aa..a66aa14b1 100644
--- a/docs/module-doc/modules_8h-source.html
+++ b/docs/module-doc/modules_8h-source.html
@@ -1,458 +1,451 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: modules.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>modules.h</h1><a href="modules_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017
-00018 <span class="preprocessor">#ifndef __PLUGIN_H</span>
-00019 <span class="preprocessor"></span><span class="preprocessor">#define __PLUGIN_H</span>
-00020 <span class="preprocessor"></span>
-00021 <span class="comment">// log levels</span>
-00022
-<a name="l00023"></a><a class="code" href="modules_8h.html#a0">00023</a> <span class="preprocessor">#define DEBUG 10</span>
-<a name="l00024"></a><a class="code" href="modules_8h.html#a1">00024</a> <span class="preprocessor"></span><span class="preprocessor">#define VERBOSE 20</span>
-<a name="l00025"></a><a class="code" href="modules_8h.html#a2">00025</a> <span class="preprocessor"></span><span class="preprocessor">#define DEFAULT 30</span>
-<a name="l00026"></a><a class="code" href="modules_8h.html#a3">00026</a> <span class="preprocessor"></span><span class="preprocessor">#define SPARSE 40</span>
-<a name="l00027"></a><a class="code" href="modules_8h.html#a4">00027</a> <span class="preprocessor"></span><span class="preprocessor">#define NONE 50</span>
-00028 <span class="preprocessor"></span>
-00029 <span class="comment">// used with OnExtendedMode() method of modules</span>
-00030
-<a name="l00031"></a><a class="code" href="modules_8h.html#a5">00031</a> <span class="preprocessor">#define MT_CHANNEL 1</span>
-<a name="l00032"></a><a class="code" href="modules_8h.html#a6">00032</a> <span class="preprocessor"></span><span class="preprocessor">#define MT_CLIENT 2</span>
-<a name="l00033"></a><a class="code" href="modules_8h.html#a7">00033</a> <span class="preprocessor"></span><span class="preprocessor">#define MT_SERVER 3</span>
-00034 <span class="preprocessor"></span>
-00035 <span class="comment">// used with OnAccessCheck() method of modules</span>
-00036
-<a name="l00037"></a><a class="code" href="modules_8h.html#a8">00037</a> <span class="preprocessor">#define ACR_DEFAULT 0 // Do default action (act as if the module isnt even loaded)</span>
-<a name="l00038"></a><a class="code" href="modules_8h.html#a9">00038</a> <span class="preprocessor"></span><span class="preprocessor">#define ACR_DENY 1 // deny the action</span>
-<a name="l00039"></a><a class="code" href="modules_8h.html#a10">00039</a> <span class="preprocessor"></span><span class="preprocessor">#define ACR_ALLOW 2 // allow the action</span>
-00040 <span class="preprocessor"></span>
-<a name="l00041"></a><a class="code" href="modules_8h.html#a11">00041</a> <span class="preprocessor">#define AC_KICK 0 // a user is being kicked</span>
-<a name="l00042"></a><a class="code" href="modules_8h.html#a12">00042</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_DEOP 1 // a user is being deopped</span>
-<a name="l00043"></a><a class="code" href="modules_8h.html#a13">00043</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_OP 2 // a user is being opped</span>
-<a name="l00044"></a><a class="code" href="modules_8h.html#a14">00044</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_VOICE 3 // a user is being voiced</span>
-<a name="l00045"></a><a class="code" href="modules_8h.html#a15">00045</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_DEVOICE 4 // a user is being devoiced</span>
-<a name="l00046"></a><a class="code" href="modules_8h.html#a16">00046</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_HALFOP 5 // a user is being halfopped</span>
-<a name="l00047"></a><a class="code" href="modules_8h.html#a17">00047</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_DEHALFOP 6 // a user is being dehalfopped</span>
-<a name="l00048"></a><a class="code" href="modules_8h.html#a18">00048</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_INVITE 7 // a user is being invited</span>
-<a name="l00049"></a><a class="code" href="modules_8h.html#a19">00049</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_GENERAL_MODE 8 // a user channel mode is being changed</span>
-00050 <span class="preprocessor"></span>
-00051 <span class="comment">// used to define a set of behavior bits for a module</span>
-00052
-<a name="l00053"></a><a class="code" href="modules_8h.html#a20">00053</a> <span class="preprocessor">#define VF_STATIC 1 // module is static, cannot be /unloadmodule'd</span>
-<a name="l00054"></a><a class="code" href="modules_8h.html#a21">00054</a> <span class="preprocessor"></span><span class="preprocessor">#define VF_VENDOR 2 // module is a vendor module (came in the original tarball, not 3rd party)</span>
-<a name="l00055"></a><a class="code" href="modules_8h.html#a22">00055</a> <span class="preprocessor"></span><span class="preprocessor">#define VF_SERVICEPROVIDER 4 // module provides a service to other modules (can be a dependency)</span>
-<a name="l00056"></a><a class="code" href="modules_8h.html#a23">00056</a> <span class="preprocessor"></span><span class="preprocessor">#define VF_COMMON 8 // module needs to be common on all servers in a mesh to link</span>
-00057 <span class="preprocessor"></span>
-00058 <span class="preprocessor">#include "dynamic.h"</span>
-00059 <span class="preprocessor">#include "<a class="code" href="base_8h.html">base.h</a>"</span>
-00060 <span class="preprocessor">#include "<a class="code" href="ctables_8h.html">ctables.h</a>"</span>
-00061 <span class="preprocessor">#include &lt;string&gt;</span>
-00062 <span class="preprocessor">#include &lt;deque&gt;</span>
-00063 <span class="preprocessor">#include &lt;sstream&gt;</span>
-00064
-<a name="l00067"></a><a class="code" href="modules_8h.html#a31">00067</a> <span class="keyword">typedef</span> std::deque&lt;std::string&gt; <a class="code" href="modules_8h.html#a31">file_cache</a>;
-<a name="l00068"></a><a class="code" href="modules_8h.html#a32">00068</a> <span class="keyword">typedef</span> <a class="code" href="modules_8h.html#a31">file_cache</a> <a class="code" href="modules_8h.html#a32">string_list</a>;
-00069
-<a name="l00072"></a><a class="code" href="modules_8h.html#a33">00072</a> <span class="keyword">typedef</span> std::deque&lt;userrec*&gt; <a class="code" href="modules_8h.html#a33">chanuserlist</a>;
-00073
-00074
-00075 <span class="comment">// This #define allows us to call a method in all</span>
-00076 <span class="comment">// loaded modules in a readable simple way, e.g.:</span>
-00077 <span class="comment">// 'FOREACH_MOD OnConnect(user);'</span>
-00078
-<a name="l00079"></a><a class="code" href="modules_8h.html#a24">00079</a> <span class="preprocessor">#define FOREACH_MOD for (int _i = 0; _i &lt;= MODCOUNT; _i++) modules[_i]-&gt;</span>
-00080 <span class="preprocessor"></span>
-00081 <span class="comment">// This define is similar to the one above but returns a result in MOD_RESULT.</span>
-00082 <span class="comment">// The first module to return a nonzero result is the value to be accepted,</span>
-00083 <span class="comment">// and any modules after are ignored.</span>
-00084
-00085 <span class="comment">// *********************************************************************************************</span>
-00086
-<a name="l00087"></a><a class="code" href="modules_8h.html#a25">00087</a> <span class="preprocessor">#define FOREACH_RESULT(x) { MOD_RESULT = 0; \</span>
-00088 <span class="preprocessor"> for (int _i = 0; _i &lt;= MODCOUNT; _i++) { \</span>
-00089 <span class="preprocessor"> int res = modules[_i]-&gt;x ; \</span>
-00090 <span class="preprocessor"> if (res != 0) { \</span>
-00091 <span class="preprocessor"> MOD_RESULT = res; \</span>
-00092 <span class="preprocessor"> break; \</span>
-00093 <span class="preprocessor"> } \</span>
-00094 <span class="preprocessor"> } \</span>
-00095 <span class="preprocessor"> } </span>
-00096 <span class="preprocessor"></span>
-00097 <span class="comment">// *********************************************************************************************</span>
-00098
-<a name="l00099"></a><a class="code" href="modules_8h.html#a26">00099</a> <span class="preprocessor">#define FD_MAGIC_NUMBER -42</span>
-00100 <span class="preprocessor"></span>
-00101 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="modules_8h.html#a35">createcommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams, <span class="keywordtype">char</span>* source);
-00102 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="modules_8h.html#a36">server_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00103
-00104 <span class="comment">// class Version holds the version information of a Module, returned</span>
-00105 <span class="comment">// by Module::GetVersion (thanks RD)</span>
-00106
-<a name="l00111"></a><a class="code" href="classVersion.html">00111</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>
-00112 {
-00113 <span class="keyword">public</span>:
-<a name="l00114"></a><a class="code" href="classVersion.html#o2">00114</a> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classVersion.html#o0">Major</a>, <a class="code" href="classVersion.html#o1">Minor</a>, <a class="code" href="classVersion.html#o2">Revision</a>, <a class="code" href="classVersion.html#o3">Build</a>, <a class="code" href="classVersion.html#o4">Flags</a>;
-00115 <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, <span class="keywordtype">int</span> flags);
-00116 };
-00117
-<a name="l00123"></a><a class="code" href="classAdmin.html">00123</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>
-00124 {
-00125 <span class="keyword">public</span>:
-<a name="l00126"></a><a class="code" href="classAdmin.html#o2">00126</a> <span class="keyword">const</span> std::string <a class="code" href="classAdmin.html#o0">Name</a>, <a class="code" href="classAdmin.html#o1">Email</a>, <a class="code" href="classAdmin.html#o2">Nick</a>;
-00127 <a class="code" href="classAdmin.html#a0">Admin</a>(std::string name, std::string email, std::string nick);
-00128 };
-00129
-00130
-00131 <span class="comment">// Forward-delacare module for ModuleMessage etc</span>
-00132 <span class="keyword">class </span><a class="code" href="classModule.html">Module</a>;
-00133
-00134 <span class="comment">// Thanks to Rob (from anope) for the idea of this message passing API</span>
-00135 <span class="comment">// (its been done before, but this seemed a very neat and tidy way...</span>
-00136
-<a name="l00141"></a><a class="code" href="classModuleMessage.html">00141</a> <span class="keyword">class </span><a class="code" href="classModuleMessage.html">ModuleMessage</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00142 {
-00143 <span class="keyword">public</span>:
-00146 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classModuleMessage.html#a0">Send</a>() = 0;
-00147 };
-00148
-<a name="l00154"></a><a class="code" href="classRequest.html">00154</a> <span class="keyword">class </span><a class="code" href="classRequest.html">Request</a> : <span class="keyword">public</span> <a class="code" href="classModuleMessage.html">ModuleMessage</a>
-00155 {
-00156 <span class="keyword">protected</span>:
-<a name="l00159"></a><a class="code" href="classRequest.html#p0">00159</a> <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#p0">data</a>;
-<a name="l00163"></a><a class="code" href="classRequest.html#p1">00163</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#p1">source</a>;
-<a name="l00166"></a><a class="code" href="classRequest.html#p2">00166</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#p2">dest</a>;
-00167 <span class="keyword">public</span>:
-00170 <a class="code" href="classRequest.html#a0">Request</a>(<span class="keywordtype">char</span>* anydata, <a class="code" href="classModule.html">Module</a>* src, <a class="code" href="classModule.html">Module</a>* dst);
-00173 <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#a1">GetData</a>();
-00176 <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#a2">GetSource</a>();
-00179 <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#a3">GetDest</a>();
-00185 <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#a4">Send</a>();
-00186 };
-00187
-00188
-<a name="l00194"></a><a class="code" href="classEvent.html">00194</a> <span class="keyword">class </span><a class="code" href="classEvent.html">Event</a> : <span class="keyword">public</span> <a class="code" href="classModuleMessage.html">ModuleMessage</a>
-00195 {
-00196 <span class="keyword">protected</span>:
-<a name="l00199"></a><a class="code" href="classEvent.html#p0">00199</a> <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#p0">data</a>;
-<a name="l00203"></a><a class="code" href="classEvent.html#p1">00203</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classEvent.html#p1">source</a>;
-<a name="l00208"></a><a class="code" href="classEvent.html#p2">00208</a> std::string <a class="code" href="classEvent.html#p2">id</a>;
-00209 <span class="keyword">public</span>:
-00212 <a class="code" href="classEvent.html#a0">Event</a>(<span class="keywordtype">char</span>* anydata, <a class="code" href="classModule.html">Module</a>* src, std::string eventid);
-00215 <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#a1">GetData</a>();
-00218 <a class="code" href="classModule.html">Module</a>* <a class="code" href="classEvent.html#a2">GetSource</a>();
-00222 std::string <a class="code" href="classEvent.html#a3">GetEventID</a>();
-00227 <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#a4">Send</a>();
-00228 };
-00229
-00230
-<a name="l00236"></a><a class="code" href="classModule.html">00236</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>
-00237 {
-00238 <span class="keyword">public</span>:
-00239
-00243 <a class="code" href="classModule.html#a0">Module</a>();
-00244
-00248 <span class="keyword">virtual</span> <a class="code" href="classModule.html#a1">~Module</a>();
-00249
-00254 <span class="keyword">virtual</span> <a class="code" href="classVersion.html">Version</a> <a class="code" href="classModule.html#a2">GetVersion</a>();
-00255
-00259 <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);
-00260
-00266 <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);
-00267
-00273 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a5">OnUserDisconnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00274
-00279 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a6">OnUserJoin</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel);
-00280
-00285 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a7">OnUserPart</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel);
-00286
-00292 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a8">OnPacketTransmit</a>(std::string &amp;data, std::string serv);
-00293
-00300 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a9">OnPacketReceive</a>(std::string &amp;data, std::string serv);
-00301
-00307 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a10">OnRehash</a>();
-00308
-00317 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a11">OnServerRaw</a>(std::string &amp;raw, <span class="keywordtype">bool</span> inbound, <a class="code" href="classuserrec.html">userrec</a>* user);
-00318
-00328 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a12">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, <a class="code" href="modules_8h.html#a32">string_list</a> &amp;params);
-00329
-00343 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a13">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);
-00344
-00350 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a14">OnUserPreKick</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, std::string reason);
-00351
-00356 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a15">OnUserKick</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, std::string reason);
-00357
-00362 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a16">OnOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00363
-00372 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a17">OnInfo</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00373
-00378 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a18">OnWhois</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest);
-00379
-00385 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a19">OnUserPreInvite</a>(<a class="code" href="classuserrec.html">userrec</a>* source,<a class="code" href="classuserrec.html">userrec</a>* dest,<a class="code" href="classchanrec.html">chanrec</a>* channel);
-00386
-00395 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a20">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 &amp;text);
-00396
-00408 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a21">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 &amp;text);
-00409
-00417 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a22">OnUserPreNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string newnick);
-00418
-00426 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a23">OnUserPostNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string oldnick);
-00427
-00449 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a24">OnAccessCheck</a>(<a class="code" href="classuserrec.html">userrec</a>* source,<a class="code" href="classuserrec.html">userrec</a>* dest,<a class="code" href="classchanrec.html">chanrec</a>* channel,<span class="keywordtype">int</span> access_type);
-00450
-00456 <span class="keyword">virtual</span> <a class="code" href="modules_8h.html#a32">string_list</a> <a class="code" href="classModule.html#a25">OnUserSync</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00457
-00463 <span class="keyword">virtual</span> <a class="code" href="modules_8h.html#a32">string_list</a> <a class="code" href="classModule.html#a26">OnChannelSync</a>(<a class="code" href="classchanrec.html">chanrec</a>* chan);
-00464
-00468 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a27">On005Numeric</a>(std::string &amp;output);
-00469
-00479 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a28">OnKill</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest, std::string reason);
-00480
-00491 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a29">OnLoadModule</a>(<a class="code" href="classModule.html">Module</a>* mod,std::string name);
-00492
-00498 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a30">OnBackgroundTimer</a>(time_t curtime);
-00499
-00507 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a31">OnSendList</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel, <span class="keywordtype">char</span> mode);
-00508
-00519 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a32">OnPreCommand</a>(std::string command, <span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00520
-00529 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classModule.html#a33">OnCheckReady</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00530
-00538 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a34">OnUserRegister</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00539
-00545 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a35">OnRawMode</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <span class="keywordtype">char</span> mode, std::string param, <span class="keywordtype">bool</span> adding, <span class="keywordtype">int</span> pcnt);
-00546
-00552 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a36">OnCheckInvite</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan);
-00553
-00560 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a37">OnCheckKey</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, std::string keygiven);
-00561
-00567 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a38">OnCheckLimit</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan);
-00568
-00574 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a39">OnCheckBan</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan);
-00575
-00579 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a40">OnStats</a>(<span class="keywordtype">char</span> symbol);
-00580
-00584 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a41">OnChangeLocalUserHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string newhost);
-00585
-00589 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a42">OnChangeLocalUserGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string newhost);
-00590
-00594 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a43">OnLocalTopicChange</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, std::string topic);
-00595
-00606 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a44">OnMeshToken</a>(<span class="keywordtype">char</span> token,<a class="code" href="modules_8h.html#a32">string_list</a> params,<a class="code" href="classserverrec.html">serverrec</a>* source,<a class="code" href="classserverrec.html">serverrec</a>* reply, std::string tcp_host,std::string ipaddr,<span class="keywordtype">int</span> port);
-00607
-00613 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a45">OnEvent</a>(<a class="code" href="classEvent.html">Event</a>* event);
-00614
-00621 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classModule.html#a46">OnRequest</a>(<a class="code" href="classRequest.html">Request</a>* request);
-00622
-00629 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a47">OnOperCompare</a>(std::string password, std::string input);
-00630
-00636 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a48">OnGlobalOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00637
-00642 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a49">OnGlobalConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00643
-00647 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a50">OnAddBan</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classchanrec.html">chanrec</a>* channel,std::string banmask);
-00648
-00652 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a51">OnDelBan</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classchanrec.html">chanrec</a>* channel,std::string banmask);
-00653
-00660 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a52">OnRawSocketAccept</a>(<span class="keywordtype">int</span> fd, std::string ip, <span class="keywordtype">int</span> localport);
-00661
-00668 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a53">OnRawSocketWrite</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">char</span>* buffer, <span class="keywordtype">int</span> count);
-00669
-00673 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#a54">OnRawSocketClose</a>(<span class="keywordtype">int</span> fd);
-00674
-00685 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#a55">OnRawSocketRead</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">char</span>* buffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> count, <span class="keywordtype">int</span> &amp;readresult);
-00686 };
-00687
-00688
-<a name="l00694"></a><a class="code" href="classServer.html">00694</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>
-00695 {
-00696 <span class="keyword">public</span>:
-00700 <a class="code" href="classServer.html#a0">Server</a>();
-00704 <span class="keyword">virtual</span> <a class="code" href="classServer.html#a1">~Server</a>();
-00705
-00709 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a2">SendOpers</a>(std::string s);
-00714 <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);
-00719 <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);
-00724 <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);
-00728 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a6">SendChannelServerNotice</a>(std::string ServName, <a class="code" href="classchanrec.html">chanrec</a>* Channel, std::string text);
-00733 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a7">SendFrom</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="classuserrec.html">userrec</a>* User, std::string s);
-00748 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a8">SendTo</a>(<a class="code" href="classuserrec.html">userrec</a>* Source, <a class="code" href="classuserrec.html">userrec</a>* Dest, std::string s);
-00755 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a9">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);
-00760 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a10">CommonChannels</a>(<a class="code" href="classuserrec.html">userrec</a>* u1, <a class="code" href="classuserrec.html">userrec</a>* u2);
-00768 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a11">SendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text,<span class="keywordtype">bool</span> IncludeSender);
-00773 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a12">SendWallops</a>(<a class="code" href="classuserrec.html">userrec</a>* User, std::string text);
-00774
-00778 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a13">IsNick</a>(std::string nick);
-00782 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classServer.html#a14">CountUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* c);
-00786 <span class="keyword">virtual</span> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#a15">FindNick</a>(std::string nick);
-00790 <span class="keyword">virtual</span> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#a16">FindDescriptor</a>(<span class="keywordtype">int</span> socket);
-00794 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a17">FindChannel</a>(std::string channel);
-00799 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a18">ChanMode</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan);
-00803 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a19">IsOnChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan);
-00806 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a20">GetServerName</a>();
-00809 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a21">GetNetworkName</a>();
-00812 <span class="keyword">virtual</span> std::string <a class="code" href="classServer.html#a22">GetServerDescription</a>();
-00818 <span class="keyword">virtual</span> <a class="code" href="classAdmin.html">Admin</a> <a class="code" href="classServer.html#a23">GetAdmin</a>();
-00837 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a24">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);
-00838
-00860 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a25">AddExtendedListMode</a>(<span class="keywordtype">char</span> modechar);
-00861
-00879 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a26">AddCommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams, <span class="keywordtype">char</span>* source);
-00880
-00902 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a27">SendMode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
-00903
-00916 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a28">SendToModeMask</a>(std::string modes, <span class="keywordtype">int</span> flags, std::string text);
-00917
-00923 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a29">JoinUserToChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string key);
-00924
-00930 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#a30">PartUserFromChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string cname, std::string reason);
-00931
-00937 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a31">ChangeUserNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string nickname);
-00938
-00949 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a32">QuitUser</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string reason);
-00950
-00955 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a33">MatchText</a>(std::string sliteral, std::string spattern);
-00956
-00968 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a34">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);
-00969
-00975 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a35">ChangeHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string host);
-00976
-00982 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a36">ChangeGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string gecos);
-00983
-00992 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a37">IsUlined</a>(std::string server);
-00993
-00997 <span class="keyword">virtual</span> <a class="code" href="modules_8h.html#a33">chanuserlist</a> <a class="code" href="classServer.html#a38">GetUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* chan);
-00998
-01005 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a39">UserToPseudo</a>(<a class="code" href="classuserrec.html">userrec</a>* user,std::string message);
-01006
-01013 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a40">PseudoToUser</a>(<a class="code" href="classuserrec.html">userrec</a>* alive,<a class="code" href="classuserrec.html">userrec</a>* zombie,std::string message);
-01014
-01022 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a41">AddGLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#a76">duration</a>, std::string source, std::string reason, std::string hostmask);
-01023
-01031 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a42">AddQLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#a76">duration</a>, std::string source, std::string reason, std::string nickname);
-01032
-01040 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a43">AddZLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#a76">duration</a>, std::string source, std::string reason, std::string ipaddr);
-01041
-01049 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a44">AddKLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#a76">duration</a>, std::string source, std::string reason, std::string hostmask);
-01050
-01058 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a45">AddELine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#a76">duration</a>, std::string source, std::string reason, std::string hostmask);
-01059
-01062 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a46">DelGLine</a>(std::string hostmask);
-01063
-01066 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a47">DelQLine</a>(std::string nickname);
-01067
-01070 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a48">DelZLine</a>(std::string ipaddr);
-01071
-01074 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a49">DelKLine</a>(std::string hostmask);
-01075
-01078 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a50">DelELine</a>(std::string hostmask);
-01079
-01085 <span class="keyword">virtual</span> <span class="keywordtype">long</span> <a class="code" href="classServer.html#a51">CalcDuration</a>(std::string <a class="code" href="commands_8h.html#a76">duration</a>);
-01086
-01089 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a52">IsValidMask</a>(std::string mask);
-01090
-01095 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a53">MeshSendAll</a>(std::string text);
-01096
-01103 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a54">MeshSendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* user, std::string text);
-01104
-01107 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a55">MeshSendAllAlive</a>(std::string text);
-01108
-01112 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a56">MeshSendUnicast</a>(std::string destination, std::string text);
-01113
-01118 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#a57">MeshSendAllExcept</a>(std::string target, std::string text);
-01119
-01123 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a58">MeshCheckChan</a>(<a class="code" href="classchanrec.html">chanrec</a> *c,std::string servername);
-01124
-01128 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#a59">MeshCheckCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* u,std::string servername);
-01129
-01134 <span class="keyword">virtual</span> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classServer.html#a60">FindModule</a>(std::string name);
-01135 };
-01136
-01137
-<a name="l01138"></a><a class="code" href="modules_8h.html#a27">01138</a> <span class="preprocessor">#define CONF_NOT_A_NUMBER 0x000010</span>
-<a name="l01139"></a><a class="code" href="modules_8h.html#a28">01139</a> <span class="preprocessor"></span><span class="preprocessor">#define CONF_NOT_UNSIGNED 0x000080</span>
-<a name="l01140"></a><a class="code" href="modules_8h.html#a29">01140</a> <span class="preprocessor"></span><span class="preprocessor">#define CONF_VALUE_NOT_FOUND 0x000100</span>
-<a name="l01141"></a><a class="code" href="modules_8h.html#a30">01141</a> <span class="preprocessor"></span><span class="preprocessor">#define CONF_FILE_NOT_FOUND 0x000200</span>
-01142 <span class="preprocessor"></span>
-01143
-<a name="l01150"></a><a class="code" href="classConfigReader.html">01150</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>
-01151 {
-01152 <span class="keyword">protected</span>:
-<a name="l01158"></a><a class="code" href="classConfigReader.html#p0">01158</a> std::stringstream *<a class="code" href="classConfigReader.html#p0">cache</a>;
-<a name="l01159"></a><a class="code" href="classConfigReader.html#p1">01159</a> std::stringstream *<a class="code" href="classConfigReader.html#p1">errorlog</a>;
-<a name="l01162"></a><a class="code" href="classConfigReader.html#p2">01162</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#p2">readerror</a>;
-<a name="l01163"></a><a class="code" href="classConfigReader.html#p3">01163</a> <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#p3">error</a>;
-01164
-01165 <span class="keyword">public</span>:
-01170 <a class="code" href="classConfigReader.html#a0">ConfigReader</a>(); <span class="comment">// default constructor reads ircd.conf</span>
-01174 <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>
-01178 <span class="comment"></span> <a class="code" href="classConfigReader.html#a2">~ConfigReader</a>();
-01183 std::string <a class="code" href="classConfigReader.html#a3">ReadValue</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index);
-01189 <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#a4">ReadFlag</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index);
-01198 <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#a5">ReadInteger</a>(std::string tag, std::string name, <span class="keywordtype">int</span> index, <span class="keywordtype">bool</span> needs_unsigned);
-01203 <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#a6">GetError</a>();
-01210 <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a7">Enumerate</a>(std::string tag);
-01215 <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#a8">Verify</a>();
-01222 <span class="keywordtype">void</span> <a class="code" href="classConfigReader.html#a9">DumpErrors</a>(<span class="keywordtype">bool</span> bail,<a class="code" href="classuserrec.html">userrec</a>* user);
-01223
-01229 <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#a10">EnumerateValues</a>(std::string tag, <span class="keywordtype">int</span> index);
-01230 };
-01231
-01232
-01233
-<a name="l01239"></a><a class="code" href="classFileReader.html">01239</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>
-01240 {
-<a name="l01241"></a><a class="code" href="classFileReader.html#r0">01241</a> <a class="code" href="modules_8h.html#a31">file_cache</a> <a class="code" href="classFileReader.html#r0">fc</a>;
-01242 <span class="keyword">public</span>:
-01247 <a class="code" href="classFileReader.html#a0">FileReader</a>();
-01248
-01254 <a class="code" href="classFileReader.html#a0">FileReader</a>(std::string filename);
-01255
-01259 <a class="code" href="classFileReader.html#a2">~FileReader</a>();
-01260
-01266 <span class="keywordtype">void</span> <a class="code" href="classFileReader.html#a3">LoadFile</a>(std::string filename);
-01267
-01271 <span class="keywordtype">bool</span> <a class="code" href="classFileReader.html#a4">Exists</a>();
-01272
-01277 std::string <a class="code" href="classFileReader.html#a5">GetLine</a>(<span class="keywordtype">int</span> x);
-01278
-01284 <span class="keywordtype">int</span> <a class="code" href="classFileReader.html#a6">FileSize</a>();
-01285 };
-01286
-01287
-<a name="l01294"></a><a class="code" href="classModuleFactory.html">01294</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>
-01295 {
-01296 <span class="keyword">public</span>:
-<a name="l01297"></a><a class="code" href="classModuleFactory.html#a0">01297</a> <a class="code" href="classModuleFactory.html#a0">ModuleFactory</a>() { }
-<a name="l01298"></a><a class="code" href="classModuleFactory.html#a1">01298</a> <span class="keyword">virtual</span> <a class="code" href="classModuleFactory.html#a1">~ModuleFactory</a>() { }
-01303 <span class="keyword">virtual</span> <a class="code" href="classModule.html">Module</a> * <a class="code" href="classModuleFactory.html#a2">CreateModule</a>() = 0;
-01304 };
-01305
-01306
-<a name="l01307"></a><a class="code" href="modules_8h.html#a34">01307</a> <span class="keyword">typedef</span> DLLFactory&lt;ModuleFactory&gt; <a class="code" href="modules_8h.html#a34">ircd_module</a>;
-01308
-01309 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:20 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>modules.h</h1><a href="modules_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef __PLUGIN_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define __PLUGIN_H</span>
+<a name="l00020"></a>00020 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="comment">// log levels</span>
+<a name="l00022"></a>00022
+<a name="l00023"></a><a class="code" href="modules_8h.html#DEBUG">00023</a> <span class="preprocessor">#define DEBUG 10</span>
+<a name="l00024"></a><a class="code" href="modules_8h.html#VERBOSE">00024</a> <span class="preprocessor"></span><span class="preprocessor">#define VERBOSE 20</span>
+<a name="l00025"></a><a class="code" href="modules_8h.html#DEFAULT">00025</a> <span class="preprocessor"></span><span class="preprocessor">#define DEFAULT 30</span>
+<a name="l00026"></a><a class="code" href="modules_8h.html#SPARSE">00026</a> <span class="preprocessor"></span><span class="preprocessor">#define SPARSE 40</span>
+<a name="l00027"></a><a class="code" href="modules_8h.html#NONE">00027</a> <span class="preprocessor"></span><span class="preprocessor">#define NONE 50</span>
+<a name="l00028"></a>00028 <span class="preprocessor"></span>
+<a name="l00029"></a>00029 <span class="comment">// used with OnExtendedMode() method of modules</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a><a class="code" href="modules_8h.html#MT_5FCHANNEL">00031</a> <span class="preprocessor">#define MT_CHANNEL 1</span>
+<a name="l00032"></a><a class="code" href="modules_8h.html#MT_5FCLIENT">00032</a> <span class="preprocessor"></span><span class="preprocessor">#define MT_CLIENT 2</span>
+<a name="l00033"></a><a class="code" href="modules_8h.html#MT_5FSERVER">00033</a> <span class="preprocessor"></span><span class="preprocessor">#define MT_SERVER 3</span>
+<a name="l00034"></a>00034 <span class="preprocessor"></span>
+<a name="l00035"></a>00035 <span class="comment">// used with OnAccessCheck() method of modules</span>
+<a name="l00036"></a>00036
+<a name="l00037"></a><a class="code" href="modules_8h.html#ACR_5FDEFAULT">00037</a> <span class="preprocessor">#define ACR_DEFAULT 0 // Do default action (act as if the module isnt even loaded)</span>
+<a name="l00038"></a><a class="code" href="modules_8h.html#ACR_5FDENY">00038</a> <span class="preprocessor"></span><span class="preprocessor">#define ACR_DENY 1 // deny the action</span>
+<a name="l00039"></a><a class="code" href="modules_8h.html#ACR_5FALLOW">00039</a> <span class="preprocessor"></span><span class="preprocessor">#define ACR_ALLOW 2 // allow the action</span>
+<a name="l00040"></a>00040 <span class="preprocessor"></span>
+<a name="l00041"></a><a class="code" href="modules_8h.html#AC_5FKICK">00041</a> <span class="preprocessor">#define AC_KICK 0 // a user is being kicked</span>
+<a name="l00042"></a><a class="code" href="modules_8h.html#AC_5FDEOP">00042</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_DEOP 1 // a user is being deopped</span>
+<a name="l00043"></a><a class="code" href="modules_8h.html#AC_5FOP">00043</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_OP 2 // a user is being opped</span>
+<a name="l00044"></a><a class="code" href="modules_8h.html#AC_5FVOICE">00044</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_VOICE 3 // a user is being voiced</span>
+<a name="l00045"></a><a class="code" href="modules_8h.html#AC_5FDEVOICE">00045</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_DEVOICE 4 // a user is being devoiced</span>
+<a name="l00046"></a><a class="code" href="modules_8h.html#AC_5FHALFOP">00046</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_HALFOP 5 // a user is being halfopped</span>
+<a name="l00047"></a><a class="code" href="modules_8h.html#AC_5FDEHALFOP">00047</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_DEHALFOP 6 // a user is being dehalfopped</span>
+<a name="l00048"></a><a class="code" href="modules_8h.html#AC_5FINVITE">00048</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_INVITE 7 // a user is being invited</span>
+<a name="l00049"></a><a class="code" href="modules_8h.html#AC_5FGENERAL_5FMODE">00049</a> <span class="preprocessor"></span><span class="preprocessor">#define AC_GENERAL_MODE 8 // a user channel mode is being changed</span>
+<a name="l00050"></a>00050 <span class="preprocessor"></span>
+<a name="l00051"></a>00051 <span class="comment">// used to define a set of behavior bits for a module</span>
+<a name="l00052"></a>00052
+<a name="l00053"></a><a class="code" href="modules_8h.html#VF_5FSTATIC">00053</a> <span class="preprocessor">#define VF_STATIC 1 // module is static, cannot be /unloadmodule'd</span>
+<a name="l00054"></a><a class="code" href="modules_8h.html#VF_5FVENDOR">00054</a> <span class="preprocessor"></span><span class="preprocessor">#define VF_VENDOR 2 // module is a vendor module (came in the original tarball, not 3rd party)</span>
+<a name="l00055"></a><a class="code" href="modules_8h.html#VF_5FSERVICEPROVIDER">00055</a> <span class="preprocessor"></span><span class="preprocessor">#define VF_SERVICEPROVIDER 4 // module provides a service to other modules (can be a dependency)</span>
+<a name="l00056"></a><a class="code" href="modules_8h.html#VF_5FCOMMON">00056</a> <span class="preprocessor"></span><span class="preprocessor">#define VF_COMMON 8 // module needs to be common on all servers in a mesh to link</span>
+<a name="l00057"></a>00057 <span class="preprocessor"></span>
+<a name="l00058"></a>00058 <span class="preprocessor">#include "dynamic.h"</span>
+<a name="l00059"></a>00059 <span class="preprocessor">#include "<a class="code" href="base_8h.html">base.h</a>"</span>
+<a name="l00060"></a>00060 <span class="preprocessor">#include "<a class="code" href="ctables_8h.html">ctables.h</a>"</span>
+<a name="l00061"></a>00061 <span class="preprocessor">#include "<a class="code" href="socket_8h.html">socket.h</a>"</span>
+<a name="l00062"></a>00062 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00063"></a>00063 <span class="preprocessor">#include &lt;deque&gt;</span>
+<a name="l00064"></a>00064 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00065"></a>00065
+<a name="l00068"></a><a class="code" href="modules_8h.html#file_5Fcache">00068</a> <span class="keyword">typedef</span> std::deque&lt;std::string&gt; <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a>;
+<a name="l00069"></a><a class="code" href="modules_8h.html#string_5Flist">00069</a> <span class="keyword">typedef</span> <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a> <a class="code" href="modules_8h.html#string_5Flist">string_list</a>;
+<a name="l00070"></a>00070
+<a name="l00073"></a><a class="code" href="modules_8h.html#chanuserlist">00073</a> <span class="keyword">typedef</span> std::deque&lt;userrec*&gt; <a class="code" href="modules_8h.html#chanuserlist">chanuserlist</a>;
+<a name="l00074"></a>00074
+<a name="l00075"></a>00075
+<a name="l00076"></a>00076 <span class="comment">// This #define allows us to call a method in all</span>
+<a name="l00077"></a>00077 <span class="comment">// loaded modules in a readable simple way, e.g.:</span>
+<a name="l00078"></a>00078 <span class="comment">// 'FOREACH_MOD OnConnect(user);'</span>
+<a name="l00079"></a>00079
+<a name="l00080"></a><a class="code" href="modules_8h.html#FOREACH_5FMOD">00080</a> <span class="preprocessor">#define FOREACH_MOD for (int _i = 0; _i &lt;= MODCOUNT; _i++) modules[_i]-&gt;</span>
+<a name="l00081"></a>00081 <span class="preprocessor"></span>
+<a name="l00082"></a>00082 <span class="comment">// This define is similar to the one above but returns a result in MOD_RESULT.</span>
+<a name="l00083"></a>00083 <span class="comment">// The first module to return a nonzero result is the value to be accepted,</span>
+<a name="l00084"></a>00084 <span class="comment">// and any modules after are ignored.</span>
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086 <span class="comment">// *********************************************************************************************</span>
+<a name="l00087"></a>00087
+<a name="l00088"></a><a class="code" href="modules_8h.html#FOREACH_5FRESULT_28x_29">00088</a> <span class="preprocessor">#define FOREACH_RESULT(x) { MOD_RESULT = 0; \</span>
+<a name="l00089"></a>00089 <span class="preprocessor"> for (int _i = 0; _i &lt;= MODCOUNT; _i++) { \</span>
+<a name="l00090"></a>00090 <span class="preprocessor"> int res = modules[_i]-&gt;x ; \</span>
+<a name="l00091"></a>00091 <span class="preprocessor"> if (res != 0) { \</span>
+<a name="l00092"></a>00092 <span class="preprocessor"> MOD_RESULT = res; \</span>
+<a name="l00093"></a>00093 <span class="preprocessor"> break; \</span>
+<a name="l00094"></a>00094 <span class="preprocessor"> } \</span>
+<a name="l00095"></a>00095 <span class="preprocessor"> } \</span>
+<a name="l00096"></a>00096 <span class="preprocessor"> } </span>
+<a name="l00097"></a>00097 <span class="preprocessor"></span>
+<a name="l00098"></a>00098 <span class="comment">// *********************************************************************************************</span>
+<a name="l00099"></a>00099
+<a name="l00100"></a><a class="code" href="modules_8h.html#FD_5FMAGIC_5FNUMBER">00100</a> <span class="preprocessor">#define FD_MAGIC_NUMBER -42</span>
+<a name="l00101"></a>00101 <span class="preprocessor"></span>
+<a name="l00102"></a>00102 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="modules_8h.html#createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">createcommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams, <span class="keywordtype">char</span>* source);
+<a name="l00103"></a>00103 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="mode_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">server_mode</a>(<span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00104"></a>00104
+<a name="l00105"></a>00105 <span class="comment">// class Version holds the version information of a Module, returned</span>
+<a name="l00106"></a>00106 <span class="comment">// by Module::GetVersion (thanks RD)</span>
+<a name="l00107"></a>00107
+<a name="l00112"></a><a class="code" href="classVersion.html">00112</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>
+<a name="l00113"></a>00113 {
+<a name="l00114"></a>00114 <span class="keyword">public</span>:
+<a name="l00115"></a><a class="code" href="classVersion.html#Revision">00115</a> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="classVersion.html#Major">Major</a>, <a class="code" href="classVersion.html#Minor">Minor</a>, <a class="code" href="classVersion.html#Revision">Revision</a>, <a class="code" href="classVersion.html#Build">Build</a>, <a class="code" href="classVersion.html#Flags">Flags</a>;
+<a name="l00116"></a>00116 <a class="code" href="classVersion.html#Version_28int_20major_2C_20int_20minor_2C_20int_20revision_2C_20int_20build_2C_20int_20flags_29">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, <span class="keywordtype">int</span> flags);
+<a name="l00117"></a>00117 };
+<a name="l00118"></a>00118
+<a name="l00124"></a><a class="code" href="classAdmin.html">00124</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>
+<a name="l00125"></a>00125 {
+<a name="l00126"></a>00126 <span class="keyword">public</span>:
+<a name="l00127"></a><a class="code" href="classAdmin.html#Nick">00127</a> <span class="keyword">const</span> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classAdmin.html#Name">Name</a>, <a class="code" href="classAdmin.html#Email">Email</a>, <a class="code" href="classAdmin.html#Nick">Nick</a>;
+<a name="l00128"></a>00128 <a class="code" href="classAdmin.html#Admin_28std_3A_3Astring_20name_2C_20std_3A_3Astring_20email_2C_20std_3A_3Astring_20nick_29">Admin</a>(<a class="code" href="namespaceirc.html#string">std::string</a> name, <a class="code" href="namespaceirc.html#string">std::string</a> email, <a class="code" href="namespaceirc.html#string">std::string</a> nick);
+<a name="l00129"></a>00129 };
+<a name="l00130"></a>00130
+<a name="l00131"></a>00131
+<a name="l00132"></a>00132 <span class="comment">// Forward-delacare module for ModuleMessage etc</span>
+<a name="l00133"></a>00133 <span class="keyword">class </span><a class="code" href="classModule.html">Module</a>;
+<a name="l00134"></a>00134
+<a name="l00135"></a>00135 <span class="comment">// Thanks to Rob (from anope) for the idea of this message passing API</span>
+<a name="l00136"></a>00136 <span class="comment">// (its been done before, but this seemed a very neat and tidy way...</span>
+<a name="l00137"></a>00137
+<a name="l00142"></a><a class="code" href="classModuleMessage.html">00142</a> <span class="keyword">class </span><a class="code" href="classModuleMessage.html">ModuleMessage</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
+<a name="l00143"></a>00143 {
+<a name="l00144"></a>00144 <span class="keyword">public</span>:
+<a name="l00147"></a>00147 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classModuleMessage.html#Send_28_29_3D_30">Send</a>() = 0;
+<a name="l00148"></a><a class="code" href="classModuleMessage.html#_7EModuleMessage_28_29">00148</a> <span class="keyword">virtual</span> <a class="code" href="classModuleMessage.html#_7EModuleMessage_28_29">~ModuleMessage</a>() {};
+<a name="l00149"></a>00149 };
+<a name="l00150"></a>00150
+<a name="l00156"></a><a class="code" href="classRequest.html">00156</a> <span class="keyword">class </span><a class="code" href="classRequest.html">Request</a> : <span class="keyword">public</span> <a class="code" href="classModuleMessage.html">ModuleMessage</a>
+<a name="l00157"></a>00157 {
+<a name="l00158"></a>00158 <span class="keyword">protected</span>:
+<a name="l00161"></a><a class="code" href="classRequest.html#data">00161</a> <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#data">data</a>;
+<a name="l00165"></a><a class="code" href="classRequest.html#source">00165</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#source">source</a>;
+<a name="l00168"></a><a class="code" href="classRequest.html#dest">00168</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#dest">dest</a>;
+<a name="l00169"></a>00169 <span class="keyword">public</span>:
+<a name="l00172"></a>00172 <a class="code" href="classRequest.html#Request_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20Module_20_2Adst_29">Request</a>(<span class="keywordtype">char</span>* anydata, <a class="code" href="classModule.html">Module</a>* src, <a class="code" href="classModule.html">Module</a>* dst);
+<a name="l00175"></a>00175 <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#GetData_28_29">GetData</a>();
+<a name="l00178"></a>00178 <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#GetSource_28_29">GetSource</a>();
+<a name="l00181"></a>00181 <a class="code" href="classModule.html">Module</a>* <a class="code" href="classRequest.html#GetDest_28_29">GetDest</a>();
+<a name="l00187"></a>00187 <span class="keywordtype">char</span>* <a class="code" href="classRequest.html#Send_28_29">Send</a>();
+<a name="l00188"></a>00188 };
+<a name="l00189"></a>00189
+<a name="l00190"></a>00190
+<a name="l00196"></a><a class="code" href="classEvent.html">00196</a> <span class="keyword">class </span><a class="code" href="classEvent.html">Event</a> : <span class="keyword">public</span> <a class="code" href="classModuleMessage.html">ModuleMessage</a>
+<a name="l00197"></a>00197 {
+<a name="l00198"></a>00198 <span class="keyword">protected</span>:
+<a name="l00201"></a><a class="code" href="classEvent.html#data">00201</a> <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#data">data</a>;
+<a name="l00205"></a><a class="code" href="classEvent.html#source">00205</a> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classEvent.html#source">source</a>;
+<a name="l00210"></a><a class="code" href="classEvent.html#id">00210</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classEvent.html#id">id</a>;
+<a name="l00211"></a>00211 <span class="keyword">public</span>:
+<a name="l00214"></a>00214 <a class="code" href="classEvent.html#Event_28char_20_2Aanydata_2C_20Module_20_2Asrc_2C_20std_3A_3Astring_20eventid_29">Event</a>(<span class="keywordtype">char</span>* anydata, <a class="code" href="classModule.html">Module</a>* src, <a class="code" href="namespaceirc.html#string">std::string</a> eventid);
+<a name="l00217"></a>00217 <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#GetData_28_29">GetData</a>();
+<a name="l00220"></a>00220 <a class="code" href="classModule.html">Module</a>* <a class="code" href="classEvent.html#GetSource_28_29">GetSource</a>();
+<a name="l00224"></a>00224 <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classEvent.html#GetEventID_28_29">GetEventID</a>();
+<a name="l00229"></a>00229 <span class="keywordtype">char</span>* <a class="code" href="classEvent.html#Send_28_29">Send</a>();
+<a name="l00230"></a>00230 };
+<a name="l00231"></a>00231
+<a name="l00232"></a>00232
+<a name="l00238"></a><a class="code" href="classModule.html">00238</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>
+<a name="l00239"></a>00239 {
+<a name="l00240"></a>00240 <span class="keyword">public</span>:
+<a name="l00241"></a>00241
+<a name="l00245"></a>00245 <a class="code" href="classModule.html#Module_28_29">Module</a>();
+<a name="l00246"></a>00246
+<a name="l00250"></a>00250 <span class="keyword">virtual</span> <a class="code" href="classModule.html#_7EModule_28_29">~Module</a>();
+<a name="l00251"></a>00251
+<a name="l00256"></a>00256 <span class="keyword">virtual</span> <a class="code" href="classVersion.html">Version</a> <a class="code" href="classModule.html#GetVersion_28_29">GetVersion</a>();
+<a name="l00257"></a>00257
+<a name="l00261"></a>00261 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserConnect_28userrec_20_2Auser_29">OnUserConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00262"></a>00262
+<a name="l00268"></a>00268 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserQuit_28userrec_20_2Auser_29">OnUserQuit</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00269"></a>00269
+<a name="l00275"></a>00275 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserDisconnect_28userrec_20_2Auser_29">OnUserDisconnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00276"></a>00276
+<a name="l00281"></a>00281 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">OnUserJoin</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel);
+<a name="l00282"></a>00282
+<a name="l00287"></a>00287 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserPart_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_29">OnUserPart</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel);
+<a name="l00288"></a>00288
+<a name="l00294"></a>00294 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnPacketTransmit_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">OnPacketTransmit</a>(<a class="code" href="namespaceirc.html#string">std::string</a> &amp;data, <a class="code" href="namespaceirc.html#string">std::string</a> serv);
+<a name="l00295"></a>00295
+<a name="l00302"></a>00302 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnPacketReceive_28std_3A_3Astring_20_26data_2C_20std_3A_3Astring_20serv_29">OnPacketReceive</a>(<a class="code" href="namespaceirc.html#string">std::string</a> &amp;data, <a class="code" href="namespaceirc.html#string">std::string</a> serv);
+<a name="l00303"></a>00303
+<a name="l00309"></a>00309 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnRehash_28_29">OnRehash</a>();
+<a name="l00310"></a>00310
+<a name="l00319"></a>00319 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnServerRaw_28std_3A_3Astring_20_26raw_2C_20bool_20inbound_2C_20userrec_20_2Auser_29">OnServerRaw</a>(<a class="code" href="namespaceirc.html#string">std::string</a> &amp;raw, <span class="keywordtype">bool</span> inbound, <a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00320"></a>00320
+<a name="l00330"></a>00330 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnExtendedMode_28userrec_20_2Auser_2C_20void_20_2Atarget_2C_20char_20modechar_2C_20int_20type_2C_20bool_20mode_5Fon_2C_20string_5Flist_20_26params_29">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, <a class="code" href="modules_8h.html#string_5Flist">string_list</a> &amp;params);
+<a name="l00331"></a>00331
+<a name="l00345"></a>00345 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreJoin_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20const_20char_20_2Acname_29">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);
+<a name="l00346"></a>00346
+<a name="l00352"></a>00352 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">OnUserPreKick</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <a class="code" href="namespaceirc.html#string">std::string</a> reason);
+<a name="l00353"></a>00353
+<a name="l00358"></a>00358 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserKick_28userrec_20_2Asource_2C_20userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20reason_29">OnUserKick</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <a class="code" href="namespaceirc.html#string">std::string</a> reason);
+<a name="l00359"></a>00359
+<a name="l00364"></a>00364 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnOper_28userrec_20_2Auser_29">OnOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00365"></a>00365
+<a name="l00374"></a>00374 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnInfo_28userrec_20_2Auser_29">OnInfo</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00375"></a>00375
+<a name="l00380"></a>00380 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnWhois_28userrec_20_2Asource_2C_20userrec_20_2Adest_29">OnWhois</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest);
+<a name="l00381"></a>00381
+<a name="l00387"></a>00387 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreInvite_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_29">OnUserPreInvite</a>(<a class="code" href="classuserrec.html">userrec</a>* source,<a class="code" href="classuserrec.html">userrec</a>* dest,<a class="code" href="classchanrec.html">chanrec</a>* channel);
+<a name="l00388"></a>00388
+<a name="l00397"></a>00397 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreMessage_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">OnUserPreMessage</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<span class="keywordtype">void</span>* dest,<span class="keywordtype">int</span> target_type, <a class="code" href="namespaceirc.html#string">std::string</a> &amp;text);
+<a name="l00398"></a>00398
+<a name="l00410"></a>00410 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreNotice_28userrec_20_2Auser_2C_20void_20_2Adest_2C_20int_20target_5Ftype_2C_20std_3A_3Astring_20_26text_29">OnUserPreNotice</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<span class="keywordtype">void</span>* dest,<span class="keywordtype">int</span> target_type, <a class="code" href="namespaceirc.html#string">std::string</a> &amp;text);
+<a name="l00411"></a>00411
+<a name="l00419"></a>00419 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnUserPreNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20newnick_29">OnUserPreNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> newnick);
+<a name="l00420"></a>00420
+<a name="l00428"></a>00428 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserPostNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20oldnick_29">OnUserPostNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> oldnick);
+<a name="l00429"></a>00429
+<a name="l00451"></a>00451 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnAccessCheck_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20chanrec_20_2Achannel_2C_20int_20access_5Ftype_29">OnAccessCheck</a>(<a class="code" href="classuserrec.html">userrec</a>* source,<a class="code" href="classuserrec.html">userrec</a>* dest,<a class="code" href="classchanrec.html">chanrec</a>* channel,<span class="keywordtype">int</span> access_type);
+<a name="l00452"></a>00452
+<a name="l00458"></a>00458 <span class="keyword">virtual</span> <a class="code" href="modules_8h.html#string_5Flist">string_list</a> <a class="code" href="classModule.html#OnUserSync_28userrec_20_2Auser_29">OnUserSync</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00459"></a>00459
+<a name="l00465"></a>00465 <span class="keyword">virtual</span> <a class="code" href="modules_8h.html#string_5Flist">string_list</a> <a class="code" href="classModule.html#OnChannelSync_28chanrec_20_2Achan_29">OnChannelSync</a>(<a class="code" href="classchanrec.html">chanrec</a>* chan);
+<a name="l00466"></a>00466
+<a name="l00470"></a>00470 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#On_30_30_35Numeric_28std_3A_3Astring_20_26output_29">On005Numeric</a>(<a class="code" href="namespaceirc.html#string">std::string</a> &amp;output);
+<a name="l00471"></a>00471
+<a name="l00481"></a>00481 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnKill_28userrec_20_2Asource_2C_20userrec_20_2Adest_2C_20std_3A_3Astring_20reason_29">OnKill</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classuserrec.html">userrec</a>* dest, <a class="code" href="namespaceirc.html#string">std::string</a> reason);
+<a name="l00482"></a>00482
+<a name="l00493"></a>00493 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnLoadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">OnLoadModule</a>(<a class="code" href="classModule.html">Module</a>* mod,<a class="code" href="namespaceirc.html#string">std::string</a> name);
+<a name="l00494"></a>00494
+<a name="l00505"></a>00505 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUnloadModule_28Module_20_2Amod_2C_20std_3A_3Astring_20name_29">OnUnloadModule</a>(<a class="code" href="classModule.html">Module</a>* mod,<a class="code" href="namespaceirc.html#string">std::string</a> name);
+<a name="l00506"></a>00506
+<a name="l00512"></a>00512 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnBackgroundTimer_28time_5Ft_20curtime_29">OnBackgroundTimer</a>(time_t curtime);
+<a name="l00513"></a>00513
+<a name="l00521"></a>00521 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnSendList_28userrec_20_2Auser_2C_20chanrec_20_2Achannel_2C_20char_20mode_29">OnSendList</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* channel, <span class="keywordtype">char</span> mode);
+<a name="l00522"></a>00522
+<a name="l00533"></a>00533 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnPreCommand_28std_3A_3Astring_20command_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">OnPreCommand</a>(<a class="code" href="namespaceirc.html#string">std::string</a> command, <span class="keywordtype">char</span> **parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a> *user);
+<a name="l00534"></a>00534
+<a name="l00543"></a>00543 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classModule.html#OnCheckReady_28userrec_20_2Auser_29">OnCheckReady</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00544"></a>00544
+<a name="l00552"></a>00552 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnUserRegister_28userrec_20_2Auser_29">OnUserRegister</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00553"></a>00553
+<a name="l00559"></a>00559 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnRawMode_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20char_20mode_2C_20std_3A_3Astring_20param_2C_20bool_20adding_2C_20int_20pcnt_29">OnRawMode</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <span class="keywordtype">char</span> mode, <a class="code" href="namespaceirc.html#string">std::string</a> param, <span class="keywordtype">bool</span> adding, <span class="keywordtype">int</span> pcnt);
+<a name="l00560"></a>00560
+<a name="l00566"></a>00566 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnCheckInvite_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckInvite</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan);
+<a name="l00567"></a>00567
+<a name="l00574"></a>00574 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnCheckKey_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20keygiven_29">OnCheckKey</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <a class="code" href="namespaceirc.html#string">std::string</a> keygiven);
+<a name="l00575"></a>00575
+<a name="l00581"></a>00581 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnCheckLimit_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckLimit</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan);
+<a name="l00582"></a>00582
+<a name="l00588"></a>00588 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnCheckBan_28userrec_20_2Auser_2C_20chanrec_20_2Achan_29">OnCheckBan</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan);
+<a name="l00589"></a>00589
+<a name="l00593"></a>00593 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnStats_28char_20symbol_29">OnStats</a>(<span class="keywordtype">char</span> symbol);
+<a name="l00594"></a>00594
+<a name="l00598"></a>00598 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnChangeLocalUserHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">OnChangeLocalUserHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> newhost);
+<a name="l00599"></a>00599
+<a name="l00603"></a>00603 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnChangeLocalUserGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20newhost_29">OnChangeLocalUserGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> newhost);
+<a name="l00604"></a>00604
+<a name="l00608"></a>00608 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnLocalTopicChange_28userrec_20_2Auser_2C_20chanrec_20_2Achan_2C_20std_3A_3Astring_20topic_29">OnLocalTopicChange</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="classchanrec.html">chanrec</a>* chan, <a class="code" href="namespaceirc.html#string">std::string</a> topic);
+<a name="l00609"></a>00609
+<a name="l00615"></a>00615 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnEvent_28Event_20_2Aevent_29">OnEvent</a>(<a class="code" href="classEvent.html">Event</a>* event);
+<a name="l00616"></a>00616
+<a name="l00623"></a>00623 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classModule.html#OnRequest_28Request_20_2Arequest_29">OnRequest</a>(<a class="code" href="classRequest.html">Request</a>* request);
+<a name="l00624"></a>00624
+<a name="l00631"></a>00631 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnOperCompare_28std_3A_3Astring_20password_2C_20std_3A_3Astring_20input_29">OnOperCompare</a>(<a class="code" href="namespaceirc.html#string">std::string</a> password, <a class="code" href="namespaceirc.html#string">std::string</a> input);
+<a name="l00632"></a>00632
+<a name="l00638"></a>00638 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnGlobalOper_28userrec_20_2Auser_29">OnGlobalOper</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00639"></a>00639
+<a name="l00644"></a>00644 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnGlobalConnect_28userrec_20_2Auser_29">OnGlobalConnect</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00645"></a>00645
+<a name="l00649"></a>00649 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnAddBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">OnAddBan</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classchanrec.html">chanrec</a>* channel,<a class="code" href="namespaceirc.html#string">std::string</a> banmask);
+<a name="l00650"></a>00650
+<a name="l00654"></a>00654 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnDelBan_28userrec_20_2Asource_2C_20chanrec_20_2Achannel_2C_20std_3A_3Astring_20banmask_29">OnDelBan</a>(<a class="code" href="classuserrec.html">userrec</a>* source, <a class="code" href="classchanrec.html">chanrec</a>* channel,<a class="code" href="namespaceirc.html#string">std::string</a> banmask);
+<a name="l00655"></a>00655
+<a name="l00662"></a>00662 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnRawSocketAccept_28int_20fd_2C_20std_3A_3Astring_20ip_2C_20int_20localport_29">OnRawSocketAccept</a>(<span class="keywordtype">int</span> fd, <a class="code" href="namespaceirc.html#string">std::string</a> ip, <span class="keywordtype">int</span> localport);
+<a name="l00663"></a>00663
+<a name="l00670"></a>00670 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnRawSocketWrite_28int_20fd_2C_20char_20_2Abuffer_2C_20int_20count_29">OnRawSocketWrite</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">char</span>* buffer, <span class="keywordtype">int</span> count);
+<a name="l00671"></a>00671
+<a name="l00675"></a>00675 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classModule.html#OnRawSocketClose_28int_20fd_29">OnRawSocketClose</a>(<span class="keywordtype">int</span> fd);
+<a name="l00676"></a>00676
+<a name="l00687"></a>00687 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classModule.html#OnRawSocketRead_28int_20fd_2C_20char_20_2Abuffer_2C_20unsigned_20int_20count_2C_20int_20_26readresult_29">OnRawSocketRead</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">char</span>* buffer, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> count, <span class="keywordtype">int</span> &amp;readresult);
+<a name="l00688"></a>00688 };
+<a name="l00689"></a>00689
+<a name="l00690"></a>00690
+<a name="l00696"></a><a class="code" href="classServer.html">00696</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>
+<a name="l00697"></a>00697 {
+<a name="l00698"></a>00698 <span class="keyword">public</span>:
+<a name="l00702"></a>00702 <a class="code" href="classServer.html#Server_28_29">Server</a>();
+<a name="l00706"></a>00706 <span class="keyword">virtual</span> <a class="code" href="classServer.html#_7EServer_28_29">~Server</a>();
+<a name="l00707"></a>00707
+<a name="l00711"></a>00711 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendOpers_28std_3A_3Astring_20s_29">SendOpers</a>(<a class="code" href="namespaceirc.html#string">std::string</a> s);
+<a name="l00716"></a>00716 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#Log_28int_20level_2C_20std_3A_3Astring_20s_29">Log</a>(<span class="keywordtype">int</span> level, <a class="code" href="namespaceirc.html#string">std::string</a> s);
+<a name="l00721"></a>00721 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#Send_28int_20Socket_2C_20std_3A_3Astring_20s_29">Send</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="namespaceirc.html#string">std::string</a> s);
+<a name="l00726"></a>00726 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendServ_28int_20Socket_2C_20std_3A_3Astring_20s_29">SendServ</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="namespaceirc.html#string">std::string</a> s);
+<a name="l00730"></a>00730 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendChannelServerNotice_28std_3A_3Astring_20ServName_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20text_29">SendChannelServerNotice</a>(<a class="code" href="namespaceirc.html#string">std::string</a> ServName, <a class="code" href="classchanrec.html">chanrec</a>* Channel, <a class="code" href="namespaceirc.html#string">std::string</a> text);
+<a name="l00735"></a>00735 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendFrom_28int_20Socket_2C_20userrec_20_2AUser_2C_20std_3A_3Astring_20s_29">SendFrom</a>(<span class="keywordtype">int</span> Socket, <a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="namespaceirc.html#string">std::string</a> s);
+<a name="l00750"></a>00750 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendTo_28userrec_20_2ASource_2C_20userrec_20_2ADest_2C_20std_3A_3Astring_20s_29">SendTo</a>(<a class="code" href="classuserrec.html">userrec</a>* Source, <a class="code" href="classuserrec.html">userrec</a>* Dest, <a class="code" href="namespaceirc.html#string">std::string</a> s);
+<a name="l00757"></a>00757 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChannel_2C_20std_3A_3Astring_20s_2C_20bool_20IncludeSender_29">SendChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Channel, <a class="code" href="namespaceirc.html#string">std::string</a> s,<span class="keywordtype">bool</span> IncludeSender);
+<a name="l00762"></a>00762 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#CommonChannels_28userrec_20_2Au_31_2C_20userrec_20_2Au_32_29">CommonChannels</a>(<a class="code" href="classuserrec.html">userrec</a>* u1, <a class="code" href="classuserrec.html">userrec</a>* u2);
+<a name="l00770"></a>00770 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendCommon_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_2C_20bool_20IncludeSender_29">SendCommon</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="namespaceirc.html#string">std::string</a> text,<span class="keywordtype">bool</span> IncludeSender);
+<a name="l00775"></a>00775 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendWallops_28userrec_20_2AUser_2C_20std_3A_3Astring_20text_29">SendWallops</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="namespaceirc.html#string">std::string</a> text);
+<a name="l00776"></a>00776
+<a name="l00780"></a>00780 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#IsNick_28std_3A_3Astring_20nick_29">IsNick</a>(<a class="code" href="namespaceirc.html#string">std::string</a> nick);
+<a name="l00784"></a>00784 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classServer.html#CountUsers_28chanrec_20_2Ac_29">CountUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* c);
+<a name="l00788"></a>00788 <span class="keyword">virtual</span> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#FindNick_28std_3A_3Astring_20nick_29">FindNick</a>(<a class="code" href="namespaceirc.html#string">std::string</a> nick);
+<a name="l00792"></a>00792 <span class="keyword">virtual</span> <a class="code" href="classuserrec.html">userrec</a>* <a class="code" href="classServer.html#FindDescriptor_28int_20socket_29">FindDescriptor</a>(<span class="keywordtype">int</span> socket);
+<a name="l00796"></a>00796 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#FindChannel_28std_3A_3Astring_20channel_29">FindChannel</a>(<a class="code" href="namespaceirc.html#string">std::string</a> channel);
+<a name="l00801"></a>00801 <span class="keyword">virtual</span> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classServer.html#ChanMode_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">ChanMode</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan);
+<a name="l00805"></a>00805 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#IsOnChannel_28userrec_20_2AUser_2C_20chanrec_20_2AChan_29">IsOnChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* User, <a class="code" href="classchanrec.html">chanrec</a>* Chan);
+<a name="l00808"></a>00808 <span class="keyword">virtual</span> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classServer.html#GetServerName_28_29">GetServerName</a>();
+<a name="l00811"></a>00811 <span class="keyword">virtual</span> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classServer.html#GetNetworkName_28_29">GetNetworkName</a>();
+<a name="l00814"></a>00814 <span class="keyword">virtual</span> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classServer.html#GetServerDescription_28_29">GetServerDescription</a>();
+<a name="l00820"></a>00820 <span class="keyword">virtual</span> <a class="code" href="classAdmin.html">Admin</a> <a class="code" href="classServer.html#GetAdmin_28_29">GetAdmin</a>();
+<a name="l00839"></a>00839 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#AddExtendedMode_28char_20modechar_2C_20int_20type_2C_20bool_20requires_5Foper_2C_20int_20params_5Fwhen_5Fon_2C_20int_20params_5Fwhen_5Foff_29">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);
+<a name="l00840"></a>00840
+<a name="l00862"></a>00862 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#AddExtendedListMode_28char_20modechar_29">AddExtendedListMode</a>(<span class="keywordtype">char</span> modechar);
+<a name="l00863"></a>00863
+<a name="l00881"></a>00881 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddCommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">AddCommand</a>(<span class="keywordtype">char</span>* cmd, handlerfunc f, <span class="keywordtype">char</span> flags, <span class="keywordtype">int</span> minparams, <span class="keywordtype">char</span>* source);
+<a name="l00882"></a>00882
+<a name="l00904"></a>00904 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendMode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">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="l00905"></a>00905
+<a name="l00918"></a>00918 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#SendToModeMask_28std_3A_3Astring_20modes_2C_20int_20flags_2C_20std_3A_3Astring_20text_29">SendToModeMask</a>(<a class="code" href="namespaceirc.html#string">std::string</a> modes, <span class="keywordtype">int</span> flags, <a class="code" href="namespaceirc.html#string">std::string</a> text);
+<a name="l00919"></a>00919
+<a name="l00925"></a>00925 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#JoinUserToChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20key_29">JoinUserToChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> cname, <a class="code" href="namespaceirc.html#string">std::string</a> key);
+<a name="l00926"></a>00926
+<a name="l00932"></a>00932 <span class="keyword">virtual</span> <a class="code" href="classchanrec.html">chanrec</a>* <a class="code" href="classServer.html#PartUserFromChannel_28userrec_20_2Auser_2C_20std_3A_3Astring_20cname_2C_20std_3A_3Astring_20reason_29">PartUserFromChannel</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> cname, <a class="code" href="namespaceirc.html#string">std::string</a> reason);
+<a name="l00933"></a>00933
+<a name="l00939"></a>00939 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#ChangeUserNick_28userrec_20_2Auser_2C_20std_3A_3Astring_20nickname_29">ChangeUserNick</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> nickname);
+<a name="l00940"></a>00940
+<a name="l00951"></a>00951 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#QuitUser_28userrec_20_2Auser_2C_20std_3A_3Astring_20reason_29">QuitUser</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> reason);
+<a name="l00952"></a>00952
+<a name="l00957"></a>00957 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#MatchText_28std_3A_3Astring_20sliteral_2C_20std_3A_3Astring_20spattern_29">MatchText</a>(<a class="code" href="namespaceirc.html#string">std::string</a> sliteral, <a class="code" href="namespaceirc.html#string">std::string</a> spattern);
+<a name="l00958"></a>00958
+<a name="l00970"></a>00970 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#CallCommandHandler_28std_3A_3Astring_20commandname_2C_20char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">CallCommandHandler</a>(<a class="code" href="namespaceirc.html#string">std::string</a> commandname, <span class="keywordtype">char</span>** parameters, <span class="keywordtype">int</span> pcnt, <a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00971"></a>00971
+<a name="l00977"></a>00977 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#ChangeHost_28userrec_20_2Auser_2C_20std_3A_3Astring_20host_29">ChangeHost</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> host);
+<a name="l00978"></a>00978
+<a name="l00984"></a>00984 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#ChangeGECOS_28userrec_20_2Auser_2C_20std_3A_3Astring_20gecos_29">ChangeGECOS</a>(<a class="code" href="classuserrec.html">userrec</a>* user, <a class="code" href="namespaceirc.html#string">std::string</a> gecos);
+<a name="l00985"></a>00985
+<a name="l00994"></a>00994 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#IsUlined_28std_3A_3Astring_20server_29">IsUlined</a>(<a class="code" href="namespaceirc.html#string">std::string</a> server);
+<a name="l00995"></a>00995
+<a name="l00999"></a>00999 <span class="keyword">virtual</span> <a class="code" href="modules_8h.html#chanuserlist">chanuserlist</a> <a class="code" href="classServer.html#GetUsers_28chanrec_20_2Achan_29">GetUsers</a>(<a class="code" href="classchanrec.html">chanrec</a>* chan);
+<a name="l01000"></a>01000
+<a name="l01007"></a>01007 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#UserToPseudo_28userrec_20_2Auser_2C_20std_3A_3Astring_20message_29">UserToPseudo</a>(<a class="code" href="classuserrec.html">userrec</a>* user,<a class="code" href="namespaceirc.html#string">std::string</a> message);
+<a name="l01008"></a>01008
+<a name="l01015"></a>01015 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#PseudoToUser_28userrec_20_2Aalive_2C_20userrec_20_2Azombie_2C_20std_3A_3Astring_20message_29">PseudoToUser</a>(<a class="code" href="classuserrec.html">userrec</a>* alive,<a class="code" href="classuserrec.html">userrec</a>* zombie,<a class="code" href="namespaceirc.html#string">std::string</a> message);
+<a name="l01016"></a>01016
+<a name="l01024"></a>01024 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddGLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddGLine</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> hostmask);
+<a name="l01025"></a>01025
+<a name="l01033"></a>01033 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddQLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20nickname_29">AddQLine</a>(<span class="keywordtype">long</span> duration, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> nickname);
+<a name="l01034"></a>01034
+<a name="l01042"></a>01042 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddZLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20ipaddr_29">AddZLine</a>(<span class="keywordtype">long</span> duration, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> ipaddr);
+<a name="l01043"></a>01043
+<a name="l01051"></a>01051 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddKLine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddKLine</a>(<span class="keywordtype">long</span> duration, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> hostmask);
+<a name="l01052"></a>01052
+<a name="l01060"></a>01060 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddELine_28long_20duration_2C_20std_3A_3Astring_20source_2C_20std_3A_3Astring_20reason_2C_20std_3A_3Astring_20hostmask_29">AddELine</a>(<span class="keywordtype">long</span> duration, <a class="code" href="namespaceirc.html#string">std::string</a> source, <a class="code" href="namespaceirc.html#string">std::string</a> reason, <a class="code" href="namespaceirc.html#string">std::string</a> hostmask);
+<a name="l01061"></a>01061
+<a name="l01064"></a>01064 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelGLine_28std_3A_3Astring_20hostmask_29">DelGLine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> hostmask);
+<a name="l01065"></a>01065
+<a name="l01068"></a>01068 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelQLine_28std_3A_3Astring_20nickname_29">DelQLine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> nickname);
+<a name="l01069"></a>01069
+<a name="l01072"></a>01072 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelZLine_28std_3A_3Astring_20ipaddr_29">DelZLine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> ipaddr);
+<a name="l01073"></a>01073
+<a name="l01076"></a>01076 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelKLine_28std_3A_3Astring_20hostmask_29">DelKLine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> hostmask);
+<a name="l01077"></a>01077
+<a name="l01080"></a>01080 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#DelELine_28std_3A_3Astring_20hostmask_29">DelELine</a>(<a class="code" href="namespaceirc.html#string">std::string</a> hostmask);
+<a name="l01081"></a>01081
+<a name="l01087"></a>01087 <span class="keyword">virtual</span> <span class="keywordtype">long</span> <a class="code" href="classServer.html#CalcDuration_28std_3A_3Astring_20duration_29">CalcDuration</a>(<a class="code" href="namespaceirc.html#string">std::string</a> duration);
+<a name="l01088"></a>01088
+<a name="l01091"></a>01091 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classServer.html#IsValidMask_28std_3A_3Astring_20mask_29">IsValidMask</a>(<a class="code" href="namespaceirc.html#string">std::string</a> mask);
+<a name="l01092"></a>01092
+<a name="l01097"></a>01097 <span class="keyword">virtual</span> <a class="code" href="classModule.html">Module</a>* <a class="code" href="classServer.html#FindModule_28std_3A_3Astring_20name_29">FindModule</a>(<a class="code" href="namespaceirc.html#string">std::string</a> name);
+<a name="l01098"></a>01098
+<a name="l01101"></a>01101 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#AddSocket_28InspSocket_20_2Asock_29">AddSocket</a>(<a class="code" href="classInspSocket.html">InspSocket</a>* sock);
+<a name="l01102"></a>01102
+<a name="l01105"></a>01105 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classServer.html#DelSocket_28InspSocket_20_2Asock_29">DelSocket</a>(<a class="code" href="classInspSocket.html">InspSocket</a>* sock);
+<a name="l01106"></a>01106 };
+<a name="l01107"></a>01107
+<a name="l01108"></a>01108
+<a name="l01109"></a><a class="code" href="modules_8h.html#CONF_5FNOT_5FA_5FNUMBER">01109</a> <span class="preprocessor">#define CONF_NOT_A_NUMBER 0x000010</span>
+<a name="l01110"></a><a class="code" href="modules_8h.html#CONF_5FNOT_5FUNSIGNED">01110</a> <span class="preprocessor"></span><span class="preprocessor">#define CONF_NOT_UNSIGNED 0x000080</span>
+<a name="l01111"></a><a class="code" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">01111</a> <span class="preprocessor"></span><span class="preprocessor">#define CONF_VALUE_NOT_FOUND 0x000100</span>
+<a name="l01112"></a><a class="code" href="modules_8h.html#CONF_5FFILE_5FNOT_5FFOUND">01112</a> <span class="preprocessor"></span><span class="preprocessor">#define CONF_FILE_NOT_FOUND 0x000200</span>
+<a name="l01113"></a>01113 <span class="preprocessor"></span>
+<a name="l01114"></a>01114
+<a name="l01121"></a><a class="code" href="classConfigReader.html">01121</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>
+<a name="l01122"></a>01122 {
+<a name="l01123"></a>01123 <span class="keyword">protected</span>:
+<a name="l01129"></a><a class="code" href="classConfigReader.html#cache">01129</a> std::stringstream *<a class="code" href="classConfigReader.html#cache">cache</a>;
+<a name="l01130"></a><a class="code" href="classConfigReader.html#errorlog">01130</a> std::stringstream *<a class="code" href="classConfigReader.html#errorlog">errorlog</a>;
+<a name="l01133"></a><a class="code" href="classConfigReader.html#readerror">01133</a> <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#readerror">readerror</a>;
+<a name="l01134"></a><a class="code" href="classConfigReader.html#error">01134</a> <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#error">error</a>;
+<a name="l01135"></a>01135
+<a name="l01136"></a>01136 <span class="keyword">public</span>:
+<a name="l01141"></a>01141 <a class="code" href="classConfigReader.html#ConfigReader_28_29">ConfigReader</a>(); <span class="comment">// default constructor reads ircd.conf</span>
+<a name="l01145"></a>01145 <span class="comment"></span> <a class="code" href="classConfigReader.html#ConfigReader_28_29">ConfigReader</a>(<a class="code" href="namespaceirc.html#string">std::string</a> filename); <span class="comment">// read a module-specific config</span>
+<a name="l01149"></a>01149 <span class="comment"></span> <a class="code" href="classConfigReader.html#_7EConfigReader_28_29">~ConfigReader</a>();
+<a name="l01154"></a>01154 <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classConfigReader.html#ReadValue_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ReadValue</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag, <a class="code" href="namespaceirc.html#string">std::string</a> name, <span class="keywordtype">int</span> index);
+<a name="l01160"></a>01160 <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#ReadFlag_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_29">ReadFlag</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag, <a class="code" href="namespaceirc.html#string">std::string</a> name, <span class="keywordtype">int</span> index);
+<a name="l01169"></a>01169 <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#ReadInteger_28std_3A_3Astring_20tag_2C_20std_3A_3Astring_20name_2C_20int_20index_2C_20bool_20needs_5Funsigned_29">ReadInteger</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag, <a class="code" href="namespaceirc.html#string">std::string</a> name, <span class="keywordtype">int</span> index, <span class="keywordtype">bool</span> needs_unsigned);
+<a name="l01174"></a>01174 <span class="keywordtype">long</span> <a class="code" href="classConfigReader.html#GetError_28_29">GetError</a>();
+<a name="l01181"></a>01181 <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#Enumerate_28std_3A_3Astring_20tag_29">Enumerate</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag);
+<a name="l01186"></a>01186 <span class="keywordtype">bool</span> <a class="code" href="classConfigReader.html#Verify_28_29">Verify</a>();
+<a name="l01193"></a>01193 <span class="keywordtype">void</span> <a class="code" href="classConfigReader.html#DumpErrors_28bool_20bail_2C_20userrec_20_2Auser_29">DumpErrors</a>(<span class="keywordtype">bool</span> bail,<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l01194"></a>01194
+<a name="l01200"></a>01200 <span class="keywordtype">int</span> <a class="code" href="classConfigReader.html#EnumerateValues_28std_3A_3Astring_20tag_2C_20int_20index_29">EnumerateValues</a>(<a class="code" href="namespaceirc.html#string">std::string</a> tag, <span class="keywordtype">int</span> index);
+<a name="l01201"></a>01201 };
+<a name="l01202"></a>01202
+<a name="l01203"></a>01203
+<a name="l01204"></a>01204
+<a name="l01210"></a><a class="code" href="classFileReader.html">01210</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>
+<a name="l01211"></a>01211 {
+<a name="l01212"></a><a class="code" href="classFileReader.html#fc">01212</a> <a class="code" href="modules_8h.html#file_5Fcache">file_cache</a> <a class="code" href="classFileReader.html#fc">fc</a>;
+<a name="l01213"></a>01213 <span class="keyword">public</span>:
+<a name="l01218"></a>01218 <a class="code" href="classFileReader.html#FileReader_28_29">FileReader</a>();
+<a name="l01219"></a>01219
+<a name="l01225"></a>01225 <a class="code" href="classFileReader.html#FileReader_28_29">FileReader</a>(<a class="code" href="namespaceirc.html#string">std::string</a> filename);
+<a name="l01226"></a>01226
+<a name="l01230"></a>01230 <a class="code" href="classFileReader.html#_7EFileReader_28_29">~FileReader</a>();
+<a name="l01231"></a>01231
+<a name="l01237"></a>01237 <span class="keywordtype">void</span> <a class="code" href="classFileReader.html#LoadFile_28std_3A_3Astring_20filename_29">LoadFile</a>(<a class="code" href="namespaceirc.html#string">std::string</a> filename);
+<a name="l01238"></a>01238
+<a name="l01242"></a>01242 <span class="keywordtype">bool</span> <a class="code" href="classFileReader.html#Exists_28_29">Exists</a>();
+<a name="l01243"></a>01243
+<a name="l01248"></a>01248 <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classFileReader.html#GetLine_28int_20x_29">GetLine</a>(<span class="keywordtype">int</span> x);
+<a name="l01249"></a>01249
+<a name="l01255"></a>01255 <span class="keywordtype">int</span> <a class="code" href="classFileReader.html#FileSize_28_29">FileSize</a>();
+<a name="l01256"></a>01256 };
+<a name="l01257"></a>01257
+<a name="l01258"></a>01258
+<a name="l01265"></a><a class="code" href="classModuleFactory.html">01265</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>
+<a name="l01266"></a>01266 {
+<a name="l01267"></a>01267 <span class="keyword">public</span>:
+<a name="l01268"></a><a class="code" href="classModuleFactory.html#ModuleFactory_28_29">01268</a> <a class="code" href="classModuleFactory.html#ModuleFactory_28_29">ModuleFactory</a>() { }
+<a name="l01269"></a><a class="code" href="classModuleFactory.html#_7EModuleFactory_28_29">01269</a> <span class="keyword">virtual</span> <a class="code" href="classModuleFactory.html#_7EModuleFactory_28_29">~ModuleFactory</a>() { }
+<a name="l01274"></a>01274 <span class="keyword">virtual</span> <a class="code" href="classModule.html">Module</a> * <a class="code" href="classModuleFactory.html#CreateModule_28_29_3D_30">CreateModule</a>() = 0;
+<a name="l01275"></a>01275 };
+<a name="l01276"></a>01276
+<a name="l01277"></a>01277
+<a name="l01278"></a><a class="code" href="modules_8h.html#ircd_5Fmodule">01278</a> <span class="keyword">typedef</span> DLLFactory&lt;ModuleFactory&gt; <a class="code" href="modules_8h.html#ircd_5Fmodule">ircd_module</a>;
+<a name="l01279"></a>01279
+<a name="l01280"></a>01280 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/modules_8h.html b/docs/module-doc/modules_8h.html
index 872327ad6..d6c773aec 100644
--- a/docs/module-doc/modules_8h.html
+++ b/docs/module-doc/modules_8h.html
@@ -1,158 +1,163 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: modules.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>modules.h File Reference</h1><code>#include "dynamic.h"</code><br>
-<code>#include "<a class="el" href="base_8h-source.html">base.h</a>"</code><br>
-<code>#include "<a class="el" href="ctables_8h-source.html">ctables.h</a>"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>modules.h File Reference</h1><code>#include &quot;dynamic.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="base_8h-source.html">base.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="ctables_8h-source.html">ctables.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="socket_8h-source.html">socket.h</a>&quot;</code><br>
<code>#include &lt;string&gt;</code><br>
<code>#include &lt;deque&gt;</code><br>
<code>#include &lt;sstream&gt;</code><br>
<p>
-Include dependency graph for modules.h:<p><center><img src="modules_8h__incl.gif" border="0" usemap="#modules.h_map" alt="Include dependency graph"></center>
+Include dependency graph for modules.h:<p><center><img src="modules_8h__incl.gif" border="0" usemap="#modules.h_map" alt=""></center>
<map name="modules.h_map">
-<area href="base_8h.html" shape="rect" coords="104,82,165,109" alt="">
-<area href="ctables_8h.html" shape="rect" coords="242,157,317,184" alt="">
+<area href="base_8h-source.html" shape="rect" coords="291,44,352,71" alt="">
+<area href="ctables_8h-source.html" shape="rect" coords="146,145,220,172" alt="">
+<area href="socket_8h-source.html" shape="rect" coords="147,323,219,349" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="modules_8h__dep__incl.gif" border="0" usemap="#modules.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="modules_8h__dep__incl.gif" border="0" usemap="#modules.hdep_map" alt=""></center>
<map name="modules.hdep_map">
-<area href="channels_8cpp.html" shape="rect" coords="7,7,106,34" alt="">
-<area href="modules_8cpp.html" shape="rect" coords="130,7,229,34" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="141,7,240,34" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="141,58,240,84" alt="">
</map>
<p>
-<a href="modules_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="modules_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classAdmin.html">Admin</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classVersion.html">Version</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds /ADMIN data This class contains the admin details of the local server. </em> <a href="classAdmin.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConfigReader.html">ConfigReader</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module. <a href="classVersion.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdmin.html">Admin</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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. </em> <a href="classConfigReader.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classEvent.html">Event</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds /ADMIN data This class contains the admin details of the local server. <a href="classAdmin.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModuleMessage.html">ModuleMessage</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Event class is a unicast message directed at all modules. </em> <a href="classEvent.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classFileReader.html">FileReader</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The ModuleMessage class is the base class of <a class="el" href="classRequest.html">Request</a> and <a class="el" href="classEvent.html">Event</a> This class is used to represent a basic data structure which is passed between modules for safe inter-module communications. <a href="classModuleMessage.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classRequest.html">Request</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Caches a text file into memory and can be used to retrieve lines from it. </em> <a href="classFileReader.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModule.html">Module</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Request class is a unicast message directed at a given module. <a href="classRequest.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEvent.html">Event</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Base class for all InspIRCd modules This class is the base class for InspIRCd modules. </em> <a href="classModule.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModuleFactory.html">ModuleFactory</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Event class is a unicast message directed at all modules. <a href="classEvent.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModule.html">Module</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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. </em> <a href="classModuleFactory.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classModuleMessage.html">ModuleMessage</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Base class for all InspIRCd modules This class is the base class for InspIRCd modules. <a href="classModule.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classServer.html">Server</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The ModuleMessage class is the base class of <a class="el" href="classRequest.html">Request</a> and <a class="el" href="classEvent.html">Event</a> This class is used to represent a basic data structure which is passed between modules for safe inter-module communications. </em> <a href="classModuleMessage.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classRequest.html">Request</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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. <a href="classServer.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConfigReader.html">ConfigReader</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The Request class is a unicast message directed at a given module. </em> <a href="classRequest.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classServer.html">Server</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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. <a href="classConfigReader.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classFileReader.html">FileReader</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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. </em> <a href="classServer.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classVersion.html">Version</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Caches a text file into memory and can be used to retrieve lines from it. <a href="classFileReader.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classModuleFactory.html">ModuleFactory</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a module's Version information The four members (set by the constructor only) indicate details as to the version number of a module. </em> <a href="classVersion.html#_details">More...</a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Defines</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a0">DEBUG</a>&nbsp;&nbsp;&nbsp;10</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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. <a href="classModuleFactory.html#_details">More...</a><br></td></tr>
+<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#DEBUG">DEBUG</a>&nbsp;&nbsp;&nbsp;10</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a1">VERBOSE</a>&nbsp;&nbsp;&nbsp;20</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#VERBOSE">VERBOSE</a>&nbsp;&nbsp;&nbsp;20</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a2">DEFAULT</a>&nbsp;&nbsp;&nbsp;30</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#DEFAULT">DEFAULT</a>&nbsp;&nbsp;&nbsp;30</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a3">SPARSE</a>&nbsp;&nbsp;&nbsp;40</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#SPARSE">SPARSE</a>&nbsp;&nbsp;&nbsp;40</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a4">NONE</a>&nbsp;&nbsp;&nbsp;50</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#NONE">NONE</a>&nbsp;&nbsp;&nbsp;50</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a5">MT_CHANNEL</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#MT_5FCHANNEL">MT_CHANNEL</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a6">MT_CLIENT</a>&nbsp;&nbsp;&nbsp;2</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#MT_5FCLIENT">MT_CLIENT</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a7">MT_SERVER</a>&nbsp;&nbsp;&nbsp;3</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#MT_5FSERVER">MT_SERVER</a>&nbsp;&nbsp;&nbsp;3</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a8">ACR_DEFAULT</a>&nbsp;&nbsp;&nbsp;0</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#ACR_5FDEFAULT">ACR_DEFAULT</a>&nbsp;&nbsp;&nbsp;0</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a9">ACR_DENY</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#ACR_5FDENY">ACR_DENY</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a10">ACR_ALLOW</a>&nbsp;&nbsp;&nbsp;2</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#ACR_5FALLOW">ACR_ALLOW</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a11">AC_KICK</a>&nbsp;&nbsp;&nbsp;0</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FKICK">AC_KICK</a>&nbsp;&nbsp;&nbsp;0</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a12">AC_DEOP</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FDEOP">AC_DEOP</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a13">AC_OP</a>&nbsp;&nbsp;&nbsp;2</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FOP">AC_OP</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a14">AC_VOICE</a>&nbsp;&nbsp;&nbsp;3</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FVOICE">AC_VOICE</a>&nbsp;&nbsp;&nbsp;3</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a15">AC_DEVOICE</a>&nbsp;&nbsp;&nbsp;4</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FDEVOICE">AC_DEVOICE</a>&nbsp;&nbsp;&nbsp;4</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a16">AC_HALFOP</a>&nbsp;&nbsp;&nbsp;5</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FHALFOP">AC_HALFOP</a>&nbsp;&nbsp;&nbsp;5</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a17">AC_DEHALFOP</a>&nbsp;&nbsp;&nbsp;6</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FDEHALFOP">AC_DEHALFOP</a>&nbsp;&nbsp;&nbsp;6</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a18">AC_INVITE</a>&nbsp;&nbsp;&nbsp;7</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FINVITE">AC_INVITE</a>&nbsp;&nbsp;&nbsp;7</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a19">AC_GENERAL_MODE</a>&nbsp;&nbsp;&nbsp;8</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#AC_5FGENERAL_5FMODE">AC_GENERAL_MODE</a>&nbsp;&nbsp;&nbsp;8</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a20">VF_STATIC</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#VF_5FSTATIC">VF_STATIC</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a21">VF_VENDOR</a>&nbsp;&nbsp;&nbsp;2</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#VF_5FVENDOR">VF_VENDOR</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a22">VF_SERVICEPROVIDER</a>&nbsp;&nbsp;&nbsp;4</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#VF_5FSERVICEPROVIDER">VF_SERVICEPROVIDER</a>&nbsp;&nbsp;&nbsp;4</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a23">VF_COMMON</a>&nbsp;&nbsp;&nbsp;8</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#VF_5FCOMMON">VF_COMMON</a>&nbsp;&nbsp;&nbsp;8</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a24">FOREACH_MOD</a>&nbsp;&nbsp;&nbsp;for (int _i = 0; _i &lt;= <a class="el" href="modules_8cpp.html#a0">MODCOUNT</a>; _i++) modules[_i]-&gt;</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#FOREACH_5FMOD">FOREACH_MOD</a>&nbsp;&nbsp;&nbsp;for (int _i = 0; _i &lt;= <a class="el" href="modules_8cpp.html#MODCOUNT">MODCOUNT</a>; _i++) modules[_i]-&gt;</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a25">FOREACH_RESULT</a>(x)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#FOREACH_5FRESULT_28x_29">FOREACH_RESULT</a>(x)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a26">FD_MAGIC_NUMBER</a>&nbsp;&nbsp;&nbsp;-42</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#FD_5FMAGIC_5FNUMBER">FD_MAGIC_NUMBER</a>&nbsp;&nbsp;&nbsp;-42</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a27">CONF_NOT_A_NUMBER</a>&nbsp;&nbsp;&nbsp;0x000010</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#CONF_5FNOT_5FA_5FNUMBER">CONF_NOT_A_NUMBER</a>&nbsp;&nbsp;&nbsp;0x000010</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a28">CONF_NOT_UNSIGNED</a>&nbsp;&nbsp;&nbsp;0x000080</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#CONF_5FNOT_5FUNSIGNED">CONF_NOT_UNSIGNED</a>&nbsp;&nbsp;&nbsp;0x000080</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a29">CONF_VALUE_NOT_FOUND</a>&nbsp;&nbsp;&nbsp;0x000100</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#CONF_5FVALUE_5FNOT_5FFOUND">CONF_VALUE_NOT_FOUND</a>&nbsp;&nbsp;&nbsp;0x000100</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a30">CONF_FILE_NOT_FOUND</a>&nbsp;&nbsp;&nbsp;0x000200</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#CONF_5FFILE_5FNOT_5FFOUND">CONF_FILE_NOT_FOUND</a>&nbsp;&nbsp;&nbsp;0x000200</td></tr>
-<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::deque&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a31">file_cache</a></td></tr>
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::deque&lt; <a class="el" href="namespaceirc.html#string">std::string</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#file_5Fcache">file_cache</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Low level definition of a <a class="el" href="classFileReader.html">FileReader</a> classes file cache area. </em> <a href="#a31"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="modules_8h.html#a31">file_cache</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a32">string_list</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Low level definition of a <a class="el" href="classFileReader.html">FileReader</a> classes file cache area. <a href="#file_5Fcache"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="modules_8h.html#file_5Fcache">file_cache</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#string_5Flist">string_list</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::deque&lt; <a class="el" href="classuserrec.html">userrec</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a33">chanuserlist</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::deque&lt; <a class="el" href="classuserrec.html">userrec</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#chanuserlist">chanuserlist</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a list of users in a channel. </em> <a href="#a33"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef DLLFactory&lt; <a class="el" href="classModuleFactory.html">ModuleFactory</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a34">ircd_module</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a list of users in a channel. <a href="#chanuserlist"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef DLLFactory&lt; <a class="el" href="classModuleFactory.html">ModuleFactory</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#ircd_5Fmodule">ircd_module</a></td></tr>
-<tr><td colspan=2><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a35">createcommand</a> (char *cmd, handlerfunc f, char flags, int minparams, char *source)</td></tr>
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29">createcommand</a> (char *cmd, handlerfunc f, char flags, int minparams, char *source)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="modules_8h.html#a36">server_mode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="modules_8h.html#server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29">server_mode</a> (char **parameters, int pcnt, <a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
</table>
<hr><h2>Define Documentation</h2>
-<a name="a17" doxytag="modules.h::AC_DEHALFOP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FDEHALFOP"></a><!-- doxytag: member="modules.h::AC_DEHALFOP" ref="AC_5FDEHALFOP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_DEHALFOP&nbsp;&nbsp;&nbsp;6
+ <td class="md" nowrap valign="top">#define AC_DEHALFOP&nbsp;&nbsp;&nbsp;6 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -165,18 +170,19 @@ This graph shows which files directly or indirectly include this file:<p><center
Definition at line <a class="el" href="modules_8h-source.html#l00047">47</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a12" doxytag="modules.h::AC_DEOP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FDEOP"></a><!-- doxytag: member="modules.h::AC_DEOP" ref="AC_5FDEOP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_DEOP&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top">#define AC_DEOP&nbsp;&nbsp;&nbsp;1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -189,18 +195,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00047">47</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00042">42</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a15" doxytag="modules.h::AC_DEVOICE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FDEVOICE"></a><!-- doxytag: member="modules.h::AC_DEVOICE" ref="AC_5FDEVOICE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_DEVOICE&nbsp;&nbsp;&nbsp;4
+ <td class="md" nowrap valign="top">#define AC_DEVOICE&nbsp;&nbsp;&nbsp;4 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -213,18 +220,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00042">42</a> of
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>
</tr>
</table>
-<a name="a19" doxytag="modules.h::AC_GENERAL_MODE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FGENERAL_5FMODE"></a><!-- doxytag: member="modules.h::AC_GENERAL_MODE" ref="AC_5FGENERAL_5FMODE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_GENERAL_MODE&nbsp;&nbsp;&nbsp;8
+ <td class="md" nowrap valign="top">#define AC_GENERAL_MODE&nbsp;&nbsp;&nbsp;8 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -237,18 +245,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00045">45</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00049">49</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a16" doxytag="modules.h::AC_HALFOP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FHALFOP"></a><!-- doxytag: member="modules.h::AC_HALFOP" ref="AC_5FHALFOP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_HALFOP&nbsp;&nbsp;&nbsp;5
+ <td class="md" nowrap valign="top">#define AC_HALFOP&nbsp;&nbsp;&nbsp;5 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -261,18 +270,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00049">49</a> of
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="a18" doxytag="modules.h::AC_INVITE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FINVITE"></a><!-- doxytag: member="modules.h::AC_INVITE" ref="AC_5FINVITE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_INVITE&nbsp;&nbsp;&nbsp;7
+ <td class="md" nowrap valign="top">#define AC_INVITE&nbsp;&nbsp;&nbsp;7 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -285,18 +295,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00046">46</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00048">48</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a11" doxytag="modules.h::AC_KICK"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FKICK"></a><!-- doxytag: member="modules.h::AC_KICK" ref="AC_5FKICK" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_KICK&nbsp;&nbsp;&nbsp;0
+ <td class="md" nowrap valign="top">#define AC_KICK&nbsp;&nbsp;&nbsp;0 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -309,18 +320,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00048">48</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00041">41</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a13" doxytag="modules.h::AC_OP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FOP"></a><!-- doxytag: member="modules.h::AC_OP" ref="AC_5FOP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_OP&nbsp;&nbsp;&nbsp;2
+ <td class="md" nowrap valign="top">#define AC_OP&nbsp;&nbsp;&nbsp;2 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -333,18 +345,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00041">41</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00043">43</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a14" doxytag="modules.h::AC_VOICE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="AC_5FVOICE"></a><!-- doxytag: member="modules.h::AC_VOICE" ref="AC_5FVOICE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define AC_VOICE&nbsp;&nbsp;&nbsp;3
+ <td class="md" nowrap valign="top">#define AC_VOICE&nbsp;&nbsp;&nbsp;3 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -357,18 +370,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00043">43</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00044">44</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a10" doxytag="modules.h::ACR_ALLOW"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ACR_5FALLOW"></a><!-- doxytag: member="modules.h::ACR_ALLOW" ref="ACR_5FALLOW" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define ACR_ALLOW&nbsp;&nbsp;&nbsp;2
+ <td class="md" nowrap valign="top">#define ACR_ALLOW&nbsp;&nbsp;&nbsp;2 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -381,18 +395,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00044">44</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00039">39</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a8" doxytag="modules.h::ACR_DEFAULT"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ACR_5FDEFAULT"></a><!-- doxytag: member="modules.h::ACR_DEFAULT" ref="ACR_5FDEFAULT" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define ACR_DEFAULT&nbsp;&nbsp;&nbsp;0
+ <td class="md" nowrap valign="top">#define ACR_DEFAULT&nbsp;&nbsp;&nbsp;0 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -404,21 +419,22 @@ Definition at line <a class="el" href="modules_8h-source.html#l00039">39</a> of
<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>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00327">Module::OnAccessCheck()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00328">Module::OnAccessCheck()</a>. </td>
</tr>
</table>
-<a name="a9" doxytag="modules.h::ACR_DENY"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ACR_5FDENY"></a><!-- doxytag: member="modules.h::ACR_DENY" ref="ACR_5FDENY" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define ACR_DENY&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top">#define ACR_DENY&nbsp;&nbsp;&nbsp;1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -431,18 +447,19 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00327">Module::OnAcc
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="a30" doxytag="modules.h::CONF_FILE_NOT_FOUND"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CONF_5FFILE_5FNOT_5FFOUND"></a><!-- doxytag: member="modules.h::CONF_FILE_NOT_FOUND" ref="CONF_5FFILE_5FNOT_5FFOUND" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CONF_FILE_NOT_FOUND&nbsp;&nbsp;&nbsp;0x000200
+ <td class="md" nowrap valign="top">#define CONF_FILE_NOT_FOUND&nbsp;&nbsp;&nbsp;0x000200 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -452,23 +469,24 @@ Definition at line <a class="el" href="modules_8h-source.html#l00038">38</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01141">1141</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#l01112">1112</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#l00821">ConfigReader::ConfigReader()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00796">ConfigReader::ConfigReader()</a>. </td>
</tr>
</table>
-<a name="a27" doxytag="modules.h::CONF_NOT_A_NUMBER"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CONF_5FNOT_5FA_5FNUMBER"></a><!-- doxytag: member="modules.h::CONF_NOT_A_NUMBER" ref="CONF_5FNOT_5FA_5FNUMBER" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CONF_NOT_A_NUMBER&nbsp;&nbsp;&nbsp;0x000010
+ <td class="md" nowrap valign="top">#define CONF_NOT_A_NUMBER&nbsp;&nbsp;&nbsp;0x000010 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -478,23 +496,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00821">ConfigReader:
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01138">1138</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#l01109">1109</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#l00883">ConfigReader::ReadInteger()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00858">ConfigReader::ReadInteger()</a>. </td>
</tr>
</table>
-<a name="a28" doxytag="modules.h::CONF_NOT_UNSIGNED"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CONF_5FNOT_5FUNSIGNED"></a><!-- doxytag: member="modules.h::CONF_NOT_UNSIGNED" ref="CONF_5FNOT_5FUNSIGNED" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CONF_NOT_UNSIGNED&nbsp;&nbsp;&nbsp;0x000080
+ <td class="md" nowrap valign="top">#define CONF_NOT_UNSIGNED&nbsp;&nbsp;&nbsp;0x000080 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -504,23 +523,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00883">ConfigReader:
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01139">1139</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#l01110">1110</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#l00883">ConfigReader::ReadInteger()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00858">ConfigReader::ReadInteger()</a>. </td>
</tr>
</table>
-<a name="a29" doxytag="modules.h::CONF_VALUE_NOT_FOUND"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CONF_5FVALUE_5FNOT_5FFOUND"></a><!-- doxytag: member="modules.h::CONF_VALUE_NOT_FOUND" ref="CONF_5FVALUE_5FNOT_5FFOUND" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CONF_VALUE_NOT_FOUND&nbsp;&nbsp;&nbsp;0x000100
+ <td class="md" nowrap valign="top">#define CONF_VALUE_NOT_FOUND&nbsp;&nbsp;&nbsp;0x000100 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -530,23 +550,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00883">ConfigReader:
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01140">1140</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#l01111">1111</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#l00866">ConfigReader::ReadFlag()</a>, <a class="el" href="modules_8cpp-source.html#l00883">ConfigReader::ReadInteger()</a>, and <a class="el" href="modules_8cpp-source.html#l00850">ConfigReader::ReadValue()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00841">ConfigReader::ReadFlag()</a>, <a class="el" href="modules_8cpp-source.html#l00858">ConfigReader::ReadInteger()</a>, and <a class="el" href="modules_8cpp-source.html#l00825">ConfigReader::ReadValue()</a>. </td>
</tr>
</table>
-<a name="a0" doxytag="modules.h::DEBUG"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DEBUG"></a><!-- doxytag: member="modules.h::DEBUG" ref="DEBUG" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define DEBUG&nbsp;&nbsp;&nbsp;10
+ <td class="md" nowrap valign="top">#define DEBUG&nbsp;&nbsp;&nbsp;10 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -558,21 +579,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00866">ConfigReader:
<p>
Definition at line <a class="el" href="modules_8h-source.html#l00023">23</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#l00579">Server::AddExtendedMode()</a>, <a class="el" href="servers_8cpp-source.html#l00212">serverrec::AddIncoming()</a>, <a class="el" href="channels_8cpp-source.html#l00201">chanrec::AddUser()</a>, <a class="el" href="channels_8cpp-source.html#l00207">chanrec::DelUser()</a>, <a class="el" href="users_8cpp-source.html#l00140">userrec::HasPermission()</a>, <a class="el" href="channels_8cpp-source.html#l00175">chanrec::IsCustomModeSet()</a>, <a class="el" href="servers_8cpp-source.html#l00445">serverrec::RecvPacket()</a>, <a class="el" href="users_8cpp-source.html#l00118">userrec::RemoveInvite()</a>, <a class="el" href="servers_8cpp-source.html#l00350">serverrec::SendPacket()</a>, <a class="el" href="channels_8cpp-source.html#l00119">chanrec::SetCustomMode()</a>, <a class="el" href="channels_8cpp-source.html#l00144">chanrec::SetCustomModeParam()</a>, <a class="el" href="users_8cpp-source.html#l00286">userrec::SetWriteError()</a>, and <a class="el" href="modules_8cpp-source.html#l00621">Server::UserToPseudo()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00597">Server::AddExtendedMode()</a>, <a class="el" href="channels_8cpp-source.html#l00195">chanrec::AddUser()</a>, <a class="el" href="channels_8cpp-source.html#l00201">chanrec::DelUser()</a>, <a class="el" href="users_8cpp-source.html#l00142">userrec::HasPermission()</a>, <a class="el" href="socket_8cpp-source.html#l00057">InspSocket::InspSocket()</a>, <a class="el" href="channels_8cpp-source.html#l00169">chanrec::IsCustomModeSet()</a>, <a class="el" href="socket_8cpp-source.html#l00141">InspSocket::Read()</a>, <a class="el" href="users_8cpp-source.html#l00076">userrec::ReadData()</a>, <a class="el" href="users_8cpp-source.html#l00120">userrec::RemoveInvite()</a>, <a class="el" href="channels_8cpp-source.html#l00113">chanrec::SetCustomMode()</a>, <a class="el" href="channels_8cpp-source.html#l00138">chanrec::SetCustomModeParam()</a>, <a class="el" href="socket_8cpp-source.html#l00227">InspSocket::SetState()</a>, <a class="el" href="users_8cpp-source.html#l00288">userrec::SetWriteError()</a>, and <a class="el" href="modules_8cpp-source.html#l00639">Server::UserToPseudo()</a>. </td>
</tr>
</table>
-<a name="a2" doxytag="modules.h::DEFAULT"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="DEFAULT"></a><!-- doxytag: member="modules.h::DEFAULT" ref="DEFAULT" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define DEFAULT&nbsp;&nbsp;&nbsp;30
+ <td class="md" nowrap valign="top">#define DEFAULT&nbsp;&nbsp;&nbsp;30 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -585,18 +607,19 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00579">Server::AddEx
Definition at line <a class="el" href="modules_8h-source.html#l00025">25</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a26" doxytag="modules.h::FD_MAGIC_NUMBER"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FD_5FMAGIC_5FNUMBER"></a><!-- doxytag: member="modules.h::FD_MAGIC_NUMBER" ref="FD_5FMAGIC_5FNUMBER" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define FD_MAGIC_NUMBER&nbsp;&nbsp;&nbsp;-42
+ <td class="md" nowrap valign="top">#define FD_MAGIC_NUMBER&nbsp;&nbsp;&nbsp;-42 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -606,23 +629,24 @@ Definition at line <a class="el" href="modules_8h-source.html#l00025">25</a> of
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00099">99</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#l00100">100</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#l00651">Server::PseudoToUser()</a>, and <a class="el" href="modules_8cpp-source.html#l00621">Server::UserToPseudo()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00670">Server::PseudoToUser()</a>, and <a class="el" href="modules_8cpp-source.html#l00639">Server::UserToPseudo()</a>. </td>
</tr>
</table>
-<a name="a24" doxytag="modules.h::FOREACH_MOD"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FOREACH_5FMOD"></a><!-- doxytag: member="modules.h::FOREACH_MOD" ref="FOREACH_5FMOD" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define FOREACH_MOD&nbsp;&nbsp;&nbsp;for (int _i = 0; _i &lt;= <a class="el" href="modules_8cpp.html#a0">MODCOUNT</a>; _i++) modules[_i]-&gt;
+ <td class="md" nowrap valign="top">#define FOREACH_MOD&nbsp;&nbsp;&nbsp;for (int _i = 0; _i &lt;= <a class="el" href="modules_8cpp.html#MODCOUNT">MODCOUNT</a>; _i++) modules[_i]-&gt; </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -632,28 +656,29 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00651">Server::Pseud
<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>.
+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>.
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00292">Event::Send()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00293">Event::Send()</a>. </td>
</tr>
</table>
-<a name="a25" doxytag="modules.h::FOREACH_RESULT"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="FOREACH_5FRESULT_28x_29"></a><!-- doxytag: member="modules.h::FOREACH_RESULT" ref="FOREACH_5FRESULT_28x_29" args="(x)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define FOREACH_RESULT</td>
+ <td class="md" nowrap valign="top">#define FOREACH_RESULT </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">x&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
- <td class="md" nowrap>
+ <td class="md" nowrap></td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -661,9 +686,9 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00292">Event::Send()
<td>
<p>
-<b>Value:</b><div class="fragment"><pre>{ MOD_RESULT = 0; \
- <span class="keywordflow">for</span> (<span class="keywordtype">int</span> _i = 0; _i &lt;= <a class="code" href="modules_8cpp.html#a1">MODCOUNT</a>; _i++) { \
- <span class="keywordtype">int</span> res = <a class="code" href="channels_8cpp.html#a2">modules</a>[_i]-&gt;x ; \
+<b>Value:</b><div class="fragment"><pre class="fragment">{ MOD_RESULT = 0; \
+ <span class="keywordflow">for</span> (<span class="keywordtype">int</span> _i = 0; _i &lt;= <a class="code" href="channels_8cpp.html#MODCOUNT">MODCOUNT</a>; _i++) { \
+ <span class="keywordtype">int</span> res = <a class="code" href="channels_8cpp.html#modules">modules</a>[_i]-&gt;x ; \
<span class="keywordflow">if</span> (res != 0) { \
MOD_RESULT = res; \
<span class="keywordflow">break</span>; \
@@ -672,21 +697,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00292">Event::Send()
}
</pre></div>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00087">87</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#l00088">88</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>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MT_5FCHANNEL"></a><!-- doxytag: member="modules.h::MT_CHANNEL" ref="MT_5FCHANNEL" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define MT_CHANNEL&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top">#define MT_CHANNEL&nbsp;&nbsp;&nbsp;1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -698,21 +724,22 @@ Definition at line <a class="el" href="modules_8h-source.html#l00087">87</a> of
<p>
Definition at line <a class="el" href="modules_8h-source.html#l00031">31</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#l00607">Server::AddExtendedListMode()</a>, and <a class="el" href="modules_8cpp-source.html#l00230">ModeMakeList()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00625">Server::AddExtendedListMode()</a>, and <a class="el" href="modules_8cpp-source.html#l00231">ModeMakeList()</a>. </td>
</tr>
</table>
-<a name="a6" doxytag="modules.h::MT_CLIENT"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MT_5FCLIENT"></a><!-- doxytag: member="modules.h::MT_CLIENT" ref="MT_5FCLIENT" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define MT_CLIENT&nbsp;&nbsp;&nbsp;2
+ <td class="md" nowrap valign="top">#define MT_CLIENT&nbsp;&nbsp;&nbsp;2 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -724,21 +751,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00607">Server::AddEx
<p>
Definition at line <a class="el" href="modules_8h-source.html#l00032">32</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#l00579">Server::AddExtendedMode()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00597">Server::AddExtendedMode()</a>. </td>
</tr>
</table>
-<a name="a7" doxytag="modules.h::MT_SERVER"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="MT_5FSERVER"></a><!-- doxytag: member="modules.h::MT_SERVER" ref="MT_5FSERVER" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define MT_SERVER&nbsp;&nbsp;&nbsp;3
+ <td class="md" nowrap valign="top">#define MT_SERVER&nbsp;&nbsp;&nbsp;3 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -750,21 +778,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00579">Server::AddEx
<p>
Definition at line <a class="el" href="modules_8h-source.html#l00033">33</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#l00579">Server::AddExtendedMode()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00597">Server::AddExtendedMode()</a>. </td>
</tr>
</table>
-<a name="a4" doxytag="modules.h::NONE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="NONE"></a><!-- doxytag: member="modules.h::NONE" ref="NONE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define NONE&nbsp;&nbsp;&nbsp;50
+ <td class="md" nowrap valign="top">#define NONE&nbsp;&nbsp;&nbsp;50 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -777,18 +806,19 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00579">Server::AddEx
Definition at line <a class="el" href="modules_8h-source.html#l00027">27</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a3" doxytag="modules.h::SPARSE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="SPARSE"></a><!-- doxytag: member="modules.h::SPARSE" ref="SPARSE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define SPARSE&nbsp;&nbsp;&nbsp;40
+ <td class="md" nowrap valign="top">#define SPARSE&nbsp;&nbsp;&nbsp;40 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -801,18 +831,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00027">27</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00026">26</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a1" doxytag="modules.h::VERBOSE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="VERBOSE"></a><!-- doxytag: member="modules.h::VERBOSE" ref="VERBOSE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define VERBOSE&nbsp;&nbsp;&nbsp;20
+ <td class="md" nowrap valign="top">#define VERBOSE&nbsp;&nbsp;&nbsp;20 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -825,18 +856,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00026">26</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00024">24</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a23" doxytag="modules.h::VF_COMMON"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="VF_5FCOMMON"></a><!-- doxytag: member="modules.h::VF_COMMON" ref="VF_5FCOMMON" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define VF_COMMON&nbsp;&nbsp;&nbsp;8
+ <td class="md" nowrap valign="top">#define VF_COMMON&nbsp;&nbsp;&nbsp;8 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -849,18 +881,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00024">24</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00056">56</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a22" doxytag="modules.h::VF_SERVICEPROVIDER"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="VF_5FSERVICEPROVIDER"></a><!-- doxytag: member="modules.h::VF_SERVICEPROVIDER" ref="VF_5FSERVICEPROVIDER" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define VF_SERVICEPROVIDER&nbsp;&nbsp;&nbsp;4
+ <td class="md" nowrap valign="top">#define VF_SERVICEPROVIDER&nbsp;&nbsp;&nbsp;4 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -873,18 +906,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00056">56</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00055">55</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a20" doxytag="modules.h::VF_STATIC"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="VF_5FSTATIC"></a><!-- doxytag: member="modules.h::VF_STATIC" ref="VF_5FSTATIC" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define VF_STATIC&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top">#define VF_STATIC&nbsp;&nbsp;&nbsp;1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -897,18 +931,19 @@ Definition at line <a class="el" href="modules_8h-source.html#l00055">55</a> of
Definition at line <a class="el" href="modules_8h-source.html#l00053">53</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a21" doxytag="modules.h::VF_VENDOR"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="VF_5FVENDOR"></a><!-- doxytag: member="modules.h::VF_VENDOR" ref="VF_5FVENDOR" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define VF_VENDOR&nbsp;&nbsp;&nbsp;2
+ <td class="md" nowrap valign="top">#define VF_VENDOR&nbsp;&nbsp;&nbsp;2 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -920,22 +955,23 @@ Definition at line <a class="el" href="modules_8h-source.html#l00053">53</a> of
<p>
Definition at line <a class="el" href="modules_8h-source.html#l00054">54</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#l00318">Module::GetVersion()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00319">Module::GetVersion()</a>. </td>
</tr>
</table>
<hr><h2>Typedef Documentation</h2>
-<a name="a33" doxytag="modules.h::chanuserlist"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="chanuserlist"></a><!-- doxytag: member="modules.h::chanuserlist" ref="chanuserlist" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::deque&lt;<a class="el" href="classuserrec.html">userrec</a>*&gt; <a class="el" href="modules_8h.html#a33">chanuserlist</a>
+ <td class="md" nowrap valign="top">typedef std::deque&lt;<a class="el" href="classuserrec.html">userrec</a>*&gt; <a class="el" href="modules_8h.html#chanuserlist">chanuserlist</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -947,23 +983,22 @@ Holds a list of users in a channel.
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l00072">72</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#l00402">Server::GetUsers()</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00073">73</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a31" doxytag="modules.h::file_cache"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="file_5Fcache"></a><!-- doxytag: member="modules.h::file_cache" ref="file_5Fcache" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::deque&lt;std::string&gt; <a class="el" href="modules_8h.html#a31">file_cache</a>
+ <td class="md" nowrap valign="top">typedef std::deque&lt;<a class="el" href="namespaceirc.html#string">std::string</a>&gt; <a class="el" href="modules_8h.html#file_5Fcache">file_cache</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -975,23 +1010,22 @@ Low level definition of a <a class="el" href="classFileReader.html">FileReader</
<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>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00968">FileReader::FileReader()</a>, and <a class="el" href="modules_8cpp-source.html#l00979">FileReader::LoadFile()</a>. </td>
+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>. </td>
</tr>
</table>
-<a name="a34" doxytag="modules.h::ircd_module"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ircd_5Fmodule"></a><!-- doxytag: member="modules.h::ircd_module" ref="ircd_5Fmodule" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef DLLFactory&lt;<a class="el" href="classModuleFactory.html">ModuleFactory</a>&gt; <a class="el" href="modules_8h.html#a34">ircd_module</a>
+ <td class="md" nowrap valign="top">typedef DLLFactory&lt;<a class="el" href="classModuleFactory.html">ModuleFactory</a>&gt; <a class="el" href="modules_8h.html#ircd_5Fmodule">ircd_module</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1001,21 +1035,22 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00968">FileReader::F
<p>
<p>
-Definition at line <a class="el" href="modules_8h-source.html#l01307">1307</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#l01278">1278</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
-<a name="a32" doxytag="modules.h::string_list"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="string_5Flist"></a><!-- doxytag: member="modules.h::string_list" ref="string_5Flist" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef <a class="el" href="modules_8h.html#a31">file_cache</a> <a class="el" href="modules_8h.html#a32">string_list</a>
+ <td class="md" nowrap valign="top">typedef <a class="el" href="modules_8h.html#file_5Fcache">file_cache</a> <a class="el" href="modules_8h.html#string_5Flist">string_list</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1025,58 +1060,55 @@ Definition at line <a class="el" href="modules_8h-source.html#l01307">1307</a> o
<p>
<p>
-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>.
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00329">Module::OnChannelSync()</a>, and <a class="el" href="modules_8cpp-source.html#l00328">Module::OnUserSync()</a>. </td>
+Definition at line <a class="el" href="modules_8h-source.html#l00069">69</a> of file <a class="el" href="modules_8h-source.html">modules.h</a>. </td>
</tr>
</table>
<hr><h2>Function Documentation</h2>
-<a name="a35" doxytag="modules.h::createcommand"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29"></a><!-- doxytag: member="modules.h::createcommand" ref="createcommand_28char_20_2Acmd_2C_20handlerfunc_20f_2C_20char_20flags_2C_20int_20minparams_2C_20char_20_2Asource_29" args="(char *cmd, handlerfunc f, char flags, int minparams, char *source)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void createcommand </td>
+ <td class="md" nowrap valign="top">void createcommand </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap> <em>cmd</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>handlerfunc&nbsp;</td>
<td class="mdname" nowrap> <em>f</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>flags</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>minparams</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1086,43 +1118,42 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00329">Module::OnCha
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00439">Server::AddCommand()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00457">Server::AddCommand()</a>. </td>
</tr>
</table>
-<a name="a36" doxytag="modules.h::server_mode"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29"></a><!-- doxytag: member="modules.h::server_mode" ref="server_5Fmode_28char_20_2A_2Aparameters_2C_20int_20pcnt_2C_20userrec_20_2Auser_29" args="(char **parameters, int pcnt, userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void server_mode </td>
+ <td class="md" nowrap valign="top">void server_mode </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char **&nbsp;</td>
<td class="mdname" nowrap> <em>parameters</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>pcnt</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap><a class="el" href="classuserrec.html">userrec</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>user</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1130,14 +1161,11 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00439">Server::AddCo
<td>
<p>
-
-<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00444">Server::SendMode()</a>. </td>
+ </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:07 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/modules_8h__dep__incl.gif b/docs/module-doc/modules_8h__dep__incl.gif
index 3bef345cf..b2d7f6bac 100644
--- a/docs/module-doc/modules_8h__dep__incl.gif
+++ b/docs/module-doc/modules_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/modules_8h__dep__incl.map b/docs/module-doc/modules_8h__dep__incl.map
new file mode 100644
index 000000000..d7538d0b6
--- /dev/null
+++ b/docs/module-doc/modules_8h__dep__incl.map
@@ -0,0 +1,3 @@
+base referer
+rect $channels_8cpp-source.html 141,7 240,34
+rect $modules_8cpp-source.html 141,58 240,84
diff --git a/docs/module-doc/modules_8h__dep__incl.md5 b/docs/module-doc/modules_8h__dep__incl.md5
new file mode 100644
index 000000000..60d2fe3bf
--- /dev/null
+++ b/docs/module-doc/modules_8h__dep__incl.md5
@@ -0,0 +1 @@
+611991712fd0ca861a8e76c0cc7c6347 \ No newline at end of file
diff --git a/docs/module-doc/modules_8h__incl.gif b/docs/module-doc/modules_8h__incl.gif
index 20b152360..90c81185e 100644
--- a/docs/module-doc/modules_8h__incl.gif
+++ b/docs/module-doc/modules_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/modules_8h__incl.map b/docs/module-doc/modules_8h__incl.map
new file mode 100644
index 000000000..2214f2413
--- /dev/null
+++ b/docs/module-doc/modules_8h__incl.map
@@ -0,0 +1,4 @@
+base referer
+rect $base_8h-source.html 291,44 352,71
+rect $ctables_8h-source.html 146,145 220,172
+rect $socket_8h-source.html 147,323 219,349
diff --git a/docs/module-doc/modules_8h__incl.md5 b/docs/module-doc/modules_8h__incl.md5
new file mode 100644
index 000000000..cf971d90c
--- /dev/null
+++ b/docs/module-doc/modules_8h__incl.md5
@@ -0,0 +1 @@
+5b86268e2f91690fd1ce3d798c0f701b \ No newline at end of file
diff --git a/docs/module-doc/namespaceirc.html b/docs/module-doc/namespaceirc.html
index 47f0d4f5b..cbdb82a4b 100644
--- a/docs/module-doc/namespaceirc.html
+++ b/docs/module-doc/namespaceirc.html
@@ -1,46 +1,47 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: irc Namespace Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>irc Namespace Reference</h1>The irc namespace contains a number of helper classes.
<a href="#_details">More...</a>
<p>
-<table border=0 cellpadding=0 cellspacing=0>
+<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1InAddr__HashComp.html">InAddr_HashComp</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1StrHashComp.html">StrHashComp</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class returns true if two in_addr structs match. </em> <a href="structirc_1_1InAddr__HashComp.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class returns true if two strings match. <a href="structirc_1_1StrHashComp.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1InAddr__HashComp.html">InAddr_HashComp</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> class is used for RFC-style comparison of strings. </em> <a href="structirc_1_1irc__char__traits.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1StrHashComp.html">StrHashComp</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class returns true if two in_addr structs match. <a href="structirc_1_1InAddr__HashComp.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This class returns true if two strings match. </em> <a href="structirc_1_1StrHashComp.html#_details">More...</a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef basic_string&lt; char,<br>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> class is used for RFC-style comparison of strings. <a href="structirc_1_1irc__char__traits.html#_details">More...</a><br></td></tr>
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef basic_string&lt; char,<br>
<a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a>, allocator&lt;<br>
- char &gt; &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="namespaceirc.html#a0">string</a></td></tr>
+ char &gt; &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceirc.html#string">string</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This typedef declares <a class="el" href="namespaceirc.html#a0">irc::string</a> based upon <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a>. </em> <a href="#a0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This typedef declares <a class="el" href="namespaceirc.html#string">irc::string</a> based upon <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a>. <a href="#string"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The irc namespace contains a number of helper classes. <hr><h2>Typedef Documentation</h2>
-<a name="a0" doxytag="irc::string"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="string"></a><!-- doxytag: member="irc::string" ref="string" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef basic_string&lt;char, <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a>, allocator&lt;char&gt; &gt; <a class="el" href="namespaceirc.html#a0">irc::string</a>
+ <td class="md" nowrap valign="top">typedef basic_string&lt;char, <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a>, allocator&lt;char&gt; &gt; <a class="el" href="namespaceirc.html#string">irc::string</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -48,16 +49,15 @@ The irc namespace contains a number of helper classes. <hr><h2>Typedef Documenta
<td>
<p>
-This typedef declares <a class="el" href="namespaceirc.html#a0">irc::string</a> based upon <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a>.
+This typedef declares <a class="el" href="namespaceirc.html#string">irc::string</a> based upon <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a>.
<p>
<p>
Definition at line <a class="el" href="hashcomp_8h-source.html#l00129">129</a> of file <a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>. </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:49 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/namespacemembers.html b/docs/module-doc/namespacemembers.html
index 6f45cfcc7..e7d8b4e31 100644
--- a/docs/module-doc/namespacemembers.html
+++ b/docs/module-doc/namespacemembers.html
@@ -1,19 +1,18 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Namespace Member Index</title>
+<title>InspIRCd: Class Members</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindexHL" href="namespacemembers.html">All</a> | <a class="qindex" href="namespacemembers_type.html">Typedefs</a></div>
-
+Here is a list of all namespace members with links to the namespace documentation for each member:
<p>
-Here is a list of all namespace members with links to the namespace documentation for each member:<ul>
+<ul>
<li>string
-: <a class="el" href="namespaceirc.html#a0">irc</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:51 2005 for InspIRCd by
+: <a class="el" href="namespaceirc.html#string">irc</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/namespacemembers_type.html b/docs/module-doc/namespacemembers_type.html
index 73b7d247d..ec8cc3b9c 100644
--- a/docs/module-doc/namespacemembers_type.html
+++ b/docs/module-doc/namespacemembers_type.html
@@ -1,19 +1,18 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: Namespace Member Index</title>
+<title>InspIRCd: Class Members</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<div class="qindex"><a class="qindex" href="namespacemembers.html">All</a> | <a class="qindexHL" href="namespacemembers_type.html">Typedefs</a></div>
<p>
<ul>
<li>string
-: <a class="el" href="namespaceirc.html#a0">irc</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:51 2005 for InspIRCd by
+: <a class="el" href="namespaceirc.html#string">irc</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/namespacenspace.html b/docs/module-doc/namespacenspace.html
index af8ef2b4b..96ae0a3b0 100644
--- a/docs/module-doc/namespacenspace.html
+++ b/docs/module-doc/namespacenspace.html
@@ -1,23 +1,22 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: nspace Namespace Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>nspace Namespace Reference</h1>
<p>
-<table border=0 cellpadding=0 cellspacing=0>
+<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html">nspace.hash&lt; in_addr &gt;</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html">hash&lt; in_addr &gt;</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html">nspace.hash&lt; string &gt;</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnspace_1_1hash_3_01string_01_4.html">hash&lt; string &gt;</a></td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:50 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/namespaces.html b/docs/module-doc/namespaces.html
index 3d097df49..650759e44 100644
--- a/docs/module-doc/namespaces.html
+++ b/docs/module-doc/namespaces.html
@@ -1,18 +1,17 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Namespace Index</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindexHL" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindexHL" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>InspIRCd Namespace List</h1>Here is a list of all namespaces with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="namespaceirc.html">irc</a></td><td class="indexvalue">The irc namespace contains a number of helper classes </td></tr>
<tr><td class="indexkey"><a class="el" href="namespacenspace.html">nspace</a></td><td class="indexvalue"></td></tr>
<tr><td class="indexkey"><a class="el" href="namespacestd.html">std</a></td><td class="indexvalue"></td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:49 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/namespacestd.html b/docs/module-doc/namespacestd.html
index 0224b440b..458862b34 100644
--- a/docs/module-doc/namespacestd.html
+++ b/docs/module-doc/namespacestd.html
@@ -1,18 +1,17 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: std Namespace Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
<h1>std Namespace Reference</h1>
<p>
-<table border=0 cellpadding=0 cellspacing=0>
+<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:50 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/socket_8cpp-source.html b/docs/module-doc/socket_8cpp-source.html
new file mode 100644
index 000000000..b11873f4e
--- /dev/null
+++ b/docs/module-doc/socket_8cpp-source.html
@@ -0,0 +1,268 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: socket.cpp Source File</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>socket.cpp</h1><a href="socket_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
+<a name="l00018"></a>00018
+<a name="l00019"></a>00019 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;sys/time.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;sys/resource.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;sys/types.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;sys/socket.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;netinet/in.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;unistd.h&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;fcntl.h&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;poll.h&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;iostream&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;fstream&gt;</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include "<a class="code" href="socket_8h.html">socket.h</a>"</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include "inspircd.h"</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include "inspircd_io.h"</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include "inspircd_util.h"</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include "inspstring.h"</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include "helperfuncs.h"</span>
+<a name="l00038"></a>00038
+<a name="l00039"></a>00039 <span class="keyword">extern</span> FILE *<a class="code" href="channels_8cpp.html#log_5Ffile">log_file</a>;
+<a name="l00040"></a>00040 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channels_8cpp.html#boundPortCount">boundPortCount</a>;
+<a name="l00041"></a>00041 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="socket_8cpp.html#openSockfd_5BMAXSOCKS_5D">openSockfd</a>[MAXSOCKS];
+<a name="l00042"></a>00042 <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#TIME">TIME</a>;
+<a name="l00043"></a>00043 <span class="keyword">extern</span> <span class="keywordtype">bool</span> <a class="code" href="socket_8cpp.html#unlimitcore">unlimitcore</a>;
+<a name="l00044"></a>00044 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="socket_8cpp.html#MaxConn">MaxConn</a>;
+<a name="l00045"></a>00045
+<a name="l00046"></a><a class="code" href="classInspSocket.html#InspSocket_28_29">00046</a> <a class="code" href="classInspSocket.html#InspSocket_28_29">InspSocket::InspSocket</a>()
+<a name="l00047"></a>00047 {
+<a name="l00048"></a>00048 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FDISCONNECTED">I_DISCONNECTED</a>;
+<a name="l00049"></a>00049 }
+<a name="l00050"></a>00050
+<a name="l00051"></a><a class="code" href="classInspSocket.html#InspSocket_28int_20newfd_29">00051</a> <a class="code" href="classInspSocket.html#InspSocket_28_29">InspSocket::InspSocket</a>(<span class="keywordtype">int</span> newfd)
+<a name="l00052"></a>00052 {
+<a name="l00053"></a>00053 this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a> = newfd;
+<a name="l00054"></a>00054 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>;
+<a name="l00055"></a>00055 }
+<a name="l00056"></a>00056
+<a name="l00057"></a><a class="code" href="classInspSocket.html#InspSocket_28std_3A_3Astring_20host_2C_20int_20port_2C_20bool_20listening_2C_20unsigned_20long_20maxtime_29">00057</a> <a class="code" href="classInspSocket.html#InspSocket_28_29">InspSocket::InspSocket</a>(<a class="code" href="namespaceirc.html#string">std::string</a> host, <span class="keywordtype">int</span> port, <span class="keywordtype">bool</span> listening, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> maxtime)
+<a name="l00058"></a>00058 {
+<a name="l00059"></a>00059 <span class="keywordflow">if</span> (listening) {
+<a name="l00060"></a>00060 <span class="keywordflow">if</span> ((this-&gt;fd = OpenTCPSocket()) == ERROR)
+<a name="l00061"></a>00061 {
+<a name="l00062"></a>00062 this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a> = -1;
+<a name="l00063"></a>00063 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00064"></a>00064 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">I_ERR_SOCKET</a>);
+<a name="l00065"></a>00065 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"OpenTCPSocket() error"</span>);
+<a name="l00066"></a>00066 <span class="keywordflow">return</span>;
+<a name="l00067"></a>00067 }
+<a name="l00068"></a>00068 <span class="keywordflow">else</span>
+<a name="l00069"></a>00069 {
+<a name="l00070"></a>00070 <span class="keywordflow">if</span> (BindSocket(this-&gt;fd,this-&gt;client,this-&gt;server,port,(<span class="keywordtype">char</span>*)host.c_str()) == ERROR)
+<a name="l00071"></a>00071 {
+<a name="l00072"></a>00072 this-&gt;<a class="code" href="classInspSocket.html#Close_28_29">Close</a>();
+<a name="l00073"></a>00073 this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a> = -1;
+<a name="l00074"></a>00074 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00075"></a>00075 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FBIND">I_ERR_BIND</a>);
+<a name="l00076"></a>00076 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"BindSocket() error %s"</span>,strerror(errno));
+<a name="l00077"></a>00077 <span class="keywordflow">return</span>;
+<a name="l00078"></a>00078 }
+<a name="l00079"></a>00079 <span class="keywordflow">else</span>
+<a name="l00080"></a>00080 {
+<a name="l00081"></a>00081 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>;
+<a name="l00082"></a>00082 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"New socket now in I_LISTENING state"</span>);
+<a name="l00083"></a>00083 <span class="keywordflow">return</span>;
+<a name="l00084"></a>00084 }
+<a name="l00085"></a>00085 }
+<a name="l00086"></a>00086 } <span class="keywordflow">else</span> {
+<a name="l00087"></a>00087 <span class="keywordtype">char</span>* ip;
+<a name="l00088"></a>00088 this-&gt;host = host;
+<a name="l00089"></a>00089 hostent* hoste = gethostbyname(host.c_str());
+<a name="l00090"></a>00090 <span class="keywordflow">if</span> (!hoste) {
+<a name="l00091"></a>00091 ip = (<span class="keywordtype">char</span>*)host.c_str();
+<a name="l00092"></a>00092 } <span class="keywordflow">else</span> {
+<a name="l00093"></a>00093 <span class="keyword">struct </span>in_addr* ia = (in_addr*)hoste-&gt;h_addr;
+<a name="l00094"></a>00094 ip = inet_ntoa(*ia);
+<a name="l00095"></a>00095 }
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097 <a class="code" href="classInspSocket.html#timeout_5Fend">timeout_end</a> = time(NULL)+maxtime;
+<a name="l00098"></a>00098 <a class="code" href="classInspSocket.html#timeout">timeout</a> = <span class="keyword">false</span>;
+<a name="l00099"></a>00099 <span class="keywordflow">if</span> ((this-&gt;fd = socket(AF_INET, SOCK_STREAM, 0)) == -1)
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00102"></a>00102 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">I_ERR_SOCKET</a>);
+<a name="l00103"></a>00103 <span class="keywordflow">return</span>;
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105 this-&gt;port = port;
+<a name="l00106"></a>00106 inet_aton(ip,&amp;<a class="code" href="classInspSocket.html#addy">addy</a>);
+<a name="l00107"></a>00107 <a class="code" href="classInspSocket.html#addr">addr</a>.sin_family = AF_INET;
+<a name="l00108"></a>00108 <a class="code" href="classInspSocket.html#addr">addr</a>.sin_addr = <a class="code" href="classInspSocket.html#addy">addy</a>;
+<a name="l00109"></a>00109 <a class="code" href="classInspSocket.html#addr">addr</a>.sin_port = htons(this-&gt;port);
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111 <span class="keywordtype">int</span> flags;
+<a name="l00112"></a>00112 flags = fcntl(this-&gt;fd, F_GETFL, 0);
+<a name="l00113"></a>00113 fcntl(this-&gt;fd, F_SETFL, flags | O_NONBLOCK);
+<a name="l00114"></a>00114
+<a name="l00115"></a>00115 <span class="keywordflow">if</span>(connect(this-&gt;fd, (sockaddr*)&amp;this-&gt;addr,<span class="keyword">sizeof</span>(this-&gt;addr)) == -1)
+<a name="l00116"></a>00116 {
+<a name="l00117"></a>00117 <span class="keywordflow">if</span> (errno != EINPROGRESS)
+<a name="l00118"></a>00118 {
+<a name="l00119"></a>00119 this-&gt;<a class="code" href="classInspSocket.html#Close_28_29">Close</a>();
+<a name="l00120"></a>00120 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FCONNECT">I_ERR_CONNECT</a>);
+<a name="l00121"></a>00121 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00122"></a>00122 <span class="keywordflow">return</span>;
+<a name="l00123"></a>00123 }
+<a name="l00124"></a>00124 }
+<a name="l00125"></a>00125 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>;
+<a name="l00126"></a>00126 <span class="keywordflow">return</span>;
+<a name="l00127"></a>00127 }
+<a name="l00128"></a>00128 }
+<a name="l00129"></a>00129
+<a name="l00130"></a><a class="code" href="classInspSocket.html#Close_28_29">00130</a> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#Close_28_29">InspSocket::Close</a>()
+<a name="l00131"></a>00131 {
+<a name="l00132"></a>00132 <span class="keywordflow">if</span> (this-&gt;fd != -1)
+<a name="l00133"></a>00133 {
+<a name="l00134"></a>00134 this-&gt;<a class="code" href="classInspSocket.html#OnClose_28_29">OnClose</a>();
+<a name="l00135"></a>00135 shutdown(this-&gt;fd,2);
+<a name="l00136"></a>00136 close(this-&gt;fd);
+<a name="l00137"></a>00137 this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a> = -1;
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139 }
+<a name="l00140"></a>00140
+<a name="l00141"></a><a class="code" href="classInspSocket.html#Read_28_29">00141</a> <span class="keywordtype">char</span>* <a class="code" href="classInspSocket.html#Read_28_29">InspSocket::Read</a>()
+<a name="l00142"></a>00142 {
+<a name="l00143"></a>00143 <span class="keywordtype">int</span> n = recv(this-&gt;fd,this-&gt;ibuf,<span class="keyword">sizeof</span>(this-&gt;ibuf),0);
+<a name="l00144"></a>00144 <span class="keywordflow">if</span> (n &gt; 0)
+<a name="l00145"></a>00145 {
+<a name="l00146"></a>00146 <a class="code" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">ibuf</a>[n] = 0;
+<a name="l00147"></a>00147 <span class="keywordflow">return</span> <a class="code" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">ibuf</a>;
+<a name="l00148"></a>00148 }
+<a name="l00149"></a>00149 <span class="keywordflow">else</span>
+<a name="l00150"></a>00150 {
+<a name="l00151"></a>00151 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"EOF or error on socket"</span>);
+<a name="l00152"></a>00152 <span class="keywordflow">return</span> NULL;
+<a name="l00153"></a>00153 }
+<a name="l00154"></a>00154 }
+<a name="l00155"></a>00155
+<a name="l00156"></a>00156 <span class="comment">// There are two possible outcomes to this function.</span>
+<a name="l00157"></a>00157 <span class="comment">// It will either write all of the data, or an undefined amount.</span>
+<a name="l00158"></a>00158 <span class="comment">// If an undefined amount is written the connection has failed</span>
+<a name="l00159"></a>00159 <span class="comment">// and should be aborted.</span>
+<a name="l00160"></a><a class="code" href="classInspSocket.html#Write_28std_3A_3Astring_20data_29">00160</a> <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#Write_28std_3A_3Astring_20data_29">InspSocket::Write</a>(<a class="code" href="namespaceirc.html#string">std::string</a> data)
+<a name="l00161"></a>00161 {
+<a name="l00162"></a>00162 <span class="keywordtype">char</span>* d = (<span class="keywordtype">char</span>*)data.c_str();
+<a name="l00163"></a>00163 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> written = 0;
+<a name="l00164"></a>00164 <span class="keywordtype">int</span> n = 0;
+<a name="l00165"></a>00165 <span class="keywordtype">int</span> s = data.length();
+<a name="l00166"></a>00166 <span class="keywordflow">while</span> ((written &lt; data.length()) &amp;&amp; (n &gt;= 0))
+<a name="l00167"></a>00167 {
+<a name="l00168"></a>00168 n = send(this-&gt;fd,d,s,0);
+<a name="l00169"></a>00169 <span class="keywordflow">if</span> (n &gt; 0)
+<a name="l00170"></a>00170 {
+<a name="l00171"></a>00171 <span class="comment">// If we didnt write everything, advance</span>
+<a name="l00172"></a>00172 <span class="comment">// the pointers so that when we retry</span>
+<a name="l00173"></a>00173 <span class="comment">// the next time around the loop, we try</span>
+<a name="l00174"></a>00174 <span class="comment">// to write what we failed to write before.</span>
+<a name="l00175"></a>00175 written += n;
+<a name="l00176"></a>00176 s -= n;
+<a name="l00177"></a>00177 d += n;
+<a name="l00178"></a>00178 }
+<a name="l00179"></a>00179 }
+<a name="l00180"></a>00180 <span class="keywordflow">return</span> written;
+<a name="l00181"></a>00181 }
+<a name="l00182"></a>00182
+<a name="l00183"></a><a class="code" href="classInspSocket.html#Poll_28_29">00183</a> <span class="keywordtype">bool</span> <a class="code" href="classInspSocket.html#Poll_28_29">InspSocket::Poll</a>()
+<a name="l00184"></a>00184 {
+<a name="l00185"></a>00185 <span class="keywordflow">if</span> ((time(NULL) &gt; <a class="code" href="classInspSocket.html#timeout_5Fend">timeout_end</a>) &amp;&amp; (this-&gt;state == <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>))
+<a name="l00186"></a>00186 {
+<a name="l00187"></a>00187 <span class="comment">// for non-listening sockets, the timeout can occur</span>
+<a name="l00188"></a>00188 <span class="comment">// which causes termination of the connection after</span>
+<a name="l00189"></a>00189 <span class="comment">// the given number of seconds without a successful</span>
+<a name="l00190"></a>00190 <span class="comment">// connection.</span>
+<a name="l00191"></a>00191 this-&gt;<a class="code" href="classInspSocket.html#OnTimeout_28_29">OnTimeout</a>();
+<a name="l00192"></a>00192 this-&gt;<a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FTIMEOUT">I_ERR_TIMEOUT</a>);
+<a name="l00193"></a>00193 <a class="code" href="classInspSocket.html#timeout">timeout</a> = <span class="keyword">true</span>;
+<a name="l00194"></a>00194 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>;
+<a name="l00195"></a>00195 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00196"></a>00196 }
+<a name="l00197"></a>00197 <a class="code" href="classInspSocket.html#polls">polls</a>.fd = this-&gt;<a class="code" href="classInspSocket.html#fd">fd</a>;
+<a name="l00198"></a>00198 <a class="code" href="classInspSocket.html#state">state</a> == <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a> ? <a class="code" href="classInspSocket.html#polls">polls</a>.events = POLLOUT : <a class="code" href="classInspSocket.html#polls">polls</a>.events = POLLIN;
+<a name="l00199"></a>00199 <span class="keywordtype">int</span> ret = poll(&amp;<a class="code" href="classInspSocket.html#polls">polls</a>,1,1);
+<a name="l00200"></a>00200
+<a name="l00201"></a>00201 <span class="keywordflow">if</span> (ret &gt; 0)
+<a name="l00202"></a>00202 {
+<a name="l00203"></a>00203 <span class="keywordtype">int</span> incoming = -1;
+<a name="l00204"></a>00204
+<a name="l00205"></a>00205 <span class="keywordflow">switch</span> (this-&gt;state)
+<a name="l00206"></a>00206 {
+<a name="l00207"></a>00207 <span class="keywordflow">case</span> <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>:
+<a name="l00208"></a>00208 this-&gt;<a class="code" href="classInspSocket.html#SetState_28InspSocketState_20s_29">SetState</a>(<a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>);
+<a name="l00209"></a>00209 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classInspSocket.html#OnConnected_28_29">OnConnected</a>();
+<a name="l00210"></a>00210 <span class="keywordflow">break</span>;
+<a name="l00211"></a>00211 <span class="keywordflow">case</span> <a class="code" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>:
+<a name="l00212"></a>00212 <a class="code" href="classInspSocket.html#length">length</a> = <span class="keyword">sizeof</span> (<a class="code" href="classInspSocket.html#client">client</a>);
+<a name="l00213"></a>00213 incoming = accept (this-&gt;fd, (sockaddr*)&amp;<a class="code" href="classInspSocket.html#client">client</a>,&amp;<a class="code" href="classInspSocket.html#length">length</a>);
+<a name="l00214"></a>00214 this-&gt;<a class="code" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">OnIncomingConnection</a>(incoming,inet_ntoa(client.sin_addr));
+<a name="l00215"></a>00215 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00216"></a>00216 <span class="keywordflow">break</span>;
+<a name="l00217"></a>00217 <span class="keywordflow">case</span> <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>:
+<a name="l00218"></a>00218 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classInspSocket.html#OnDataReady_28_29">OnDataReady</a>();
+<a name="l00219"></a>00219 <span class="keywordflow">break</span>;
+<a name="l00220"></a>00220 <span class="keywordflow">default</span>:
+<a name="l00221"></a>00221 <span class="keywordflow">break</span>;
+<a name="l00222"></a>00222 }
+<a name="l00223"></a>00223 }
+<a name="l00224"></a>00224 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00225"></a>00225 }
+<a name="l00226"></a>00226
+<a name="l00227"></a><a class="code" href="classInspSocket.html#SetState_28InspSocketState_20s_29">00227</a> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#SetState_28InspSocketState_20s_29">InspSocket::SetState</a>(<a class="code" href="socket_8h.html#InspSocketState">InspSocketState</a> s)
+<a name="l00228"></a>00228 {
+<a name="l00229"></a>00229 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Socket state change"</span>);
+<a name="l00230"></a>00230 this-&gt;<a class="code" href="classInspSocket.html#state">state</a> = s;
+<a name="l00231"></a>00231 }
+<a name="l00232"></a>00232
+<a name="l00233"></a><a class="code" href="classInspSocket.html#GetState_28_29">00233</a> <a class="code" href="socket_8h.html#InspSocketState">InspSocketState</a> <a class="code" href="classInspSocket.html#GetState_28_29">InspSocket::GetState</a>()
+<a name="l00234"></a>00234 {
+<a name="l00235"></a>00235 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classInspSocket.html#state">state</a>;
+<a name="l00236"></a>00236 }
+<a name="l00237"></a>00237
+<a name="l00238"></a><a class="code" href="classInspSocket.html#OnConnected_28_29">00238</a> <span class="keywordtype">bool</span> <a class="code" href="classInspSocket.html#OnConnected_28_29">InspSocket::OnConnected</a>() { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
+<a name="l00239"></a><a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">00239</a> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">InspSocket::OnError</a>(<a class="code" href="socket_8h.html#InspSocketError">InspSocketError</a> e) { <span class="keywordflow">return</span>; }
+<a name="l00240"></a><a class="code" href="classInspSocket.html#OnDisconnect_28_29">00240</a> <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#OnDisconnect_28_29">InspSocket::OnDisconnect</a>() { <span class="keywordflow">return</span> 0; }
+<a name="l00241"></a><a class="code" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">00241</a> <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">InspSocket::OnIncomingConnection</a>(<span class="keywordtype">int</span> newfd, <span class="keywordtype">char</span>* ip) { <span class="keywordflow">return</span> 0; }
+<a name="l00242"></a><a class="code" href="classInspSocket.html#OnDataReady_28_29">00242</a> <span class="keywordtype">bool</span> <a class="code" href="classInspSocket.html#OnDataReady_28_29">InspSocket::OnDataReady</a>() { <span class="keywordflow">return</span> <span class="keyword">true</span>; }
+<a name="l00243"></a><a class="code" href="classInspSocket.html#OnTimeout_28_29">00243</a> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#OnTimeout_28_29">InspSocket::OnTimeout</a>() { <span class="keywordflow">return</span>; }
+<a name="l00244"></a><a class="code" href="classInspSocket.html#OnClose_28_29">00244</a> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#OnClose_28_29">InspSocket::OnClose</a>() { <span class="keywordflow">return</span>; }
+<a name="l00245"></a>00245
+<a name="l00246"></a><a class="code" href="classInspSocket.html#_7EInspSocket_28_29">00246</a> <a class="code" href="classInspSocket.html#_7EInspSocket_28_29">InspSocket::~InspSocket</a>()
+<a name="l00247"></a>00247 {
+<a name="l00248"></a>00248 this-&gt;<a class="code" href="classInspSocket.html#Close_28_29">Close</a>();
+<a name="l00249"></a>00249 }
+<a name="l00250"></a>00250
+<a name="l00251"></a>00251 <span class="comment">/*</span>
+<a name="l00252"></a>00252 <span class="comment">int BindSocket (int sockfd, struct sockaddr_in client, struct sockaddr_in server, int port, char* addr)</span>
+<a name="l00253"></a>00253 <span class="comment">int OpenTCPSocket (void)</span>
+<a name="l00254"></a>00254 <span class="comment">*/</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/socket_8cpp.html b/docs/module-doc/socket_8cpp.html
new file mode 100644
index 000000000..1c55c0030
--- /dev/null
+++ b/docs/module-doc/socket_8cpp.html
@@ -0,0 +1,196 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: socket.cpp File Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>socket.cpp File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
+<code>#include &lt;sys/time.h&gt;</code><br>
+<code>#include &lt;sys/resource.h&gt;</code><br>
+<code>#include &lt;sys/types.h&gt;</code><br>
+<code>#include &lt;sys/socket.h&gt;</code><br>
+<code>#include &lt;netinet/in.h&gt;</code><br>
+<code>#include &lt;string&gt;</code><br>
+<code>#include &lt;unistd.h&gt;</code><br>
+<code>#include &lt;fcntl.h&gt;</code><br>
+<code>#include &lt;poll.h&gt;</code><br>
+<code>#include &lt;sstream&gt;</code><br>
+<code>#include &lt;iostream&gt;</code><br>
+<code>#include &lt;fstream&gt;</code><br>
+<code>#include &quot;<a class="el" href="socket_8h-source.html">socket.h</a>&quot;</code><br>
+<code>#include &quot;inspircd.h&quot;</code><br>
+<code>#include &quot;inspircd_io.h&quot;</code><br>
+<code>#include &quot;inspircd_util.h&quot;</code><br>
+<code>#include &quot;inspstring.h&quot;</code><br>
+<code>#include &quot;helperfuncs.h&quot;</code><br>
+
+<p>
+Include dependency graph for socket.cpp:<p><center><img src="socket_8cpp__incl.gif" border="0" usemap="#socket.cpp_map" alt=""></center>
+<map name="socket.cpp_map">
+<area href="socket_8h-source.html" shape="rect" coords="165,311,237,337" alt="">
+</map>
+
+<p>
+<a href="socket_8cpp-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">FILE *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8cpp.html#log_5Ffile">log_file</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8cpp.html#boundPortCount">boundPortCount</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8cpp.html#openSockfd_5BMAXSOCKS_5D">openSockfd</a> [MAXSOCKS]</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8cpp.html#TIME">TIME</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8cpp.html#unlimitcore">unlimitcore</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8cpp.html#MaxConn">MaxConn</a></td></tr>
+
+</table>
+<hr><h2>Variable Documentation</h2>
+<a class="anchor" name="boundPortCount"></a><!-- doxytag: member="socket.cpp::boundPortCount" ref="boundPortCount" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">int <a class="el" href="socket_8cpp.html#boundPortCount">boundPortCount</a> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="log_5Ffile"></a><!-- doxytag: member="socket.cpp::log_file" ref="log_5Ffile" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">FILE* <a class="el" href="socket_8cpp.html#log_5Ffile">log_file</a> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="MaxConn"></a><!-- doxytag: member="socket.cpp::MaxConn" ref="MaxConn" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">int <a class="el" href="socket_8cpp.html#MaxConn">MaxConn</a> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="openSockfd_5BMAXSOCKS_5D"></a><!-- doxytag: member="socket.cpp::openSockfd" ref="openSockfd_5BMAXSOCKS_5D" args="[MAXSOCKS]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">int <a class="el" href="socket_8cpp.html#openSockfd_5BMAXSOCKS_5D">openSockfd</a>[MAXSOCKS] </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="TIME"></a><!-- doxytag: member="socket.cpp::TIME" ref="TIME" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="users_8cpp.html#TIME">TIME</a> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="unlimitcore"></a><!-- doxytag: member="socket.cpp::unlimitcore" ref="unlimitcore" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">bool <a class="el" href="socket_8cpp.html#unlimitcore">unlimitcore</a> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ </td>
+ </tr>
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/socket_8cpp__incl.gif b/docs/module-doc/socket_8cpp__incl.gif
new file mode 100644
index 000000000..b2372fe26
--- /dev/null
+++ b/docs/module-doc/socket_8cpp__incl.gif
Binary files differ
diff --git a/docs/module-doc/socket_8cpp__incl.map b/docs/module-doc/socket_8cpp__incl.map
new file mode 100644
index 000000000..948e5d95f
--- /dev/null
+++ b/docs/module-doc/socket_8cpp__incl.map
@@ -0,0 +1,2 @@
+base referer
+rect $socket_8h-source.html 165,311 237,337
diff --git a/docs/module-doc/socket_8cpp__incl.md5 b/docs/module-doc/socket_8cpp__incl.md5
new file mode 100644
index 000000000..1d1909209
--- /dev/null
+++ b/docs/module-doc/socket_8cpp__incl.md5
@@ -0,0 +1 @@
+78dadbc1b7f94f0bf980df9c4743c562 \ No newline at end of file
diff --git a/docs/module-doc/socket_8h-source.html b/docs/module-doc/socket_8h-source.html
new file mode 100644
index 000000000..402dc31cf
--- /dev/null
+++ b/docs/module-doc/socket_8h-source.html
@@ -0,0 +1,80 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: socket.h Source File</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>socket.h</h1><a href="socket_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef __INSP_SOCKET_H__</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __INSP_SOCKET_H__</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;sys/types.h&gt;</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;sys/socket.h&gt;</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;netinet/in.h&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;poll.h&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00026"></a>00026
+<a name="l00027"></a><a class="code" href="socket_8h.html#InspSocketState">00027</a> <span class="keyword">enum</span> <a class="code" href="socket_8h.html#InspSocketState">InspSocketState</a> { <a class="code" href="socket_8h.html#InspSocketStateI_5FDISCONNECTED">I_DISCONNECTED</a>, <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>, <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>, <a class="code" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>, <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a> };
+<a name="l00028"></a><a class="code" href="socket_8h.html#InspSocketError">00028</a> <span class="keyword">enum</span> <a class="code" href="socket_8h.html#InspSocketError">InspSocketError</a> { <a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FTIMEOUT">I_ERR_TIMEOUT</a>, <a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">I_ERR_SOCKET</a>, <a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FCONNECT">I_ERR_CONNECT</a>, <a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FBIND">I_ERR_BIND</a> };
+<a name="l00029"></a>00029
+<a name="l00030"></a><a class="code" href="classInspSocket.html">00030</a> <span class="keyword">class </span><a class="code" href="classInspSocket.html">InspSocket</a>
+<a name="l00031"></a>00031 {
+<a name="l00032"></a>00032 <span class="keyword">private</span>:
+<a name="l00033"></a><a class="code" href="classInspSocket.html#fd">00033</a> <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#fd">fd</a>;
+<a name="l00034"></a><a class="code" href="classInspSocket.html#host">00034</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classInspSocket.html#host">host</a>;
+<a name="l00035"></a><a class="code" href="classInspSocket.html#port">00035</a> <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#port">port</a>;
+<a name="l00036"></a><a class="code" href="classInspSocket.html#state">00036</a> <a class="code" href="socket_8h.html#InspSocketState">InspSocketState</a> <a class="code" href="classInspSocket.html#state">state</a>;
+<a name="l00037"></a><a class="code" href="classInspSocket.html#addr">00037</a> sockaddr_in <a class="code" href="classInspSocket.html#addr">addr</a>;
+<a name="l00038"></a><a class="code" href="classInspSocket.html#addy">00038</a> in_addr <a class="code" href="classInspSocket.html#addy">addy</a>;
+<a name="l00039"></a><a class="code" href="classInspSocket.html#timeout_5Fend">00039</a> time_t <a class="code" href="classInspSocket.html#timeout_5Fend">timeout_end</a>;
+<a name="l00040"></a><a class="code" href="classInspSocket.html#timeout">00040</a> <span class="keywordtype">bool</span> <a class="code" href="classInspSocket.html#timeout">timeout</a>;
+<a name="l00041"></a><a class="code" href="classInspSocket.html#polls">00041</a> pollfd <a class="code" href="classInspSocket.html#polls">polls</a>;
+<a name="l00042"></a><a class="code" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">00042</a> <span class="keywordtype">char</span> <a class="code" href="classInspSocket.html#ibuf_5B_31_30_32_34_5D">ibuf</a>[1024];
+<a name="l00043"></a><a class="code" href="classInspSocket.html#client">00043</a> sockaddr_in <a class="code" href="classInspSocket.html#client">client</a>;
+<a name="l00044"></a><a class="code" href="classInspSocket.html#server">00044</a> sockaddr_in <a class="code" href="classInspSocket.html#server">server</a>;
+<a name="l00045"></a><a class="code" href="classInspSocket.html#length">00045</a> socklen_t <a class="code" href="classInspSocket.html#length">length</a>;
+<a name="l00046"></a>00046 <span class="keyword">public</span>:
+<a name="l00047"></a>00047 <a class="code" href="classInspSocket.html#InspSocket_28_29">InspSocket</a>();
+<a name="l00048"></a>00048 <a class="code" href="classInspSocket.html#InspSocket_28_29">InspSocket</a>(<span class="keywordtype">int</span> newfd);
+<a name="l00049"></a>00049 <a class="code" href="classInspSocket.html#InspSocket_28_29">InspSocket</a>(<a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classInspSocket.html#host">host</a>, <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#port">port</a>, <span class="keywordtype">bool</span> listening, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> maxtime);
+<a name="l00050"></a>00050 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classInspSocket.html#OnConnected_28_29">OnConnected</a>();
+<a name="l00051"></a>00051 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#OnError_28InspSocketError_20e_29">OnError</a>(<a class="code" href="socket_8h.html#InspSocketError">InspSocketError</a> e);
+<a name="l00052"></a>00052 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#OnDisconnect_28_29">OnDisconnect</a>();
+<a name="l00053"></a>00053 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classInspSocket.html#OnDataReady_28_29">OnDataReady</a>();
+<a name="l00054"></a>00054 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#OnTimeout_28_29">OnTimeout</a>();
+<a name="l00055"></a>00055 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#OnClose_28_29">OnClose</a>();
+<a name="l00056"></a>00056 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classInspSocket.html#Read_28_29">Read</a>();
+<a name="l00057"></a>00057 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#Write_28std_3A_3Astring_20data_29">Write</a>(<a class="code" href="namespaceirc.html#string">std::string</a> data);
+<a name="l00058"></a>00058 <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="classInspSocket.html#OnIncomingConnection_28int_20newfd_2C_20char_20_2Aip_29">OnIncomingConnection</a>(<span class="keywordtype">int</span> newfd, <span class="keywordtype">char</span>* ip);
+<a name="l00059"></a>00059 <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#SetState_28InspSocketState_20s_29">SetState</a>(<a class="code" href="socket_8h.html#InspSocketState">InspSocketState</a> s);
+<a name="l00060"></a>00060 <a class="code" href="socket_8h.html#InspSocketState">InspSocketState</a> <a class="code" href="classInspSocket.html#GetState_28_29">GetState</a>();
+<a name="l00061"></a>00061 <span class="keywordtype">bool</span> <a class="code" href="classInspSocket.html#Poll_28_29">Poll</a>();
+<a name="l00062"></a>00062 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classInspSocket.html#Close_28_29">Close</a>();
+<a name="l00063"></a>00063 <span class="keyword">virtual</span> <a class="code" href="classInspSocket.html#_7EInspSocket_28_29">~InspSocket</a>();
+<a name="l00064"></a>00064 };
+<a name="l00065"></a>00065
+<a name="l00066"></a>00066 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/socket_8h.html b/docs/module-doc/socket_8h.html
new file mode 100644
index 000000000..b26832053
--- /dev/null
+++ b/docs/module-doc/socket_8h.html
@@ -0,0 +1,140 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: socket.h File Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>socket.h File Reference</h1><code>#include &lt;sys/types.h&gt;</code><br>
+<code>#include &lt;sys/socket.h&gt;</code><br>
+<code>#include &lt;netinet/in.h&gt;</code><br>
+<code>#include &lt;poll.h&gt;</code><br>
+<code>#include &lt;sstream&gt;</code><br>
+<code>#include &lt;string&gt;</code><br>
+
+<p>
+Include dependency graph for socket.h:<p><center><img src="socket_8h__incl.gif" border="0" usemap="#socket.h_map" alt=""></center>
+
+<p>
+This graph shows which files directly or indirectly include this file:<p><center><img src="socket_8h__dep__incl.gif" border="0" usemap="#socket.hdep_map" alt=""></center>
+<map name="socket.hdep_map">
+<area href="modules_8cpp-source.html" shape="rect" coords="261,32,360,59" alt="">
+<area href="socket_8cpp-source.html" shape="rect" coords="127,57,212,84" alt="">
+<area href="modules_8h-source.html" shape="rect" coords="128,108,211,135" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="261,108,360,135" alt="">
+</map>
+
+<p>
+<a href="socket_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInspSocket.html">InspSocket</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8h.html#InspSocketState">InspSocketState</a> { <br>
+&nbsp;&nbsp;<a class="el" href="socket_8h.html#InspSocketStateI_5FDISCONNECTED">I_DISCONNECTED</a>,
+<a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>,
+<a class="el" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>,
+<a class="el" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>,
+<br>
+&nbsp;&nbsp;<a class="el" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a>
+<br>
+ }</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket_8h.html#InspSocketError">InspSocketError</a> { <a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FTIMEOUT">I_ERR_TIMEOUT</a>,
+<a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">I_ERR_SOCKET</a>,
+<a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FCONNECT">I_ERR_CONNECT</a>,
+<a class="el" href="socket_8h.html#InspSocketErrorI_5FERR_5FBIND">I_ERR_BIND</a>
+ }</td></tr>
+
+</table>
+<hr><h2>Enumeration Type Documentation</h2>
+<a class="anchor" name="InspSocketError"></a><!-- doxytag: member="socket.h::InspSocketError" ref="InspSocketError" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">enum <a class="el" href="socket_8h.html#InspSocketError">InspSocketError</a> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<dl compact><dt><b>Enumerator: </b></dt><dd>
+<table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" name="InspSocketErrorI_5FERR_5FTIMEOUT"></a><!-- doxytag: member="I_ERR_TIMEOUT" ref="InspSocketErrorI_5FERR_5FTIMEOUT" args="" -->I_ERR_TIMEOUT</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="InspSocketErrorI_5FERR_5FSOCKET"></a><!-- doxytag: member="I_ERR_SOCKET" ref="InspSocketErrorI_5FERR_5FSOCKET" args="" -->I_ERR_SOCKET</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="InspSocketErrorI_5FERR_5FCONNECT"></a><!-- doxytag: member="I_ERR_CONNECT" ref="InspSocketErrorI_5FERR_5FCONNECT" args="" -->I_ERR_CONNECT</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="InspSocketErrorI_5FERR_5FBIND"></a><!-- doxytag: member="I_ERR_BIND" ref="InspSocketErrorI_5FERR_5FBIND" args="" -->I_ERR_BIND</em>&nbsp;</td><td>
+</td></tr>
+</table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="socket_8h-source.html#l00028">28</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.<div class="fragment"><pre class="fragment"><a name="l00028"></a>00028 { <a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FTIMEOUT">I_ERR_TIMEOUT</a>, <a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FSOCKET">I_ERR_SOCKET</a>, <a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FCONNECT">I_ERR_CONNECT</a>, <a class="code" href="socket_8h.html#InspSocketErrorI_5FERR_5FBIND">I_ERR_BIND</a> };
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<a class="anchor" name="InspSocketState"></a><!-- doxytag: member="socket.h::InspSocketState" ref="InspSocketState" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">enum <a class="el" href="socket_8h.html#InspSocketState">InspSocketState</a> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<dl compact><dt><b>Enumerator: </b></dt><dd>
+<table border="0" cellspacing="2" cellpadding="0">
+<tr><td valign="top"><em><a class="anchor" name="InspSocketStateI_5FDISCONNECTED"></a><!-- doxytag: member="I_DISCONNECTED" ref="InspSocketStateI_5FDISCONNECTED" args="" -->I_DISCONNECTED</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="InspSocketStateI_5FCONNECTING"></a><!-- doxytag: member="I_CONNECTING" ref="InspSocketStateI_5FCONNECTING" args="" -->I_CONNECTING</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="InspSocketStateI_5FCONNECTED"></a><!-- doxytag: member="I_CONNECTED" ref="InspSocketStateI_5FCONNECTED" args="" -->I_CONNECTED</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="InspSocketStateI_5FLISTENING"></a><!-- doxytag: member="I_LISTENING" ref="InspSocketStateI_5FLISTENING" args="" -->I_LISTENING</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign="top"><em><a class="anchor" name="InspSocketStateI_5FERROR"></a><!-- doxytag: member="I_ERROR" ref="InspSocketStateI_5FERROR" args="" -->I_ERROR</em>&nbsp;</td><td>
+</td></tr>
+</table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="socket_8h-source.html#l00027">27</a> of file <a class="el" href="socket_8h-source.html">socket.h</a>.<div class="fragment"><pre class="fragment"><a name="l00027"></a>00027 { <a class="code" href="socket_8h.html#InspSocketStateI_5FDISCONNECTED">I_DISCONNECTED</a>, <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTING">I_CONNECTING</a>, <a class="code" href="socket_8h.html#InspSocketStateI_5FCONNECTED">I_CONNECTED</a>, <a class="code" href="socket_8h.html#InspSocketStateI_5FLISTENING">I_LISTENING</a>, <a class="code" href="socket_8h.html#InspSocketStateI_5FERROR">I_ERROR</a> };
+</pre></div>
+<p>
+ </td>
+ </tr>
+</table>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/socket_8h__dep__incl.gif b/docs/module-doc/socket_8h__dep__incl.gif
new file mode 100644
index 000000000..8649832ea
--- /dev/null
+++ b/docs/module-doc/socket_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/socket_8h__dep__incl.map b/docs/module-doc/socket_8h__dep__incl.map
new file mode 100644
index 000000000..c89bd0ae5
--- /dev/null
+++ b/docs/module-doc/socket_8h__dep__incl.map
@@ -0,0 +1,5 @@
+base referer
+rect $modules_8cpp-source.html 261,32 360,59
+rect $socket_8cpp-source.html 127,57 212,84
+rect $modules_8h-source.html 128,108 211,135
+rect $channels_8cpp-source.html 261,108 360,135
diff --git a/docs/module-doc/socket_8h__dep__incl.md5 b/docs/module-doc/socket_8h__dep__incl.md5
new file mode 100644
index 000000000..bffef7bdc
--- /dev/null
+++ b/docs/module-doc/socket_8h__dep__incl.md5
@@ -0,0 +1 @@
+0eb028aa994c3569f9be98fd88930f79 \ No newline at end of file
diff --git a/docs/module-doc/socket_8h__incl.gif b/docs/module-doc/socket_8h__incl.gif
new file mode 100644
index 000000000..661a0fe6c
--- /dev/null
+++ b/docs/module-doc/socket_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/socket_8h__incl.map b/docs/module-doc/socket_8h__incl.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/socket_8h__incl.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/socket_8h__incl.md5 b/docs/module-doc/socket_8h__incl.md5
new file mode 100644
index 000000000..a4d4bf2e3
--- /dev/null
+++ b/docs/module-doc/socket_8h__incl.md5
@@ -0,0 +1 @@
+2db7fcf2ca3793707f50bad72b88bd96 \ No newline at end of file
diff --git a/docs/module-doc/structdns__ip4list-members.html b/docs/module-doc/structdns__ip4list-members.html
index 9465068a3..4b2855396 100644
--- a/docs/module-doc/structdns__ip4list-members.html
+++ b/docs/module-doc/structdns__ip4list-members.html
@@ -1,16 +1,15 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>dns_ip4list Member List</h1>This is the complete list of members for <a class="el" href="structdns__ip4list.html">dns_ip4list</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="structdns__ip4list.html#o0">ip</a></td><td><a class="el" href="structdns__ip4list.html">dns_ip4list</a></td><td></td></tr>
- <tr class="memlist"><td><a class="el" href="structdns__ip4list.html#o1">next</a></td><td><a class="el" href="structdns__ip4list.html">dns_ip4list</a></td><td></td></tr>
-</table><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:48 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>dns_ip4list Member List</h1>This is the complete list of members for <a class="el" href="structdns__ip4list.html">dns_ip4list</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="structdns__ip4list.html#ip">ip</a></td><td><a class="el" href="structdns__ip4list.html">dns_ip4list</a></td><td></td></tr>
+ <tr class="memlist"><td><a class="el" href="structdns__ip4list.html#next">next</a></td><td><a class="el" href="structdns__ip4list.html">dns_ip4list</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/structdns__ip4list.html b/docs/module-doc/structdns__ip4list.html
index 2a6f35905..4a6a3e921 100644
--- a/docs/module-doc/structdns__ip4list.html
+++ b/docs/module-doc/structdns__ip4list.html
@@ -1,34 +1,40 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: dns_ip4list struct Reference</title>
+<title>InspIRCd: dns_ip4list Struct Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>dns_ip4list Struct Reference</h1><code>#include &lt;<a class="el" href="dns_8h-source.html">dns.h</a>&gt;</code>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>dns_ip4list Struct Reference</h1><!-- doxytag: class="dns_ip4list" --><code>#include &lt;<a class="el" href="dns_8h-source.html">dns.h</a>&gt;</code>
<p>
Collaboration diagram for dns_ip4list:<p><center><img src="structdns__ip4list__coll__graph.gif" border="0" usemap="#dns__ip4list__coll__map" alt="Collaboration graph"></center>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="structdns__ip4list-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="structdns__ip4list-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 Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>in_addr&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structdns__ip4list.html#o0">ip</a></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">in_addr&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__ip4list.html#ip">ip</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="structdns__ip4list.html">dns_ip4list</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structdns__ip4list.html#o1">next</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structdns__ip4list.html">dns_ip4list</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__ip4list.html#next">next</a></td></tr>
</table>
-<hr><h2>Member Data Documentation</h2>
-<a name="o0" doxytag="dns_ip4list::ip"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="dns_8h-source.html#l00026">26</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>.<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="ip"></a><!-- doxytag: member="dns_ip4list::ip" ref="ip" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> in_addr <a class="el" href="structdns__ip4list.html#o0">dns_ip4list::ip</a>
+ <td class="md" nowrap valign="top">in_addr <a class="el" href="structdns__ip4list.html#ip">dns_ip4list::ip</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -41,18 +47,19 @@ Collaboration diagram for dns_ip4list:<p><center><img src="structdns__ip4list__c
Definition at line <a class="el" href="dns_8h-source.html#l00027">27</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
</tr>
</table>
-<a name="o1" doxytag="dns_ip4list::next"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="next"></a><!-- doxytag: member="dns_ip4list::next" ref="next" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> <a class="el" href="structdns__ip4list.html">dns_ip4list</a>* <a class="el" href="structdns__ip4list.html#o1">dns_ip4list::next</a>
+ <td class="md" nowrap valign="top"><a class="el" href="structdns__ip4list.html">dns_ip4list</a>* <a class="el" href="structdns__ip4list.html#next">dns_ip4list::next</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -67,9 +74,8 @@ Definition at line <a class="el" href="dns_8h-source.html#l00028">28</a> of file
</table>
<hr>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="dns_8h-source.html">dns.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:48 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:25 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/structdns__ip4list__coll__graph.gif b/docs/module-doc/structdns__ip4list__coll__graph.gif
index 4030a52ae..8ca7d4d91 100644
--- a/docs/module-doc/structdns__ip4list__coll__graph.gif
+++ b/docs/module-doc/structdns__ip4list__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/structdns__ip4list__coll__graph.map b/docs/module-doc/structdns__ip4list__coll__graph.map
new file mode 100644
index 000000000..5a14779e7
--- /dev/null
+++ b/docs/module-doc/structdns__ip4list__coll__graph.map
@@ -0,0 +1 @@
+base referer
diff --git a/docs/module-doc/structdns__ip4list__coll__graph.md5 b/docs/module-doc/structdns__ip4list__coll__graph.md5
new file mode 100644
index 000000000..edc1ae44e
--- /dev/null
+++ b/docs/module-doc/structdns__ip4list__coll__graph.md5
@@ -0,0 +1 @@
+3cb4501ab4b94d3da075a47d5eeb6ad8 \ No newline at end of file
diff --git a/docs/module-doc/structirc_1_1InAddr__HashComp-members.html b/docs/module-doc/structirc_1_1InAddr__HashComp-members.html
index d40f6bf76..0198d581e 100644
--- a/docs/module-doc/structirc_1_1InAddr__HashComp-members.html
+++ b/docs/module-doc/structirc_1_1InAddr__HashComp-members.html
@@ -1,15 +1,14 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>irc::InAddr_HashComp Member List</h1>This is the complete list of members for <a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="structirc_1_1InAddr__HashComp.html#a0">operator()</a>(const in_addr &amp;s1, const in_addr &amp;s2) const</td><td><a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a></td><td></td></tr>
-</table><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:49 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>irc::InAddr_HashComp Member List</h1>This is the complete list of members for <a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="structirc_1_1InAddr__HashComp.html#operator_28_29_28const_20in_5Faddr_20_26s_31_2C_20const_20in_5Faddr_20_26s_32_29_20const_20">operator()</a>(const in_addr &amp;s1, const in_addr &amp;s2) const </td><td><a class="el" href="structirc_1_1InAddr__HashComp.html">irc::InAddr_HashComp</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/structirc_1_1InAddr__HashComp.html b/docs/module-doc/structirc_1_1InAddr__HashComp.html
index f288df35a..a93b6035c 100644
--- a/docs/module-doc/structirc_1_1InAddr__HashComp.html
+++ b/docs/module-doc/structirc_1_1InAddr__HashComp.html
@@ -1,21 +1,23 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: irc::InAddr_HashComp struct Reference</title>
+<title>InspIRCd: irc::InAddr_HashComp Struct Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>irc::InAddr_HashComp Struct Reference</h1>This class returns true if two in_addr structs match.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="namespaceirc.html">irc</a>::<a class="el" href="structirc_1_1InAddr__HashComp.html">InAddr_HashComp</a></div>
+<h1>irc::InAddr_HashComp Struct Reference</h1><!-- doxytag: class="irc::InAddr_HashComp" -->This class returns true if two in_addr structs match.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>&gt;</code>
<p>
-<a href="structirc_1_1InAddr__HashComp-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="structirc_1_1InAddr__HashComp-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 class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1InAddr__HashComp.html#a0">operator()</a> (const in_addr &amp;s1, const in_addr &amp;s2) const</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1InAddr__HashComp.html#operator_28_29_28const_20in_5Faddr_20_26s_31_2C_20const_20in_5Faddr_20_26s_32_29_20const_20">operator()</a> (const in_addr &amp;s1, const in_addr &amp;s2) const </td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The operator () does the actual comparison in hash_map. </em> <a href="#a0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The operator () does the actual comparison in hash_map. <a href="#operator_28_29_28const_20in_5Faddr_20_26s_31_2C_20const_20in_5Faddr_20_26s_32_29_20const_20"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
This class returns true if two in_addr structs match.
@@ -25,34 +27,33 @@ Checking is done by copying both into a size_t then doing a numeric comparison o
<p>
Definition at line <a class="el" href="hashcomp_8h-source.html#l00092">92</a> of file <a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>.<hr><h2>Member Function Documentation</h2>
-<a name="a0" doxytag="irc::InAddr_HashComp::operator()"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="operator_28_29_28const_20in_5Faddr_20_26s_31_2C_20const_20in_5Faddr_20_26s_32_29_20const_20"></a><!-- doxytag: member="irc::InAddr_HashComp::operator()" ref="operator_28_29_28const_20in_5Faddr_20_26s_31_2C_20const_20in_5Faddr_20_26s_32_29_20const_20" args="(const in_addr &amp;s1, const in_addr &amp;s2) const " --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool irc::InAddr_HashComp::operator() </td>
+ <td class="md" nowrap valign="top">bool irc::InAddr_HashComp::operator() </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const in_addr &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>s1</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const in_addr &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>s2</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"> const</td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -67,9 +68,8 @@ The operator () does the actual comparison in hash_map.
</table>
<hr>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="hashcomp_8h-source.html">hashcomp.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:49 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/structirc_1_1StrHashComp-members.html b/docs/module-doc/structirc_1_1StrHashComp-members.html
index 55f519ec1..6bc0b384a 100644
--- a/docs/module-doc/structirc_1_1StrHashComp-members.html
+++ b/docs/module-doc/structirc_1_1StrHashComp-members.html
@@ -1,15 +1,14 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>irc::StrHashComp Member List</h1>This is the complete list of members for <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="structirc_1_1StrHashComp.html#a0">operator()</a>(const std::string &amp;s1, const std::string &amp;s2) const</td><td><a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a></td><td></td></tr>
-</table><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:50 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>irc::StrHashComp Member List</h1>This is the complete list of members for <a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="structirc_1_1StrHashComp.html#operator_28_29_28const_20std_3A_3Astring_20_26s_31_2C_20const_20std_3A_3Astring_20_26s_32_29_20const_20">operator()</a>(const std::string &amp;s1, const std::string &amp;s2) const </td><td><a class="el" href="structirc_1_1StrHashComp.html">irc::StrHashComp</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/structirc_1_1StrHashComp.html b/docs/module-doc/structirc_1_1StrHashComp.html
index f6bedcead..569019152 100644
--- a/docs/module-doc/structirc_1_1StrHashComp.html
+++ b/docs/module-doc/structirc_1_1StrHashComp.html
@@ -1,21 +1,23 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: irc::StrHashComp struct Reference</title>
+<title>InspIRCd: irc::StrHashComp Struct Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>irc::StrHashComp Struct Reference</h1>This class returns true if two strings match.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="namespaceirc.html">irc</a>::<a class="el" href="structirc_1_1StrHashComp.html">StrHashComp</a></div>
+<h1>irc::StrHashComp Struct Reference</h1><!-- doxytag: class="irc::StrHashComp" -->This class returns true if two strings match.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>&gt;</code>
<p>
-<a href="structirc_1_1StrHashComp-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="structirc_1_1StrHashComp-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 class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1StrHashComp.html#a0">operator()</a> (const std::string &amp;s1, const std::string &amp;s2) const</td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1StrHashComp.html#operator_28_29_28const_20std_3A_3Astring_20_26s_31_2C_20const_20std_3A_3Astring_20_26s_32_29_20const_20">operator()</a> (const <a class="el" href="namespaceirc.html#string">std::string</a> &amp;s1, const <a class="el" href="namespaceirc.html#string">std::string</a> &amp;s2) const </td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The operator () does the actual comparison in hash_map. </em> <a href="#a0"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The operator () does the actual comparison in hash_map. <a href="#operator_28_29_28const_20std_3A_3Astring_20_26s_31_2C_20const_20std_3A_3Astring_20_26s_32_29_20const_20"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
This class returns true if two strings match.
@@ -25,34 +27,33 @@ Case sensitivity is ignored, and the RFC 'character set' is adhered to
<p>
Definition at line <a class="el" href="hashcomp_8h-source.html#l00080">80</a> of file <a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>.<hr><h2>Member Function Documentation</h2>
-<a name="a0" doxytag="irc::StrHashComp::operator()"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="operator_28_29_28const_20std_3A_3Astring_20_26s_31_2C_20const_20std_3A_3Astring_20_26s_32_29_20const_20"></a><!-- doxytag: member="irc::StrHashComp::operator()" ref="operator_28_29_28const_20std_3A_3Astring_20_26s_31_2C_20const_20std_3A_3Astring_20_26s_32_29_20const_20" args="(const std::string &amp;s1, const std::string &amp;s2) const " --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool irc::StrHashComp::operator() </td>
+ <td class="md" nowrap valign="top">bool irc::StrHashComp::operator() </td>
<td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="namespaceirc.html#string">std::string</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>s1</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>const std::string &amp;&nbsp;</td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
+ <td class="md" nowrap>const <a class="el" href="namespaceirc.html#string">std::string</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>s2</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"> const</td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -67,9 +68,8 @@ The operator () does the actual comparison in hash_map.
</table>
<hr>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="hashcomp_8h-source.html">hashcomp.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:50 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/structirc_1_1irc__char__traits-members.html b/docs/module-doc/structirc_1_1irc__char__traits-members.html
index 2d267f7c9..ac56cb2de 100644
--- a/docs/module-doc/structirc_1_1irc__char__traits-members.html
+++ b/docs/module-doc/structirc_1_1irc__char__traits-members.html
@@ -1,19 +1,18 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: Member List</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>irc::irc_char_traits Member List</h1>This is the complete list of members for <a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a>, including all inherited members.<table>
- <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#e3">compare</a>(const char *str1, const char *str2, size_t n)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#e0">eq</a>(char c1st, char c2nd)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#e4">find</a>(const char *s1, int n, char c)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#e2">lt</a>(char c1st, char c2nd)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
- <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#e1">ne</a>(char c1st, char c2nd)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
-</table><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:50 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>irc::irc_char_traits Member List</h1>This is the complete list of members for <a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#compare_28const_20char_20_2Astr_31_2C_20const_20char_20_2Astr_32_2C_20size_5Ft_20n_29">compare</a>(const char *str1, const char *str2, size_t n)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#eq_28char_20c_31st_2C_20char_20c_32nd_29">eq</a>(char c1st, char c2nd)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#find_28const_20char_20_2As_31_2C_20int_20n_2C_20char_20c_29">find</a>(const char *s1, int n, char c)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#lt_28char_20c_31st_2C_20char_20c_32nd_29">lt</a>(char c1st, char c2nd)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
+ <tr class="memlist"><td><a class="el" href="structirc_1_1irc__char__traits.html#ne_28char_20c_31st_2C_20char_20c_32nd_29">ne</a>(char c1st, char c2nd)</td><td><a class="el" href="structirc_1_1irc__char__traits.html">irc::irc_char_traits</a></td><td><code> [static]</code></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/structirc_1_1irc__char__traits.html b/docs/module-doc/structirc_1_1irc__char__traits.html
index 99c7ad995..dc297bac9 100644
--- a/docs/module-doc/structirc_1_1irc__char__traits.html
+++ b/docs/module-doc/structirc_1_1irc__char__traits.html
@@ -1,84 +1,85 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
-<title>InspIRCd: irc::irc_char_traits struct Reference</title>
+<title>InspIRCd: irc::irc_char_traits Struct Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>irc::irc_char_traits Struct Reference</h1>The <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> class is used for RFC-style comparison of strings.
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="namespaceirc.html">irc</a>::<a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a></div>
+<h1>irc::irc_char_traits Struct Reference</h1><!-- doxytag: class="irc::irc_char_traits" --><!-- doxytag: inherits="std::char_traits" -->The <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> class is used for RFC-style comparison of strings.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>&gt;</code>
<p>
Inheritance diagram for irc::irc_char_traits:<p><center><img src="structirc_1_1irc__char__traits__inherit__graph.gif" border="0" usemap="#irc_1_1irc__char__traits__inherit__map" alt="Inheritance graph"></center>
<map name="irc_1_1irc__char__traits__inherit__map">
-<area href="classstd_1_1char__traits.html" shape="rect" coords="8,7,160,34" alt="">
+<area href="classstd_1_1char__traits.html" shape="rect" coords="7,7,159,34" alt="">
</map>
<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for irc::irc_char_traits:<p><center><img src="structirc_1_1irc__char__traits__coll__graph.gif" border="0" usemap="#irc_1_1irc__char__traits__coll__map" alt="Collaboration graph"></center>
<map name="irc_1_1irc__char__traits__coll__map">
-<area href="classstd_1_1char__traits.html" shape="rect" coords="8,7,160,34" alt="">
+<area href="classstd_1_1char__traits.html" shape="rect" coords="7,7,159,34" alt="">
</map>
-<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="structirc_1_1irc__char__traits-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="structirc_1_1irc__char__traits-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1irc__char__traits.html#e0">eq</a> (char c1st, char c2nd)</td></tr>
+<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1irc__char__traits.html#eq_28char_20c_31st_2C_20char_20c_32nd_29">eq</a> (char c1st, char c2nd)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two chars match. </em> <a href="#e0"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1irc__char__traits.html#e1">ne</a> (char c1st, char c2nd)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two chars match. <a href="#eq_28char_20c_31st_2C_20char_20c_32nd_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1irc__char__traits.html#ne_28char_20c_31st_2C_20char_20c_32nd_29">ne</a> (char c1st, char c2nd)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two chars do NOT match. </em> <a href="#e1"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1irc__char__traits.html#e2">lt</a> (char c1st, char c2nd)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two chars do NOT match. <a href="#ne_28char_20c_31st_2C_20char_20c_32nd_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1irc__char__traits.html#lt_28char_20c_31st_2C_20char_20c_32nd_29">lt</a> (char c1st, char c2nd)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if one char is less than another. </em> <a href="#e2"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1irc__char__traits.html#e3">compare</a> (const char *str1, const char *str2, size_t n)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if one char is less than another. <a href="#lt_28char_20c_31st_2C_20char_20c_32nd_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1irc__char__traits.html#compare_28const_20char_20_2Astr_31_2C_20const_20char_20_2Astr_32_2C_20size_5Ft_20n_29">compare</a> (const char *str1, const char *str2, size_t n)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings of size n. </em> <a href="#e3"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>const char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structirc_1_1irc__char__traits.html#e4">find</a> (const char *s1, int n, char c)</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two strings of size n. <a href="#compare_28const_20char_20_2Astr_31_2C_20const_20char_20_2Astr_32_2C_20size_5Ft_20n_29"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirc_1_1irc__char__traits.html#find_28const_20char_20_2As_31_2C_20int_20n_2C_20char_20c_29">find</a> (const char *s1, int n, char c)</td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find a char within a string up to position n. </em> <a href="#e4"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find a char within a string up to position n. <a href="#find_28const_20char_20_2As_31_2C_20int_20n_2C_20char_20c_29"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
The <a class="el" href="structirc_1_1irc__char__traits.html">irc_char_traits</a> class is used for RFC-style comparison of strings.
<p>
-This class is used to implement <a class="el" href="namespaceirc.html#a0">irc::string</a>, a case-insensitive, RFC- comparing string class.
+This class is used to implement <a class="el" href="namespaceirc.html#string">irc::string</a>, a case-insensitive, RFC- comparing string class.
<p>
<p>
Definition at line <a class="el" href="hashcomp_8h-source.html#l00104">104</a> of file <a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>.<hr><h2>Member Function Documentation</h2>
-<a name="e3" doxytag="irc::irc_char_traits::compare"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="compare_28const_20char_20_2Astr_31_2C_20const_20char_20_2Astr_32_2C_20size_5Ft_20n_29"></a><!-- doxytag: member="irc::irc_char_traits::compare" ref="compare_28const_20char_20_2Astr_31_2C_20const_20char_20_2Astr_32_2C_20size_5Ft_20n_29" args="(const char *str1, const char *str2, size_t n)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> int irc::irc_char_traits::compare </td>
+ <td class="md" nowrap valign="top">static int irc::irc_char_traits::compare </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname" nowrap> <em>str1</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>str2</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>size_t&nbsp;</td>
<td class="mdname" nowrap> <em>n</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -91,34 +92,33 @@ Compare two strings of size n.
</td>
</tr>
</table>
-<a name="e0" doxytag="irc::irc_char_traits::eq"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="eq_28char_20c_31st_2C_20char_20c_32nd_29"></a><!-- doxytag: member="irc::irc_char_traits::eq" ref="eq_28char_20c_31st_2C_20char_20c_32nd_29" args="(char c1st, char c2nd)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool irc::irc_char_traits::eq </td>
+ <td class="md" nowrap valign="top">static bool irc::irc_char_traits::eq </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>c1st</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>c2nd</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -131,40 +131,39 @@ Check if two chars match.
</td>
</tr>
</table>
-<a name="e4" doxytag="irc::irc_char_traits::find"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="find_28const_20char_20_2As_31_2C_20int_20n_2C_20char_20c_29"></a><!-- doxytag: member="irc::irc_char_traits::find" ref="find_28const_20char_20_2As_31_2C_20int_20n_2C_20char_20c_29" args="(const char *s1, int n, char c)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> const char* irc::irc_char_traits::find </td>
+ <td class="md" nowrap valign="top">static const char* irc::irc_char_traits::find </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname" nowrap> <em>s1</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>int&nbsp;</td>
<td class="mdname" nowrap> <em>n</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>c</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -177,34 +176,33 @@ Find a char within a string up to position n.
</td>
</tr>
</table>
-<a name="e2" doxytag="irc::irc_char_traits::lt"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="lt_28char_20c_31st_2C_20char_20c_32nd_29"></a><!-- doxytag: member="irc::irc_char_traits::lt" ref="lt_28char_20c_31st_2C_20char_20c_32nd_29" args="(char c1st, char c2nd)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool irc::irc_char_traits::lt </td>
+ <td class="md" nowrap valign="top">static bool irc::irc_char_traits::lt </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>c1st</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>c2nd</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -217,34 +215,33 @@ Check if one char is less than another.
</td>
</tr>
</table>
-<a name="e1" doxytag="irc::irc_char_traits::ne"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ne_28char_20c_31st_2C_20char_20c_32nd_29"></a><!-- doxytag: member="irc::irc_char_traits::ne" ref="ne_28char_20c_31st_2C_20char_20c_32nd_29" args="(char c1st, char c2nd)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool irc::irc_char_traits::ne </td>
+ <td class="md" nowrap valign="top">static bool irc::irc_char_traits::ne </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char&nbsp;</td>
<td class="mdname" nowrap> <em>c1st</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>char&nbsp;</td>
<td class="mdname" nowrap> <em>c2nd</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -259,9 +256,8 @@ Check if two chars do NOT match.
</table>
<hr>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="hashcomp_8h-source.html">hashcomp.h</a></ul>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:17:50 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.gif b/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.gif
index 514f37993..76951b859 100644
--- a/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.gif
+++ b/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.gif
Binary files differ
diff --git a/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.map b/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.map
new file mode 100644
index 000000000..be3cc4f79
--- /dev/null
+++ b/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classstd_1_1char__traits.html 7,7 159,34
diff --git a/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.md5 b/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.md5
new file mode 100644
index 000000000..748031b4f
--- /dev/null
+++ b/docs/module-doc/structirc_1_1irc__char__traits__coll__graph.md5
@@ -0,0 +1 @@
+7ee2a692b6c22ce46dde4bd8f592bb51 \ No newline at end of file
diff --git a/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.gif b/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.gif
index 514f37993..76951b859 100644
--- a/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.gif
+++ b/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.gif
Binary files differ
diff --git a/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.map b/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.map
new file mode 100644
index 000000000..be3cc4f79
--- /dev/null
+++ b/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.map
@@ -0,0 +1,2 @@
+base referer
+rect $classstd_1_1char__traits.html 7,7 159,34
diff --git a/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.md5 b/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.md5
new file mode 100644
index 000000000..748031b4f
--- /dev/null
+++ b/docs/module-doc/structirc_1_1irc__char__traits__inherit__graph.md5
@@ -0,0 +1 @@
+7ee2a692b6c22ce46dde4bd8f592bb51 \ No newline at end of file
diff --git a/docs/module-doc/structnspace_1_1hash_3_01in__addr_01_4-members.html b/docs/module-doc/structnspace_1_1hash_3_01in__addr_01_4-members.html
new file mode 100644
index 000000000..0401fd8c5
--- /dev/null
+++ b/docs/module-doc/structnspace_1_1hash_3_01in__addr_01_4-members.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Member List</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>nspace::hash&lt; in_addr &gt; Member List</h1>This is the complete list of members for <a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html">nspace::hash&lt; in_addr &gt;</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html#operator_28_29_28const_20struct_20in_5Faddr_20_26a_29_20const_20">operator()</a>(const struct in_addr &amp;a) const </td><td><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html">nspace::hash&lt; in_addr &gt;</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/structnspace_1_1hash_3_01in__addr_01_4.html b/docs/module-doc/structnspace_1_1hash_3_01in__addr_01_4.html
new file mode 100644
index 000000000..1556a6eaa
--- /dev/null
+++ b/docs/module-doc/structnspace_1_1hash_3_01in__addr_01_4.html
@@ -0,0 +1,61 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: nspace::hash&lt; in_addr &gt; Struct Template Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="namespacenspace.html">nspace</a>::<a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html">hash&lt; in_addr &gt;</a></div>
+<h1>nspace::hash&lt; in_addr &gt; Struct Template Reference</h1><!-- doxytag: class="nspace::hash&lt; in_addr &gt;" --><code>#include &lt;<a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>&gt;</code>
+<p>
+<a href="structnspace_1_1hash_3_01in__addr_01_4-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 class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html#operator_28_29_28const_20struct_20in_5Faddr_20_26a_29_20const_20">operator()</a> (const struct in_addr &amp;a) const </td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template&lt;&gt;<br>
+ struct nspace::hash&lt; in_addr &gt;</h3>
+
+
+<p>
+
+<p>
+Definition at line <a class="el" href="hashcomp_8h-source.html#l00054">54</a> of file <a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>.<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="operator_28_29_28const_20struct_20in_5Faddr_20_26a_29_20const_20"></a><!-- doxytag: member="nspace::hash&lt; in_addr &gt;::operator()" ref="operator_28_29_28const_20struct_20in_5Faddr_20_26a_29_20const_20" args="(const struct in_addr &amp;a) const " --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">size_t nspace::hash&lt; in_addr &gt;::operator() </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const struct in_addr &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>a</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ </td>
+ </tr>
+</table>
+<hr>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="hashcomp_8h-source.html">hashcomp.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/structnspace_1_1hash_3_01string_01_4-members.html b/docs/module-doc/structnspace_1_1hash_3_01string_01_4-members.html
new file mode 100644
index 000000000..55cf95fd1
--- /dev/null
+++ b/docs/module-doc/structnspace_1_1hash_3_01string_01_4-members.html
@@ -0,0 +1,14 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: Member List</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<h1>nspace::hash&lt; string &gt; Member List</h1>This is the complete list of members for <a class="el" href="structnspace_1_1hash_3_01string_01_4.html">nspace::hash&lt; string &gt;</a>, including all inherited members.<p><table>
+ <tr class="memlist"><td><a class="el" href="structnspace_1_1hash_3_01string_01_4.html#operator_28_29_28const_20string_20_26s_29_20const_20">operator()</a>(const string &amp;s) const </td><td><a class="el" href="structnspace_1_1hash_3_01string_01_4.html">nspace::hash&lt; string &gt;</a></td><td></td></tr>
+</table><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/structnspace_1_1hash_3_01string_01_4.html b/docs/module-doc/structnspace_1_1hash_3_01string_01_4.html
new file mode 100644
index 000000000..9b48cfc45
--- /dev/null
+++ b/docs/module-doc/structnspace_1_1hash_3_01string_01_4.html
@@ -0,0 +1,61 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>InspIRCd: nspace::hash&lt; string &gt; Struct Template Reference</title>
+<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="namespacenspace.html">nspace</a>::<a class="el" href="structnspace_1_1hash_3_01string_01_4.html">hash&lt; string &gt;</a></div>
+<h1>nspace::hash&lt; string &gt; Struct Template Reference</h1><!-- doxytag: class="nspace::hash&lt; string &gt;" --><code>#include &lt;<a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>&gt;</code>
+<p>
+<a href="structnspace_1_1hash_3_01string_01_4-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 class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnspace_1_1hash_3_01string_01_4.html#operator_28_29_28const_20string_20_26s_29_20const_20">operator()</a> (const <a class="el" href="namespaceirc.html#string">string</a> &amp;s) const </td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template&lt;&gt;<br>
+ struct nspace::hash&lt; string &gt;</h3>
+
+
+<p>
+
+<p>
+Definition at line <a class="el" href="hashcomp_8h-source.html#l00062">62</a> of file <a class="el" href="hashcomp_8h-source.html">hashcomp.h</a>.<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="operator_28_29_28const_20string_20_26s_29_20const_20"></a><!-- doxytag: member="nspace::hash&lt; string &gt;::operator()" ref="operator_28_29_28const_20string_20_26s_29_20const_20" args="(const string &amp;s) const " --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top">size_t nspace::hash&lt; <a class="el" href="namespaceirc.html#string">string</a> &gt;::operator() </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="namespaceirc.html#string">string</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing="5" cellpadding="0" border="0">
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+ </td>
+ </tr>
+</table>
+<hr>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="hashcomp_8h-source.html">hashcomp.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:27 2005 for InspIRCd by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
+</body>
+</html>
diff --git a/docs/module-doc/tree.html b/docs/module-doc/tree.html
index cab4f4129..e05db0113 100644
--- a/docs/module-doc/tree.html
+++ b/docs/module-doc/tree.html
@@ -1,6 +1,6 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset="iso-8859-1" />
+ <meta http-equiv="Content-Type" content="text/xhtml;charset=iso-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Language" content="en" />
<link rel="stylesheet" href="inspircd.doxygen.css">
@@ -17,54 +17,23 @@
<script type="text/javascript">
<!-- // Hide script from old browsers
- function findChildNode(node, name)
- {
- var temp;
- if (node == null)
- {
- return null;
- }
- node = node.firstChild;
- while (node != null)
- {
- if (node.nodeName == name)
- {
- return node;
- }
- temp = findChildNode(node, name);
- if (temp != null)
- {
- return temp;
- }
- node = node.nextSibling;
- }
- return null;
- }
-
function toggleFolder(id, imageNode)
{
var folder = document.getElementById(id);
- var l = 0;
- var vl = "ftv2vertline.png";
- if (imageNode != null && imageNode.nodeName != "IMG")
+ var l = imageNode.src.length;
+ if (imageNode.src.substring(l-20,l)=="ftv2folderclosed.png" ||
+ imageNode.src.substring(l-18,l)=="ftv2folderopen.png")
{
- imageNode = findChildNode(imageNode, "IMG");
- if (imageNode!=null) l = imageNode.src.length;
+ imageNode = imageNode.previousSibling;
+ l = imageNode.src.length;
}
if (folder == null)
{
}
else if (folder.style.display == "block")
{
- while (imageNode != null &&
- imageNode.src.substring(l-vl.length,l) == vl)
- {
- imageNode = imageNode.nextSibling;
- l = imageNode.src.length;
- }
if (imageNode != null)
{
- l = imageNode.src.length;
imageNode.nextSibling.src = "ftv2folderclosed.png";
if (imageNode.src.substring(l-13,l) == "ftv2mnode.png")
{
@@ -79,15 +48,8 @@
}
else
{
- while (imageNode != null &&
- imageNode.src.substring(l-vl.length,l) == vl)
- {
- imageNode = imageNode.nextSibling;
- l = imageNode.src.length;
- }
if (imageNode != null)
{
- l = imageNode.src.length;
imageNode.nextSibling.src = "ftv2folderopen.png";
if (imageNode.src.substring(l-13,l) == "ftv2pnode.png")
{
@@ -106,11 +68,10 @@
</script>
</head>
- <body bgcolor="#ffffff">
+ <body>
<div class="directory">
<h3>InspIRCd</h3>
<div style="display: block;">
- <p><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="main.html" target="basefrm">Main Page</a></p>
<p><img src="ftv2pnode.png" alt="o" width=16 height=22 onclick="toggleFolder('folder1', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder1', this)"/><a class="el" href="files.html" target="basefrm">File List</a></p>
<div id="folder1">
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="base_8h.html" target="basefrm">base.h</a></p>
@@ -125,13 +86,13 @@
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="mode_8h.html" target="basefrm">mode.h</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="modules_8cpp.html" target="basefrm">modules.cpp</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="modules_8h.html" target="basefrm">modules.h</a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="servers_8cpp.html" target="basefrm">servers.cpp</a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="servers_8h.html" target="basefrm">servers.h</a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="socket_8cpp.html" target="basefrm">socket.cpp</a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="socket_8h.html" target="basefrm">socket.h</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="users_8cpp.html" target="basefrm">users.cpp</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="users_8h.html" target="basefrm">users.h</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2lastnode.png" alt="\" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="xline_8h.html" target="basefrm">xline.h</a></p>
</div>
- <p><img src="ftv2pnode.png" alt="o" width=16 height=22 onclick="toggleFolder('folder2', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder2', this)"/><a class="el" href="annotated.html" target="basefrm">Compound List</a></p>
+ <p><img src="ftv2pnode.png" alt="o" width=16 height=22 onclick="toggleFolder('folder2', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder2', this)"/><a class="el" href="annotated.html" target="basefrm">Class List</a></p>
<div id="folder2">
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classAdmin.html" target="basefrm">Admin</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classBanItem.html" target="basefrm">BanItem</a></p>
@@ -152,23 +113,22 @@
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classExtMode.html" target="basefrm">ExtMode</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classFileReader.html" target="basefrm">FileReader</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classGLine.html" target="basefrm">GLine</a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html" target="basefrm">nspace::hash< in_addr ></a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structnspace_1_1hash_3_01string_01_4.html" target="basefrm">nspace::hash< string ></a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classHostItem.html" target="basefrm">HostItem</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structirc_1_1InAddr__HashComp.html" target="basefrm">irc::InAddr_HashComp</a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classInspSocket.html" target="basefrm">InspSocket</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classInvited.html" target="basefrm">Invited</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classInviteItem.html" target="basefrm">InviteItem</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structirc_1_1irc__char__traits.html" target="basefrm">irc::irc_char_traits</a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classircd__connector.html" target="basefrm">ircd_connector</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classKLine.html" target="basefrm">KLine</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classModeParameter.html" target="basefrm">ModeParameter</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classModule.html" target="basefrm">Module</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classModuleFactory.html" target="basefrm">ModuleFactory</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classModuleMessage.html" target="basefrm">ModuleMessage</a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html" target="basefrm">nspace::hash< in_addr ></a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html" target="basefrm">nspace::hash< string ></a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classQLine.html" target="basefrm">QLine</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classRequest.html" target="basefrm">Request</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classServer.html" target="basefrm">Server</a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classserverrec.html" target="basefrm">serverrec</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structirc_1_1StrHashComp.html" target="basefrm">irc::StrHashComp</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classucrec.html" target="basefrm">ucrec</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classuserrec.html" target="basefrm">userrec</a></p>
@@ -193,12 +153,10 @@
<div id="folder6">
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classchanrec.html" target="basefrm">chanrec</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classcommand__t.html" target="basefrm">command_t</a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2pnode.png" alt="o" width=16 height=22 onclick="toggleFolder('folder7', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder7', this)"/><a class="el" href="classconnection.html" target="basefrm">connection</a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2plastnode.png" alt="\" width=16 height=22 onclick="toggleFolder('folder7', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder7', this)"/><a class="el" href="classconnection.html" target="basefrm">connection</a></p>
<div id="folder7">
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classserverrec.html" target="basefrm">serverrec</a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2lastnode.png" alt="\" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classuserrec.html" target="basefrm">userrec</a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2lastnode.png" alt="\" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classuserrec.html" target="basefrm">userrec</a></p>
</div>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2lastnode.png" alt="\" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classircd__connector.html" target="basefrm">ircd_connector</a></p>
</div>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classExtMode.html" target="basefrm">ExtMode</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classFileReader.html" target="basefrm">FileReader</a></p>
@@ -231,19 +189,41 @@
</div>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classDNS.html" target="basefrm">DNS</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structdns__ip4list.html" target="basefrm">dns_ip4list</a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structnspace_1_1hash_3_01in__addr_01_4.html" target="basefrm">nspace::hash< in_addr ></a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structnspace_1_1hash_3_01string_01_4.html" target="basefrm">nspace::hash< string ></a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structirc_1_1InAddr__HashComp.html" target="basefrm">irc::InAddr_HashComp</a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structnspace_1_1nspace_1_1hash_3_01in__addr_01_4.html" target="basefrm">nspace::hash< in_addr ></a></p>
- <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structnspace_1_1nspace_1_1hash_3_01string_01_4.html" target="basefrm">nspace::hash< string ></a></p>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classInspSocket.html" target="basefrm">InspSocket</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="structirc_1_1StrHashComp.html" target="basefrm">irc::StrHashComp</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2lastnode.png" alt="\" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="classWhoWasUser.html" target="basefrm">WhoWasUser</a></p>
</div>
- <p><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="functions.html" target="basefrm">Compound Members</a></p>
+ <p><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="functions.html" target="basefrm">Class Members</a></p>
<p><img src="ftv2pnode.png" alt="o" width=16 height=22 onclick="toggleFolder('folder11', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder11', this)"/><a class="el" href="namespaces.html" target="basefrm">Namespace List</a></p>
<div id="folder11">
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="namespaceirc.html" target="basefrm">irc</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="namespacenspace.html" target="basefrm">nspace</a></p>
<p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2lastnode.png" alt="\" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="namespacestd.html" target="basefrm">std</a></p>
</div>
+ <p><img src="ftv2pnode.png" alt="o" width=16 height=22 onclick="toggleFolder('folder12', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder12', this)"/><a class="el" href="dirs.html" target="basefrm">Directories</a></p>
+ <div id="folder12">
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2plastnode.png" alt="\" width=16 height=22 onclick="toggleFolder('folder13', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder13', this)"/><a class="el" href="dir_000000.html" target="basefrm">home</a></p>
+ <div id="folder13">
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2plastnode.png" alt="\" width=16 height=22 onclick="toggleFolder('folder14', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder14', this)"/><a class="el" href="dir_000001.html" target="basefrm">brain</a></p>
+ <div id="folder14">
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2plastnode.png" alt="\" width=16 height=22 onclick="toggleFolder('folder15', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder15', this)"/><a class="el" href="dir_000002.html" target="basefrm">inspircd-cvs</a></p>
+ <div id="folder15">
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2plastnode.png" alt="\" width=16 height=22 onclick="toggleFolder('folder16', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder16', this)"/><a class="el" href="dir_000003.html" target="basefrm">inspircd</a></p>
+ <div id="folder16">
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2pnode.png" alt="o" width=16 height=22 onclick="toggleFolder('folder17', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder17', this)"/><a class="el" href="dir_000004.html" target="basefrm">include</a></p>
+ <div id="folder17">
+ </div>
+ <p><img src="ftv2vertline.png" alt="|" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2blank.png" alt="&nbsp;" width=16 height=22 /><img src="ftv2plastnode.png" alt="\" width=16 height=22 onclick="toggleFolder('folder18', this)"/><img src="ftv2folderclosed.png" alt="+" width=24 height=22 onclick="toggleFolder('folder18', this)"/><a class="el" href="dir_000005.html" target="basefrm">src</a></p>
+ <div id="folder18">
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
<p><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="globals.html" target="basefrm">File Members</a></p>
<p><img src="ftv2node.png" alt="o" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="namespacemembers.html" target="basefrm">Namespace Members</a></p>
<p><img src="ftv2lastnode.png" alt="\" width=16 height=22 /><img src="ftv2doc.png" alt="*" width=24 height=22 /><a class="el" href="inherits.html" target="basefrm">Graphical Class Hierarchy</a></p>
diff --git a/docs/module-doc/users_8cpp-source.html b/docs/module-doc/users_8cpp-source.html
index 95ca9e0b8..78de98822 100644
--- a/docs/module-doc/users_8cpp-source.html
+++ b/docs/module-doc/users_8cpp-source.html
@@ -1,310 +1,313 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: users.cpp Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>users.cpp</h1><a href="users_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
-00018
-00019 <span class="preprocessor">#include "inspircd_config.h"</span>
-00020 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
-00021 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
-00022 <span class="preprocessor">#include "inspircd.h"</span>
-00023 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
-00024 <span class="preprocessor">#include "inspstring.h"</span>
-00025 <span class="preprocessor">#include "helperfuncs.h"</span>
-00026
-<a name="l00027"></a><a class="code" href="users_8cpp.html#a0">00027</a> <span class="keyword">extern</span> std::stringstream <a class="code" href="channels_8cpp.html#a33">config_f</a>;
-<a name="l00028"></a><a class="code" href="users_8cpp.html#a1">00028</a> <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#a5">ServerName</a>[MAXBUF];
-00029
-<a name="l00030"></a><a class="code" href="users_8cpp.html#a2">00030</a> <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#a36">TIME</a>;
-00031
-<a name="l00032"></a><a class="code" href="classuserrec.html#a0">00032</a> <a class="code" href="classuserrec.html#a0">userrec::userrec</a>()
-00033 {
-00034 <span class="comment">// the PROPER way to do it, AVOID bzero at *ALL* costs</span>
-00035 strcpy(<a class="code" href="classuserrec.html#o0">nick</a>,<span class="stringliteral">""</span>);
-00036 strcpy(<a class="code" href="classconnection.html#o2">ip</a>,<span class="stringliteral">"127.0.0.1"</span>);
-00037 <a class="code" href="classuserrec.html#o9">timeout</a> = 0;
-00038 strcpy(<a class="code" href="classuserrec.html#o1">ident</a>,<span class="stringliteral">""</span>);
-00039 strcpy(<a class="code" href="classconnection.html#o1">host</a>,<span class="stringliteral">""</span>);
-00040 strcpy(<a class="code" href="classuserrec.html#o2">dhost</a>,<span class="stringliteral">""</span>);
-00041 strcpy(<a class="code" href="classuserrec.html#o3">fullname</a>,<span class="stringliteral">""</span>);
-00042 strcpy(<a class="code" href="classuserrec.html#o4">modes</a>,<span class="stringliteral">""</span>);
-00043 <a class="code" href="classuserrec.html#o6">server</a> = (<span class="keywordtype">char</span>*)FindServerNamePtr(<a class="code" href="channels_8cpp.html#a5">ServerName</a>);
-00044 strcpy(<a class="code" href="classuserrec.html#o7">awaymsg</a>,<span class="stringliteral">""</span>);
-00045 strcpy(<a class="code" href="classuserrec.html#o10">oper</a>,<span class="stringliteral">""</span>);
-00046 <a class="code" href="classuserrec.html#o17">reset_due</a> = <a class="code" href="channels_8cpp.html#a36">TIME</a>;
-00047 <a class="code" href="classuserrec.html#o16">lines_in</a> = 0;
-00048 <a class="code" href="classconnection.html#o0">fd</a> = <a class="code" href="classconnection.html#o10">lastping</a> = <a class="code" href="classconnection.html#o11">signon</a> = <a class="code" href="classconnection.html#o12">idle_lastmsg</a> = <a class="code" href="classconnection.html#o13">nping</a> = <a class="code" href="classconnection.html#o9">registered</a> = 0;
-00049 <a class="code" href="classuserrec.html#o8">flood</a> = <a class="code" href="classconnection.html#o8">port</a> = <a class="code" href="classconnection.html#o3">bytes_in</a> = <a class="code" href="classconnection.html#o4">bytes_out</a> = <a class="code" href="classconnection.html#o5">cmds_in</a> = <a class="code" href="classconnection.html#o6">cmds_out</a> = 0;
-00050 <a class="code" href="classconnection.html#o7">haspassed</a> = <span class="keyword">false</span>;
-00051 <a class="code" href="classuserrec.html#o11">dns_done</a> = <span class="keyword">false</span>;
-00052 <a class="code" href="classuserrec.html#o14">recvq</a> = <span class="stringliteral">""</span>;
-00053 <a class="code" href="classuserrec.html#o15">sendq</a> = <span class="stringliteral">""</span>;
-00054 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; MAXCHANS; i++)
-00055 {
-00056 this-&gt;<a class="code" href="classuserrec.html#o5">chans</a>[i].<a class="code" href="classucrec.html#o1">channel</a> = NULL;
-00057 this-&gt;<a class="code" href="classuserrec.html#o5">chans</a>[i].<a class="code" href="classucrec.html#o0">uc_modes</a> = 0;
-00058 }
-00059 <a class="code" href="classuserrec.html#r0">invites</a>.clear();
-00060 }
-00061
-<a name="l00062"></a><a class="code" href="classuserrec.html#a18">00062</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a18">userrec::CloseSocket</a>()
-00063 {
-00064 shutdown(this-&gt;fd,2);
-00065 close(this-&gt;fd);
-00066 }
-00067
-<a name="l00068"></a><a class="code" href="classuserrec.html#a2">00068</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a2">userrec::GetFullHost</a>()
-00069 {
-00070 <span class="keyword">static</span> <span class="keywordtype">char</span> result[MAXBUF];
-00071 snprintf(result,MAXBUF,<span class="stringliteral">"%s!%s@%s"</span>,<a class="code" href="classuserrec.html#o0">nick</a>,<a class="code" href="classuserrec.html#o1">ident</a>,<a class="code" href="classuserrec.html#o2">dhost</a>);
-00072 <span class="keywordflow">return</span> result;
-00073 }
-00074
-<a name="l00075"></a><a class="code" href="classuserrec.html#a8">00075</a> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#a8">userrec::ReadData</a>(<span class="keywordtype">void</span>* buffer, size_t size)
-00076 {
-00077 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classconnection.html#o0">fd</a> &gt; -1)
-00078 {
-00079 <span class="keywordflow">return</span> read(this-&gt;fd, buffer, size);
-00080 }
-00081 <span class="keywordflow">else</span> <span class="keywordflow">return</span> 0;
-00082 }
-00083
-00084
-<a name="l00085"></a><a class="code" href="classuserrec.html#a3">00085</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a3">userrec::GetFullRealHost</a>()
-00086 {
-00087 <span class="keyword">static</span> <span class="keywordtype">char</span> fresult[MAXBUF];
-00088 snprintf(fresult,MAXBUF,<span class="stringliteral">"%s!%s@%s"</span>,<a class="code" href="classuserrec.html#o0">nick</a>,<a class="code" href="classuserrec.html#o1">ident</a>,<a class="code" href="classconnection.html#o1">host</a>);
-00089 <span class="keywordflow">return</span> fresult;
-00090 }
-00091
-<a name="l00092"></a><a class="code" href="classuserrec.html#a4">00092</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a4">userrec::IsInvited</a>(<span class="keywordtype">char</span>* channel)
-00093 {
-00094 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#r0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#r0">invites</a>.end(); i++)
-00095 {
-00096 <span class="keywordflow">if</span> (i-&gt;channel) {
-00097 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
-00098 {
-00099 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00100 }
-00101 }
-00102 }
-00103 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00104 }
-00105
-<a name="l00106"></a><a class="code" href="classuserrec.html#a17">00106</a> <a class="code" href="users_8h.html#a6">InvitedList</a>* <a class="code" href="classuserrec.html#a17">userrec::GetInviteList</a>()
-00107 {
-00108 <span class="keywordflow">return</span> &amp;<a class="code" href="classuserrec.html#r0">invites</a>;
-00109 }
-00110
-<a name="l00111"></a><a class="code" href="classuserrec.html#a5">00111</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a5">userrec::InviteTo</a>(<span class="keywordtype">char</span>* channel)
-00112 {
-00113 <a class="code" href="classInvited.html">Invited</a> i;
-00114 strlcpy(i.<a class="code" href="classInvited.html#o0">channel</a>,channel,CHANMAX);
-00115 <a class="code" href="classuserrec.html#r0">invites</a>.push_back(i);
-00116 }
-00117
-<a name="l00118"></a><a class="code" href="classuserrec.html#a6">00118</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a6">userrec::RemoveInvite</a>(<span class="keywordtype">char</span>* channel)
-00119 {
-00120 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Removing invites"</span>);
-00121 <span class="keywordflow">if</span> (channel)
-00122 {
-00123 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#r0">invites</a>.size())
-00124 {
-00125 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#r0">invites</a>.begin(); i != <a class="code" href="classuserrec.html#r0">invites</a>.end(); i++)
-00126 {
-00127 <span class="keywordflow">if</span> (i-&gt;channel)
-00128 {
-00129 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
-00130 {
-00131 <a class="code" href="classuserrec.html#r0">invites</a>.erase(i);
-00132 <span class="keywordflow">return</span>;
-00133 }
-00134 }
-00135 }
-00136 }
-00137 }
-00138 }
-00139
-<a name="l00140"></a><a class="code" href="classuserrec.html#a7">00140</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a7">userrec::HasPermission</a>(<span class="keywordtype">char</span>* command)
-00141 {
-00142 <span class="keywordtype">char</span> TypeName[MAXBUF],Classes[MAXBUF],ClassName[MAXBUF],CommandList[MAXBUF];
-00143 <span class="keywordtype">char</span>* mycmd;
-00144 <span class="keywordtype">char</span>* savept;
-00145 <span class="keywordtype">char</span>* savept2;
-00146
-00147 <span class="comment">// are they even an oper at all?</span>
-00148 <span class="keywordflow">if</span> (strchr(this-&gt;modes,<span class="charliteral">'o'</span>))
-00149 {
-00150 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** HasPermission: %s is an oper"</span>,this-&gt;nick);
-00151 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j =0; j &lt; ConfValueEnum(<span class="stringliteral">"type"</span>,&amp;<a class="code" href="channels_8cpp.html#a33">config_f</a>); j++)
-00152 {
-00153 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"name"</span>,j,TypeName,&amp;<a class="code" href="channels_8cpp.html#a33">config_f</a>);
-00154 <span class="keywordflow">if</span> (!strcmp(TypeName,this-&gt;oper))
-00155 {
-00156 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** HasPermission: %s is an oper of type '%s'"</span>,this-&gt;nick,this-&gt;oper);
-00157 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"classes"</span>,j,Classes,&amp;<a class="code" href="channels_8cpp.html#a33">config_f</a>);
-00158 <span class="keywordtype">char</span>* myclass = strtok_r(Classes,<span class="stringliteral">" "</span>,&amp;savept);
-00159 <span class="keywordflow">while</span> (myclass)
-00160 {
-00161 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** HasPermission: checking classtype '%s'"</span>,myclass);
-00162 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> k =0; k &lt; ConfValueEnum(<span class="stringliteral">"class"</span>,&amp;<a class="code" href="channels_8cpp.html#a33">config_f</a>); k++)
-00163 {
-00164 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"name"</span>,k,ClassName,&amp;<a class="code" href="channels_8cpp.html#a33">config_f</a>);
-00165 <span class="keywordflow">if</span> (!strcmp(ClassName,myclass))
-00166 {
-00167 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"commands"</span>,k,CommandList,&amp;<a class="code" href="channels_8cpp.html#a33">config_f</a>);
-00168 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** HasPermission: found class named %s with commands: '%s'"</span>,ClassName,CommandList);
-00169
-00170
-00171 mycmd = strtok_r(CommandList,<span class="stringliteral">" "</span>,&amp;savept2);
-00172 <span class="keywordflow">while</span> (mycmd)
-00173 {
-00174 <span class="keywordflow">if</span> (!strcasecmp(mycmd,command))
-00175 {
-00176 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** Command %s found, returning true"</span>,command);
-00177 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00178 }
-00179 mycmd = strtok_r(NULL,<span class="stringliteral">" "</span>,&amp;savept2);
-00180 }
-00181 }
-00182 }
-00183 myclass = strtok_r(NULL,<span class="stringliteral">" "</span>,&amp;savept);
-00184 }
-00185 }
-00186 }
-00187 }
-00188 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00189 }
-00190
-00191
-<a name="l00192"></a><a class="code" href="classuserrec.html#a9">00192</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a9">userrec::AddBuffer</a>(std::string a)
-00193 {
-00194 std::string b = <span class="stringliteral">""</span>;
-00195 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; a.length(); i++)
-00196 <span class="keywordflow">if</span> ((a[i] != <span class="charliteral">'\r'</span>) &amp;&amp; (a[i] != <span class="charliteral">'\0'</span>) &amp;&amp; (a[i] != 7))
-00197 b = b + a[i];
-00198 std::stringstream stream(<a class="code" href="classuserrec.html#o14">recvq</a>);
-00199 stream &lt;&lt; b;
-00200 <a class="code" href="classuserrec.html#o14">recvq</a> = stream.str();
-00201 <span class="keywordtype">int</span> i = 0;
-00202 <span class="comment">// count the size of the first line in the buffer.</span>
-00203 <span class="keywordflow">while</span> (i &lt; <a class="code" href="classuserrec.html#o14">recvq</a>.length())
-00204 {
-00205 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o14">recvq</a>[i++] == <span class="charliteral">'\n'</span>)
-00206 <span class="keywordflow">break</span>;
-00207 }
-00208 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o14">recvq</a>.length() &gt; this-&gt;<a class="code" href="classuserrec.html#o21">recvqmax</a>)
-00209 {
-00210 this-&gt;<a class="code" href="classuserrec.html#a13">SetWriteError</a>(<span class="stringliteral">"RecvQ exceeded"</span>);
-00211 WriteOpers(<span class="stringliteral">"*** User %s RecvQ of %d exceeds connect class maximum of %d"</span>,this-&gt;nick,<a class="code" href="classuserrec.html#o14">recvq</a>.length(),this-&gt;<a class="code" href="classuserrec.html#o21">recvqmax</a>);
-00212 }
-00213 <span class="comment">// return false if we've had more than 600 characters WITHOUT</span>
-00214 <span class="comment">// a carriage return (this is BAD, drop the socket)</span>
-00215 <span class="keywordflow">return</span> (i &lt; 600);
-00216 }
-00217
-<a name="l00218"></a><a class="code" href="classuserrec.html#a10">00218</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a10">userrec::BufferIsReady</a>()
-00219 {
-00220 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classuserrec.html#o14">recvq</a>.length(); i++)
-00221 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o14">recvq</a>[i] == <span class="charliteral">'\n'</span>)
-00222 <span class="keywordflow">return</span> <span class="keyword">true</span>;
-00223 <span class="keywordflow">return</span> <span class="keyword">false</span>;
-00224 }
-00225
-<a name="l00226"></a><a class="code" href="classuserrec.html#a11">00226</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a11">userrec::ClearBuffer</a>()
-00227 {
-00228 <a class="code" href="classuserrec.html#o14">recvq</a> = <span class="stringliteral">""</span>;
-00229 }
-00230
-<a name="l00231"></a><a class="code" href="classuserrec.html#a12">00231</a> std::string <a class="code" href="classuserrec.html#a12">userrec::GetBuffer</a>()
-00232 {
-00233 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o14">recvq</a> == <span class="stringliteral">""</span>)
-00234 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
-00235 <span class="keywordtype">char</span>* line = (<span class="keywordtype">char</span>*)<a class="code" href="classuserrec.html#o14">recvq</a>.c_str();
-00236 std::string ret = <span class="stringliteral">""</span>;
-00237 <span class="keywordflow">while</span> ((*line != <span class="charliteral">'\n'</span>) &amp;&amp; (strlen(line)))
-00238 {
-00239 ret = ret + *line;
-00240 line++;
-00241 }
-00242 <span class="keywordflow">if</span> ((*line == <span class="charliteral">'\n'</span>) || (*line == <span class="charliteral">'\r'</span>))
-00243 line++;
-00244 <a class="code" href="classuserrec.html#o14">recvq</a> = line;
-00245 <span class="keywordflow">return</span> ret;
-00246 }
-00247
-<a name="l00248"></a><a class="code" href="classuserrec.html#a15">00248</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a15">userrec::AddWriteBuf</a>(std::string data)
-00249 {
-00250 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classuserrec.html#a14">GetWriteError</a>() != <span class="stringliteral">""</span>)
-00251 <span class="keywordflow">return</span>;
-00252 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o15">sendq</a>.length() + data.length() &gt; this-&gt;<a class="code" href="classuserrec.html#o20">sendqmax</a>)
-00253 {
-00254 WriteOpers(<span class="stringliteral">"*** User %s SendQ of %d exceeds connect class maximum of %d"</span>,this-&gt;nick,<a class="code" href="classuserrec.html#o15">sendq</a>.length() + data.length(),this-&gt;<a class="code" href="classuserrec.html#o20">sendqmax</a>);
-00255 this-&gt;<a class="code" href="classuserrec.html#a13">SetWriteError</a>(<span class="stringliteral">"SendQ exceeded"</span>);
-00256 <span class="keywordflow">return</span>;
-00257 }
-00258 std::stringstream stream;
-00259 stream &lt;&lt; <a class="code" href="classuserrec.html#o15">sendq</a> &lt;&lt; data;
-00260 <a class="code" href="classuserrec.html#o15">sendq</a> = stream.str();
-00261 }
-00262
-00263 <span class="comment">// send AS MUCH OF THE USERS SENDQ as we are able to (might not be all of it)</span>
-<a name="l00264"></a><a class="code" href="classuserrec.html#a16">00264</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a16">userrec::FlushWriteBuf</a>()
-00265 {
-00266 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#o15">sendq</a>.length())
-00267 {
-00268 <span class="keywordtype">char</span>* tb = (<span class="keywordtype">char</span>*)this-&gt;<a class="code" href="classuserrec.html#o15">sendq</a>.c_str();
-00269 <span class="keywordtype">int</span> n_sent = write(this-&gt;fd,tb,this-&gt;sendq.length());
-00270 <span class="keywordflow">if</span> (n_sent == -1)
-00271 {
-00272 this-&gt;<a class="code" href="classuserrec.html#a13">SetWriteError</a>(strerror(errno));
-00273 }
-00274 <span class="keywordflow">else</span>
-00275 {
-00276 <span class="comment">// advance the queue</span>
-00277 tb += n_sent;
-00278 this-&gt;<a class="code" href="classuserrec.html#o15">sendq</a> = tb;
-00279 <span class="comment">// update the user's stats counters</span>
-00280 this-&gt;<a class="code" href="classconnection.html#o4">bytes_out</a> += n_sent;
-00281 this-&gt;<a class="code" href="classconnection.html#o6">cmds_out</a>++;
-00282 }
-00283 }
-00284 }
-00285
-<a name="l00286"></a><a class="code" href="classuserrec.html#a13">00286</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a13">userrec::SetWriteError</a>(std::string error)
-00287 {
-00288 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Setting error string for %s to '%s'"</span>,this-&gt;nick,error.c_str());
-00289 <span class="comment">// don't try to set the error twice, its already set take the first string.</span>
-00290 <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classuserrec.html#o19">WriteError</a> == <span class="stringliteral">""</span>)
-00291 this-&gt;<a class="code" href="classuserrec.html#o19">WriteError</a> = error;
-00292 }
-00293
-<a name="l00294"></a><a class="code" href="classuserrec.html#a14">00294</a> std::string <a class="code" href="classuserrec.html#a14">userrec::GetWriteError</a>()
-00295 {
-00296 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classuserrec.html#o19">WriteError</a>;
-00297 }
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:21 2005 for InspIRCd by
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>users.cpp</h1><a href="users_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="keyword">using</span> <span class="keyword">namespace </span>std;
+<a name="l00018"></a>00018
+<a name="l00019"></a>00019 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include "<a class="code" href="connection_8h.html">connection.h</a>"</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include "inspircd.h"</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include "inspstring.h"</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include "helperfuncs.h"</span>
+<a name="l00027"></a>00027
+<a name="l00028"></a>00028 <span class="keyword">extern</span> std::stringstream <a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>;
+<a name="l00029"></a>00029 <span class="keyword">extern</span> <span class="keywordtype">char</span> <a class="code" href="channels_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a>[MAXBUF];
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031 <span class="keyword">extern</span> time_t <a class="code" href="channels_8cpp.html#TIME">TIME</a>;
+<a name="l00032"></a>00032
+<a name="l00033"></a><a class="code" href="classuserrec.html#userrec_28_29">00033</a> <a class="code" href="classuserrec.html#userrec_28_29">userrec::userrec</a>()
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 <span class="comment">// the PROPER way to do it, AVOID bzero at *ALL* costs</span>
+<a name="l00036"></a>00036 strcpy(<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,<span class="stringliteral">""</span>);
+<a name="l00037"></a>00037 strcpy(<a class="code" href="classconnection.html#ip_5B_31_36_5D">ip</a>,<span class="stringliteral">"127.0.0.1"</span>);
+<a name="l00038"></a>00038 <a class="code" href="classuserrec.html#timeout">timeout</a> = 0;
+<a name="l00039"></a>00039 strcpy(<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,<span class="stringliteral">""</span>);
+<a name="l00040"></a>00040 strcpy(<a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>,<span class="stringliteral">""</span>);
+<a name="l00041"></a>00041 strcpy(<a class="code" href="classuserrec.html#dhost_5B_31_36_30_5D">dhost</a>,<span class="stringliteral">""</span>);
+<a name="l00042"></a>00042 strcpy(<a class="code" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">fullname</a>,<span class="stringliteral">""</span>);
+<a name="l00043"></a>00043 strcpy(<a class="code" href="classuserrec.html#modes_5B_35_34_5D">modes</a>,<span class="stringliteral">""</span>);
+<a name="l00044"></a>00044 <a class="code" href="classuserrec.html#server">server</a> = (<span class="keywordtype">char</span>*)FindServerNamePtr(<a class="code" href="channels_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a>);
+<a name="l00045"></a>00045 strcpy(<a class="code" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">awaymsg</a>,<span class="stringliteral">""</span>);
+<a name="l00046"></a>00046 strcpy(<a class="code" href="classuserrec.html#oper_5BNICKMAX_5D">oper</a>,<span class="stringliteral">""</span>);
+<a name="l00047"></a>00047 <a class="code" href="classuserrec.html#reset_5Fdue">reset_due</a> = <a class="code" href="channels_8cpp.html#TIME">TIME</a>;
+<a name="l00048"></a>00048 <a class="code" href="classuserrec.html#lines_5Fin">lines_in</a> = 0;
+<a name="l00049"></a>00049 <a class="code" href="classconnection.html#fd">fd</a> = <a class="code" href="classconnection.html#lastping">lastping</a> = <a class="code" href="classconnection.html#signon">signon</a> = <a class="code" href="classconnection.html#idle_5Flastmsg">idle_lastmsg</a> = <a class="code" href="classconnection.html#nping">nping</a> = <a class="code" href="classconnection.html#registered">registered</a> = 0;
+<a name="l00050"></a>00050 <a class="code" href="classuserrec.html#flood">flood</a> = <a class="code" href="classconnection.html#port">port</a> = <a class="code" href="classconnection.html#bytes_5Fin">bytes_in</a> = <a class="code" href="classconnection.html#bytes_5Fout">bytes_out</a> = <a class="code" href="classconnection.html#cmds_5Fin">cmds_in</a> = <a class="code" href="classconnection.html#cmds_5Fout">cmds_out</a> = 0;
+<a name="l00051"></a>00051 <a class="code" href="classconnection.html#haspassed">haspassed</a> = <span class="keyword">false</span>;
+<a name="l00052"></a>00052 <a class="code" href="classuserrec.html#dns_5Fdone">dns_done</a> = <span class="keyword">false</span>;
+<a name="l00053"></a>00053 <a class="code" href="classuserrec.html#recvq">recvq</a> = <span class="stringliteral">""</span>;
+<a name="l00054"></a>00054 <a class="code" href="classuserrec.html#sendq">sendq</a> = <span class="stringliteral">""</span>;
+<a name="l00055"></a>00055 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; MAXCHANS; i++)
+<a name="l00056"></a>00056 {
+<a name="l00057"></a>00057 this-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#channel">channel</a> = NULL;
+<a name="l00058"></a>00058 this-&gt;<a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[i].<a class="code" href="classucrec.html#uc_5Fmodes">uc_modes</a> = 0;
+<a name="l00059"></a>00059 }
+<a name="l00060"></a>00060 <a class="code" href="classuserrec.html#invites">invites</a>.clear();
+<a name="l00061"></a>00061 }
+<a name="l00062"></a>00062
+<a name="l00063"></a><a class="code" href="classuserrec.html#CloseSocket_28_29">00063</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#CloseSocket_28_29">userrec::CloseSocket</a>()
+<a name="l00064"></a>00064 {
+<a name="l00065"></a>00065 shutdown(this-&gt;fd,2);
+<a name="l00066"></a>00066 close(this-&gt;fd);
+<a name="l00067"></a>00067 }
+<a name="l00068"></a>00068
+<a name="l00069"></a><a class="code" href="classuserrec.html#GetFullHost_28_29">00069</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#GetFullHost_28_29">userrec::GetFullHost</a>()
+<a name="l00070"></a>00070 {
+<a name="l00071"></a>00071 <span class="keyword">static</span> <span class="keywordtype">char</span> result[MAXBUF];
+<a name="l00072"></a>00072 snprintf(result,MAXBUF,<span class="stringliteral">"%s!%s@%s"</span>,<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,<a class="code" href="classuserrec.html#dhost_5B_31_36_30_5D">dhost</a>);
+<a name="l00073"></a>00073 <span class="keywordflow">return</span> result;
+<a name="l00074"></a>00074 }
+<a name="l00075"></a>00075
+<a name="l00076"></a><a class="code" href="classuserrec.html#ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29">00076</a> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29">userrec::ReadData</a>(<span class="keywordtype">void</span>* buffer, size_t size)
+<a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 <span class="keywordflow">if</span> (this-&gt;fd &gt; -1)
+<a name="l00079"></a>00079 {
+<a name="l00080"></a>00080 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"userrec::ReadData on fd %d"</span>,this-&gt;fd);
+<a name="l00081"></a>00081 <span class="keywordflow">return</span> read(this-&gt;fd, buffer, size);
+<a name="l00082"></a>00082 }
+<a name="l00083"></a>00083 <span class="keywordflow">else</span> <span class="keywordflow">return</span> 0;
+<a name="l00084"></a>00084 }
+<a name="l00085"></a>00085
+<a name="l00086"></a>00086
+<a name="l00087"></a><a class="code" href="classuserrec.html#GetFullRealHost_28_29">00087</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#GetFullRealHost_28_29">userrec::GetFullRealHost</a>()
+<a name="l00088"></a>00088 {
+<a name="l00089"></a>00089 <span class="keyword">static</span> <span class="keywordtype">char</span> fresult[MAXBUF];
+<a name="l00090"></a>00090 snprintf(fresult,MAXBUF,<span class="stringliteral">"%s!%s@%s"</span>,<a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>,<a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>,<a class="code" href="classconnection.html#host_5B_31_36_30_5D">host</a>);
+<a name="l00091"></a>00091 <span class="keywordflow">return</span> fresult;
+<a name="l00092"></a>00092 }
+<a name="l00093"></a>00093
+<a name="l00094"></a><a class="code" href="classuserrec.html#IsInvited_28char_20_2Achannel_29">00094</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#IsInvited_28char_20_2Achannel_29">userrec::IsInvited</a>(<span class="keywordtype">char</span>* channel)
+<a name="l00095"></a>00095 {
+<a name="l00096"></a>00096 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#invites">invites</a>.begin(); i != <a class="code" href="classuserrec.html#invites">invites</a>.end(); i++)
+<a name="l00097"></a>00097 {
+<a name="l00098"></a>00098 <span class="keywordflow">if</span> (i-&gt;channel) {
+<a name="l00099"></a>00099 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00102"></a>00102 }
+<a name="l00103"></a>00103 }
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00106"></a>00106 }
+<a name="l00107"></a>00107
+<a name="l00108"></a><a class="code" href="classuserrec.html#GetInviteList_28_29">00108</a> <a class="code" href="users_8h.html#InvitedList">InvitedList</a>* <a class="code" href="classuserrec.html#GetInviteList_28_29">userrec::GetInviteList</a>()
+<a name="l00109"></a>00109 {
+<a name="l00110"></a>00110 <span class="keywordflow">return</span> &amp;<a class="code" href="classuserrec.html#invites">invites</a>;
+<a name="l00111"></a>00111 }
+<a name="l00112"></a>00112
+<a name="l00113"></a><a class="code" href="classuserrec.html#InviteTo_28char_20_2Achannel_29">00113</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#InviteTo_28char_20_2Achannel_29">userrec::InviteTo</a>(<span class="keywordtype">char</span>* channel)
+<a name="l00114"></a>00114 {
+<a name="l00115"></a>00115 <a class="code" href="classInvited.html">Invited</a> i;
+<a name="l00116"></a>00116 strlcpy(i.<a class="code" href="classInvited.html#channel_5BCHANMAX_5D">channel</a>,channel,CHANMAX);
+<a name="l00117"></a>00117 <a class="code" href="classuserrec.html#invites">invites</a>.push_back(i);
+<a name="l00118"></a>00118 }
+<a name="l00119"></a>00119
+<a name="l00120"></a><a class="code" href="classuserrec.html#RemoveInvite_28char_20_2Achannel_29">00120</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#RemoveInvite_28char_20_2Achannel_29">userrec::RemoveInvite</a>(<span class="keywordtype">char</span>* channel)
+<a name="l00121"></a>00121 {
+<a name="l00122"></a>00122 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Removing invites"</span>);
+<a name="l00123"></a>00123 <span class="keywordflow">if</span> (channel)
+<a name="l00124"></a>00124 {
+<a name="l00125"></a>00125 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#invites">invites</a>.size())
+<a name="l00126"></a>00126 {
+<a name="l00127"></a>00127 <span class="keywordflow">for</span> (InvitedList::iterator i = <a class="code" href="classuserrec.html#invites">invites</a>.begin(); i != <a class="code" href="classuserrec.html#invites">invites</a>.end(); i++)
+<a name="l00128"></a>00128 {
+<a name="l00129"></a>00129 <span class="keywordflow">if</span> (i-&gt;channel)
+<a name="l00130"></a>00130 {
+<a name="l00131"></a>00131 <span class="keywordflow">if</span> (!strcasecmp(i-&gt;channel,channel))
+<a name="l00132"></a>00132 {
+<a name="l00133"></a>00133 <a class="code" href="classuserrec.html#invites">invites</a>.erase(i);
+<a name="l00134"></a>00134 <span class="keywordflow">return</span>;
+<a name="l00135"></a>00135 }
+<a name="l00136"></a>00136 }
+<a name="l00137"></a>00137 }
+<a name="l00138"></a>00138 }
+<a name="l00139"></a>00139 }
+<a name="l00140"></a>00140 }
+<a name="l00141"></a>00141
+<a name="l00142"></a><a class="code" href="classuserrec.html#HasPermission_28char_20_2Acommand_29">00142</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#HasPermission_28char_20_2Acommand_29">userrec::HasPermission</a>(<span class="keywordtype">char</span>* command)
+<a name="l00143"></a>00143 {
+<a name="l00144"></a>00144 <span class="keywordtype">char</span> TypeName[MAXBUF],Classes[MAXBUF],ClassName[MAXBUF],CommandList[MAXBUF];
+<a name="l00145"></a>00145 <span class="keywordtype">char</span>* mycmd;
+<a name="l00146"></a>00146 <span class="keywordtype">char</span>* savept;
+<a name="l00147"></a>00147 <span class="keywordtype">char</span>* savept2;
+<a name="l00148"></a>00148
+<a name="l00149"></a>00149 <span class="comment">// are they even an oper at all?</span>
+<a name="l00150"></a>00150 <span class="keywordflow">if</span> (strchr(this-&gt;modes,<span class="charliteral">'o'</span>))
+<a name="l00151"></a>00151 {
+<a name="l00152"></a>00152 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** HasPermission: %s is an oper"</span>,this-&gt;nick);
+<a name="l00153"></a>00153 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j =0; j &lt; ConfValueEnum(<span class="stringliteral">"type"</span>,&amp;<a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>); j++)
+<a name="l00154"></a>00154 {
+<a name="l00155"></a>00155 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"name"</span>,j,TypeName,&amp;<a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>);
+<a name="l00156"></a>00156 <span class="keywordflow">if</span> (!strcmp(TypeName,this-&gt;oper))
+<a name="l00157"></a>00157 {
+<a name="l00158"></a>00158 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** HasPermission: %s is an oper of type '%s'"</span>,this-&gt;nick,this-&gt;oper);
+<a name="l00159"></a>00159 ConfValue(<span class="stringliteral">"type"</span>,<span class="stringliteral">"classes"</span>,j,Classes,&amp;<a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>);
+<a name="l00160"></a>00160 <span class="keywordtype">char</span>* myclass = strtok_r(Classes,<span class="stringliteral">" "</span>,&amp;savept);
+<a name="l00161"></a>00161 <span class="keywordflow">while</span> (myclass)
+<a name="l00162"></a>00162 {
+<a name="l00163"></a>00163 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"*** HasPermission: checking classtype '%s'"</span>,myclass);
+<a name="l00164"></a>00164 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> k =0; k &lt; ConfValueEnum(<span class="stringliteral">"class"</span>,&amp;<a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>); k++)
+<a name="l00165"></a>00165 {
+<a name="l00166"></a>00166 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"name"</span>,k,ClassName,&amp;<a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>);
+<a name="l00167"></a>00167 <span class="keywordflow">if</span> (!strcmp(ClassName,myclass))
+<a name="l00168"></a>00168 {
+<a name="l00169"></a>00169 ConfValue(<span class="stringliteral">"class"</span>,<span class="stringliteral">"commands"</span>,k,CommandList,&amp;<a class="code" href="channels_8cpp.html#config_5Ff">config_f</a>);
+<a name="l00170"></a>00170 log(DEBUG,<span class="stringliteral">"*** HasPermission: found class named %s with commands: '%s'"</span>,ClassName,CommandList);
+<a name="l00171"></a>00171
+<a name="l00172"></a>00172
+<a name="l00173"></a>00173 mycmd = strtok_r(CommandList,<span class="stringliteral">" "</span>,&amp;savept2);
+<a name="l00174"></a>00174 <span class="keywordflow">while</span> (mycmd)
+<a name="l00175"></a>00175 {
+<a name="l00176"></a>00176 <span class="keywordflow">if</span> (!strcasecmp(mycmd,command))
+<a name="l00177"></a>00177 {
+<a name="l00178"></a>00178 log(DEBUG,<span class="stringliteral">"*** Command %s found, returning true"</span>,command);
+<a name="l00179"></a>00179 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00180"></a>00180 }
+<a name="l00181"></a>00181 mycmd = strtok_r(NULL,<span class="stringliteral">" "</span>,&amp;savept2);
+<a name="l00182"></a>00182 }
+<a name="l00183"></a>00183 }
+<a name="l00184"></a>00184 }
+<a name="l00185"></a>00185 myclass = strtok_r(NULL,<span class="stringliteral">" "</span>,&amp;savept);
+<a name="l00186"></a>00186 }
+<a name="l00187"></a>00187 }
+<a name="l00188"></a>00188 }
+<a name="l00189"></a>00189 }
+<a name="l00190"></a>00190 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00191"></a>00191 }
+<a name="l00192"></a>00192
+<a name="l00193"></a>00193
+<a name="l00194"></a><a class="code" href="classuserrec.html#AddBuffer_28std_3A_3Astring_20a_29">00194</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#AddBuffer_28std_3A_3Astring_20a_29">userrec::AddBuffer</a>(<a class="code" href="namespaceirc.html#string">std::string</a> a)
+<a name="l00195"></a>00195 {
+<a name="l00196"></a>00196 <a class="code" href="namespaceirc.html#string">std::string</a> b = <span class="stringliteral">""</span>;
+<a name="l00197"></a>00197 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; a.length(); i++)
+<a name="l00198"></a>00198 <span class="keywordflow">if</span> ((a[i] != <span class="charliteral">'\r'</span>) &amp;&amp; (a[i] != <span class="charliteral">'\0'</span>) &amp;&amp; (a[i] != 7))
+<a name="l00199"></a>00199 b = b + a[i];
+<a name="l00200"></a>00200 std::stringstream stream(<a class="code" href="classuserrec.html#recvq">recvq</a>);
+<a name="l00201"></a>00201 stream &lt;&lt; b;
+<a name="l00202"></a>00202 <a class="code" href="classuserrec.html#recvq">recvq</a> = stream.str();
+<a name="l00203"></a>00203 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0;
+<a name="l00204"></a>00204 <span class="comment">// count the size of the first line in the buffer.</span>
+<a name="l00205"></a>00205 <span class="keywordflow">while</span> (i &lt; <a class="code" href="classuserrec.html#recvq">recvq</a>.length())
+<a name="l00206"></a>00206 {
+<a name="l00207"></a>00207 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#recvq">recvq</a>[i++] == <span class="charliteral">'\n'</span>)
+<a name="l00208"></a>00208 <span class="keywordflow">break</span>;
+<a name="l00209"></a>00209 }
+<a name="l00210"></a>00210 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#recvq">recvq</a>.length() &gt; (unsigned)this-&gt;<a class="code" href="classuserrec.html#recvqmax">recvqmax</a>)
+<a name="l00211"></a>00211 {
+<a name="l00212"></a>00212 this-&gt;<a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a>(<span class="stringliteral">"RecvQ exceeded"</span>);
+<a name="l00213"></a>00213 WriteOpers(<span class="stringliteral">"*** User %s RecvQ of %d exceeds connect class maximum of %d"</span>,this-&gt;nick,<a class="code" href="classuserrec.html#recvq">recvq</a>.length(),this-&gt;<a class="code" href="classuserrec.html#recvqmax">recvqmax</a>);
+<a name="l00214"></a>00214 }
+<a name="l00215"></a>00215 <span class="comment">// return false if we've had more than 600 characters WITHOUT</span>
+<a name="l00216"></a>00216 <span class="comment">// a carriage return (this is BAD, drop the socket)</span>
+<a name="l00217"></a>00217 <span class="keywordflow">return</span> (i &lt; 600);
+<a name="l00218"></a>00218 }
+<a name="l00219"></a>00219
+<a name="l00220"></a><a class="code" href="classuserrec.html#BufferIsReady_28_29">00220</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#BufferIsReady_28_29">userrec::BufferIsReady</a>()
+<a name="l00221"></a>00221 {
+<a name="l00222"></a>00222 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="classuserrec.html#recvq">recvq</a>.length(); i++)
+<a name="l00223"></a>00223 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#recvq">recvq</a>[i] == <span class="charliteral">'\n'</span>)
+<a name="l00224"></a>00224 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00225"></a>00225 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+<a name="l00226"></a>00226 }
+<a name="l00227"></a>00227
+<a name="l00228"></a><a class="code" href="classuserrec.html#ClearBuffer_28_29">00228</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#ClearBuffer_28_29">userrec::ClearBuffer</a>()
+<a name="l00229"></a>00229 {
+<a name="l00230"></a>00230 <a class="code" href="classuserrec.html#recvq">recvq</a> = <span class="stringliteral">""</span>;
+<a name="l00231"></a>00231 }
+<a name="l00232"></a>00232
+<a name="l00233"></a><a class="code" href="classuserrec.html#GetBuffer_28_29">00233</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classuserrec.html#GetBuffer_28_29">userrec::GetBuffer</a>()
+<a name="l00234"></a>00234 {
+<a name="l00235"></a>00235 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#recvq">recvq</a> == <span class="stringliteral">""</span>)
+<a name="l00236"></a>00236 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+<a name="l00237"></a>00237 <span class="keywordtype">char</span>* line = (<span class="keywordtype">char</span>*)<a class="code" href="classuserrec.html#recvq">recvq</a>.c_str();
+<a name="l00238"></a>00238 <a class="code" href="namespaceirc.html#string">std::string</a> ret = <span class="stringliteral">""</span>;
+<a name="l00239"></a>00239 <span class="keywordflow">while</span> ((*line != <span class="charliteral">'\n'</span>) &amp;&amp; (strlen(line)))
+<a name="l00240"></a>00240 {
+<a name="l00241"></a>00241 ret = ret + *line;
+<a name="l00242"></a>00242 line++;
+<a name="l00243"></a>00243 }
+<a name="l00244"></a>00244 <span class="keywordflow">if</span> ((*line == <span class="charliteral">'\n'</span>) || (*line == <span class="charliteral">'\r'</span>))
+<a name="l00245"></a>00245 line++;
+<a name="l00246"></a>00246 <a class="code" href="classuserrec.html#recvq">recvq</a> = line;
+<a name="l00247"></a>00247 <span class="keywordflow">return</span> ret;
+<a name="l00248"></a>00248 }
+<a name="l00249"></a>00249
+<a name="l00250"></a><a class="code" href="classuserrec.html#AddWriteBuf_28std_3A_3Astring_20data_29">00250</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#AddWriteBuf_28std_3A_3Astring_20data_29">userrec::AddWriteBuf</a>(<a class="code" href="namespaceirc.html#string">std::string</a> data)
+<a name="l00251"></a>00251 {
+<a name="l00252"></a>00252 <span class="keywordflow">if</span> (this-&gt;GetWriteError() != <span class="stringliteral">""</span>)
+<a name="l00253"></a>00253 <span class="keywordflow">return</span>;
+<a name="l00254"></a>00254 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#sendq">sendq</a>.length() + data.length() &gt; (unsigned)this-&gt;<a class="code" href="classuserrec.html#sendqmax">sendqmax</a>)
+<a name="l00255"></a>00255 {
+<a name="l00256"></a>00256 WriteOpers(<span class="stringliteral">"*** User %s SendQ of %d exceeds connect class maximum of %d"</span>,this-&gt;nick,<a class="code" href="classuserrec.html#sendq">sendq</a>.length() + data.length(),this-&gt;<a class="code" href="classuserrec.html#sendqmax">sendqmax</a>);
+<a name="l00257"></a>00257 this-&gt;<a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a>(<span class="stringliteral">"SendQ exceeded"</span>);
+<a name="l00258"></a>00258 <span class="keywordflow">return</span>;
+<a name="l00259"></a>00259 }
+<a name="l00260"></a>00260 std::stringstream stream;
+<a name="l00261"></a>00261 stream &lt;&lt; <a class="code" href="classuserrec.html#sendq">sendq</a> &lt;&lt; data;
+<a name="l00262"></a>00262 <a class="code" href="classuserrec.html#sendq">sendq</a> = stream.str();
+<a name="l00263"></a>00263 }
+<a name="l00264"></a>00264
+<a name="l00265"></a>00265 <span class="comment">// send AS MUCH OF THE USERS SENDQ as we are able to (might not be all of it)</span>
+<a name="l00266"></a><a class="code" href="classuserrec.html#FlushWriteBuf_28_29">00266</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#FlushWriteBuf_28_29">userrec::FlushWriteBuf</a>()
+<a name="l00267"></a>00267 {
+<a name="l00268"></a>00268 <span class="keywordflow">if</span> (<a class="code" href="classuserrec.html#sendq">sendq</a>.length())
+<a name="l00269"></a>00269 {
+<a name="l00270"></a>00270 <span class="keywordtype">char</span>* tb = (<span class="keywordtype">char</span>*)this-&gt;<a class="code" href="classuserrec.html#sendq">sendq</a>.c_str();
+<a name="l00271"></a>00271 <span class="keywordtype">int</span> n_sent = write(this-&gt;fd,tb,this-&gt;sendq.length());
+<a name="l00272"></a>00272 <span class="keywordflow">if</span> (n_sent == -1)
+<a name="l00273"></a>00273 {
+<a name="l00274"></a>00274 this-&gt;<a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a>(strerror(errno));
+<a name="l00275"></a>00275 }
+<a name="l00276"></a>00276 <span class="keywordflow">else</span>
+<a name="l00277"></a>00277 {
+<a name="l00278"></a>00278 <span class="comment">// advance the queue</span>
+<a name="l00279"></a>00279 tb += n_sent;
+<a name="l00280"></a>00280 this-&gt;<a class="code" href="classuserrec.html#sendq">sendq</a> = tb;
+<a name="l00281"></a>00281 <span class="comment">// update the user's stats counters</span>
+<a name="l00282"></a>00282 this-&gt;<a class="code" href="classconnection.html#bytes_5Fout">bytes_out</a> += n_sent;
+<a name="l00283"></a>00283 this-&gt;<a class="code" href="classconnection.html#cmds_5Fout">cmds_out</a>++;
+<a name="l00284"></a>00284 }
+<a name="l00285"></a>00285 }
+<a name="l00286"></a>00286 }
+<a name="l00287"></a>00287
+<a name="l00288"></a><a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">00288</a> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">userrec::SetWriteError</a>(<a class="code" href="namespaceirc.html#string">std::string</a> error)
+<a name="l00289"></a>00289 {
+<a name="l00290"></a>00290 log(<a class="code" href="modules_8h.html#DEBUG">DEBUG</a>,<span class="stringliteral">"Setting error string for %s to '%s'"</span>,this-&gt;nick,error.c_str());
+<a name="l00291"></a>00291 <span class="comment">// don't try to set the error twice, its already set take the first string.</span>
+<a name="l00292"></a>00292 <span class="keywordflow">if</span> (this-&gt;WriteError == <span class="stringliteral">""</span>)
+<a name="l00293"></a>00293 this-&gt;<a class="code" href="classuserrec.html#WriteError">WriteError</a> = error;
+<a name="l00294"></a>00294 }
+<a name="l00295"></a>00295
+<a name="l00296"></a><a class="code" href="classuserrec.html#GetWriteError_28_29">00296</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classuserrec.html#GetWriteError_28_29">userrec::GetWriteError</a>()
+<a name="l00297"></a>00297 {
+<a name="l00298"></a>00298 <span class="keywordflow">return</span> this-&gt;<a class="code" href="classuserrec.html#WriteError">WriteError</a>;
+<a name="l00299"></a>00299 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/users_8cpp.html b/docs/module-doc/users_8cpp.html
index d2d1039ad..53e2b3431 100644
--- a/docs/module-doc/users_8cpp.html
+++ b/docs/module-doc/users_8cpp.html
@@ -1,49 +1,54 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: users.cpp File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>users.cpp File Reference</h1><code>#include "inspircd_config.h"</code><br>
-<code>#include "<a class="el" href="channels_8h-source.html">channels.h</a>"</code><br>
-<code>#include "<a class="el" href="users_8h-source.html">users.h</a>"</code><br>
-<code>#include "inspircd.h"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000005.html">src</a></div>
+<h1>users.cpp File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="channels_8h-source.html">channels.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="connection_8h-source.html">connection.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="users_8h-source.html">users.h</a>&quot;</code><br>
+<code>#include &quot;inspircd.h&quot;</code><br>
<code>#include &lt;stdio.h&gt;</code><br>
-<code>#include "inspstring.h"</code><br>
-<code>#include "helperfuncs.h"</code><br>
+<code>#include &quot;inspstring.h&quot;</code><br>
+<code>#include &quot;helperfuncs.h&quot;</code><br>
<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>
+Include dependency graph for users.cpp:<p><center><img src="users_8cpp__incl.gif" border="0" usemap="#users.cpp_map" alt=""></center>
<map name="users.cpp_map">
-<area href="channels_8h.html" shape="rect" coords="58,82,144,109" alt="">
-<area href="users_8h.html" shape="rect" coords="146,157,210,184" alt="">
+<area href="channels_8h-source.html" shape="rect" coords="294,159,379,186" alt="">
+<area href="connection_8h-source.html" shape="rect" coords="287,58,386,84" alt="">
+<area href="users_8h-source.html" shape="rect" coords="155,108,219,135" 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>
+<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>
-<tr><td colspan=2><br><h2>Variables</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>std::stringstream&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8cpp.html#a0">config_f</a></td></tr>
+<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">std::stringstream&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8cpp.html#config_5Ff">config_f</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8cpp.html#a1">ServerName</a> [MAXBUF]</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a> [MAXBUF]</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8cpp.html#a2">TIME</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8cpp.html#TIME">TIME</a></td></tr>
</table>
<hr><h2>Variable Documentation</h2>
-<a name="a0" doxytag="users.cpp::config_f"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="config_5Ff"></a><!-- doxytag: member="users.cpp::config_f" ref="config_5Ff" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> std::stringstream <a class="el" href="users_8cpp.html#a0">config_f</a>
+ <td class="md" nowrap valign="top">std::stringstream <a class="el" href="users_8cpp.html#config_5Ff">config_f</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -51,23 +56,22 @@ Include dependency graph for users.cpp:<p><center><img src="users_8cpp__incl.gif
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00027">27</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a1" doxytag="users.cpp::ServerName"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ServerName_5BMAXBUF_5D"></a><!-- doxytag: member="users.cpp::ServerName" ref="ServerName_5BMAXBUF_5D" args="[MAXBUF]" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char <a class="el" href="users_8cpp.html#a1">ServerName</a>[MAXBUF]
+ <td class="md" nowrap valign="top">char <a class="el" href="users_8cpp.html#ServerName_5BMAXBUF_5D">ServerName</a>[MAXBUF] </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -75,23 +79,22 @@ Definition at line <a class="el" href="users_8cpp-source.html#l00027">27</a> of
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00028">28</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>. </td>
+ </td>
</tr>
</table>
-<a name="a2" doxytag="users.cpp::TIME"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="TIME"></a><!-- doxytag: member="users.cpp::TIME" ref="TIME" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> time_t <a class="el" href="users_8cpp.html#a2">TIME</a>
+ <td class="md" nowrap valign="top">time_t <a class="el" href="users_8cpp.html#TIME">TIME</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -99,14 +102,11 @@ Definition at line <a class="el" href="users_8cpp-source.html#l00028">28</a> of
<td>
<p>
-
-<p>
-Definition at line <a class="el" href="users_8cpp-source.html#l00030">30</a> of file <a class="el" href="users_8cpp-source.html">users.cpp</a>. </td>
+ </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:16 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/users_8cpp__incl.gif b/docs/module-doc/users_8cpp__incl.gif
index 97c4fd610..0271baf2e 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_8cpp__incl.map b/docs/module-doc/users_8cpp__incl.map
new file mode 100644
index 000000000..250202e80
--- /dev/null
+++ b/docs/module-doc/users_8cpp__incl.map
@@ -0,0 +1,4 @@
+base referer
+rect $channels_8h-source.html 294,159 379,186
+rect $connection_8h-source.html 287,58 386,84
+rect $users_8h-source.html 155,108 219,135
diff --git a/docs/module-doc/users_8cpp__incl.md5 b/docs/module-doc/users_8cpp__incl.md5
new file mode 100644
index 000000000..45df1e870
--- /dev/null
+++ b/docs/module-doc/users_8cpp__incl.md5
@@ -0,0 +1 @@
+58b13cc74add16d3b6bac215c7ef17ab \ No newline at end of file
diff --git a/docs/module-doc/users_8h-source.html b/docs/module-doc/users_8h-source.html
index b07c91293..38f9cd109 100644
--- a/docs/module-doc/users_8h-source.html
+++ b/docs/module-doc/users_8h-source.html
@@ -1,191 +1,192 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: users.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>users.h</h1><a href="users_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#include "inspircd_config.h"</span>
-00018 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
-00019 <span class="preprocessor">#include "<a class="code" href="connection_8h.html">connection.h</a>"</span>
-00020 <span class="preprocessor">#include "inspstring.h"</span>
-00021 <span class="preprocessor">#include &lt;string&gt;</span>
-00022
-00023 <span class="preprocessor">#ifndef __USERS_H__ </span>
-00024 <span class="preprocessor"></span><span class="preprocessor">#define __USERS_H__ </span>
-00025 <span class="preprocessor"></span>
-<a name="l00026"></a><a class="code" href="users_8h.html#a0">00026</a> <span class="preprocessor">#define STATUS_OP 4</span>
-<a name="l00027"></a><a class="code" href="users_8h.html#a1">00027</a> <span class="preprocessor"></span><span class="preprocessor">#define STATUS_HOP 2</span>
-<a name="l00028"></a><a class="code" href="users_8h.html#a2">00028</a> <span class="preprocessor"></span><span class="preprocessor">#define STATUS_VOICE 1</span>
-<a name="l00029"></a><a class="code" href="users_8h.html#a3">00029</a> <span class="preprocessor"></span><span class="preprocessor">#define STATUS_NORMAL 0</span>
-00030 <span class="preprocessor"></span>
-<a name="l00031"></a><a class="code" href="users_8h.html#a4">00031</a> <span class="preprocessor">#define CC_ALLOW 0</span>
-<a name="l00032"></a><a class="code" href="users_8h.html#a5">00032</a> <span class="preprocessor"></span><span class="preprocessor">#define CC_DENY 1</span>
-00033 <span class="preprocessor"></span>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>users.h</h1><a href="users_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#include "inspircd_config.h"</span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include "inspstring.h"</span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include "<a class="code" href="connection_8h.html">connection.h</a>"</span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00022"></a>00022
+<a name="l00023"></a>00023 <span class="preprocessor">#ifndef __USERS_H__ </span>
+<a name="l00024"></a>00024 <span class="preprocessor"></span><span class="preprocessor">#define __USERS_H__ </span>
+<a name="l00025"></a>00025 <span class="preprocessor"></span>
+<a name="l00026"></a><a class="code" href="users_8h.html#STATUS_5FOP">00026</a> <span class="preprocessor">#define STATUS_OP 4</span>
+<a name="l00027"></a><a class="code" href="users_8h.html#STATUS_5FHOP">00027</a> <span class="preprocessor"></span><span class="preprocessor">#define STATUS_HOP 2</span>
+<a name="l00028"></a><a class="code" href="users_8h.html#STATUS_5FVOICE">00028</a> <span class="preprocessor"></span><span class="preprocessor">#define STATUS_VOICE 1</span>
+<a name="l00029"></a><a class="code" href="users_8h.html#STATUS_5FNORMAL">00029</a> <span class="preprocessor"></span><span class="preprocessor">#define STATUS_NORMAL 0</span>
+<a name="l00030"></a>00030 <span class="preprocessor"></span>
+<a name="l00031"></a><a class="code" href="users_8h.html#CC_5FALLOW">00031</a> <span class="preprocessor">#define CC_ALLOW 0</span>
+<a name="l00032"></a><a class="code" href="users_8h.html#CC_5FDENY">00032</a> <span class="preprocessor"></span><span class="preprocessor">#define CC_DENY 1</span>
+<a name="l00033"></a>00033 <span class="preprocessor"></span>
<a name="l00036"></a><a class="code" href="classInvited.html">00036</a> <span class="keyword">class </span><a class="code" href="classInvited.html">Invited</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00037 {
-00038 <span class="keyword">public</span>:
-<a name="l00039"></a><a class="code" href="classInvited.html#o0">00039</a> <span class="keywordtype">char</span> <a class="code" href="classInvited.html#o0">channel</a>[CHANMAX];
-00040 };
-00041
-00042
+<a name="l00037"></a>00037 {
+<a name="l00038"></a>00038 <span class="keyword">public</span>:
+<a name="l00039"></a><a class="code" href="classInvited.html#channel_5BCHANMAX_5D">00039</a> <span class="keywordtype">char</span> <a class="code" href="classInvited.html#channel_5BCHANMAX_5D">channel</a>[CHANMAX];
+<a name="l00040"></a>00040 };
+<a name="l00041"></a>00041
+<a name="l00042"></a>00042
<a name="l00045"></a><a class="code" href="classConnectClass.html">00045</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>
-00046 {
-00047 <span class="keyword">public</span>:
-<a name="l00050"></a><a class="code" href="classConnectClass.html#o0">00050</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#o0">type</a>;
-<a name="l00053"></a><a class="code" href="classConnectClass.html#o1">00053</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#o1">registration_timeout</a>;
-<a name="l00056"></a><a class="code" href="classConnectClass.html#o2">00056</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#o2">flood</a>;
-<a name="l00059"></a><a class="code" href="classConnectClass.html#o3">00059</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#o3">host</a>[MAXBUF];
-<a name="l00062"></a><a class="code" href="classConnectClass.html#o4">00062</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#o4">pingtime</a>;
-<a name="l00065"></a><a class="code" href="classConnectClass.html#o5">00065</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#o5">pass</a>[MAXBUF];
-00066
-<a name="l00069"></a><a class="code" href="classConnectClass.html#o6">00069</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#o6">threshold</a>;
-00070
-<a name="l00073"></a><a class="code" href="classConnectClass.html#o7">00073</a> <span class="keywordtype">long</span> <a class="code" href="classConnectClass.html#o7">sendqmax</a>;
-00074
-<a name="l00077"></a><a class="code" href="classConnectClass.html#o8">00077</a> <span class="keywordtype">long</span> <a class="code" href="classConnectClass.html#o8">recvqmax</a>;
-00078
-<a name="l00079"></a><a class="code" href="classConnectClass.html#a0">00079</a> <a class="code" href="classConnectClass.html#a0">ConnectClass</a>()
-00080 {
-00081 <a class="code" href="classConnectClass.html#o1">registration_timeout</a> = 0;
-00082 <a class="code" href="classConnectClass.html#o2">flood</a> = 0;
-00083 <a class="code" href="classConnectClass.html#o4">pingtime</a> = 0;
-00084 <a class="code" href="classConnectClass.html#o6">threshold</a> = 0;
-00085 <a class="code" href="classConnectClass.html#o7">sendqmax</a> = 0;
-00086 <a class="code" href="classConnectClass.html#o8">recvqmax</a> = 0;
-00087 strlcpy(<a class="code" href="classConnectClass.html#o3">host</a>,<span class="stringliteral">""</span>,MAXBUF);
-00088 strlcpy(<a class="code" href="classConnectClass.html#o5">pass</a>,<span class="stringliteral">""</span>,MAXBUF);
-00089 }
-00090 };
-00091
-<a name="l00094"></a><a class="code" href="users_8h.html#a6">00094</a> <span class="keyword">typedef</span> std::vector&lt;Invited&gt; <a class="code" href="users_8h.html#a6">InvitedList</a>;
-00095
-00096
-00097
-<a name="l00100"></a><a class="code" href="users_8h.html#a7">00100</a> <span class="keyword">typedef</span> std::vector&lt;ConnectClass&gt; <a class="code" href="users_8h.html#a7">ClassVector</a>;
-00101
+<a name="l00046"></a>00046 {
+<a name="l00047"></a>00047 <span class="keyword">public</span>:
+<a name="l00050"></a><a class="code" href="classConnectClass.html#type">00050</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#type">type</a>;
+<a name="l00053"></a><a class="code" href="classConnectClass.html#registration_5Ftimeout">00053</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#registration_5Ftimeout">registration_timeout</a>;
+<a name="l00056"></a><a class="code" href="classConnectClass.html#flood">00056</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#flood">flood</a>;
+<a name="l00059"></a><a class="code" href="classConnectClass.html#host_5BMAXBUF_5D">00059</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#host_5BMAXBUF_5D">host</a>[MAXBUF];
+<a name="l00062"></a><a class="code" href="classConnectClass.html#pingtime">00062</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#pingtime">pingtime</a>;
+<a name="l00065"></a><a class="code" href="classConnectClass.html#pass_5BMAXBUF_5D">00065</a> <span class="keywordtype">char</span> <a class="code" href="classConnectClass.html#pass_5BMAXBUF_5D">pass</a>[MAXBUF];
+<a name="l00066"></a>00066
+<a name="l00069"></a><a class="code" href="classConnectClass.html#threshold">00069</a> <span class="keywordtype">int</span> <a class="code" href="classConnectClass.html#threshold">threshold</a>;
+<a name="l00070"></a>00070
+<a name="l00073"></a><a class="code" href="classConnectClass.html#sendqmax">00073</a> <span class="keywordtype">long</span> <a class="code" href="classConnectClass.html#sendqmax">sendqmax</a>;
+<a name="l00074"></a>00074
+<a name="l00077"></a><a class="code" href="classConnectClass.html#recvqmax">00077</a> <span class="keywordtype">long</span> <a class="code" href="classConnectClass.html#recvqmax">recvqmax</a>;
+<a name="l00078"></a>00078
+<a name="l00079"></a><a class="code" href="classConnectClass.html#ConnectClass_28_29">00079</a> <a class="code" href="classConnectClass.html#ConnectClass_28_29">ConnectClass</a>()
+<a name="l00080"></a>00080 {
+<a name="l00081"></a>00081 <a class="code" href="classConnectClass.html#registration_5Ftimeout">registration_timeout</a> = 0;
+<a name="l00082"></a>00082 <a class="code" href="classConnectClass.html#flood">flood</a> = 0;
+<a name="l00083"></a>00083 <a class="code" href="classConnectClass.html#pingtime">pingtime</a> = 0;
+<a name="l00084"></a>00084 <a class="code" href="classConnectClass.html#threshold">threshold</a> = 0;
+<a name="l00085"></a>00085 <a class="code" href="classConnectClass.html#sendqmax">sendqmax</a> = 0;
+<a name="l00086"></a>00086 <a class="code" href="classConnectClass.html#recvqmax">recvqmax</a> = 0;
+<a name="l00087"></a>00087 strlcpy(<a class="code" href="classConnectClass.html#host_5BMAXBUF_5D">host</a>,<span class="stringliteral">""</span>,MAXBUF);
+<a name="l00088"></a>00088 strlcpy(<a class="code" href="classConnectClass.html#pass_5BMAXBUF_5D">pass</a>,<span class="stringliteral">""</span>,MAXBUF);
+<a name="l00089"></a>00089 }
+<a name="l00090"></a>00090 };
+<a name="l00091"></a>00091
+<a name="l00094"></a><a class="code" href="users_8h.html#InvitedList">00094</a> <span class="keyword">typedef</span> std::vector&lt;Invited&gt; <a class="code" href="users_8h.html#InvitedList">InvitedList</a>;
+<a name="l00095"></a>00095
+<a name="l00096"></a>00096
+<a name="l00097"></a>00097
+<a name="l00100"></a><a class="code" href="users_8h.html#ClassVector">00100</a> <span class="keyword">typedef</span> std::vector&lt;ConnectClass&gt; <a class="code" href="users_8h.html#ClassVector">ClassVector</a>;
+<a name="l00101"></a>00101
<a name="l00108"></a><a class="code" href="classuserrec.html">00108</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>
-00109 {
-00110 <span class="keyword">private</span>:
-00111
-<a name="l00114"></a><a class="code" href="classuserrec.html#r0">00114</a> <a class="code" href="users_8h.html#a6">InvitedList</a> <a class="code" href="classuserrec.html#r0">invites</a>;
-00115 <span class="keyword">public</span>:
-00116
-<a name="l00121"></a><a class="code" href="classuserrec.html#o0">00121</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#o0">nick</a>[NICKMAX];
-00122
-<a name="l00126"></a><a class="code" href="classuserrec.html#o1">00126</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#o1">ident</a>[IDENTMAX+2];
-00127
-<a name="l00131"></a><a class="code" href="classuserrec.html#o2">00131</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#o2">dhost</a>[160];
-00132
-<a name="l00135"></a><a class="code" href="classuserrec.html#o3">00135</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#o3">fullname</a>[MAXGECOS+1];
-00136
-<a name="l00144"></a><a class="code" href="classuserrec.html#o4">00144</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#o4">modes</a>[54];
-00145
-<a name="l00146"></a><a class="code" href="classuserrec.html#o5">00146</a> <a class="code" href="classucrec.html">ucrec</a> <a class="code" href="classuserrec.html#o5">chans</a>[MAXCHANS];
-00147
-<a name="l00150"></a><a class="code" href="classuserrec.html#o6">00150</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#o6">server</a>;
-00151
-<a name="l00155"></a><a class="code" href="classuserrec.html#o7">00155</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#o7">awaymsg</a>[MAXAWAY+1];
-00156
-<a name="l00161"></a><a class="code" href="classuserrec.html#o8">00161</a> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#o8">flood</a>;
-00162
-<a name="l00167"></a><a class="code" href="classuserrec.html#o9">00167</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#o9">timeout</a>;
-00168
-<a name="l00174"></a><a class="code" href="classuserrec.html#o10">00174</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#o10">oper</a>[NICKMAX];
-00175
-<a name="l00178"></a><a class="code" href="classuserrec.html#o11">00178</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#o11">dns_done</a>;
-00179
-<a name="l00182"></a><a class="code" href="classuserrec.html#o12">00182</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#o12">pingmax</a>;
-00183
-<a name="l00188"></a><a class="code" href="classuserrec.html#o13">00188</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#o13">password</a>[MAXBUF];
-00189
-<a name="l00194"></a><a class="code" href="classuserrec.html#o14">00194</a> std::string <a class="code" href="classuserrec.html#o14">recvq</a>;
-00195
-<a name="l00199"></a><a class="code" href="classuserrec.html#o15">00199</a> std::string <a class="code" href="classuserrec.html#o15">sendq</a>;
-00200
-<a name="l00203"></a><a class="code" href="classuserrec.html#o16">00203</a> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#o16">lines_in</a>;
-<a name="l00204"></a><a class="code" href="classuserrec.html#o17">00204</a> time_t <a class="code" href="classuserrec.html#o17">reset_due</a>;
-<a name="l00205"></a><a class="code" href="classuserrec.html#o18">00205</a> <span class="keywordtype">long</span> <a class="code" href="classuserrec.html#o18">threshold</a>;
-00206
-00207 <span class="comment">/* Write error string</span>
-00208 <span class="comment"> */</span>
-<a name="l00209"></a><a class="code" href="classuserrec.html#o19">00209</a> std::string <a class="code" href="classuserrec.html#o19">WriteError</a>;
-00210
-<a name="l00213"></a><a class="code" href="classuserrec.html#o20">00213</a> <span class="keywordtype">long</span> <a class="code" href="classuserrec.html#o20">sendqmax</a>;
-00214
-<a name="l00217"></a><a class="code" href="classuserrec.html#o21">00217</a> <span class="keywordtype">long</span> <a class="code" href="classuserrec.html#o21">recvqmax</a>;
-00218
-00219 <a class="code" href="classuserrec.html#a0">userrec</a>();
-00220
-<a name="l00221"></a><a class="code" href="classuserrec.html#a1">00221</a> <span class="keyword">virtual</span> <a class="code" href="classuserrec.html#a1">~userrec</a>() { }
-00222
-00227 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a2">GetFullHost</a>();
-00228
-00234 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#a3">GetFullRealHost</a>();
-00235
-00238 <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);
-00239
-00242 <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);
-00243
-00248 <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);
-00249
-00254 <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a7">HasPermission</a>(<span class="keywordtype">char</span>* command);
-00255
-00258 <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#a8">ReadData</a>(<span class="keywordtype">void</span>* buffer, size_t size);
-00259
-00267 <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a9">AddBuffer</a>(std::string a);
-00268
-00272 <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#a10">BufferIsReady</a>();
-00273
-00276 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a11">ClearBuffer</a>();
-00277
-00285 std::string <a class="code" href="classuserrec.html#a12">GetBuffer</a>();
-00286
-00292 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a13">SetWriteError</a>(std::string error);
-00293
-00297 std::string <a class="code" href="classuserrec.html#a14">GetWriteError</a>();
-00298
-00304 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a15">AddWriteBuf</a>(std::string data);
-00305
-00312 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a16">FlushWriteBuf</a>();
-00313
-00316 <a class="code" href="users_8h.html#a6">InvitedList</a>* <a class="code" href="classuserrec.html#a17">GetInviteList</a>();
-00317
-00320 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#a18">CloseSocket</a>();
-00321 };
-00322
+<a name="l00109"></a>00109 {
+<a name="l00110"></a>00110 <span class="keyword">private</span>:
+<a name="l00111"></a>00111
+<a name="l00114"></a><a class="code" href="classuserrec.html#invites">00114</a> <a class="code" href="users_8h.html#InvitedList">InvitedList</a> <a class="code" href="classuserrec.html#invites">invites</a>;
+<a name="l00115"></a>00115 <span class="keyword">public</span>:
+<a name="l00116"></a>00116
+<a name="l00121"></a><a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">00121</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#nick_5BNICKMAX_5D">nick</a>[NICKMAX];
+<a name="l00122"></a>00122
+<a name="l00126"></a><a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">00126</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#ident_5BIDENTMAX_2B_32_5D">ident</a>[IDENTMAX+2];
+<a name="l00127"></a>00127
+<a name="l00131"></a><a class="code" href="classuserrec.html#dhost_5B_31_36_30_5D">00131</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#dhost_5B_31_36_30_5D">dhost</a>[160];
+<a name="l00132"></a>00132
+<a name="l00135"></a><a class="code" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">00135</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#fullname_5BMAXGECOS_2B_31_5D">fullname</a>[MAXGECOS+1];
+<a name="l00136"></a>00136
+<a name="l00144"></a><a class="code" href="classuserrec.html#modes_5B_35_34_5D">00144</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#modes_5B_35_34_5D">modes</a>[54];
+<a name="l00145"></a>00145
+<a name="l00146"></a><a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">00146</a> <a class="code" href="classucrec.html">ucrec</a> <a class="code" href="classuserrec.html#chans_5BMAXCHANS_5D">chans</a>[MAXCHANS];
+<a name="l00147"></a>00147
+<a name="l00150"></a><a class="code" href="classuserrec.html#server">00150</a> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#server">server</a>;
+<a name="l00151"></a>00151
+<a name="l00155"></a><a class="code" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">00155</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#awaymsg_5BMAXAWAY_2B_31_5D">awaymsg</a>[MAXAWAY+1];
+<a name="l00156"></a>00156
+<a name="l00161"></a><a class="code" href="classuserrec.html#flood">00161</a> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#flood">flood</a>;
+<a name="l00162"></a>00162
+<a name="l00167"></a><a class="code" href="classuserrec.html#timeout">00167</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#timeout">timeout</a>;
+<a name="l00168"></a>00168
+<a name="l00174"></a><a class="code" href="classuserrec.html#oper_5BNICKMAX_5D">00174</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#oper_5BNICKMAX_5D">oper</a>[NICKMAX];
+<a name="l00175"></a>00175
+<a name="l00178"></a><a class="code" href="classuserrec.html#dns_5Fdone">00178</a> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#dns_5Fdone">dns_done</a>;
+<a name="l00179"></a>00179
+<a name="l00182"></a><a class="code" href="classuserrec.html#pingmax">00182</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#pingmax">pingmax</a>;
+<a name="l00183"></a>00183
+<a name="l00188"></a><a class="code" href="classuserrec.html#password_5BMAXBUF_5D">00188</a> <span class="keywordtype">char</span> <a class="code" href="classuserrec.html#password_5BMAXBUF_5D">password</a>[MAXBUF];
+<a name="l00189"></a>00189
+<a name="l00194"></a><a class="code" href="classuserrec.html#recvq">00194</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classuserrec.html#recvq">recvq</a>;
+<a name="l00195"></a>00195
+<a name="l00199"></a><a class="code" href="classuserrec.html#sendq">00199</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classuserrec.html#sendq">sendq</a>;
+<a name="l00200"></a>00200
+<a name="l00203"></a><a class="code" href="classuserrec.html#lines_5Fin">00203</a> <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#lines_5Fin">lines_in</a>;
+<a name="l00204"></a><a class="code" href="classuserrec.html#reset_5Fdue">00204</a> time_t <a class="code" href="classuserrec.html#reset_5Fdue">reset_due</a>;
+<a name="l00205"></a><a class="code" href="classuserrec.html#threshold">00205</a> <span class="keywordtype">long</span> <a class="code" href="classuserrec.html#threshold">threshold</a>;
+<a name="l00206"></a>00206
+<a name="l00207"></a>00207 <span class="comment">/* Write error string</span>
+<a name="l00208"></a>00208 <span class="comment"> */</span>
+<a name="l00209"></a><a class="code" href="classuserrec.html#WriteError">00209</a> <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classuserrec.html#WriteError">WriteError</a>;
+<a name="l00210"></a>00210
+<a name="l00213"></a><a class="code" href="classuserrec.html#sendqmax">00213</a> <span class="keywordtype">long</span> <a class="code" href="classuserrec.html#sendqmax">sendqmax</a>;
+<a name="l00214"></a>00214
+<a name="l00217"></a><a class="code" href="classuserrec.html#recvqmax">00217</a> <span class="keywordtype">long</span> <a class="code" href="classuserrec.html#recvqmax">recvqmax</a>;
+<a name="l00218"></a>00218
+<a name="l00219"></a>00219 <a class="code" href="classuserrec.html#userrec_28_29">userrec</a>();
+<a name="l00220"></a>00220
+<a name="l00221"></a><a class="code" href="classuserrec.html#_7Euserrec_28_29">00221</a> <span class="keyword">virtual</span> <a class="code" href="classuserrec.html#_7Euserrec_28_29">~userrec</a>() { }
+<a name="l00222"></a>00222
+<a name="l00227"></a>00227 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#GetFullHost_28_29">GetFullHost</a>();
+<a name="l00228"></a>00228
+<a name="l00234"></a>00234 <span class="keyword">virtual</span> <span class="keywordtype">char</span>* <a class="code" href="classuserrec.html#GetFullRealHost_28_29">GetFullRealHost</a>();
+<a name="l00235"></a>00235
+<a name="l00238"></a>00238 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#IsInvited_28char_20_2Achannel_29">IsInvited</a>(<span class="keywordtype">char</span>* channel);
+<a name="l00239"></a>00239
+<a name="l00242"></a>00242 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#InviteTo_28char_20_2Achannel_29">InviteTo</a>(<span class="keywordtype">char</span>* channel);
+<a name="l00243"></a>00243
+<a name="l00248"></a>00248 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#RemoveInvite_28char_20_2Achannel_29">RemoveInvite</a>(<span class="keywordtype">char</span>* channel);
+<a name="l00249"></a>00249
+<a name="l00254"></a>00254 <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#HasPermission_28char_20_2Acommand_29">HasPermission</a>(<span class="keywordtype">char</span>* command);
+<a name="l00255"></a>00255
+<a name="l00258"></a>00258 <span class="keywordtype">int</span> <a class="code" href="classuserrec.html#ReadData_28void_20_2Abuffer_2C_20size_5Ft_20size_29">ReadData</a>(<span class="keywordtype">void</span>* buffer, size_t size);
+<a name="l00259"></a>00259
+<a name="l00267"></a>00267 <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#AddBuffer_28std_3A_3Astring_20a_29">AddBuffer</a>(<a class="code" href="namespaceirc.html#string">std::string</a> a);
+<a name="l00268"></a>00268
+<a name="l00272"></a>00272 <span class="keywordtype">bool</span> <a class="code" href="classuserrec.html#BufferIsReady_28_29">BufferIsReady</a>();
+<a name="l00273"></a>00273
+<a name="l00276"></a>00276 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#ClearBuffer_28_29">ClearBuffer</a>();
+<a name="l00277"></a>00277
+<a name="l00285"></a>00285 <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classuserrec.html#GetBuffer_28_29">GetBuffer</a>();
+<a name="l00286"></a>00286
+<a name="l00292"></a>00292 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#SetWriteError_28std_3A_3Astring_20error_29">SetWriteError</a>(<a class="code" href="namespaceirc.html#string">std::string</a> error);
+<a name="l00293"></a>00293
+<a name="l00297"></a>00297 <a class="code" href="namespaceirc.html#string">std::string</a> <a class="code" href="classuserrec.html#GetWriteError_28_29">GetWriteError</a>();
+<a name="l00298"></a>00298
+<a name="l00304"></a>00304 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#AddWriteBuf_28std_3A_3Astring_20data_29">AddWriteBuf</a>(<a class="code" href="namespaceirc.html#string">std::string</a> data);
+<a name="l00305"></a>00305
+<a name="l00312"></a>00312 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#FlushWriteBuf_28_29">FlushWriteBuf</a>();
+<a name="l00313"></a>00313
+<a name="l00316"></a>00316 <a class="code" href="users_8h.html#InvitedList">InvitedList</a>* <a class="code" href="classuserrec.html#GetInviteList_28_29">GetInviteList</a>();
+<a name="l00317"></a>00317
+<a name="l00320"></a>00320 <span class="keywordtype">void</span> <a class="code" href="classuserrec.html#CloseSocket_28_29">CloseSocket</a>();
+<a name="l00321"></a>00321 };
+<a name="l00322"></a>00322
<a name="l00325"></a><a class="code" href="classWhoWasUser.html">00325</a> <span class="keyword">class </span><a class="code" href="classWhoWasUser.html">WhoWasUser</a>
-00326 {
-00327 <span class="keyword">public</span>:
-<a name="l00328"></a><a class="code" href="classWhoWasUser.html#o0">00328</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#o0">nick</a>[NICKMAX];
-<a name="l00329"></a><a class="code" href="classWhoWasUser.html#o1">00329</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#o1">ident</a>[IDENTMAX+1];
-<a name="l00330"></a><a class="code" href="classWhoWasUser.html#o2">00330</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#o2">dhost</a>[160];
-<a name="l00331"></a><a class="code" href="classWhoWasUser.html#o3">00331</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#o3">host</a>[160];
-<a name="l00332"></a><a class="code" href="classWhoWasUser.html#o4">00332</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#o4">fullname</a>[MAXGECOS+1];
-<a name="l00333"></a><a class="code" href="classWhoWasUser.html#o5">00333</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#o5">server</a>[256];
-<a name="l00334"></a><a class="code" href="classWhoWasUser.html#o6">00334</a> time_t <a class="code" href="classWhoWasUser.html#o6">signon</a>;
-00335 };
-00336
-00337 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:21 2005 for InspIRCd by
+<a name="l00326"></a>00326 {
+<a name="l00327"></a>00327 <span class="keyword">public</span>:
+<a name="l00328"></a><a class="code" href="classWhoWasUser.html#nick_5BNICKMAX_5D">00328</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#nick_5BNICKMAX_5D">nick</a>[NICKMAX];
+<a name="l00329"></a><a class="code" href="classWhoWasUser.html#ident_5BIDENTMAX_2B_31_5D">00329</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#ident_5BIDENTMAX_2B_31_5D">ident</a>[IDENTMAX+1];
+<a name="l00330"></a><a class="code" href="classWhoWasUser.html#dhost_5B_31_36_30_5D">00330</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#dhost_5B_31_36_30_5D">dhost</a>[160];
+<a name="l00331"></a><a class="code" href="classWhoWasUser.html#host_5B_31_36_30_5D">00331</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#host_5B_31_36_30_5D">host</a>[160];
+<a name="l00332"></a><a class="code" href="classWhoWasUser.html#fullname_5BMAXGECOS_2B_31_5D">00332</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#fullname_5BMAXGECOS_2B_31_5D">fullname</a>[MAXGECOS+1];
+<a name="l00333"></a><a class="code" href="classWhoWasUser.html#server_5B_32_35_36_5D">00333</a> <span class="keywordtype">char</span> <a class="code" href="classWhoWasUser.html#server_5B_32_35_36_5D">server</a>[256];
+<a name="l00334"></a><a class="code" href="classWhoWasUser.html#signon">00334</a> time_t <a class="code" href="classWhoWasUser.html#signon">signon</a>;
+<a name="l00335"></a>00335 };
+<a name="l00336"></a>00336
+<a name="l00337"></a>00337 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/users_8h.html b/docs/module-doc/users_8h.html
index 5170f4fbb..c26992c15 100644
--- a/docs/module-doc/users_8h.html
+++ b/docs/module-doc/users_8h.html
@@ -1,85 +1,88 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: users.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>users.h File Reference</h1><code>#include "inspircd_config.h"</code><br>
-<code>#include "<a class="el" href="channels_8h-source.html">channels.h</a>"</code><br>
-<code>#include "<a class="el" href="connection_8h-source.html">connection.h</a>"</code><br>
-<code>#include "inspstring.h"</code><br>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>users.h File Reference</h1><code>#include &quot;inspircd_config.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="channels_8h-source.html">channels.h</a>&quot;</code><br>
+<code>#include &quot;inspstring.h&quot;</code><br>
+<code>#include &quot;<a class="el" href="connection_8h-source.html">connection.h</a>&quot;</code><br>
<code>#include &lt;string&gt;</code><br>
<p>
-Include dependency graph for users.h:<p><center><img src="users_8h__incl.gif" border="0" usemap="#users.h_map" alt="Include dependency graph"></center>
+Include dependency graph for users.h:<p><center><img src="users_8h__incl.gif" border="0" usemap="#users.h_map" alt=""></center>
<map name="users.h_map">
-<area href="channels_8h.html" shape="rect" coords="181,82,266,109" alt="">
-<area href="connection_8h.html" shape="rect" coords="58,82,157,109" alt="">
+<area href="channels_8h-source.html" shape="rect" coords="128,108,213,135" alt="">
+<area href="connection_8h-source.html" shape="rect" coords="121,58,220,84" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="users_8h__dep__incl.gif" border="0" usemap="#users.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="users_8h__dep__incl.gif" border="0" usemap="#users.hdep_map" alt=""></center>
<map name="users.hdep_map">
-<area href="channels_8cpp.html" shape="rect" coords="432,9,530,35" alt="">
-<area href="message_8h.html" shape="rect" coords="376,83,461,110" alt="">
-<area href="mode_8h.html" shape="rect" coords="485,83,552,110" alt="">
-<area href="xline_8h.html" shape="rect" coords="290,83,352,110" alt="">
-<area href="modules_8cpp.html" shape="rect" coords="272,9,370,35" alt="">
-<area href="commands_8h.html" shape="rect" coords="64,83,162,110" alt="">
-<area href="users_8cpp.html" shape="rect" coords="186,83,266,110" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="269,83,368,109" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="269,159,368,185" alt="">
+<area href="users_8cpp-source.html" shape="rect" coords="131,311,211,337" alt="">
+<area href="commands_8h-source.html" shape="rect" coords="121,209,220,236" alt="">
+<area href="message_8h-source.html" shape="rect" coords="128,57,213,84" alt="">
+<area href="mode_8h-source.html" shape="rect" coords="137,108,204,135" alt="">
+<area href="xline_8h-source.html" shape="rect" coords="140,159,201,185" alt="">
</map>
<p>
-<a href="users_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="users_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classConnectClass.html">ConnectClass</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classInvited.html">Invited</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds information relevent to &lt;connect allow&gt; and &lt;connect deny&gt; tags in the config file. </em> <a href="classConnectClass.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classInvited.html">Invited</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a channel name to which a user has been invited. <a href="classInvited.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classConnectClass.html">ConnectClass</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a channel name to which a user has been invited. </em> <a href="classInvited.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classuserrec.html">userrec</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds information relevent to &lt;connect allow&gt; and &lt;connect deny&gt; tags in the config file. <a href="classConnectClass.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classuserrec.html">userrec</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds all information about a user This class stores all information about a user connected to the irc server. </em> <a href="classuserrec.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds all information about a user This class stores all information about a user connected to the irc server. <a href="classuserrec.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWhoWasUser.html">WhoWasUser</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A lightweight userrec used by WHOWAS. </em> <a href="classWhoWasUser.html#_details">More...</a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Defines</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8h.html#a0">STATUS_OP</a>&nbsp;&nbsp;&nbsp;4</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A lightweight userrec used by WHOWAS. <a href="classWhoWasUser.html#_details">More...</a><br></td></tr>
+<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html#STATUS_5FOP">STATUS_OP</a>&nbsp;&nbsp;&nbsp;4</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8h.html#a1">STATUS_HOP</a>&nbsp;&nbsp;&nbsp;2</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html#STATUS_5FHOP">STATUS_HOP</a>&nbsp;&nbsp;&nbsp;2</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8h.html#a2">STATUS_VOICE</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html#STATUS_5FVOICE">STATUS_VOICE</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8h.html#a3">STATUS_NORMAL</a>&nbsp;&nbsp;&nbsp;0</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html#STATUS_5FNORMAL">STATUS_NORMAL</a>&nbsp;&nbsp;&nbsp;0</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8h.html#a4">CC_ALLOW</a>&nbsp;&nbsp;&nbsp;0</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html#CC_5FALLOW">CC_ALLOW</a>&nbsp;&nbsp;&nbsp;0</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8h.html#a5">CC_DENY</a>&nbsp;&nbsp;&nbsp;1</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html#CC_5FDENY">CC_DENY</a>&nbsp;&nbsp;&nbsp;1</td></tr>
-<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classInvited.html">Invited</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8h.html#a6">InvitedList</a></td></tr>
+<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="classInvited.html">Invited</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html#InvitedList">InvitedList</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete list of all channels to which a user has been invited and has not yet joined. </em> <a href="#a6"></a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::vector&lt; <a class="el" href="classConnectClass.html">ConnectClass</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="users_8h.html#a7">ClassVector</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete list of all channels to which a user has been invited and has not yet joined. <a href="#InvitedList"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="classConnectClass.html">ConnectClass</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="users_8h.html#ClassVector">ClassVector</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete list of all allow and deny tags from the configuration file (connection classes). </em> <a href="#a7"></a><em><br><br></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds a complete list of all allow and deny tags from the configuration file (connection classes). <a href="#ClassVector"></a><br></td></tr>
</table>
<hr><h2>Define Documentation</h2>
-<a name="a4" doxytag="users.h::CC_ALLOW"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CC_5FALLOW"></a><!-- doxytag: member="users.h::CC_ALLOW" ref="CC_5FALLOW" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CC_ALLOW&nbsp;&nbsp;&nbsp;0
+ <td class="md" nowrap valign="top">#define CC_ALLOW&nbsp;&nbsp;&nbsp;0 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -92,18 +95,19 @@ This graph shows which files directly or indirectly include this file:<p><center
Definition at line <a class="el" href="users_8h-source.html#l00031">31</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="a5" doxytag="users.h::CC_DENY"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="CC_5FDENY"></a><!-- doxytag: member="users.h::CC_DENY" ref="CC_5FDENY" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define CC_DENY&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top">#define CC_DENY&nbsp;&nbsp;&nbsp;1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -116,18 +120,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00031">31</a> of fi
Definition at line <a class="el" href="users_8h-source.html#l00032">32</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="a1" doxytag="users.h::STATUS_HOP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="STATUS_5FHOP"></a><!-- doxytag: member="users.h::STATUS_HOP" ref="STATUS_5FHOP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define STATUS_HOP&nbsp;&nbsp;&nbsp;2
+ <td class="md" nowrap valign="top">#define STATUS_HOP&nbsp;&nbsp;&nbsp;2 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -140,18 +145,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00032">32</a> of fi
Definition at line <a class="el" href="users_8h-source.html#l00027">27</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="a3" doxytag="users.h::STATUS_NORMAL"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="STATUS_5FNORMAL"></a><!-- doxytag: member="users.h::STATUS_NORMAL" ref="STATUS_5FNORMAL" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define STATUS_NORMAL&nbsp;&nbsp;&nbsp;0
+ <td class="md" nowrap valign="top">#define STATUS_NORMAL&nbsp;&nbsp;&nbsp;0 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -164,18 +170,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00027">27</a> of fi
Definition at line <a class="el" href="users_8h-source.html#l00029">29</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="a0" doxytag="users.h::STATUS_OP"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="STATUS_5FOP"></a><!-- doxytag: member="users.h::STATUS_OP" ref="STATUS_5FOP" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define STATUS_OP&nbsp;&nbsp;&nbsp;4
+ <td class="md" nowrap valign="top">#define STATUS_OP&nbsp;&nbsp;&nbsp;4 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -188,18 +195,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00029">29</a> of fi
Definition at line <a class="el" href="users_8h-source.html#l00026">26</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<a name="a2" doxytag="users.h::STATUS_VOICE"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="STATUS_5FVOICE"></a><!-- doxytag: member="users.h::STATUS_VOICE" ref="STATUS_5FVOICE" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> #define STATUS_VOICE&nbsp;&nbsp;&nbsp;1
+ <td class="md" nowrap valign="top">#define STATUS_VOICE&nbsp;&nbsp;&nbsp;1 </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -213,18 +221,19 @@ Definition at line <a class="el" href="users_8h-source.html#l00028">28</a> of fi
</tr>
</table>
<hr><h2>Typedef Documentation</h2>
-<a name="a7" doxytag="users.h::ClassVector"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="ClassVector"></a><!-- doxytag: member="users.h::ClassVector" ref="ClassVector" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classConnectClass.html">ConnectClass</a>&gt; <a class="el" href="users_8h.html#a7">ClassVector</a>
+ <td class="md" nowrap valign="top">typedef std::vector&lt;<a class="el" href="classConnectClass.html">ConnectClass</a>&gt; <a class="el" href="users_8h.html#ClassVector">ClassVector</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -239,18 +248,19 @@ Holds a complete list of all allow and deny tags from the configuration file (co
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="a6" doxytag="users.h::InvitedList"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="InvitedList"></a><!-- doxytag: member="users.h::InvitedList" ref="InvitedList" args="" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> typedef std::vector&lt;<a class="el" href="classInvited.html">Invited</a>&gt; <a class="el" href="users_8h.html#a6">InvitedList</a>
+ <td class="md" nowrap valign="top">typedef std::vector&lt;<a class="el" href="classInvited.html">Invited</a>&gt; <a class="el" href="users_8h.html#InvitedList">InvitedList</a> </td>
+ </tr>
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -262,14 +272,11 @@ 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#l00094">94</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#l00106">userrec::GetInviteList()</a>. </td>
+Definition at line <a class="el" href="users_8h-source.html#l00094">94</a> of file <a class="el" href="users_8h-source.html">users.h</a>. </td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:19 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/users_8h__dep__incl.gif b/docs/module-doc/users_8h__dep__incl.gif
index 2c43da56c..d0e01f1c4 100644
--- a/docs/module-doc/users_8h__dep__incl.gif
+++ b/docs/module-doc/users_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/users_8h__dep__incl.map b/docs/module-doc/users_8h__dep__incl.map
new file mode 100644
index 000000000..6ace71bf1
--- /dev/null
+++ b/docs/module-doc/users_8h__dep__incl.map
@@ -0,0 +1,8 @@
+base referer
+rect $channels_8cpp-source.html 269,83 368,109
+rect $modules_8cpp-source.html 269,159 368,185
+rect $users_8cpp-source.html 131,311 211,337
+rect $commands_8h-source.html 121,209 220,236
+rect $message_8h-source.html 128,57 213,84
+rect $mode_8h-source.html 137,108 204,135
+rect $xline_8h-source.html 140,159 201,185
diff --git a/docs/module-doc/users_8h__dep__incl.md5 b/docs/module-doc/users_8h__dep__incl.md5
new file mode 100644
index 000000000..ec176e93b
--- /dev/null
+++ b/docs/module-doc/users_8h__dep__incl.md5
@@ -0,0 +1 @@
+90f60db6818f380f159c532db95ccc66 \ No newline at end of file
diff --git a/docs/module-doc/users_8h__incl.gif b/docs/module-doc/users_8h__incl.gif
index 5aae3ba7e..e8c9defe4 100644
--- a/docs/module-doc/users_8h__incl.gif
+++ b/docs/module-doc/users_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/users_8h__incl.map b/docs/module-doc/users_8h__incl.map
new file mode 100644
index 000000000..a05768f57
--- /dev/null
+++ b/docs/module-doc/users_8h__incl.map
@@ -0,0 +1,3 @@
+base referer
+rect $channels_8h-source.html 128,108 213,135
+rect $connection_8h-source.html 121,58 220,84
diff --git a/docs/module-doc/users_8h__incl.md5 b/docs/module-doc/users_8h__incl.md5
new file mode 100644
index 000000000..1487e9c1d
--- /dev/null
+++ b/docs/module-doc/users_8h__incl.md5
@@ -0,0 +1 @@
+7879e2bf7dd2f81aa204448ca88459ab \ No newline at end of file
diff --git a/docs/module-doc/xline_8h-source.html b/docs/module-doc/xline_8h-source.html
index 1c81a5aed..898ab6283 100644
--- a/docs/module-doc/xline_8h-source.html
+++ b/docs/module-doc/xline_8h-source.html
@@ -1,131 +1,130 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: xline.h Source File</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
-<h1>xline.h</h1><a href="xline_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* +------------------------------------+</span>
-00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
-00003 <span class="comment"> * +------------------------------------+</span>
-00004 <span class="comment"> *</span>
-00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
-00006 <span class="comment"> * E-mail:</span>
-00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
-00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
-00009 <span class="comment"> * </span>
-00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
-00011 <span class="comment"> * This program is free but copyrighted software; see</span>
-00012 <span class="comment"> * the file COPYING for details.</span>
-00013 <span class="comment"> *</span>
-00014 <span class="comment"> * ---------------------------------------------------</span>
-00015 <span class="comment"> */</span>
-00016
-00017 <span class="preprocessor">#ifndef __XLINE_H</span>
-00018 <span class="preprocessor"></span><span class="preprocessor">#define __XLINE_H</span>
-00019 <span class="preprocessor"></span>
-00020 <span class="comment">// include the common header files</span>
-00021
-00022 <span class="preprocessor">#include &lt;typeinfo&gt;</span>
-00023 <span class="preprocessor">#include &lt;iostream&gt;</span>
-00024 <span class="preprocessor">#include &lt;string&gt;</span>
-00025 <span class="preprocessor">#include &lt;deque&gt;</span>
-00026 <span class="preprocessor">#include &lt;sstream&gt;</span>
-00027 <span class="preprocessor">#include &lt;vector&gt;</span>
-00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
-00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
-00030
-00031
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
+<h1>xline.h</h1><a href="xline_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* +------------------------------------+</span>
+<a name="l00002"></a>00002 <span class="comment"> * | Inspire Internet Relay Chat Daemon |</span>
+<a name="l00003"></a>00003 <span class="comment"> * +------------------------------------+</span>
+<a name="l00004"></a>00004 <span class="comment"> *</span>
+<a name="l00005"></a>00005 <span class="comment"> * Inspire is copyright (C) 2002-2004 ChatSpike-Dev.</span>
+<a name="l00006"></a>00006 <span class="comment"> * E-mail:</span>
+<a name="l00007"></a>00007 <span class="comment"> * &lt;brain@chatspike.net&gt;</span>
+<a name="l00008"></a>00008 <span class="comment"> * &lt;Craig@chatspike.net&gt;</span>
+<a name="l00009"></a>00009 <span class="comment"> * </span>
+<a name="l00010"></a>00010 <span class="comment"> * Written by Craig Edwards, Craig McLure, and others.</span>
+<a name="l00011"></a>00011 <span class="comment"> * This program is free but copyrighted software; see</span>
+<a name="l00012"></a>00012 <span class="comment"> * the file COPYING for details.</span>
+<a name="l00013"></a>00013 <span class="comment"> *</span>
+<a name="l00014"></a>00014 <span class="comment"> * ---------------------------------------------------</span>
+<a name="l00015"></a>00015 <span class="comment"> */</span>
+<a name="l00016"></a>00016
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef __XLINE_H</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __XLINE_H</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="comment">// include the common header files</span>
+<a name="l00021"></a>00021
+<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;typeinfo&gt;</span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;iostream&gt;</span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;string&gt;</span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;deque&gt;</span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;sstream&gt;</span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;vector&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include "<a class="code" href="users_8h.html">users.h</a>"</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include "<a class="code" href="channels_8h.html">channels.h</a>"</span>
+<a name="l00030"></a>00030
+<a name="l00031"></a>00031
<a name="l00034"></a><a class="code" href="classXLine.html">00034</a> <span class="keyword">class </span><a class="code" href="classXLine.html">XLine</a> : <span class="keyword">public</span> <a class="code" href="classclassbase.html">classbase</a>
-00035 {
-00036 <span class="keyword">public</span>:
-00037
-<a name="l00040"></a><a class="code" href="classXLine.html#o0">00040</a> time_t <a class="code" href="classXLine.html#o0">set_time</a>;
-00041
-<a name="l00044"></a><a class="code" href="classXLine.html#o1">00044</a> <span class="keywordtype">long</span> <a class="code" href="classXLine.html#o1">duration</a>;
-00045
-<a name="l00048"></a><a class="code" href="classXLine.html#o2">00048</a> <span class="keywordtype">char</span> <a class="code" href="classXLine.html#o2">source</a>[256];
-00049
-<a name="l00052"></a><a class="code" href="classXLine.html#o3">00052</a> <span class="keywordtype">char</span> <a class="code" href="classXLine.html#o3">reason</a>[MAXBUF];
-00053
-<a name="l00056"></a><a class="code" href="classXLine.html#o4">00056</a> <span class="keywordtype">long</span> <a class="code" href="classXLine.html#o4">n_matches</a>;
-00057
-00058 };
-00059
+<a name="l00035"></a>00035 {
+<a name="l00036"></a>00036 <span class="keyword">public</span>:
+<a name="l00037"></a>00037
+<a name="l00040"></a><a class="code" href="classXLine.html#set_5Ftime">00040</a> time_t <a class="code" href="classXLine.html#set_5Ftime">set_time</a>;
+<a name="l00041"></a>00041
+<a name="l00044"></a><a class="code" href="classXLine.html#duration">00044</a> <span class="keywordtype">long</span> <a class="code" href="classXLine.html#duration">duration</a>;
+<a name="l00045"></a>00045
+<a name="l00048"></a><a class="code" href="classXLine.html#source_5B_32_35_36_5D">00048</a> <span class="keywordtype">char</span> <a class="code" href="classXLine.html#source_5B_32_35_36_5D">source</a>[256];
+<a name="l00049"></a>00049
+<a name="l00052"></a><a class="code" href="classXLine.html#reason_5BMAXBUF_5D">00052</a> <span class="keywordtype">char</span> <a class="code" href="classXLine.html#reason_5BMAXBUF_5D">reason</a>[MAXBUF];
+<a name="l00053"></a>00053
+<a name="l00056"></a><a class="code" href="classXLine.html#n_5Fmatches">00056</a> <span class="keywordtype">long</span> <a class="code" href="classXLine.html#n_5Fmatches">n_matches</a>;
+<a name="l00057"></a>00057
+<a name="l00058"></a>00058 };
+<a name="l00059"></a>00059
<a name="l00062"></a><a class="code" href="classKLine.html">00062</a> <span class="keyword">class </span><a class="code" href="classKLine.html">KLine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a>
-00063 {
-00064 <span class="keyword">public</span>:
-<a name="l00068"></a><a class="code" href="classKLine.html#o0">00068</a> <span class="keywordtype">char</span> <a class="code" href="classKLine.html#o0">hostmask</a>[200];
-00069 };
-00070
+<a name="l00063"></a>00063 {
+<a name="l00064"></a>00064 <span class="keyword">public</span>:
+<a name="l00068"></a><a class="code" href="classKLine.html#hostmask_5B_32_30_30_5D">00068</a> <span class="keywordtype">char</span> <a class="code" href="classKLine.html#hostmask_5B_32_30_30_5D">hostmask</a>[200];
+<a name="l00069"></a>00069 };
+<a name="l00070"></a>00070
<a name="l00073"></a><a class="code" href="classGLine.html">00073</a> <span class="keyword">class </span><a class="code" href="classGLine.html">GLine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a>
-00074 {
-00075 <span class="keyword">public</span>:
-<a name="l00079"></a><a class="code" href="classGLine.html#o0">00079</a> <span class="keywordtype">char</span> <a class="code" href="classGLine.html#o0">hostmask</a>[200];
-00080 };
-00081
+<a name="l00074"></a>00074 {
+<a name="l00075"></a>00075 <span class="keyword">public</span>:
+<a name="l00079"></a><a class="code" href="classGLine.html#hostmask_5B_32_30_30_5D">00079</a> <span class="keywordtype">char</span> <a class="code" href="classGLine.html#hostmask_5B_32_30_30_5D">hostmask</a>[200];
+<a name="l00080"></a>00080 };
+<a name="l00081"></a>00081
<a name="l00082"></a><a class="code" href="classELine.html">00082</a> <span class="keyword">class </span><a class="code" href="classELine.html">ELine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a>
-00083 {
-00084 <span class="keyword">public</span>:
-<a name="l00088"></a><a class="code" href="classELine.html#o0">00088</a> <span class="keywordtype">char</span> <a class="code" href="classELine.html#o0">hostmask</a>[200];
-00089 };
-00090
+<a name="l00083"></a>00083 {
+<a name="l00084"></a>00084 <span class="keyword">public</span>:
+<a name="l00088"></a><a class="code" href="classELine.html#hostmask_5B_32_30_30_5D">00088</a> <span class="keywordtype">char</span> <a class="code" href="classELine.html#hostmask_5B_32_30_30_5D">hostmask</a>[200];
+<a name="l00089"></a>00089 };
+<a name="l00090"></a>00090
<a name="l00093"></a><a class="code" href="classZLine.html">00093</a> <span class="keyword">class </span><a class="code" href="classZLine.html">ZLine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a>
-00094 {
-00095 <span class="keyword">public</span>:
-<a name="l00099"></a><a class="code" href="classZLine.html#o0">00099</a> <span class="keywordtype">char</span> <a class="code" href="classZLine.html#o0">ipaddr</a>[40];
-<a name="l00103"></a><a class="code" href="classZLine.html#o1">00103</a> <span class="keywordtype">bool</span> <a class="code" href="classZLine.html#o1">is_global</a>;
-00104 };
-00105
+<a name="l00094"></a>00094 {
+<a name="l00095"></a>00095 <span class="keyword">public</span>:
+<a name="l00099"></a><a class="code" href="classZLine.html#ipaddr_5B_34_30_5D">00099</a> <span class="keywordtype">char</span> <a class="code" href="classZLine.html#ipaddr_5B_34_30_5D">ipaddr</a>[40];
+<a name="l00103"></a><a class="code" href="classZLine.html#is_5Fglobal">00103</a> <span class="keywordtype">bool</span> <a class="code" href="classZLine.html#is_5Fglobal">is_global</a>;
+<a name="l00104"></a>00104 };
+<a name="l00105"></a>00105
<a name="l00108"></a><a class="code" href="classQLine.html">00108</a> <span class="keyword">class </span><a class="code" href="classQLine.html">QLine</a> : <span class="keyword">public</span> <a class="code" href="classXLine.html">XLine</a>
-00109 {
-00110 <span class="keyword">public</span>:
-<a name="l00114"></a><a class="code" href="classQLine.html#o0">00114</a> <span class="keywordtype">char</span> <a class="code" href="classQLine.html#o0">nick</a>[64];
-<a name="l00118"></a><a class="code" href="classQLine.html#o1">00118</a> <span class="keywordtype">bool</span> <a class="code" href="classQLine.html#o1">is_global</a>;
-00119 };
-00120
-00121 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a0">read_xline_defaults</a>();
-00122
-00123 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a1">add_gline</a>(<span class="keywordtype">long</span> duration, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
-00124 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a2">add_qline</a>(<span class="keywordtype">long</span> duration, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* nickname);
-00125 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a3">add_zline</a>(<span class="keywordtype">long</span> duration, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr);
-00126 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a4">add_kline</a>(<span class="keywordtype">long</span> duration, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
-00127 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a5">add_eline</a>(<span class="keywordtype">long</span> duration, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
-00128
-00129 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a6">del_gline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
-00130 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a7">del_qline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nickname);
-00131 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a8">del_zline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr);
-00132 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a9">del_kline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
-00133 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a10">del_eline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
-00134
-00135 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a11">matches_qline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nick);
-00136 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a12">matches_gline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* host);
-00137 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a13">matches_zline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr);
-00138 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a14">matches_kline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* host);
-00139 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#a15">matches_exception</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* host);
-00140
-00141 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a16">expire_lines</a>();
-00142 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a17">apply_lines</a>();
-00143
-00144 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a18">stats_k</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00145 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a19">stats_g</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00146 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a20">stats_q</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00147 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a21">stats_z</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00148 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a22">stats_e</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
-00149
-00150 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a23">gline_set_creation_time</a>(<span class="keywordtype">char</span>* host, time_t create_time);
-00151 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a24">qline_set_creation_time</a>(<span class="keywordtype">char</span>* nick, time_t create_time);
-00152 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a25">zline_set_creation_time</a>(<span class="keywordtype">char</span>* ip, time_t create_time);
-00153
-00154 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a26">zline_make_global</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr);
-00155 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#a27">qline_make_global</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nickname);
-00156
-00157 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#a28">sync_xlines</a>(<a class="code" href="classserverrec.html">serverrec</a>* serv, <span class="keywordtype">char</span>* tcp_host);
-00158
-00159 <span class="preprocessor">#endif</span>
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:15:21 2005 for InspIRCd by
+<a name="l00109"></a>00109 {
+<a name="l00110"></a>00110 <span class="keyword">public</span>:
+<a name="l00114"></a><a class="code" href="classQLine.html#nick_5B_36_34_5D">00114</a> <span class="keywordtype">char</span> <a class="code" href="classQLine.html#nick_5B_36_34_5D">nick</a>[64];
+<a name="l00118"></a><a class="code" href="classQLine.html#is_5Fglobal">00118</a> <span class="keywordtype">bool</span> <a class="code" href="classQLine.html#is_5Fglobal">is_global</a>;
+<a name="l00119"></a>00119 };
+<a name="l00120"></a>00120
+<a name="l00121"></a>00121 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#read_5Fxline_5Fdefaults_28_29">read_xline_defaults</a>();
+<a name="l00122"></a>00122
+<a name="l00123"></a>00123 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_gline</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
+<a name="l00124"></a>00124 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29">add_qline</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* nickname);
+<a name="l00125"></a>00125 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29">add_zline</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr);
+<a name="l00126"></a>00126 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_kline</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
+<a name="l00127"></a>00127 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_eline</a>(<span class="keywordtype">long</span> <a class="code" href="commands_8h.html#duration_28const_20char_20_2Astr_29">duration</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* source, <span class="keyword">const</span> <span class="keywordtype">char</span>* reason, <span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
+<a name="l00128"></a>00128
+<a name="l00129"></a>00129 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#del_5Fgline_28const_20char_20_2Ahostmask_29">del_gline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
+<a name="l00130"></a>00130 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#del_5Fqline_28const_20char_20_2Anickname_29">del_qline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nickname);
+<a name="l00131"></a>00131 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#del_5Fzline_28const_20char_20_2Aipaddr_29">del_zline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr);
+<a name="l00132"></a>00132 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#del_5Fkline_28const_20char_20_2Ahostmask_29">del_kline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
+<a name="l00133"></a>00133 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#del_5Feline_28const_20char_20_2Ahostmask_29">del_eline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* hostmask);
+<a name="l00134"></a>00134
+<a name="l00135"></a>00135 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#matches_5Fqline_28const_20char_20_2Anick_29">matches_qline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nick);
+<a name="l00136"></a>00136 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#matches_5Fgline_28const_20char_20_2Ahost_29">matches_gline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* host);
+<a name="l00137"></a>00137 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#matches_5Fzline_28const_20char_20_2Aipaddr_29">matches_zline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr);
+<a name="l00138"></a>00138 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#matches_5Fkline_28const_20char_20_2Ahost_29">matches_kline</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* host);
+<a name="l00139"></a>00139 <span class="keywordtype">char</span>* <a class="code" href="xline_8h.html#matches_5Fexception_28const_20char_20_2Ahost_29">matches_exception</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* host);
+<a name="l00140"></a>00140
+<a name="l00141"></a>00141 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#expire_5Flines_28_29">expire_lines</a>();
+<a name="l00142"></a>00142 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#apply_5Flines_28_29">apply_lines</a>();
+<a name="l00143"></a>00143
+<a name="l00144"></a>00144 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#stats_5Fk_28userrec_20_2Auser_29">stats_k</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00145"></a>00145 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#stats_5Fg_28userrec_20_2Auser_29">stats_g</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00146"></a>00146 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#stats_5Fq_28userrec_20_2Auser_29">stats_q</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00147"></a>00147 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#stats_5Fz_28userrec_20_2Auser_29">stats_z</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00148"></a>00148 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#stats_5Fe_28userrec_20_2Auser_29">stats_e</a>(<a class="code" href="classuserrec.html">userrec</a>* user);
+<a name="l00149"></a>00149
+<a name="l00150"></a>00150 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#gline_5Fset_5Fcreation_5Ftime_28char_20_2Ahost_2C_20time_5Ft_20create_5Ftime_29">gline_set_creation_time</a>(<span class="keywordtype">char</span>* host, time_t create_time);
+<a name="l00151"></a>00151 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#qline_5Fset_5Fcreation_5Ftime_28char_20_2Anick_2C_20time_5Ft_20create_5Ftime_29">qline_set_creation_time</a>(<span class="keywordtype">char</span>* nick, time_t create_time);
+<a name="l00152"></a>00152 <span class="keywordtype">void</span> <a class="code" href="xline_8h.html#zline_5Fset_5Fcreation_5Ftime_28char_20_2Aip_2C_20time_5Ft_20create_5Ftime_29">zline_set_creation_time</a>(<span class="keywordtype">char</span>* ip, time_t create_time);
+<a name="l00153"></a>00153
+<a name="l00154"></a>00154 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#zline_5Fmake_5Fglobal_28const_20char_20_2Aipaddr_29">zline_make_global</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* ipaddr);
+<a name="l00155"></a>00155 <span class="keywordtype">bool</span> <a class="code" href="xline_8h.html#qline_5Fmake_5Fglobal_28const_20char_20_2Anickname_29">qline_make_global</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* nickname);
+<a name="l00156"></a>00156
+<a name="l00157"></a>00157 <span class="preprocessor">#endif</span>
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/xline_8h.html b/docs/module-doc/xline_8h.html
index 30ed335e5..62098d9d5 100644
--- a/docs/module-doc/xline_8h.html
+++ b/docs/module-doc/xline_8h.html
@@ -1,155 +1,155 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>InspIRCd: xline.h File Reference</title>
<link href="inspircd.doxygen.css" rel="stylesheet" type="text/css">
</head><body>
-<!-- Generated by Doxygen 1.3.3 -->
-<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<!-- Generated by Doxygen 1.4.4-20050815 -->
+<div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
+<div class="nav">
+<a class="el" href="dir_000000.html">home</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000001.html">brain</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000002.html">inspircd-cvs</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000003.html">inspircd</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_000004.html">include</a></div>
<h1>xline.h File Reference</h1><code>#include &lt;typeinfo&gt;</code><br>
<code>#include &lt;iostream&gt;</code><br>
<code>#include &lt;string&gt;</code><br>
<code>#include &lt;deque&gt;</code><br>
<code>#include &lt;sstream&gt;</code><br>
<code>#include &lt;vector&gt;</code><br>
-<code>#include "<a class="el" href="users_8h-source.html">users.h</a>"</code><br>
-<code>#include "<a class="el" href="channels_8h-source.html">channels.h</a>"</code><br>
+<code>#include &quot;<a class="el" href="users_8h-source.html">users.h</a>&quot;</code><br>
+<code>#include &quot;<a class="el" href="channels_8h-source.html">channels.h</a>&quot;</code><br>
<p>
-Include dependency graph for xline.h:<p><center><img src="xline_8h__incl.gif" border="0" usemap="#xline.h_map" alt="Include dependency graph"></center>
+Include dependency graph for xline.h:<p><center><img src="xline_8h__incl.gif" border="0" usemap="#xline.h_map" alt=""></center>
<map name="xline.h_map">
-<area href="users_8h.html" shape="rect" coords="248,157,312,184" alt="">
-<area href="channels_8h.html" shape="rect" coords="298,82,384,109" alt="">
+<area href="users_8h-source.html" shape="rect" coords="124,260,188,287" alt="">
+<area href="channels_8h-source.html" shape="rect" coords="248,210,333,236" alt="">
+<area href="connection_8h-source.html" shape="rect" coords="241,362,340,388" alt="">
</map>
<p>
-This graph shows which files directly or indirectly include this file:<p><center><img src="xline_8h__dep__incl.gif" border="0" usemap="#xline.hdep_map" alt="Included by dependency graph"></center>
+This graph shows which files directly or indirectly include this file:<p><center><img src="xline_8h__dep__incl.gif" border="0" usemap="#xline.hdep_map" alt=""></center>
<map name="xline.hdep_map">
-<area href="channels_8cpp.html" shape="rect" coords="7,7,106,34" alt="">
-<area href="modules_8cpp.html" shape="rect" coords="130,7,229,34" alt="">
+<area href="channels_8cpp-source.html" shape="rect" coords="120,7,219,34" alt="">
+<area href="modules_8cpp-source.html" shape="rect" coords="120,58,219,84" alt="">
</map>
<p>
-<a href="xline_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
+<a href="xline_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
-<tr><td colspan=2><br><h2>Compounds</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classELine.html">ELine</a></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXLine.html">XLine</a></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classGLine.html">GLine</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">XLine is the base class for ban lines such as G lines and K lines. <a href="classXLine.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKLine.html">KLine</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">GLine class. </em> <a href="classGLine.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classKLine.html">KLine</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">KLine class. <a href="classKLine.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGLine.html">GLine</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">KLine class. </em> <a href="classKLine.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classQLine.html">QLine</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">GLine class. <a href="classGLine.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classELine.html">ELine</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">QLine class. </em> <a href="classQLine.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classXLine.html">XLine</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classZLine.html">ZLine</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">XLine is the base class for ban lines such as G lines and K lines. </em> <a href="classXLine.html#_details">More...</a><em><br><br></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>class &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classZLine.html">ZLine</a></td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ZLine class. <a href="classZLine.html#_details">More...</a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classQLine.html">QLine</a></td></tr>
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ZLine class. </em> <a href="classZLine.html#_details">More...</a><em><br><br></td></tr>
-<tr><td colspan=2><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a0">read_xline_defaults</a> ()</td></tr>
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">QLine class. <a href="classQLine.html#_details">More...</a><br></td></tr>
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#read_5Fxline_5Fdefaults_28_29">read_xline_defaults</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a1">add_gline</a> (long duration, const char *source, const char *reason, const char *hostmask)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_gline</a> (long duration, const char *source, const char *reason, const char *hostmask)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a2">add_qline</a> (long duration, const char *source, const char *reason, const char *nickname)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29">add_qline</a> (long duration, const char *source, const char *reason, const char *nickname)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a3">add_zline</a> (long duration, const char *source, const char *reason, const char *ipaddr)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29">add_zline</a> (long duration, const char *source, const char *reason, const char *ipaddr)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a4">add_kline</a> (long duration, const char *source, const char *reason, const char *hostmask)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_kline</a> (long duration, const char *source, const char *reason, const char *hostmask)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a5">add_eline</a> (long duration, const char *source, const char *reason, const char *hostmask)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29">add_eline</a> (long duration, const char *source, const char *reason, const char *hostmask)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a6">del_gline</a> (const char *hostmask)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#del_5Fgline_28const_20char_20_2Ahostmask_29">del_gline</a> (const char *hostmask)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a7">del_qline</a> (const char *nickname)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#del_5Fqline_28const_20char_20_2Anickname_29">del_qline</a> (const char *nickname)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a8">del_zline</a> (const char *ipaddr)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#del_5Fzline_28const_20char_20_2Aipaddr_29">del_zline</a> (const char *ipaddr)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a9">del_kline</a> (const char *hostmask)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#del_5Fkline_28const_20char_20_2Ahostmask_29">del_kline</a> (const char *hostmask)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a10">del_eline</a> (const char *hostmask)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#del_5Feline_28const_20char_20_2Ahostmask_29">del_eline</a> (const char *hostmask)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a11">matches_qline</a> (const char *nick)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#matches_5Fqline_28const_20char_20_2Anick_29">matches_qline</a> (const char *nick)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a12">matches_gline</a> (const char *host)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#matches_5Fgline_28const_20char_20_2Ahost_29">matches_gline</a> (const char *host)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a13">matches_zline</a> (const char *ipaddr)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#matches_5Fzline_28const_20char_20_2Aipaddr_29">matches_zline</a> (const char *ipaddr)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a14">matches_kline</a> (const char *host)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#matches_5Fkline_28const_20char_20_2Ahost_29">matches_kline</a> (const char *host)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a15">matches_exception</a> (const char *host)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#matches_5Fexception_28const_20char_20_2Ahost_29">matches_exception</a> (const char *host)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a16">expire_lines</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#expire_5Flines_28_29">expire_lines</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a17">apply_lines</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#apply_5Flines_28_29">apply_lines</a> ()</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a18">stats_k</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#stats_5Fk_28userrec_20_2Auser_29">stats_k</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a19">stats_g</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#stats_5Fg_28userrec_20_2Auser_29">stats_g</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a20">stats_q</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#stats_5Fq_28userrec_20_2Auser_29">stats_q</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a21">stats_z</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#stats_5Fz_28userrec_20_2Auser_29">stats_z</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a22">stats_e</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#stats_5Fe_28userrec_20_2Auser_29">stats_e</a> (<a class="el" href="classuserrec.html">userrec</a> *user)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a23">gline_set_creation_time</a> (char *host, time_t create_time)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#gline_5Fset_5Fcreation_5Ftime_28char_20_2Ahost_2C_20time_5Ft_20create_5Ftime_29">gline_set_creation_time</a> (char *host, time_t create_time)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a24">qline_set_creation_time</a> (char *nick, time_t create_time)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#qline_5Fset_5Fcreation_5Ftime_28char_20_2Anick_2C_20time_5Ft_20create_5Ftime_29">qline_set_creation_time</a> (char *nick, time_t create_time)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a25">zline_set_creation_time</a> (char *ip, time_t create_time)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#zline_5Fset_5Fcreation_5Ftime_28char_20_2Aip_2C_20time_5Ft_20create_5Ftime_29">zline_set_creation_time</a> (char *ip, time_t create_time)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a26">zline_make_global</a> (const char *ipaddr)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#zline_5Fmake_5Fglobal_28const_20char_20_2Aipaddr_29">zline_make_global</a> (const char *ipaddr)</td></tr>
-<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a27">qline_make_global</a> (const char *nickname)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="xline_8h.html#a28">sync_xlines</a> (<a class="el" href="classserverrec.html">serverrec</a> *serv, char *tcp_host)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="xline_8h.html#qline_5Fmake_5Fglobal_28const_20char_20_2Anickname_29">qline_make_global</a> (const char *nickname)</td></tr>
</table>
<hr><h2>Function Documentation</h2>
-<a name="a5" doxytag="xline.h::add_eline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29"></a><!-- doxytag: member="xline.h::add_eline" ref="add_5Feline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29" args="(long duration, const char *source, const char *reason, const char *hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void add_eline </td>
+ <td class="md" nowrap valign="top">void add_eline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>hostmask</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -159,49 +159,48 @@ This graph shows which files directly or indirectly include this file:<p><center
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00701">Server::AddELine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00720">Server::AddELine()</a>. </td>
</tr>
</table>
-<a name="a1" doxytag="xline.h::add_gline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29"></a><!-- doxytag: member="xline.h::add_gline" ref="add_5Fgline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29" args="(long duration, const char *source, const char *reason, const char *hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void add_gline </td>
+ <td class="md" nowrap valign="top">void add_gline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>hostmask</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -211,49 +210,48 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00701">Server::AddEL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00681">Server::AddGLine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00700">Server::AddGLine()</a>. </td>
</tr>
</table>
-<a name="a4" doxytag="xline.h::add_kline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29"></a><!-- doxytag: member="xline.h::add_kline" ref="add_5Fkline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Ahostmask_29" args="(long duration, const char *source, const char *reason, const char *hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void add_kline </td>
+ <td class="md" nowrap valign="top">void add_kline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>hostmask</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -263,49 +261,48 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00681">Server::AddGL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00696">Server::AddKLine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00715">Server::AddKLine()</a>. </td>
</tr>
</table>
-<a name="a2" doxytag="xline.h::add_qline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29"></a><!-- doxytag: member="xline.h::add_qline" ref="add_5Fqline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Anickname_29" args="(long duration, const char *source, const char *reason, const char *nickname)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void add_qline </td>
+ <td class="md" nowrap valign="top">void add_qline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>nickname</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -315,49 +312,48 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00696">Server::AddKL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00686">Server::AddQLine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00705">Server::AddQLine()</a>. </td>
</tr>
</table>
-<a name="a3" doxytag="xline.h::add_zline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29"></a><!-- doxytag: member="xline.h::add_zline" ref="add_5Fzline_28long_20duration_2C_20const_20char_20_2Asource_2C_20const_20char_20_2Areason_2C_20const_20char_20_2Aipaddr_29" args="(long duration, const char *source, const char *reason, const char *ipaddr)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void add_zline </td>
+ <td class="md" nowrap valign="top">void add_zline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">long&nbsp;</td>
<td class="mdname" nowrap> <em>duration</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>source</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>reason</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>const char *&nbsp;</td>
<td class="mdname" nowrap> <em>ipaddr</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -367,27 +363,26 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00686">Server::AddQL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00691">Server::AddZLine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00710">Server::AddZLine()</a>. </td>
</tr>
</table>
-<a name="a17" doxytag="xline.h::apply_lines"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="apply_5Flines_28_29"></a><!-- doxytag: member="xline.h::apply_lines" ref="apply_5Flines_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void apply_lines </td>
+ <td class="md" nowrap valign="top">void apply_lines </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -398,25 +393,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00691">Server::AddZL
</td>
</tr>
</table>
-<a name="a10" doxytag="xline.h::del_eline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="del_5Feline_28const_20char_20_2Ahostmask_29"></a><!-- doxytag: member="xline.h::del_eline" ref="del_5Feline_28const_20char_20_2Ahostmask_29" args="(const char *hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool del_eline </td>
+ <td class="md" nowrap valign="top">bool del_eline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>hostmask</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -426,28 +420,27 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00691">Server::AddZL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00726">Server::DelELine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00745">Server::DelELine()</a>. </td>
</tr>
</table>
-<a name="a6" doxytag="xline.h::del_gline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="del_5Fgline_28const_20char_20_2Ahostmask_29"></a><!-- doxytag: member="xline.h::del_gline" ref="del_5Fgline_28const_20char_20_2Ahostmask_29" args="(const char *hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool del_gline </td>
+ <td class="md" nowrap valign="top">bool del_gline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>hostmask</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -457,28 +450,27 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00726">Server::DelEL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00706">Server::DelGLine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00725">Server::DelGLine()</a>. </td>
</tr>
</table>
-<a name="a9" doxytag="xline.h::del_kline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="del_5Fkline_28const_20char_20_2Ahostmask_29"></a><!-- doxytag: member="xline.h::del_kline" ref="del_5Fkline_28const_20char_20_2Ahostmask_29" args="(const char *hostmask)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool del_kline </td>
+ <td class="md" nowrap valign="top">bool del_kline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>hostmask</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -488,28 +480,27 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00706">Server::DelGL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00721">Server::DelKLine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00740">Server::DelKLine()</a>. </td>
</tr>
</table>
-<a name="a7" doxytag="xline.h::del_qline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="del_5Fqline_28const_20char_20_2Anickname_29"></a><!-- doxytag: member="xline.h::del_qline" ref="del_5Fqline_28const_20char_20_2Anickname_29" args="(const char *nickname)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool del_qline </td>
+ <td class="md" nowrap valign="top">bool del_qline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>nickname</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -519,28 +510,27 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00721">Server::DelKL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00711">Server::DelQLine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00730">Server::DelQLine()</a>. </td>
</tr>
</table>
-<a name="a8" doxytag="xline.h::del_zline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="del_5Fzline_28const_20char_20_2Aipaddr_29"></a><!-- doxytag: member="xline.h::del_zline" ref="del_5Fzline_28const_20char_20_2Aipaddr_29" args="(const char *ipaddr)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool del_zline </td>
+ <td class="md" nowrap valign="top">bool del_zline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ipaddr</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -550,27 +540,26 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00711">Server::DelQL
<p>
<p>
-Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZLine()</a>. </td>
+Referenced by <a class="el" href="modules_8cpp-source.html#l00735">Server::DelZLine()</a>. </td>
</tr>
</table>
-<a name="a16" doxytag="xline.h::expire_lines"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="expire_5Flines_28_29"></a><!-- doxytag: member="xline.h::expire_lines" ref="expire_5Flines_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void expire_lines </td>
+ <td class="md" nowrap valign="top">void expire_lines </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -581,34 +570,33 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a23" doxytag="xline.h::gline_set_creation_time"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="gline_5Fset_5Fcreation_5Ftime_28char_20_2Ahost_2C_20time_5Ft_20create_5Ftime_29"></a><!-- doxytag: member="xline.h::gline_set_creation_time" ref="gline_5Fset_5Fcreation_5Ftime_28char_20_2Ahost_2C_20time_5Ft_20create_5Ftime_29" args="(char *host, time_t create_time)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void gline_set_creation_time </td>
+ <td class="md" nowrap valign="top">void gline_set_creation_time </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap> <em>host</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>time_t&nbsp;</td>
<td class="mdname" nowrap> <em>create_time</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -619,25 +607,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a15" doxytag="xline.h::matches_exception"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="matches_5Fexception_28const_20char_20_2Ahost_29"></a><!-- doxytag: member="xline.h::matches_exception" ref="matches_5Fexception_28const_20char_20_2Ahost_29" args="(const char *host)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* matches_exception </td>
+ <td class="md" nowrap valign="top">char* matches_exception </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>host</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -648,25 +635,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a12" doxytag="xline.h::matches_gline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="matches_5Fgline_28const_20char_20_2Ahost_29"></a><!-- doxytag: member="xline.h::matches_gline" ref="matches_5Fgline_28const_20char_20_2Ahost_29" args="(const char *host)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* matches_gline </td>
+ <td class="md" nowrap valign="top">char* matches_gline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>host</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -677,25 +663,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a14" doxytag="xline.h::matches_kline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="matches_5Fkline_28const_20char_20_2Ahost_29"></a><!-- doxytag: member="xline.h::matches_kline" ref="matches_5Fkline_28const_20char_20_2Ahost_29" args="(const char *host)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* matches_kline </td>
+ <td class="md" nowrap valign="top">char* matches_kline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>host</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -706,25 +691,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a11" doxytag="xline.h::matches_qline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="matches_5Fqline_28const_20char_20_2Anick_29"></a><!-- doxytag: member="xline.h::matches_qline" ref="matches_5Fqline_28const_20char_20_2Anick_29" args="(const char *nick)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* matches_qline </td>
+ <td class="md" nowrap valign="top">char* matches_qline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>nick</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -735,25 +719,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a13" doxytag="xline.h::matches_zline"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="matches_5Fzline_28const_20char_20_2Aipaddr_29"></a><!-- doxytag: member="xline.h::matches_zline" ref="matches_5Fzline_28const_20char_20_2Aipaddr_29" args="(const char *ipaddr)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> char* matches_zline </td>
+ <td class="md" nowrap valign="top">char* matches_zline </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ipaddr</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -764,25 +747,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a27" doxytag="xline.h::qline_make_global"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="qline_5Fmake_5Fglobal_28const_20char_20_2Anickname_29"></a><!-- doxytag: member="xline.h::qline_make_global" ref="qline_5Fmake_5Fglobal_28const_20char_20_2Anickname_29" args="(const char *nickname)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool qline_make_global </td>
+ <td class="md" nowrap valign="top">bool qline_make_global </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>nickname</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -793,34 +775,33 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a24" doxytag="xline.h::qline_set_creation_time"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="qline_5Fset_5Fcreation_5Ftime_28char_20_2Anick_2C_20time_5Ft_20create_5Ftime_29"></a><!-- doxytag: member="xline.h::qline_set_creation_time" ref="qline_5Fset_5Fcreation_5Ftime_28char_20_2Anick_2C_20time_5Ft_20create_5Ftime_29" args="(char *nick, time_t create_time)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void qline_set_creation_time </td>
+ <td class="md" nowrap valign="top">void qline_set_creation_time </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap> <em>nick</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>time_t&nbsp;</td>
<td class="mdname" nowrap> <em>create_time</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -831,24 +812,23 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a0" doxytag="xline.h::read_xline_defaults"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="read_5Fxline_5Fdefaults_28_29"></a><!-- doxytag: member="xline.h::read_xline_defaults" ref="read_5Fxline_5Fdefaults_28_29" args="()" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void read_xline_defaults </td>
+ <td class="md" nowrap valign="top">void read_xline_defaults </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -859,25 +839,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a22" doxytag="xline.h::stats_e"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="stats_5Fe_28userrec_20_2Auser_29"></a><!-- doxytag: member="xline.h::stats_e" ref="stats_5Fe_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void stats_e </td>
+ <td class="md" nowrap valign="top">void stats_e </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -888,25 +867,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a19" doxytag="xline.h::stats_g"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="stats_5Fg_28userrec_20_2Auser_29"></a><!-- doxytag: member="xline.h::stats_g" ref="stats_5Fg_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void stats_g </td>
+ <td class="md" nowrap valign="top">void stats_g </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -917,25 +895,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a18" doxytag="xline.h::stats_k"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="stats_5Fk_28userrec_20_2Auser_29"></a><!-- doxytag: member="xline.h::stats_k" ref="stats_5Fk_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void stats_k </td>
+ <td class="md" nowrap valign="top">void stats_k </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -946,25 +923,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a20" doxytag="xline.h::stats_q"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="stats_5Fq_28userrec_20_2Auser_29"></a><!-- doxytag: member="xline.h::stats_q" ref="stats_5Fq_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void stats_q </td>
+ <td class="md" nowrap valign="top">void stats_q </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -975,63 +951,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a21" doxytag="xline.h::stats_z"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="stats_5Fz_28userrec_20_2Auser_29"></a><!-- doxytag: member="xline.h::stats_z" ref="stats_5Fz_28userrec_20_2Auser_29" args="(userrec *user)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void stats_z </td>
+ <td class="md" nowrap valign="top">void stats_z </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="mdname1" valign="top" nowrap> <em>user</em> </td>
<td class="md" valign="top">&nbsp;)&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="a28" doxytag="xline.h::sync_xlines"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
- <tr>
- <td class="mdRow">
- <table cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td class="md" nowrap valign="top"> void sync_xlines </td>
- <td class="md" valign="top">(&nbsp;</td>
- <td class="md" nowrap valign="top"><a class="el" href="classserverrec.html">serverrec</a> *&nbsp;</td>
- <td class="mdname" nowrap> <em>serv</em>, </td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <td class="md" nowrap>char *&nbsp;</td>
- <td class="mdname" nowrap> <em>tcp_host</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>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1042,25 +979,24 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a26" doxytag="xline.h::zline_make_global"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="zline_5Fmake_5Fglobal_28const_20char_20_2Aipaddr_29"></a><!-- doxytag: member="xline.h::zline_make_global" ref="zline_5Fmake_5Fglobal_28const_20char_20_2Aipaddr_29" args="(const char *ipaddr)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> bool zline_make_global </td>
+ <td class="md" nowrap valign="top">bool zline_make_global </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>ipaddr</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1071,34 +1007,33 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<a name="a25" doxytag="xline.h::zline_set_creation_time"></a><p>
-<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+<a class="anchor" name="zline_5Fset_5Fcreation_5Ftime_28char_20_2Aip_2C_20time_5Ft_20create_5Ftime_29"></a><!-- doxytag: member="xline.h::zline_set_creation_time" ref="zline_5Fset_5Fcreation_5Ftime_28char_20_2Aip_2C_20time_5Ft_20create_5Ftime_29" args="(char *ip, time_t create_time)" --><p>
+<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
- <td class="md" nowrap valign="top"> void zline_set_creation_time </td>
+ <td class="md" nowrap valign="top">void zline_set_creation_time </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap> <em>ip</em>, </td>
</tr>
<tr>
- <td></td>
- <td></td>
+ <td class="md" nowrap align="right"></td>
+ <td class="md"></td>
<td class="md" nowrap>time_t&nbsp;</td>
<td class="mdname" nowrap> <em>create_time</em></td>
</tr>
<tr>
- <td></td>
+ <td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
-
</table>
</td>
</tr>
</table>
-<table cellspacing=5 cellpadding=0 border=0>
+<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
@@ -1109,9 +1044,8 @@ Referenced by <a class="el" href="modules_8cpp-source.html#l00716">Server::DelZL
</td>
</tr>
</table>
-<hr size="1"><address style="align: right;"><small>Generated on Mon May 30 05:16:22 2005 for InspIRCd by
+<hr size="1"><address style="align: right;"><small>Generated on Sun Nov 27 01:43:24 2005 for InspIRCd by&nbsp;
<a href="http://www.doxygen.org/index.html">
-<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
-</a>1.3.3 </small></address>
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4-20050815 </small></address>
</body>
</html>
diff --git a/docs/module-doc/xline_8h__dep__incl.gif b/docs/module-doc/xline_8h__dep__incl.gif
index 55cf4dc26..f159c57da 100644
--- a/docs/module-doc/xline_8h__dep__incl.gif
+++ b/docs/module-doc/xline_8h__dep__incl.gif
Binary files differ
diff --git a/docs/module-doc/xline_8h__dep__incl.map b/docs/module-doc/xline_8h__dep__incl.map
new file mode 100644
index 000000000..f174ea10d
--- /dev/null
+++ b/docs/module-doc/xline_8h__dep__incl.map
@@ -0,0 +1,3 @@
+base referer
+rect $channels_8cpp-source.html 120,7 219,34
+rect $modules_8cpp-source.html 120,58 219,84
diff --git a/docs/module-doc/xline_8h__dep__incl.md5 b/docs/module-doc/xline_8h__dep__incl.md5
new file mode 100644
index 000000000..6d471411b
--- /dev/null
+++ b/docs/module-doc/xline_8h__dep__incl.md5
@@ -0,0 +1 @@
+94b61de8eaa885e874543fc93fa71194 \ No newline at end of file
diff --git a/docs/module-doc/xline_8h__incl.gif b/docs/module-doc/xline_8h__incl.gif
index bdc390b70..5d89df74b 100644
--- a/docs/module-doc/xline_8h__incl.gif
+++ b/docs/module-doc/xline_8h__incl.gif
Binary files differ
diff --git a/docs/module-doc/xline_8h__incl.map b/docs/module-doc/xline_8h__incl.map
new file mode 100644
index 000000000..48d749ff5
--- /dev/null
+++ b/docs/module-doc/xline_8h__incl.map
@@ -0,0 +1,4 @@
+base referer
+rect $users_8h-source.html 124,260 188,287
+rect $channels_8h-source.html 248,210 333,236
+rect $connection_8h-source.html 241,362 340,388
diff --git a/docs/module-doc/xline_8h__incl.md5 b/docs/module-doc/xline_8h__incl.md5
new file mode 100644
index 000000000..8b33a634d
--- /dev/null
+++ b/docs/module-doc/xline_8h__incl.md5
@@ -0,0 +1 @@
+6e8687e6a611b1214ddbdd4f9cecd725 \ No newline at end of file