summaryrefslogtreecommitdiff
path: root/include/command_parse.h
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-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-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-13Slight API tweak. Change Command to take char * instead of char in it's ↵w00t
constructor, this avoids confusion/generates a compile error if someone mixes up flags with number of params, instead of working but not working as expected in a weird manner. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8918 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-03Clear up header insanityw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8808 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-02Move some stuff to usermanager, remove a little header insanity, remove ↵w00t
trace because it's still less useful than a chocolate fireman. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8790 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
2007-11-04Remove some unnecessary headers from places, commit working BanCacheManager ↵w00t
skeleton. Work in progress, ignore it for now. Doesn't do anything, either. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8487 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-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-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
2007-08-27Add documentation commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7894 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27More translation stuffbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7888 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-11Allow rehash to attempt to load missing (and new) lib/cmd_*.so files, to ↵brain
allow users to fix an emergency situation you can create by trying to reload a corrupt .so without needing a restart git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7712 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-11Provide error output on failure to load a core command; to console on ↵brain
startup, and to user on /reload git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7708 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵peavey
auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-17Commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7373 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-05Add comment to what the table here is forbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7238 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-05Refactored InspIRCd::Duration(). The leetcode now lives!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7237 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19Windows support. Tested and working to compile on freebsd and linux. Next ↵w00t
step is to make sure it actually works in windows too. ;p. Add Burlex to contributors. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7043 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17Make RemoveCommand private.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6030 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17Invented safe delete-while-itering for hash_map.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6029 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15And now, just to force you to recompile the *whole* ircd.. updated headers ↵w00t
on the headers. :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5998 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-03Revert special's sqloper change, nice try but only half a biscuit.brain
With the old fix, it would echo out all the oper failure notices first then try again, annoying all the opers. The new version uses a CommandParser method i added, to again use OnPreCommand, halt the /oper command, but after doing the sql lookup call the original handler of the OPER command with the original user and pass, so the original handler handles the definitive failure message. DAMNIT STOP COMMITTING git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5636 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-13If inspircd crashes in std::string destructor in ↵brain
CommandParser::ProcessCommand, take away all std::string's to make the bug manifest elsewhere, so maybe we can spot it git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5232 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-09-06Command result codes. This isnt finished yet, still got to do most of the ↵brain
modules, and alter CallCommandHandler git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5149 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-03Proper error checking on loading cmd_*.so filesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5122 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-03Add /RELOAD and move cmd_mode into its own command.brain
/RELOAD is the only thing you cant reload (ahem) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5119 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-03Auto loading of commands as shared objects via dlsym (very lightweight ↵brain
interface, just expects a command_t* pointer) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5118 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-12Document command_parse.h and CommandParser classbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4903 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10So much stuff changed in this one, i forgot most of it.brain
Oh yeah, main thing is ModeHandler and ModeWatcher classes now take an InspIRCd* to their constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4858 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16Created new class irc::commasepstream.brain
Will read comma seperated lists and works identically to irc::tokenstream It's re-entrant so we can run two of them together for JOIN git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4412 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16mass tidyup, change A LOT of stuff to const char** which was char** (such as ↵brain
parameters to commands in handlers) which makes the new lineparser work neater with no casts. This also removes tons of casts from other locations (all in all, ive added 2 casts and removed almost a hundred) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4403 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16MAJOR tidy of line parser, some parts rewritten and major chunks removedbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4402 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Inherit just about everything from classbasebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4299 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11Missed some stuffbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3664 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-02Changed definition of CallHandler and CallCommandHandler for the ability to ↵brain
return false on bad command. This allows us to terminate server links that send commands we dont know (e.g. admin loads module A after linking, we dont have module A, when it sends module A's command, abort) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3414 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-15Updated copyrights in headers etc using perl inplace editbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2795 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-02GCC 4.1 is more strict about extra qualification on membersbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2727 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-16Split all commands into seperate files and redid command system to take ↵brain
classes, not function pointers (function pointers suck ass) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2534 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-16Moved more command parsing stuff to CommandParserbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2514 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-16Moved command_parse functions into class CommandParserbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2510 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-16Made remove_commands publicbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2509 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-16Moved command parsing crap into command_parse.cppbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2505 e03df62e-2008-0410-955e-edbf42e46eb7