summaryrefslogtreecommitdiff
path: root/include/mode.h
Commit message (Expand)AuthorAgeFilesLines
* Update all wiki links to point to the new wiki. This was done automatically w...•••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 Gravatar psychon2009-03-151-1/+1
* Include explicit parameter list in ProtocolInterface::SendMode•••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 Gravatar danieldg2009-03-071-0/+4
* Construct explicit parameter type list for MODE parameters•••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 Gravatar danieldg2009-03-061-2/+12
* Nuke trailing spaces•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-02-141-5/+4
* Update copyrights for 2009.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2009-01-021-1/+1
* Add user/channel mode synchronisation detection to CAPAB - link will now drop...•••This will not affect services. Side effect: Modes::ChanModes() -> Modes::GiveModeList(ModeMasks), mode list is formatted identically for both MASK_CHANNEL and MASK_USER. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10733 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-10-271-2/+7
* Whoops, left off a virtual. Please ensure youre using this version if you act...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10366 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-08-311-1/+1
* Move all the parameters around AGAIN. See docs shortly•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10364 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-08-311-0/+4
* Add OnParameterMissing to modehandler, called when the mode handler should ha...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10149 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-08-171-0/+8
* 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