summaryrefslogtreecommitdiff
path: root/src/mode.cpp
Commit message (Expand)AuthorAgeFilesLines
...
* Hash rehashing change•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6080 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-231-2/+2
* Reduce logging caused by mode changes•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6060 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-221-4/+0
* Avoid no such nick on non oper attempting to view modes of a user.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6047 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-12-181-0/+1
* Jesus, look who's the commit whore today. More header updates, and removal of...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-12-151-9/+4
* Refactor userrec::chans.•••Old way: A vector of ucrec, MAXCHANS in size by default populated by NULLS, so you have to scan the vector to find an empty slot when joining a user, parting a user etc New way: std::map<chanrec*, char> (the char holds their basic core permissions on the channel [voice, halfop, op]) This increases speed a ton, and removes some wtf-age. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5986 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-141-44/+38
* LOL INFINITE LOOPS IN IRCD ARE ROX•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5834 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-12-031-0/+3
* That patch (TM) of controversy, plus a minor cleanup•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5830 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-12-021-7/+13
* Disallow mode prefix # since it will mess up /whois and /privmsg•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5786 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2006-11-221-1/+2
* Don't allow a non-oper to view another users modes. This slightly tweaks the ...•••Also, remove the system from 1.0 whereby an oper CAN change a non-opers modes (except +o) because all this did was confuse services packages. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5748 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-11-151-5/+17
* Show chanrec::age in MODE #chan, not the deprecated chanrec::created•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5717 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-11-121-1/+1
* * Fix removal of user modes when unloading the mode letter (this actually wor...•••* Fix m_stripcolor channel mode +S (was unsettable as it had some user mode checks in it) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5577 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-281-7/+1
* /me thwaps special for not reading comments :p•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5445 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-061-1/+1
* Extra safety checking in ModeSet just to ensure we cant be passed a null pointer•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5411 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-041-0/+3
* Add an extra debug message and change two calls of GetModeType to GetModeChar...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5376 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar om2006-10-011-2/+4
* It all came down to a >1 where we needed a >0. Things should be stable now jamie•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5375 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-011-1/+4
* Take some debug crap out of ModeParser::ModeString()•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5209 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-101-1/+0
* * Fix ChanModes::ModeString to not try and set a key as a user mode ;)•••* Tweak the way cyclehosts works, so that mode change is not echoed back to user who changes their host/ident git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5208 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-101-1/+2
* Reset LastParse string when we try to parse new modes•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5188 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-091-0/+2
* Tidier string building•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5185 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-091-12/+4
* Make SAMODE oper output tidier•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5184 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-091-0/+24
* And fix it so it doesnt go into an infinite loop when meeting the end conditi...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5183 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-091-1/+1
* Add sane limiting to mode output, so we cant have more than 100 mode chars in...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5182 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-091-0/+10
* m_override is now fixed, replaced AC_GENERAL_MODE OnAccessCheck event•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5180 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-091-8/+16
* Add /RELOAD and move cmd_mode into its own command.•••/RELOAD is the only thing you cant reload (ahem) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5119 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-031-11/+0
* Allow unloading of modules which implement modes!•••The default implementation of the new system will remove simplemodes so any mode handler which is just a simple mode (no params and not a list mode) does not need to add much more than one line of code and remove its VF_STATIC flag. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5100 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-021-0/+76
* In this instance find is faster than rfind•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5086 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-301-1/+1
* And make it work here•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5085 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-301-1/+1
* Fix for parameters which contain a colon (which is not the first char in the...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5084 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-301-1/+1
* Wahhhhhhhhhhhh bwahahaha. Mass commit to tidy up tons of messy include lists•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5080 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-301-8/+0
* Only send 008 when MODE Oper•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5075 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-291-1/+2
* Clarify message•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5074 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-291-2/+3
* Don't silently drop modes that are oper only when a non-oper tries to set the...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5073 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-291-0/+4
* auto-set +s when +n is set (as +n requires +s) - allow +n to be 'set twice' a...•••Add default snomask chars git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5063 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-291-2/+2
* Add <options:cyclehosts> which allows a user to appear to have quit when thei...•••It is recommended this option always be on. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5017 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-251-0/+25
* When the mode sequence doesnt start with + or -, assume a +•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5009 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-241-0/+4
* ModeParser::InsertMode is no longer required -- this is auto-generated by the...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5007 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-24/+48
* Check for illegal mode prefixes in AddMode (':' and ',')•••We should *probably* check to make sure their rank value doesnt conflict with another modules, too git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5003 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-0/+6
* Multi-prefix FJOIN, and allowing module-defined prefixes across the network•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5002 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-0/+14
* Fix and finish 005 numeric. PREFIX= is now calculated automatically if you ad...•••You do not need to mess with the numeric yourself. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5001 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-2/+12
* More prefixchar stuff.•••WARNING: 005 numeric is broken in this commit. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5000 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-0/+24
* Mode handlers handling listmodes where a listmode item is a nickname can now ...•••This isnt documented yet. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4997 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-231-4/+30
* Things are so much easier here (thanks to sts for the bug)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4963 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-181-0/+4
* Just to mess with om's head, remove helperfuncs.h from everywhere•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-1/+1
* CamelCaseRocksSoMuchICamelCasedAllTheMethodsOfClassInspIRCdSoThatItAllLooksNeat.•••NowSomebodyHasToSpendHoursDocumentingAllOfThisIWonderWhoThatWillEndUpBeing... git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4889 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-2/+2
* Move remaining functions:•••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 Gravatar brain2006-08-111-1/+1
* Change to using Instance->Log (InspIRCd::Log) rather than log() macro•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4880 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-9/+9
* extern time_t TIME -> InspIRCd::Time()•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4873 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-2/+0
* commands.cpp:extern InspIRCd* ServerInstance;•••helperfuncs.cpp: extern InspIRCd* ServerInstance; xline.cpp:extern InspIRCd* ServerInstance; The last 3 extern's in the entire program! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4866 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-2/+0
* So much stuff changed in this one, i forgot most of it.•••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 Gravatar brain2006-08-101-23/+23
* Mass-tidyup of module global vars, theyre no longer global vars.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4856 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-101-4/+0