summaryrefslogtreecommitdiff
path: root/src/modules/m_chanprotect.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Added options:deprotectothers, this is like options:deprotectself, but if ↵Gravatar brain2007-04-161-11/+28
| | | | | | | | | set allows one user with +a to remove another users +a, and a user with +q to remove another users +q. Default behaviour is to turn this option off like previous versions of insp defaulted to. Thanks to Bricker for the idea and w00t not getting pissy at me :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6806 e03df62e-2008-0410-955e-edbf42e46eb7
* Crusade to remove debug from stable and tested parts of the core and base ↵Gravatar brain2007-01-151-17/+1
| | | | | | | | | | modules. Most of the code here being de-noised hasnt had a crash or bug in it for many months, if not a year so the debug output is useless noise in the logfile when trying to trace a bug in a REAL problem area. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6356 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix to allow for OnRehash to know what user initiated the rehashGravatar brain2007-01-011-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6207 e03df62e-2008-0410-955e-edbf42e46eb7
* Reasonably sized fix - when adding modes in modules, be sure to check the ↵Gravatar brain2006-12-281-2/+3
| | | | | | return value so we dont load two modules with conflicting modes git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6137 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix deprotectself=no not working.Gravatar peavey2006-12-261-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6130 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove global namespacing, makes modules compile FASTAH. Also massive update ↵Gravatar w00t2006-12-151-7/+4
| | | | | | on headers (change to InspIRCd Development Team, extend copyright to 2007). git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5995 e03df62e-2008-0410-955e-edbf42e46eb7
* Make FounderProtectBase::remove_own_privs a reference, so we can change it ↵Gravatar brain2006-12-121-2/+2
| | | | | | on the fly without needing to re-construct the objects git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5966 e03df62e-2008-0410-955e-edbf42e46eb7
* Someone forgot to do founder too :pGravatar brain2006-12-121-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5965 e03df62e-2008-0410-955e-edbf42e46eb7
* Fixed a pretty nasty bug that allowed users to +a themselves if ↵Gravatar special2006-12-121-1/+1
| | | | | | deprotectself was enabled (thanks webs) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5963 e03df62e-2008-0410-955e-edbf42e46eb7
* Another couple of 'forgot to memset'sGravatar brain2006-11-141-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5742 e03df62e-2008-0410-955e-edbf42e46eb7
* Add <options:deprotectself> which can allow a +qa user to remove their own ↵Gravatar brain2006-10-281-12/+17
| | | | | | +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
* When loading, dont try and free the qa modes, we havent allocated them yetGravatar brain2006-10-271-1/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5555 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow changing of qaprefixes on the fly with REHASH - if this happens, ↵Gravatar brain2006-10-271-0/+19
| | | | | | 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
* Add $ModDep: special comment, similar to $CompileFlags and $LinkerFlags.Gravatar brain2006-10-231-0/+1
| | | | | | | | | $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
* This needs TESTING: use modestacker when unloading module to group modes.Gravatar brain2006-10-231-5/+16
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5531 e03df62e-2008-0410-955e-edbf42e46eb7
* Make +beIgqa be sent multiple per line, rather than one per line, using ↵Gravatar brain2006-10-221-3/+10
| | | | | | | | | 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
* Insert massive change here.Gravatar brain2006-10-191-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5504 e03df62e-2008-0410-955e-edbf42e46eb7
* Now with binary versioning goodnessGravatar brain2006-10-011-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5366 e03df62e-2008-0410-955e-edbf42e46eb7
* Dont send explicit FMODE +qa when qaprefixes is on (because its sent in the ↵Gravatar brain2006-09-241-14/+21
| | | | | | fjoin implicitly) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5315 e03df62e-2008-0410-955e-edbf42e46eb7
* AnnotationsGravatar brain2006-09-151-0/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5254 e03df62e-2008-0410-955e-edbf42e46eb7
* GrrGravatar brain2006-09-091-0/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5178 e03df62e-2008-0410-955e-edbf42e46eb7
* Actually let it be unloaded would be a start (remove VF_STATIC)Gravatar brain2006-09-021-1/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5110 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow unloading of +qaGravatar brain2006-09-021-2/+47
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5109 e03df62e-2008-0410-955e-edbf42e46eb7
* Wahhhhhhhhhhhh bwahahaha. Mass commit to tidy up tons of messy include listsGravatar brain2006-08-301-1/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5080 e03df62e-2008-0410-955e-edbf42e46eb7
* Hint of the day: When you have a function that can return a bool, dont mix ↵Gravatar brain2006-08-281-3/+5
| | | | | | up the true and false returns. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5050 e03df62e-2008-0410-955e-edbf42e46eb7
* Tidyup, multiple inheritence from base class to avoid code duplication in ↵Gravatar brain2006-08-251-130/+85
| | | | | | the two modehandler classes git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5025 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove On005Numeric event from a ton of modules which no longer need it (as ↵Gravatar brain2006-08-251-6/+1
| | | | | | CHANMODES= part of 005 is now automatically done) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5024 e03df62e-2008-0410-955e-edbf42e46eb7
* Added leachim's +qa prefix patchGravatar brain2006-08-251-8/+23
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5016 e03df62e-2008-0410-955e-edbf42e46eb7
* ModeParser::InsertMode is no longer required -- this is auto-generated by ↵Gravatar brain2006-08-231-1/+0
| | | | | | 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
* Just to mess with om's head, remove helperfuncs.h from everywhereGravatar brain2006-08-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7
* CamelCaseRocksSoMuchICamelCasedAllTheMethodsOfClassInspIRCdSoThatItAllLooksNeat.Gravatar brain2006-08-111-4/+4
| | | | | | | NowSomebodyHasToSpendHoursDocumentingAllOfThisIWonderWhoThatWillEndUpBeing... git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4889 e03df62e-2008-0410-955e-edbf42e46eb7
* Move remaining functions:Gravatar brain2006-08-111-3/+3
| | | | | | | | | | | 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
* Change to using Instance->Log (InspIRCd::Log) rather than log() macroGravatar brain2006-08-111-14/+14
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4880 e03df62e-2008-0410-955e-edbf42e46eb7
* ConfigReader and FileReader now take InspIRCd* to their constructorsGravatar brain2006-08-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4865 e03df62e-2008-0410-955e-edbf42e46eb7
* None of the modules use an extern InspIRCd* any moreGravatar brain2006-08-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4863 e03df62e-2008-0410-955e-edbf42e46eb7
* Last of Server:: methods moved to InspIRCd::. Server:: removed.Gravatar brain2006-08-101-4/+4
| | | | | | | | 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
* Note: FOR THE MOMENT, this is BROKEN. It wont run right until im done.Gravatar brain2006-08-101-12/+10
| | | | | | | | 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
* So much stuff changed in this one, i forgot most of it.Gravatar brain2006-08-101-4/+4
| | | | | | | 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
* Move InsertMode into ModeParserGravatar brain2006-08-101-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4849 e03df62e-2008-0410-955e-edbf42e46eb7
* Removal of Server::Log -- not much ever used it anyway with the ability to ↵Gravatar brain2006-08-101-1/+1
| | | | | | 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
* FindNick, FindChan, ChanModes, UserList, CountInvisible, PurgeEmptyChannels, ↵Gravatar brain2006-08-101-4/+6
| | | | | | | | | 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
* Move tons more stuff into class InspIRCdGravatar brain2006-08-091-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4819 e03df62e-2008-0410-955e-edbf42e46eb7
* ServerConfig extern moved into class InspIRCdGravatar brain2006-08-091-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4808 e03df62e-2008-0410-955e-edbf42e46eb7
* Get rid of Server::GetUsers(chanrec) - a throwback to before chanrec could ↵Gravatar brain2006-08-091-53/+53
| | | | | | | | | | | | | 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
* WHEEEEE!!!!!Gravatar brain2006-08-081-15/+15
| | | | | | | | | 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
* Extra debug all over the place, which maybe we should keepGravatar brain2006-08-071-1/+20
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4767 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow SAMODE and remote users to set +qa without local-user checks (bug?)Gravatar brain2006-07-271-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4558 e03df62e-2008-0410-955e-edbf42e46eb7
* Change std::pair<bool,std::string> to neater typedef "ModePair"Gravatar brain2006-07-271-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4557 e03df62e-2008-0410-955e-edbf42e46eb7
* Add extra method to mode handler, ModeHandler::ModeSet().Gravatar brain2006-07-261-0/+51
| | | | | | | | | | | 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
* Fix for new templated GetExt, and tidy up of some MAJOR copy/paste craq!Gravatar brain2006-07-101-21/+38
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4279 e03df62e-2008-0410-955e-edbf42e46eb7