summaryrefslogtreecommitdiff
path: root/src/modes
Commit message (Collapse)AuthorAgeFilesLines
* Makefile updates: Allow run-cc wrapper to be disabled by "make V=1"Gravatar danieldg2009-06-011-17/+17
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11396 e03df62e-2008-0410-955e-edbf42e46eb7
* Makefile updates: clean up command linesGravatar danieldg2009-06-011-2/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11395 e03df62e-2008-0410-955e-edbf42e46eb7
* Overloading SetMode seems to cause the compiler to interpret "" as a bool ↵Gravatar danieldg2009-04-292-4/+4
| | | | | | and not a string. Fixes bug #849 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11335 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix SetModeParam to use std::string and handle edge cases.Gravatar danieldg2009-04-172-14/+7
| | | | | | | Previously, changing the vaule of a mode could require 3 calls to SetMode and SetModeParam. This also fixes memory leaks caused by the strdup() not always being paired with a free(). git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11307 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix bug #826: setting +l 0 doesn't work in some cases. Just don't check for ↵Gravatar w00t2009-04-161-9/+0
| | | | | | +l to an existing limit at all, as there isn't a lot of point to it. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11302 e03df62e-2008-0410-955e-edbf42e46eb7
* Update all wiki links to point to the new wiki. This was done automatically ↵Gravatar psychon2009-03-1516-16/+16
| | | | | | | | | 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
* Fix +k for realGravatar danieldg2009-03-071-8/+20
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11185 e03df62e-2008-0410-955e-edbf42e46eb7
* Let's try that +k fix again, this time with more testingGravatar danieldg2009-03-071-7/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11184 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix r11178 not allowing keys to be unsetGravatar danieldg2009-03-071-28/+22
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11182 e03df62e-2008-0410-955e-edbf42e46eb7
* Construct explicit parameter type list for MODE parametersGravatar danieldg2009-03-063-3/+3
| | | | | | | | | | | | 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
* Drop channel keys if they are identical to the already-set key (fix for bug ↵Gravatar w00t2009-03-061-0/+5
| | | | | | #756, reported by Taros) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11178 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
* Remove/Add cmode h according to <option:allowhalfop>. Fixes bug #715 ↵Gravatar peavey2009-02-111-9/+0
| | | | | | reported by Strawberry. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11081 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix compile errorGravatar danieldg2009-01-311-4/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11018 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for bug #695. For now, we cant be sure what parts of the code might ↵Gravatar brain2009-01-311-5/+3
| | | | | | still use empty nick to signify a server, so lets just avoid messing with it until 1.2+1 and use this simple workaround instead. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11016 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow +l 0 (for +PlL #newchan).Gravatar w00t2009-01-251-9/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11006 e03df62e-2008-0410-955e-edbf42e46eb7
* This can't be case sensitive because it's not consistant, and also would ↵Gravatar w00t2009-01-251-1/+1
| | | | | | break having two extbans of differing case but same letter on the same mask (+bb m:f M:f). Also found courtesy of Jason. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11005 e03df62e-2008-0410-955e-edbf42e46eb7
* Update copyrights for 2009.Gravatar w00t2009-01-0216-16/+16
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove +s when no snomasks are set.. bug found (indirectly) by jackmcbarn.Gravatar w00t2008-11-021-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10793 e03df62e-2008-0410-955e-edbf42e46eb7
* Send remote de-oper to REMOTEOPER snomask.Gravatar w00t2008-11-011-1/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10776 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix <disabled:umodes> interfering with /unloadmodule m_implementing_a_umode, ↵Gravatar w00t2008-10-251-4/+0
| | | | | | aquanight, you didn't look quite far enough into this - the problem was m_cloaking (e.g.) returning MODEACTION_DENY if src != dest, which was very very oooold behaviour. Seems to work fine now. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10713 e03df62e-2008-0410-955e-edbf42e46eb7
* I think this fixes the mode +k weirdness. Keys were never being set ↵Gravatar brain2008-09-291-1/+2
| | | | | | correctly in the channel data. gcc doesnt warn on cast from char* to bool. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10606 e03df62e-2008-0410-955e-edbf42e46eb7
* Move all the parameters around AGAIN. See docs shortlyGravatar brain2008-08-311-0/+8
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10364 e03df62e-2008-0410-955e-edbf42e46eb7
* Fixes, this can't be taken directly from 1.1Gravatar w00t2008-08-251-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10265 e03df62e-2008-0410-955e-edbf42e46eb7
* Forward-port r10257, fixes bug #599 reported by mixx941.Gravatar w00t2008-08-241-1/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10258 e03df62e-2008-0410-955e-edbf42e46eb7
* Add OnParameterMissing to modehandler, called when the mode handler should ↵Gravatar brain2008-08-171-0/+6
| | | | | | have a parameter, but the parser found none git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10149 e03df62e-2008-0410-955e-edbf42e46eb7
* Move umode_n to umode_s, second half of last commitGravatar w00t2008-07-292-5/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10075 e03df62e-2008-0410-955e-edbf42e46eb7
* After discussions and thought, move umode +n to +s. This increases ↵Gravatar w00t2008-07-293-40/+3
| | | | | | cross-ircd compat (both charybdis and unreal use +s for snomasks, others might in the future). This also decreases complexity for new users, and removes the redundancy. This means that just +s +cC for example will be required to view connects. (files to be renamed in next commit to not confuse svn). git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10074 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove custom members for +lk storageGravatar w00t2008-07-202-22/+27
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10053 e03df62e-2008-0410-955e-edbf42e46eb7
* Change modes in channels and users to use std::bitset instead of an array. ↵Gravatar w00t2008-07-191-1/+1
| | | | | | This saves 56 bytes per channel, and 112 bytes per channel, with no loss in speed or ease of use in code. :). Thanks (VERY) much to Special for telling me about this. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10043 e03df62e-2008-0410-955e-edbf42e46eb7
* Something we can do in 1.2 that we cant really do neatly in 1.1 - allow for ↵Gravatar brain2008-06-091-1/+1
| | | | | | the channel list sizes to be enforced only locally git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9882 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert channel::name to std::string, this was a beastie!Gravatar brain2008-05-195-18/+18
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9770 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert channel banlist members to std::stringGravatar brain2008-05-191-7/+7
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9769 e03df62e-2008-0410-955e-edbf42e46eb7
* Make User:: nick/ident/dhost/fullname and some other things std::string ↵Gravatar aquanight2008-05-186-14/+14
| | | | | | instead of char*/char[] (MODULES DO NOT COMPILE) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9748 e03df62e-2008-0410-955e-edbf42e46eb7
* Conversion of command handler params from "const char* const* parameters, ↵Gravatar brain2008-05-046-22/+14
| | | | | | | | | | 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
* Convert to SimpleUserModeHandler and SimpleChannelModeHandlerGravatar brain2008-05-018-121/+8
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9599 e03df62e-2008-0410-955e-edbf42e46eb7
* Merge in large patchset from GreenReaper, useful fixes for freeing a ton of ↵Gravatar brain2008-04-211-2/+0
| | | | | | different things on shutdown for tidyness, and a few stack corruption fixes in the mode handler git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9565 e03df62e-2008-0410-955e-edbf42e46eb7
* Set the required prefix for ops to @, thanksGravatar brain2008-04-141-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9503 e03df62e-2008-0410-955e-edbf42e46eb7
* Fixes for bug #493, tidyups to clearing of channel modes on losing FJOIN. ↵Gravatar brain2008-04-025-24/+53
| | | | | | Module unloads may also be tidied at a future date but it means reordering some loops in mode.cpp. See around the comment added. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9283 e03df62e-2008-0410-955e-edbf42e46eb7
* make sure we include the right headers and fix a warning in cmode_bGravatar brain2008-04-021-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9269 e03df62e-2008-0410-955e-edbf42e46eb7
* whack a couple of format warnings now showing with r9217Gravatar peavey2008-03-301-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9218 e03df62e-2008-0410-955e-edbf42e46eb7
* Make run-cc show ARCHIVE step(s), also get rid of 'entering/leaving ↵Gravatar aquanight2008-02-241-2/+1
| | | | | | directory' nonsense from gnumake. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9031 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert remaining InspIRCd::Log() calls to new logging systemGravatar aquanight2008-02-221-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9001 e03df62e-2008-0410-955e-edbf42e46eb7
* Someone please help me fix the warnings in modules caused by this change. ↵Gravatar brain2008-02-1817-29/+22
| | | | | | All mode handler OnMode events, ModeWatcher::BeforeMode/AfterMode, plus OnRawMode now have a bool servermode parameter git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8964 e03df62e-2008-0410-955e-edbf42e46eb7
* As a final test of this, set the permissions required to set channel mode +h ↵Gravatar brain2008-02-141-1/+1
| | | | | | to be '@' git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8937 e03df62e-2008-0410-955e-edbf42e46eb7
* HA, that did itGravatar brain2008-02-121-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8914 e03df62e-2008-0410-955e-edbf42e46eb7
* apparently ar -s is equivalent to ranlib, except it doesnt have a fucking ↵Gravatar brain2008-02-121-1/+1
| | | | | | noisy non-redirectable message :P git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8913 e03df62e-2008-0410-955e-edbf42e46eb7
* Add -Wshadow to cflags, and fix a bunch of warnings that come with it. Add a ↵Gravatar w00t2008-02-113-6/+7
| | | | | | note to webirc that needs looking at. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8892 e03df62e-2008-0410-955e-edbf42e46eb7
* Hide ar and ranlibGravatar brain2008-02-101-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8882 e03df62e-2008-0410-955e-edbf42e46eb7
* Now very tidy make output, with pretty colours :pGravatar brain2008-02-101-17/+17
| | | | | | | (Unless it errors, then you get the full commandline and error output etc) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8878 e03df62e-2008-0410-955e-edbf42e46eb7