summaryrefslogtreecommitdiff
path: root/src/modules/m_chanprotect.cpp
AgeCommit message (Collapse)Author
2006-10-28Add <options:deprotectself> which can allow a +qa user to remove their own ↵brain
+q or +a. The default of having this off makes inspircd act like it always has (only allow ANY removal of these modes via services or a founder) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5578 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-27When loading, dont try and free the qa modes, we havent allocated them yetbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5555 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-27Allow changing of qaprefixes on the fly with REHASH - if this happens, ↵brain
writeopers saying that users might need to reconnect to detect the change. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5549 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-23Add $ModDep: special comment, similar to $CompileFlags and $LinkerFlags.brain
$ModDep allows a module to specify headers it depends on, e.g. all of the headers which use u_listmode.h now do this: /* $ModDep: ../../include/u_listmode.h */ git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5534 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-23This needs TESTING: use modestacker when unloading module to group modes.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5531 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-22Make +beIgqa be sent multiple per line, rather than one per line, using ↵brain
modestacker and stringjoiner. This cuts down server to server traffic a *lot*. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5515 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-19Insert massive change here.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5504 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-01Now with binary versioning goodnessbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5366 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-24Dont send explicit FMODE +qa when qaprefixes is on (because its sent in the ↵brain
fjoin implicitly) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5315 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-15Annotationsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5254 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-09Grrbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5178 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-02Actually let it be unloaded would be a start (remove VF_STATIC)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5110 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-02Allow unloading of +qabrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5109 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-30Wahhhhhhhhhhhh bwahahaha. Mass commit to tidy up tons of messy include listsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5080 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-28Hint of the day: When you have a function that can return a bool, dont mix ↵brain
up the true and false returns. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5050 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-25Tidyup, multiple inheritence from base class to avoid code duplication in ↵brain
the two modehandler classes git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5025 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-25Remove On005Numeric event from a ton of modules which no longer need it (as ↵brain
CHANMODES= part of 005 is now automatically done) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5024 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-25Added leachim's +qa prefix patchbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5016 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-23ModeParser::InsertMode is no longer required -- this is auto-generated by ↵brain
the ModeParser based on what modes are registered and wether or not they have certain attributes git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5007 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Just to mess with om's head, remove helperfuncs.h from everywherebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11CamelCaseRocksSoMuchICamelCasedAllTheMethodsOfClassInspIRCdSoThatItAllLooksNeat.brain
NowSomebodyHasToSpendHoursDocumentingAllOfThisIWonderWhoThatWillEndUpBeing... git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4889 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Move remaining functions:brain
operstrcmp* commands.cpp InspIRCd::operstrcmp() duration* commands.cpp InspIRCd::duration() host_matches_everyone* commands.cpp InspIRCd::host_matches_everyone() ip_matches_everyone* commands.cpp InspIRCd::ip_matches_everyone() nick_matches_everyone* commands.cpp InspIRCd::nick_matches_everyone() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4888 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Change to using Instance->Log (InspIRCd::Log) rather than log() macrobrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4880 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11ConfigReader and FileReader now take InspIRCd* to their constructorsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4865 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11None of the modules use an extern InspIRCd* any morebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4863 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Last of Server:: methods moved to InspIRCd::. Server:: removed.brain
This will need a real good tidyup later, because now everything is in the right place, but its a mess because for now i threw them into place (e.g. space indenting, etc) Next on the todo: Make command handlers have a ServerInstance (gank!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4861 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Note: FOR THE MOMENT, this is BROKEN. It wont run right until im done.brain
Changed Parameter for modules from Server* to InspIRCd*. TODO: Move remaining Server* Modules into InspIRCd* and remove class Server. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4859 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10So much stuff changed in this one, i forgot most of it.brain
Oh yeah, main thing is ModeHandler and ModeWatcher classes now take an InspIRCd* to their constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4858 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Move InsertMode into ModeParserbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4849 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Removal of Server::Log -- not much ever used it anyway with the ability to ↵brain
use log(). log() macro still exists, and calls InspIRCd::Log() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4845 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-09Move tons more stuff into class InspIRCdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4819 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-09Get rid of Server::GetUsers(chanrec) - a throwback to before chanrec could ↵brain
do this itself Move: bool ChangeDisplayedHost(const char* host); bool ChangeName(const char* gecos); int CountChannels(); Into userrec git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4807 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-07Extra debug all over the place, which maybe we should keepbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4767 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27Allow SAMODE and remote users to set +qa without local-user checks (bug?)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4558 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-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-10Fix for new templated GetExt, and tidy up of some MAJOR copy/paste craq!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4279 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Make it compile... >_<om
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4211 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Move to stack-allocated OnRehash()-local ConfigReader *duck*om
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4210 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09More copy/paste fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4209 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Give modeclasses access to Server* Srv via constructorbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4208 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09More typo fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4207 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09More tweaks (remove OnExtendedMode)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4206 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Started on thisbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4205 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09DELETE()'s in destructors *fwap*om
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4203 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-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