summaryrefslogtreecommitdiff
path: root/src/mode.cpp
AgeCommit message (Collapse)Author
2006-07-08Add cmode +o (op/deop) and in the process change a lot of char* to const ↵brain
char* to avoid unneccessary casts git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4165 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Add channelmode +lbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4163 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Add chmode +k, cut down includes in use in mode.cppbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4162 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4160 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Add support for channelmode +ibrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4159 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Add cmode_n and cmode_tbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4158 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Save ourselves 3 dereferencesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4155 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Remove the transposition of @ and ! stuff, doesnt work right and not a good ↵brain
enough idea to be worth fixing Fix mode parser so that if a handler nukes its parameter to an empty string, but its said it MUST have a parameter (e.g. +b or +L) then thats equivalent to MODEACTION_DENY as we cant do anything without the param. The whole mode and its parameter get 'eaten' and the next character is moved to instead. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4151 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Avoid throwing a std::out_of_range exception when given a ban without ! or @ ↵brain
in it (whooops) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4150 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Fix to check for colon (accidentally typed pos_of_dot)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4148 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Mask cleaning.brain
nick -> nick!*@* nick!ident -> nick!ident@* host.name -> *!*@host.name ident@host.name -> *!ident@host.name transposed @ and !, swap @ and ! to form proper n!u@h ordering Hostname determined by containing a dot or a colon git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4147 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Started work on ModeParser::CleanMask()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4145 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07A bit more debuggingbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4143 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07'Activate' +m by putting it in the constructorbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4142 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07GCC defines and <hash_map> -> "hash_map.h"brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4138 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Fix listmodes and modes with paramsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4136 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Add mode +b to active listbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4135 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07fix channel mode +bbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4134 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Mode +b stuff, probably wont work yetbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4133 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Tidied up checking in ModeParser::AddMode() and added a humorous comment ↵brain
about modes like '^' and '_'. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4132 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Initialize mode handlers and watchers to 0 in the constructor, or mucho pain ↵brain
can ensue git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4130 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Aaaand, correct all the obligitary typosbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4129 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Added hashing stuff to hold both user and channel modes in the ↵brain
watcher/handler list git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4127 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Mode parser WORKS! (for simple non-parameterized channel modes)brain
Tested with channel mode +s. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4126 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Dummy framework to insert the class for channelmode +sbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4125 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07Header for cmode_s.cppbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4124 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-24delete operator tracking in debug mode (using a macro -- live with it.)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3904 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10Typedef an ugly iterator, dont send mode string if no modes were in the ↵brain
output sequence git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3867 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10Typo fixes, move some stuff aboutbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3862 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10INSERT foot INTO mouth WHERE user='Brain'brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3861 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10I hate HATE HATE templates.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3860 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10istringstream not ostringstreambrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3859 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10Extra allowance for modes which have different number of params when being ↵brain
set to being unset (read as: jro smoking craq) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3858 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10Start of new mode parserbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3857 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-09Om's way is better and lets watchers change mode parameters for the modes ↵brain
theyre watching git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3856 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-09Start of mode parser refactoringbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3855 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08Split inspircd_io.* insp inspsocket.* and configreader.* with a few odd bits ↵om
going into inspircd.*, doesn't look like I've broken anything... :P git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3847 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-06Holy christ that was a LOT OF SPACES. TABS, USE THEM, LOVE THEM, APPRECIATE ↵w00t
THEM - we now have no stupid spaces. This was mostly a mass find/replace, so some indentation may be stuffed. Minor issue, though. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3838 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-02Undo me screwing stuff upom
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3797 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-02Add amd64/linux to list of OS'es tested, but mainly CIA test :Pom
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3796 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-12Renamed to chanrec::modesbrain
Renamed IsCustomModeSet to IsModeSet GetModeParameter will now return the channel limit (as a string) for a request for mode 'l' and the channel key for a request for mode 'k'. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3692 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-12*NEEDS TESTING* changed binarymodes to use the custom_modes entriesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3691 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-10Set bitfields on servermodebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3619 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09Mostly formatting cleanup, rename a 'Ptr' to a more meaningful 'chan', ↵om
remove some pointless nested if()s checking the same thing at each other git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3604 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09UM_WALLOPS had value 3 which was a combination of UM_SERVERNOTICE and ↵brain
UM_INVISIBLE :/ git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3591 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09Modes the wrong way aroundbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3590 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09Added userrec::modebits - fast way of checking if user has +swi rather than ↵brain
an icky strchr git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3588 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09Grant and revoke now use iteratorsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3581 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-08Removed has_channel(userrec*,chanrec*), the new preferred way of doing it is ↵brain
channel->HasUser(userrec) Yeah its the other way around to the old way, but somehow, seems less backwards to me (its also faster) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3560 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-08Got rid of all that ugly char* cast crap (todo: change docs to reflect change)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3556 e03df62e-2008-0410-955e-edbf42e46eb7