summaryrefslogtreecommitdiff
path: root/include/modules.h
AgeCommit message (Collapse)Author
2006-12-10Add InspIRCd::UseInterface and InspIRCd::DoneWithInterface, and also ↵brain
InspIRCd::GetInterfaceUseCount(). These can be used for one module to lock other modules in memory that it depends on, this way they can enforce an unload order so that you cant (for example) unload m_ssl_gnutls.so whilst m_spanningtree.so is using it for ssl server to server sessions (in this case, youd have to unload spanningtree first, THEN ssl_gnutls, to satisfy the dependencies and unload orders) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5924 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-09Add OnRawSocketConnect, we've not had it till now because we've not needed it :)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5887 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-05Untested, undocumented PublishInterface, UnpublishInterface, FindInterface.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5867 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-05Change this a LOT.brain
<oper blah.... hash="md5|sha256" pass="blah..."> It will now only check pass if you put the hash= in, people have been bugging for this for a while. note the m_oper_hash module will try and detect both m_sha256 and m_md5 now, and will provide /mkpasswd that can do either. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5862 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-27BuildExemptList is becoming pretty ugly. grr.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5819 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-27Add OnBuildExemptList, which is used to build an exempt list when passing a ↵brain
privmsg on, but not directly processing it (m_spanningtree etc) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5818 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-27Add exception lists to OnUserMessage and OnUserNotice, to be used for ↵brain
smarter routing of messages in spanningtree amongst other things git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5817 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-26Update comments to reflect new APIbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5807 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-26Add extra parameter to OnUserPreNotice and OnUserPrePrivmsg, CUList ↵brain
&exempt_list, a list of users NOT to write to. By default it just contains the sender, you can add more. This also bumps the module api version by one. added "CUList fixme" to peaveys module just so it builds, as this will be refactored to use the new feature that was just added :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5806 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-21fix for bug #175, change OnUserRegister to return int, and if greater than 0 ↵peavey
= user was quit and stop propagating to rest of loaded modules. Also bumb the module API version. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5783 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-14Inherit ModuleException from std::exception rather than classbasebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5740 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-31Removed OnRawMode - this hasn't been called at all for awhile now, so it was ↵special
completely worthless. I even tested it. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5604 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-28Add 'dest' parameter to OnWhoisLine, contains the user being whois'ed (we ↵brain
need this for +H and probably the stuff w00t is doing too) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5573 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-28Add support for OnWhoisLine, which allows modules to change or drop any line ↵brain
of whois before its sent to a user git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5570 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-16Multiply API_VERSION by ten if IPV6 is defined, to prevent modules built for ↵brain
an ipv6 insp being loaded into an ipv4 insp (the sizes of structs such as userrec and inspsocket are different when ipv6 is enabled) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5486 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-01Now with binary versioning goodnessbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5366 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-01Added OnPostJoin, which is (at the moment) almost exactly identical to ↵special
OnUserJoin but called after, so you can play with linking git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5361 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-26make OnPostConnect globalbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5339 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-25Whoops, patchbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5324 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-17Add const std::string &original_command to OnPreCommand and OnPostCommand, ↵brain
which gives the entire untouched command string and params in all its colon-ny glory git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5265 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-06Finish off the fix for bug #136 (a biggie for such a simple thing)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5151 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-30Remove a ton of <typeinfo>, <iostream>, <sstream> etc that we usually never usebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5081 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-28Add support for NAMESXbrain
Tidy up m_alias blank lines Add m_namesx.so to example conf (no extra config tags required for it, it "just works") git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5039 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-24Renamed the OnGlobalConnect callback to OnPostConnect, which is much more ↵special
appropriate git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5010 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-23Inherit ModuleMessage from Extensible, so users can Extend and Shrink it.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4996 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-18EventHandler class, an abstraction for raw i/obrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4941 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-12More docs. Tons more docs. I need coffee and we're out of coffee :<brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4904 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Added comment about why its important to push_back onto the string_list when ↵brain
doing OnStats, rather than just WriteServ'ing stuff to the user git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4898 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Fix FOREACH_MOD macrosbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4881 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Now two types of log macro, log() and ilog(). log() assumes an InspIRCd ↵brain
object called ServerInstance, ilog() takes an InspIRCd object as first param. TODO: Run a regexp over these, using perl, to translate them into InspIRCd::Log calls and then eliminate the macro :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4879 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11ConfigReader and FileReader now take InspIRCd* to their constructorsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4865 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Committing this as a rollback point - does not compilebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4860 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Note: FOR THE MOMENT, this is BROKEN. It wont run right until im done.brain
Changed Parameter for modules from Server* to InspIRCd*. TODO: Move remaining Server* Modules into InspIRCd* and remove class Server. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4859 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Mass-tidyup of module global vars, theyre no longer global vars.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4856 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Move IsNick, IsIdent into class InspIRCd, update modules that use it.brain
Change message.h to just a #warning saying its deprecated, and remove all use of it from the core :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4847 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10PublishFeature, FindFeature, FindModule, PriorityBefore, PriorityAfter -> ↵brain
InspIRCd:: git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4846 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Removal of Server::Log -- not much ever used it anyway with the ability to ↵brain
use log(). log() macro still exists, and calls InspIRCd::Log() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4845 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Fixes and removal of Server::GetServerName()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4844 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Server::GetAdmin, Server::GetServerDescription, Server::GetNetworkName --- ↵brain
*REMOVED* git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4843 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Why is most of Server:: virtual?`brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4839 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Remove Server::Server() and Server::~Server()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4838 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10cmode(), cflags(), cstatus() -> chanrec::GetStatusChar(), ↵brain
chanrec::GetStatusFlags(), chanrec::GetStatus() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4837 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Server::GetConfig, Server::GetVersion -> removedbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4833 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10FindNick, FindChan, ChanModes, UserList, CountInvisible, PurgeEmptyChannels, ↵brain
GetClass, WriteOpers, GetServerDescription -> into classes ServerConfig takes InspIRCd pointer in its constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4832 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Relocate timer stuff into TimerManager classbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4827 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09userrec and chanrec now have their own independent pointer back to their ↵brain
'creator' InspIRCd* object, extern now longer required in channels.cpp or users.cpp git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4820 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Move tons more stuff into class InspIRCdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4819 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Tidy up loglevel enum (remove some C-ish defines)brain
change ServerConfig to pass a pointer to 'this' to Validation etc functions git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4811 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09ServerConfig extern moved into class InspIRCdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4808 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Get rid of Server::GetUsers(chanrec) - a throwback to before chanrec could ↵brain
do this itself Move: bool ChangeDisplayedHost(const char* host); bool ChangeName(const char* gecos); int CountChannels(); Into userrec git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4807 e03df62e-2008-0410-955e-edbf42e46eb7