summaryrefslogtreecommitdiff
path: root/include/command_parse.h
Commit message (Collapse)AuthorAgeFilesLines
* Make parameter unsigned so that passing -1 for "none" actually works, rather ↵Gravatar danieldg2010-01-161-1/+1
| | | | | | than crashing git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12266 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow maxtargets to be bypassed in LoopCall for JOINGravatar danieldg2010-01-141-24/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12254 e03df62e-2008-0410-955e-edbf42e46eb7
* rollback r11326, we're going to make vc9 the officially supported windows ↵Gravatar peavey2009-04-231-1/+1
| | | | | | build methods since the few of us doing win dev can't keep up maintaining the others. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11327 e03df62e-2008-0410-955e-edbf42e46eb7
* Heres the beef so farGravatar brain2009-04-231-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11326 e03df62e-2008-0410-955e-edbf42e46eb7
* Update all wiki links to point to the new wiki. This was done automatically ↵Gravatar psychon2009-03-151-1/+1
| | | | | | | | | with the following command, only .Makefile.inc got some indent fixups by hand. for file in $(find -type f -and -not -path '*/.svn/*' -and -not -name '*.so') ; do sed -e 's#http://www.inspircd.org/wiki#http://wiki.inspircd.org#' -e 's#http://wiki.inspircd.org/index.php/#http://wiki.inspircd.org/#' -i $file ; done git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11223 e03df62e-2008-0410-955e-edbf42e46eb7
* Include explicit parameter list in ProtocolInterface::SendModeGravatar danieldg2009-03-071-1/+1
| | | | | | | Also leave the strings split into deque, there's no need to pack it into a string just to unpack it during the translate. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11181 e03df62e-2008-0410-955e-edbf42e46eb7
* Construct explicit parameter type list for MODE parametersGravatar danieldg2009-03-061-0/+2
| | | | | | | | | | | | Previously, we used TR_SPACENICKLIST on the parameters. This worked only because usually, if anything in the list parsed as a nick, then it was a nick. However, some modes like +k and +g allow free-form text, which could also resolve as a nick. Add extra parameters to allow modes to specify their TranslateType, defaulting to TR_TEXT. This fixes bug #757, found by Taros git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11180 e03df62e-2008-0410-955e-edbf42e46eb7
* Nuke trailing spacesGravatar peavey2009-02-141-2/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7
* Update copyrights for 2009.Gravatar w00t2009-01-021-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix naming convention to be consistant. (cmd_ -> Command)Gravatar w00t2008-12-151-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10891 e03df62e-2008-0410-955e-edbf42e46eb7
* This was never supposed to be invoked on /rehash, only startup.. so move it ↵Gravatar w00t2008-11-021-4/+1
| | | | | | to startup only. Also remove (redundant) user arg. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10792 e03df62e-2008-0410-955e-edbf42e46eb7
* Change the value of number of secs in a year to be 31557600 for Duration() ↵Gravatar brain2008-06-211-2/+2
| | | | | | with 'y' value. This is 365.25 days slightly more accurate than 365 days. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9930 e03df62e-2008-0410-955e-edbf42e46eb7
* m_abbreviation completed. :)Gravatar brain2008-06-061-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9845 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix unused HandleServer to use new system too, and update comments to match apiGravatar brain2008-05-041-2/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9609 e03df62e-2008-0410-955e-edbf42e46eb7
* Conversion of command handler params from "const char* const* parameters, ↵Gravatar brain2008-05-041-7/+7
| | | | | | | | | | 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
* Fix RemoveCommands to remove all commands (this function had some really odd ↵Gravatar brain2008-04-201-2/+1
| | | | | | removal logic?) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9554 e03df62e-2008-0410-955e-edbf42e46eb7
* Wheee, mass commit! this adds const stafety, throwing a compile error if ↵Gravatar brain2008-02-201-4/+4
| | | | | | | | | 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
* Slight API tweak. Change Command to take char * instead of char in it's ↵Gravatar w00t2008-02-131-1/+1
| | | | | | 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
* Clear up header insanityGravatar w00t2008-02-031-7/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8808 e03df62e-2008-0410-955e-edbf42e46eb7
* Move some stuff to usermanager, remove a little header insanity, remove ↵Gravatar w00t2008-02-021-1/+0
| | | | | | 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
* Header update: 2007 -> 2008Gravatar w00t2008-01-101-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove some unnecessary headers from places, commit working BanCacheManager ↵Gravatar w00t2007-11-041-1/+0
| | | | | | 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
* *untested* command buffering/penaltyGravatar brain2007-10-211-2/+8
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8250 e03df62e-2008-0410-955e-edbf42e46eb7
* In the grand tradition of huge fucking commits:Gravatar w00t2007-10-151-9/+9
| | | | | | | | - chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
* class command_t -> class Command. Whey :DGravatar w00t2007-10-151-10/+10
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8203 e03df62e-2008-0410-955e-edbf42e46eb7
* Make error messages on failure to load command more usefulGravatar brain2007-10-141-1/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8194 e03df62e-2008-0410-955e-edbf42e46eb7
* Add documentation commentsGravatar brain2007-08-271-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7894 e03df62e-2008-0410-955e-edbf42e46eb7
* More translation stuffGravatar brain2007-08-271-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7888 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow rehash to attempt to load missing (and new) lib/cmd_*.so files, to ↵Gravatar brain2007-08-111-4/+7
| | | | | | 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
* Provide error output on failure to load a core command; to console on ↵Gravatar brain2007-08-111-2/+3
| | | | | | startup, and to user on /reload git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7708 e03df62e-2008-0410-955e-edbf42e46eb7
* OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.Gravatar peavey2007-07-161-1/+244
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
* 'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵Gravatar peavey2007-07-161-244/+1
| | | | | | auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
* CommentsGravatar brain2007-06-171-0/+8
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7373 e03df62e-2008-0410-955e-edbf42e46eb7
* Add comment to what the table here is forGravatar brain2007-06-051-0/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7238 e03df62e-2008-0410-955e-edbf42e46eb7
* Refactored InspIRCd::Duration(). The leetcode now lives!Gravatar brain2007-06-051-1/+21
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7237 e03df62e-2008-0410-955e-edbf42e46eb7
* Windows support. Tested and working to compile on freebsd and linux. Next ↵Gravatar w00t2007-05-191-1/+1
| | | | | | 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
* Make RemoveCommand private.Gravatar peavey2006-12-171-2/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6030 e03df62e-2008-0410-955e-edbf42e46eb7
* Invented safe delete-while-itering for hash_map.Gravatar peavey2006-12-171-0/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6029 e03df62e-2008-0410-955e-edbf42e46eb7
* And now, just to force you to recompile the *whole* ircd.. updated headers ↵Gravatar w00t2006-12-151-5/+2
| | | | | | on the headers. :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5998 e03df62e-2008-0410-955e-edbf42e46eb7
* Revert special's sqloper change, nice try but only half a biscuit.Gravatar brain2006-11-031-0/+2
| | | | | | | | | | | 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
* If inspircd crashes in std::string destructor in ↵Gravatar brain2006-09-131-0/+4
| | | | | | 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
* Finish off the fix for bug #136 (a biggie for such a simple thing)Gravatar brain2006-09-061-2/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5151 e03df62e-2008-0410-955e-edbf42e46eb7
* Command result codes. This isnt finished yet, still got to do most of the ↵Gravatar brain2006-09-061-1/+1
| | | | | | modules, and alter CallCommandHandler git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5149 e03df62e-2008-0410-955e-edbf42e46eb7
* Proper error checking on loading cmd_*.so filesGravatar brain2006-09-031-1/+19
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5122 e03df62e-2008-0410-955e-edbf42e46eb7
* Add /RELOAD and move cmd_mode into its own command.Gravatar brain2006-09-031-2/+27
| | | | | | | /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
* Auto loading of commands as shared objects via dlsym (very lightweight ↵Gravatar brain2006-09-031-0/+5
| | | | | | interface, just expects a command_t* pointer) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5118 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove a ton of <typeinfo>, <iostream>, <sstream> etc that we usually never useGravatar brain2006-08-301-2/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5081 e03df62e-2008-0410-955e-edbf42e46eb7
* Document command_parse.h and CommandParser classGravatar brain2006-08-121-0/+101
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4903 e03df62e-2008-0410-955e-edbf42e46eb7
* So much stuff changed in this one, i forgot most of it.Gravatar brain2006-08-101-2/+6
| | | | | | | 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
* Created new class irc::commasepstream.Gravatar brain2006-07-161-1/+2
| | | | | | | | 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