summaryrefslogtreecommitdiff
path: root/src/mode.cpp
AgeCommit message (Collapse)Author
2006-08-10cmode(), cflags(), cstatus() -> chanrec::GetStatusChar(), ↵brain
chanrec::GetStatusFlags(), chanrec::GetStatus() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4837 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10FindNick, FindChan, ChanModes, UserList, CountInvisible, PurgeEmptyChannels, ↵brain
GetClass, WriteOpers, GetServerDescription -> into classes ServerConfig takes InspIRCd pointer in its constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4832 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09ServerConfig extern moved into class InspIRCdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4808 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08WHEEEEE!!!!!brain
All of: Write(), WriteTo(), WriteFrom(), WriteServ() are now methods of userrec. Write_NoFormat(), WriteTo_NoFormat(), WriteFrom_NoFormat(), WriteServ_NoFormat() are now std::string-taking overloaded methods of the functions above All modules updated to use new syntax, my fingers hurt :( git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4798 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08WriteChannel* functions and ChanExceptSender* functions are now methods of ↵brain
chanrec. They probably should be renamed too eventually. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4788 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06return statement in wrong place caused modes to be droppedbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4756 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04Allow non-ops to view listmode listsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4716 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03Dynamically generate 004 numeric from the modehandler listbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4665 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27Change std::pair<bool,std::string> to neater typedef "ModePair"brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4557 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27Mode merging during FJOIN with ourts==theirts. Only +k and +l have ↵brain
CheckTimestamp methods atm, needs to be finished by me and TIDIED. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4556 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27* Fix Server::SendMode to actually work again.brain
* 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
2006-07-27commit remainder of new mode bouncing stuff for TS based modesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4550 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-26Add extra method to mode handler, ModeHandler::ModeSet().brain
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
2006-07-16mass tidyup, change A LOT of stuff to const char** which was char** (such as ↵brain
parameters to commands in handlers) 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
2006-07-10- Add notice masks display to MODE nick, using a modified version of ↵w00t
Unreal's 008 (no stupid formatting, display it like 221) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4275 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10- Add usermode +n for notice masks - our implementation of snomasks. We're ↵w00t
not sure how this will tie in with +s yet. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4274 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Added ModeParser::AddModeWatcher() and ModeParser::DelModeWatcher()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4266 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09send_mode event for spanningtree (this will be backported to stable as its ↵brain
really a bugfix too (honest!)) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4243 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Tweak mode parser so that oper-only modes are only enforced on local ↵brain
clients, so that during a burst the remote server can set them and we dont get desyncs git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4212 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Fixed pointless dereference spotted by Foamybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4198 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Implement DisplayList virtual method calls, and implement it in cmode_bbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4185 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Add usermode +o, with special checking so that an oper may only remove the ↵brain
mode not set it (on himself or others) - 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
2006-07-08Forgot return;sbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4182 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Added DisplayCurrentModes which will display the modes of a channel or nickbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4181 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Fix typosbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4180 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Add code to display umode changes when they occurbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4179 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Added usermodes +swi.brain
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
2006-07-08Remove comemnted-out GiveVoice and TakeVoicebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4173 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Add cmode +v - that's all the RFC channel modes done nowbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4172 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Remove the TakeHops and GiveHops from commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4171 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Add support for cmode +hbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4170 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Tidyup, and add numeric 472 "unknown mode char"brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4169 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Fix for permissions :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4168 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Put back security checks so non-ops cant set modes again :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4167 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Integrate +o into handlersbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4166 e03df62e-2008-0410-955e-edbf42e46eb7
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