summaryrefslogtreecommitdiff
path: root/src/mode.cpp
Commit message (Expand)AuthorAgeFilesLines
* Only return prefix modes from ModeParser::ModeString()•••Previously it returned all mode chars regardless if they were actually prefix modes, e.g. +k, +g etc. if they were set on a user's nick. This bug has manifested itself in different places all resulting in extra MODE lines being sent to users on a channel, for example spanningtree sent an FJOIN #chan 111 +nt k,000AAAAAA if the key was 000AAAAAA's nick, which in addition to confusing services made remote servers send a MODE #chan +k <nick> to their clients on #chan. The same applied for all listmodes allowing an exact nick as a parameter, like +g Gravatar attilamolnar2012-05-191-1/+1
* Replace copyright headers with headers granting specific authors copyrightGravatar Robby-2012-04-201-8/+18
* Cap masks and bans at 250 characters to fix bug #946•••git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12574 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-03-011-0/+3
* Properly spacify opertypes in error messages. Patch by dKingston•••git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@11725 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar special2009-09-141-1/+1
* Makefile updates: clean up command lines•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11395 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-06-011-3/+0
* Show correct server source to users on FTOPIC and FMODE•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11380 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-05-131-1/+1
* Use server source for RemoveMode, fixes bug #838•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11316 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-04-181-1/+1
* 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
* Follow-up fix to r11081. Escalate minimum privileges from '%' to '@' if halfo...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11212 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-03-131-2/+4
* Correctly fill LastParseParams on servermode. Fixes bug 763, thanks Ankit•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11187 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-03-091-1/+1
* m_override: fix messages on multi-mode changes•••This fixes bug 664 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11186 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-03-081-0/+3
* 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-5/+8
* 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-4/+12
* Remove/Add cmode h according to <option:allowhalfop>. Fixes bug #715 reported...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11081 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-02-111-21/+8
* 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/+2
* Missed one, w00t :)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10714 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar aquanight2008-10-251-4/+0
* Fix <disabled:umodes> interfering with /unloadmodule m_implementing_a_umode, ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10713 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-10-251-2/+2
* Tie settings in mode and whowas to privs.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10675 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-10-181-2/+2
* 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/+5
* 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/+5
* Remove last vestige of libircdfoo, by changing tag into a single identifier...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10076 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-291-1/+1
* Move umode_n to umode_s, second half of last commit•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10075 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-291-2/+2
* After discussions and thought, move umode +n to +s. This increases cross-ircd...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10074 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-291-4/+1
* Fixes to some stuff that writes on memory it shouldn't (thanks psychon).•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10047 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-201-1/+1
* Implement <disabled:usermodes> and <disabled:chanmodes>.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10032 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar aquanight2008-07-181-0/+11
* More broken compile stuff•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10016 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-141-1/+1
* Convertage.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10010 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-131-14/+14
* Allow opers to view modelists regardless of <security:hidemodelists>•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9995 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-121-4/+7
* Make m_gecosban work. We can't make assumptions about how an extban banmask m...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9991 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-121-0/+3
* First phase of conversion to dynamic limits on all the lengths, configured vi...•••(the tag isnt there yet, these all just run on defaults in the class constructor) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9802 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-05-251-1/+1
* Convert channel::name to std::string, this was a beastie!•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9770 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-05-191-7/+7
* Make User:: nick/ident/dhost/fullname and some other things std::string inste...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9748 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar aquanight2008-05-181-20/+20
* 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-14/+18
* 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-5/+7
* 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/+65
* Merge in large patchset from GreenReaper, useful fixes for freeing a ton of d...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9565 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-04-211-2/+1
* Only restrict set with <class:usermodes/chanmodes>, not unset•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9494 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-04-131-5/+3
* Fix a cosmetic issue: 'oper type does not have access'•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9359 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-04-051-6/+17
* The start of extended bans infrastructure: syntax is e.g. +b n:w00tdiff@*, ba...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9337 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-04-041-3/+3
* 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-6/+23
* 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-4/+10
* 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-3/+6
* Wheeee for HUGE commits. Convert all numerics to WriteNumeric so that OnNumer...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9175 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-03-221-13/+13
* Fix for bug #466 reported by John•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9042 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-02-261-2/+0
* Convert remaining InspIRCd::Log() calls to new logging system•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9001 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar aquanight2008-02-221-3/+3
* 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-8/+8
* Change string for Om <3•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8943 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-02-141-1/+1
* Make AC_OTHERMODE OnAccessCheck call work again.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8942 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-02-141-1/+4