summaryrefslogtreecommitdiff
path: root/src/mode.cpp
Commit message (Expand)AuthorAgeFilesLines
* 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-1/+1
* 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-2/+2
* * Fix Server::SendMode to actually work again.•••* In the 1.1 protocol we now use FMODE for everything, rather than MODE. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4551 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-271-1/+1
* 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/+14
* 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/+12
* 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-3/+3
* - Add notice masks display to MODE nick, using a modified version of Unreal's...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4275 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-07-101-0/+2
* - Add usermode +n for notice masks - our implementation of snomasks. We're no...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4274 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-07-101-2/+3
* Added ModeParser::AddModeWatcher() and ModeParser::DelModeWatcher()•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4266 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-101-3/+48
* send_mode event for spanningtree (this will be backported to stable as its re...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4243 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-091-4/+0
* Tweak mode parser so that oper-only modes are only enforced on local clients,...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4212 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-091-1/+1
* Fixed pointless dereference spotted by Foamy•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4198 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-1/+1
* Implement DisplayList virtual method calls, and implement it in cmode_b•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4185 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-1/+20
* Add usermode +o, with special checking so that an oper may only remove the mo...•••Finish off facility for oper-only user and channel modes git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4183 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-0/+9
* Forgot return;s•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4182 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-0/+2
* Added DisplayCurrentModes which will display the modes of a channel or nick•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4181 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-4/+24
* Fix typos•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4180 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-2/+2
* Add code to display umode changes when they occur•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4179 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-0/+9
* Added usermodes +swi.•••Note the usermode system needs a bit of a refactor to combine module and core modes into the same storage neatly (as we did with channels) this is next on my todo. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4174 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-0/+16
* Remove comemnted-out GiveVoice and TakeVoice•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4173 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-57/+0
* Add cmode +v - that's all the RFC channel modes done now•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4172 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-4/+7
* Remove the TakeHops and GiveHops from comments•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4171 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-57/+1
* Add support for cmode +h•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4170 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-0/+3
* Tidyup, and add numeric 472 "unknown mode char"•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4169 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-22/+8
* Fix for permissions :p•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4168 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-7/+14
* Put back security checks so non-ops cant set modes again :p•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4167 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-0/+14
* Integrate +o into handlers•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4166 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-2/+12
* Add cmode +o (op/deop) and in the process change a lot of char* to const char...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4165 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-82/+28
* Add channelmode +l•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4163 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-1/+4
* Add chmode +k, cut down includes in use in mode.cpp•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4162 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-14/+5
* Comments•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4160 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-081-0/+1
* Add support for channelmode +i•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4159 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-0/+3
* Add cmode_n and cmode_t•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4158 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-0/+6
* Save ourselves 3 dereferences•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4155 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-6/+8
* Remove the transposition of @ and ! stuff, doesnt work right and not a good e...•••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 Gravatar brain2006-07-071-10/+10
* Avoid throwing a std::out_of_range exception when given a ban without ! or @ ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4150 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-1/+1
* Fix to check for colon (accidentally typed pos_of_dot)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4148 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-1/+1
* Mask cleaning.•••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 Gravatar brain2006-07-071-0/+37
* Started work on ModeParser::CleanMask()•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4145 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-0/+6
* A bit more debugging•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4143 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-0/+1
* 'Activate' +m by putting it in the constructor•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4142 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-1/+8
* GCC defines and <hash_map> -> "hash_map.h"•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4138 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-5/+1
* Fix listmodes and modes with params•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4136 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-3/+4
* Add mode +b to active list•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4135 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-0/+2
* fix channel mode +b•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4134 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-7/+0
* Mode +b stuff, probably wont work yet•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4133 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-96/+0
* Tidied up checking in ModeParser::AddMode() and added a humorous comment abou...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4132 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-1/+16
* Initialize mode handlers and watchers to 0 in the constructor, or mucho pain ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4130 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-0/+4
* Aaaand, correct all the obligitary typos•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4129 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-2/+4
* Added hashing stuff to hold both user and channel modes in the watcher/handle...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4127 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-071-5/+22