summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2008-05-04Conversion of command handler params from "const char* const* parameters, ↵brain
int pcnt" to "const std::vector<std::string>& parameters". All of core is converted, but cant test it till the modules are converted. IMPORTANT: The mode parser public calls have had to be tweaked a bit to also use the string vector. Note that this makes a LOT of our core a bit messy and paves the way to convert a lot of stuff from the mess of .c_str() calls to using std::string params directly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9608 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-02Optimize MODE #chan b etc, avoid a 256 byte memset for duplicate mode checksbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9601 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-01Convert to SimpleUserModeHandler and SimpleChannelModeHandlerbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9599 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-01Simple user/channel mode patchbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9596 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-21Hack, hack, hack, hack hack. Hack hack. Probably fix snotice loops, though.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9573 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-21Merge in large patchset from GreenReaper, useful fixes for freeing a ton of ↵brain
different things on shutdown for tidyness, and a few stack corruption fixes in the mode handler git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9565 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-20Fix RemoveCommands to remove all commands (this function had some really odd ↵brain
removal logic?) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9554 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-17Remove SpanningTreeProtocolInterface::SendOperNotice - it was translated to ↵w00t
a SendSNONotice 'A' anyway, and only used by SAMODE, which duplicated it with a SendSNONotice 'A' also anyhow o.o - this means OPERNOTICE is now gone from protocol 1200, and SNONOTICE should be used instead. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9530 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-17Add potential for local-only snotices and use them for the ones that should ↵w00t
be local. Individual messages cannot be made local-only, but I can't think of circumstances where this is necessary. Let's write it when it *is* necessary. :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9527 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-16Implement our own dllmain. if this works and gets rid of error at 70 ↵brain
modules, i will backport it git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9521 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-16Change that allows the m_override module to not announce a key override for ↵brain
a user that specified the right key git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9516 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-15See configreader.cpp line 764 to see how to declare deprecated items. This ↵brain
is reasonably well thought out so i see no issue with leaving items here a very long time :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9507 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-13Port a bunch of methods of InspIRCd to functors. IsChannel, IsSID, Rehash.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9474 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-12Fixes for bug #515, update existing in-use connect tags on the fly in rehashbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9471 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-12Trunk fix for bug #505 reported by nenolodbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9468 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-11(untested) don't move newconfig to ServerConfig::config_data until its been ↵brain
validated by all the validation funcs in the core config table git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9461 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-11Remove 'default log' and <options:loglevel> (wtf?)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9460 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-11Patch from Brain fixing broken stuffw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9456 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-11Much faster way of checking if the user is 4in6, avoid strncmp in ↵brain
User::GetIPString(), do it in User::SetSockAddr() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9455 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-10Comment small API change (returning -1 from OnCheckBan to explicitly deny ↵brain
the ban) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9450 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-09AddClient -> AddUser, to be consistantw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9443 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-09Move QuitUser into UserManager class, and unstaticize it. This prepares for ↵w00t
some benchmarking lulz on object pooling I plan to do today, as well as making more sense now we *have* a manager class git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9442 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-07Add extra stuff for w00t, AutoApplyToUserList method for XLineFactorybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9409 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-07This should probably be tested, but makes a whole lot more sense like this ↵brain
(users.cpp) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9404 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-07We were lucky this one didnt bring down the whole devnet (see cmd_part.cpp diff)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9400 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04The start of extended bans infrastructure: syntax is e.g. +b n:w00tdiff@*, ↵w00t
bans of any type can be applied and checked against, but there's more to come with this. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9337 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04Remove deprecated InspIRCd::Log() method so people don't use it etcw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9320 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04Remote server PRIVMSG/NOTICE to nickname supportbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9314 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04Remove two useless methods, chanlog is b0rked at the moment.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9313 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04Add protocol api functions: PI->WriteChannelPrivmsg() and ↵brain
PI->WriteChannelNotice() - sends with SID origin over network git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9308 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04Change the function name because gcc is dumb :/brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9305 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04A convenience function for ProtocolInterface::SendMode that just takes a ↵brain
string, then splits it internally to deque for sending to the other function of the same name git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9303 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04The rest of the server protocol interface and fix a warning in m_rlinebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9299 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04Add basic stuff for protocol interface and implement a couple of the ↵brain
methods. It's all in ServerInstance->PI for calls from other modules/the core git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9297 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-03Fix socketengine select to work with arsey compilers that think we're using ↵brain
ISO C++ git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9287 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02Fixes for bug #493, tidyups to clearing of channel modes on losing FJOIN. ↵brain
Module unloads may also be tidied at a future date but it means reordering some loops in mode.cpp. See around the comment added. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9283 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02Fix peavey and w00ts bug they found by removing the nonblocking part of the ↵brain
logger. This stuff was hackish and isnt required. If your hard disk locks up, then you have bigger worries. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9276 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02Automatic detection and allocation of max fds. No longer needs recompile to ↵brain
change, just adjust it in your kernel or whatever and restart insp. Please note that select and iocp socket engines do not support detection and are always set to FD_SETSIZE and 10240 descriptors respectively. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9263 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02Fix all this crap - it actually works now (we pray..)w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9261 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02Better generation. This is still fucked up, but less spectacularly and in a ↵w00t
much less obvious way. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9260 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02Unneededw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9255 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01Initialise a variable correctly to avoid valgrind warningw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9252 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01Remove call to FlushWriteBuffer from BufferedSocket::Write(), this means we ↵w00t
don't try write() pointlessly when we may very well not (chewing CPU), and instead waits for the socketengine to tell us we can write. Tested, works fine. (nothing used this return value anyway) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9247 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01Remove deprecated BufferedSocket::MarkAsClosed()w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9246 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01Remove this, it won't work (reliably), use ModeParser::ModeString() instead, ↵w00t
ta B git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9243 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01Add an optional bool to ModeParser::ModeString() to not give the nickname n ↵brain
times on the end of the string. This can be used for w00ts funky stuff. :-) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9242 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01Configurable prefixes for chanmodes +qa: prefixes can be turned on or off ↵w00t
individually and seperately, per server as well as per mode, and prefixes are no longer limited to ~&. *** SERVICES AUTHORS *** This involves a protocol change. FJOIN now sends the userlist with format modes,nick instead of prefixes,nick. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9241 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-30AWAY notification for WATCH. Numerics are now sent out when a user goes away ↵w00t
(or returns from AWAY), as well as in WATCH L (if the user is online and away). git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9227 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-30Merge OnCancelAway and OnSetAway, add param awaymsg to OnSetAway (blank when ↵w00t
cancelling), and change return type to int so modules can block away messages by returning nonzero. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9223 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-30Commit -Wformat=2 -Wmissing-format-attributes, printf-like functions in ↵aquanight
inspircd now get treated like printf (meaning compile-time check goodness) in GCC git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9217 e03df62e-2008-0410-955e-edbf42e46eb7