summaryrefslogtreecommitdiff
path: root/src/command_parse.cpp
AgeCommit message (Collapse)Author
2008-08-27Add <disabled:fakenonexistant> - ircd will pretend that a disabled command ↵w00t
just doesn't exist (for austnet), document <disabled:usermodes> and <disabled:chanmodes> (bad aquanight.) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10327 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-23nuke some debug not needed anymorepeavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10226 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-22Match with the right args at least..w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10218 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-21match() is no longer a function+no header, now a static method of InspIRCd ↵w00t
class, blah blah blah. Also rip out the 1.2 matcher, as it was slow, and replace it with one adapted from znc, which happens to be a tiny bit faster than 1.1's (and the fastest I've seen so far that works properly) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10212 e03df62e-2008-0410-955e-edbf42e46eb7
2008-07-29Remove last vestige of libircdfoo, by changing tag into a single ↵w00t
identifier marking object as requiring compilation into a .o (minor commit) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10076 e03df62e-2008-0410-955e-edbf42e46eb7
2008-07-20304 -> RPL_SYNTAXbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10052 e03df62e-2008-0410-955e-edbf42e46eb7
2008-07-13More conversion, and a note to client coders.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10011 e03df62e-2008-0410-955e-edbf42e46eb7
2008-06-06m_abbreviation completed. :)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9845 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-20Update commentw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9778 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-20char -> std::string conversionw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9777 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-19Convert connection::hostbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9768 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-18Make User:: nick/ident/dhost/fullname and some other things std::string ↵aquanight
instead of char*/char[] (MODULES DO NOT COMPILE) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9748 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-05Add sanity checks to LoopCall to prevent miscalls like this by broken 3rd ↵brain
party modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9643 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-04*param.c_str() -> param[0]brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9612 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-04< MAXPARAMETERS for the size() check here can now be <= insteadbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9611 e03df62e-2008-0410-955e-edbf42e46eb7
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-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-18Apply patches to remove 200-odd dll limit on windows, made by GreenReaper, ↵brain
lots of thanks! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9533 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-22Wheeee for HUGE commits. Convert all numerics to WriteNumeric so that ↵brain
OnNumeric can capture them. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9175 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-22Convert remaining InspIRCd::Log() calls to new logging systemaquanight
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9001 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-20Wheee, mass commit! this adds const stafety, throwing a compile error if ↵brain
anyone does: "parameters[n] = blahvar;" in a command handler etc. where they REALLY SHOULD NOT fuck with the value and should copy the pointer. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8971 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-20Seems trivial now, looking at it. Still to test then will commit to trunk.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8969 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-17Seperate USERIO into USERINPUT and USEROUTPUTbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8949 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-11Add -Wshadow to cflags, and fix a bunch of warnings that come with it. Add a ↵w00t
note to webirc that needs looking at. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8892 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-09Add a printf-type override for LogManager::Log(). We need to find a way to ↵w00t
see if a log call would have any interest, to avoid unnecessary printf() here though. Convert a bunch of stuff to using new logging (added targets: USERS, USERIO) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8860 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-27Change API OnOperCompare to OnPassCompare, password hashing is now available ↵aquanight
for <connect:allow>, <power die= restart=>, <title> (m_customtitle.so), <vhost> (m_vhost.so), this works the same was as for <oper>: load m_password_hash.so (after all hasher modules, of course), and add hash="md5/sha256/whatever" to the relevant tag. Also fix m_callerid.cpp crashing on unload. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8755 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-17Fix.. snomask O is already taken (ffs) so use A insteadw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8729 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-17Remove InspIRCd::WriteOpers in favour of snomask Ow00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8728 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-16Two stage commit: don't set user->muted except in QuitUser (duplicate ↵w00t
setting), also, change muted to drop all socket operations instead of just not reading the user's buffer if muted is set (no point wasting time - they're going away). Also revert culllist back to once per mainloop iteration now it is much cheaper than previously. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8716 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-15Fix a stupid crash on unknown commands caused by me blindly applying a 1.1 ↵w00t
patch.. doesn't affect 1.1 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8710 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-10Header update: 2007 -> 2008w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-08Don't send 421 to unregistered clients, per RFC (thanks nenolod)w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8661 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-25this should fix any of the crashes w00t outlined where User::MyClass == NULL.brain
The simplest fix seems to be that if the user has no class, skip all the code that uses the class values. This makes sense because the only situation where User::MyClass == NULL is when they arent authorised to connect and are being quit so checking flood levels and max sendq etc are irrelevent. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8358 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24Tidyupsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8351 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24Pedantic safetybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8350 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23Move some stuff from using userrec cached stuff to using stuff in the ↵w00t
connect classes git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8339 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23Pedantic safebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8314 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-22Remove the need for a bunch of the hard coded arrays/hashes by scanning the ↵brain
src/ dir for tag comments, like in modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8307 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Use the new IncreasePenalty rather than directly using += on the Penalty value.brain
Maybe the penalty value should be private and there should be an accessor, GetPenalty()? git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8266 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Add the check for user->ExemptFromPenaltybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8255 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Yay, all works!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8251 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21*untested* command buffering/penaltybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8250 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-17UID translator broken with space or comma seperated lists (thanks danieldg)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8220 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15Apply some readability changes to ProcessCommand, which coincidentally may ↵w00t
speed it up with some compiler optimisation git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8214 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15Move some other stuff to helperfuncs (uline related, and timestring)w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8213 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15Fuck. Press save, then commit.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8212 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15In the grand tradition of huge fucking commits:w00t
- chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15class command_t -> class Command. Whey :Dw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8203 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15Bad Brain, bad. *spank* :pw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8201 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-14Make error messages on failure to load command more usefulbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8194 e03df62e-2008-0410-955e-edbf42e46eb7