summaryrefslogtreecommitdiff
path: root/include/mode.h
Commit message (Expand)AuthorAgeFilesLines
* Update comments for new api•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9610 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-05-041-1/+0
* Conversion of command handler params from "const char* const* parameters, int...•••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 Gravatar brain2008-05-041-1/+1
* Optimize MODE #chan b etc, avoid a 256 byte memset for duplicate mode checks•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9601 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-05-021-0/+4
* Simple user/channel mode patch•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9596 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-05-011-0/+26
* Fixes for bug #493, tidyups to clearing of channel modes on losing FJOIN. Mod...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9283 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-04-021-2/+2
* Add an optional bool to ModeParser::ModeString() to not give the nickname n t...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9242 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-04-011-1/+3
* Add ability to control what opertypes can set what operonly user/chan modes. ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9176 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar aquanight2008-03-231-0/+5
* Wheee, mass commit! this adds const stafety, throwing a compile error if anyo...•••copy the pointer. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8971 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-02-201-1/+1
* Someone please help me fix the warnings in modules caused by this change. All...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8964 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-02-181-3/+3
* New mode stuff. Note, the framework is now here so that every mode handler ca...•••then only a halfop or above can use mode +j. If you put '@' in this member value, only ops and above can use it. The OnRawMode can return ACR_ALLOW on a case by case basis to totally override this check against the prefix char. If you return ACR_DEFAULT the check goes ahead. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8935 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-02-141-1/+10
* Clear up header insanity•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8808 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-02-031-7/+0
* Header update: 2007 -> 2008•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-01-101-1/+1
* Remove some unnecessary headers from places, commit working BanCacheManager s...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8487 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2007-11-041-3/+0
* pedantic safe•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8316 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-10-231-4/+2
* In the grand tradition of huge fucking commits:••• - chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2007-10-151-18/+18
* Proper fix for end-of-list numerics on restricted lists in bug #386, rather t...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7838 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-08-261-1/+9
* OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2007-07-161-1/+519
* 'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are au...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2007-07-161-519/+1
* More comments•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7381 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-06-171-0/+15
* Fix std::sort stuff for w00t•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7050 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-05-191-1/+1
* Windows support. Tested and working to compile on freebsd and linux. Next ste...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7043 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2007-05-191-3/+3
* Fix lusers breakage introduced by latest set of optimizations•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6219 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-031-0/+3
* This doesnt need to be static•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6164 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-291-1/+1
* Add counter system for umodes to get rid of some O(n)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6163 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-291-0/+7
* And now, just to force you to recompile the *whole* ircd.. updated headers on...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5998 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-12-151-6/+3
* Make SAMODE oper output tidier•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5184 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-091-0/+11
* Add /RELOAD and move cmd_mode into its own command.•••/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 Gravatar brain2006-09-031-14/+0
* Allow unloading of modules which implement modes!•••The default implementation of the new system will remove simplemodes so any mode handler which is just a simple mode (no params and not a list mode) does not need to add much more than one line of code and remove its VF_STATIC flag. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5100 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-021-0/+29
* *thwap* om for not fixing the bugs he finds :p•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5087 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-311-1/+1
* Remove a ton of <typeinfo>, <iostream>, <sstream> etc that we usually never use•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5081 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-301-3/+0
* Add <options:cyclehosts> which allows a user to appear to have quit when thei...•••It is recommended this option always be on. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5017 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-251-0/+10
* ModeParser::InsertMode is no longer required -- this is auto-generated by the...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5007 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-4/+5
* Document ModeParser::FindPrefix() and chanrec::GetAllPrefixes()•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5006 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-40/+25
* Multi-prefix FJOIN, and allowing module-defined prefixes across the network•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5002 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-0/+2
* More prefixchar stuff.•••WARNING: 005 numeric is broken in this commit. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5000 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-0/+7
* Document mode prefixes•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4999 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-2/+33
* Mode handlers handling listmodes where a listmode item is a nickname can now ...•••This isnt documented yet. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4997 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-5/+28
* Explain what ModeParser does•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4907 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-121-0/+5
* (Bigger than it looks, i did this with perl inplace edit) -- commands now tak...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4862 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-1/+1
* So much stuff changed in this one, i forgot most of it.•••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 Gravatar brain2006-08-101-6/+11
* Move InsertMode into ModeParser•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4849 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-101-0/+2
* Dynamically generate 004 numeric from the modehandler list•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4665 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-031-0/+6
* Add support for syntax of commands in place of the text 'Not enough parameter...•••To support this each derived class of command_t must set the value of command_t::syntax to a non-empty string. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4561 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-281-1/+1
* Change std::pair<bool,std::string> to neater typedef "ModePair"•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4557 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-271-2/+10
* Mode merging during FJOIN with ourts==theirts. Only +k and +l have CheckTimes...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4556 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-271-0/+19
* commit remainder of new mode bouncing stuff for TS based modes•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4550 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-271-0/+2
* Add extra method to mode handler, ModeHandler::ModeSet().•••Returns a std::pair<bool,string>. if the bool is true, the mode is set, and the second item in the pair is the parameter set on it, if any If the bool is false, the mode is not set, and the parameter given is returned as the second item of the pair To be used in mode bouncing, to build a safe set of bounced modes (dont ask yet) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4549 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-261-0/+2
* mass tidyup, change A LOT of stuff to const char** which was char** (such as ...•••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 Gravatar brain2006-07-161-2/+2
* Inherit tons of stuff from classbase that should always have been•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4298 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-101-1/+1
* Made a load more stuff Extensible which might be of use to someone•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4293 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-101-2/+2