aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_kicknorejoin.cpp
Commit message (Expand)AuthorAgeFilesLines
...
* Convert WriteNumeric() calls to pass the parameters of the numeric as method ...Gravatar Attila Molnar2016-02-251-1/+1
* m_kicknorejoin: Advertise upper bound. Closes #913Gravatar Daniel Vassdal2015-02-221-2/+8
* m_kicknorejoin Store kicked users in a vectorGravatar Attila Molnar2015-01-231-8/+26
* m_kicknorejoin Move logic that tracks kicked users into KickRejoinDataGravatar Attila Molnar2015-01-231-25/+34
* Add ParamModeBase and ParamMode, change all parameter modes to inherit from P...•••- Type of the extension used to store data is a template parameter - The extension is automatically unset when the mode is unset - Handlers inheriting from ParamMode have to provide OnSet() and SerializeParam(); may optionally provide OnUnset() - Transparently handle the case when OnSet() modifies the mode parameter - Remove Channel::custom_mode_params map; ask the mode handlers to serialize their parameters instead Gravatar Attila Molnar2014-02-151-41/+35
* Use WriteNumeric() everywhere we send numerics and include the user's nick au...Gravatar Adam2013-11-121-2/+2
* Automatically register ServiceProviders created by modulesGravatar attilamolnar2013-09-081-6/+0
* Automatically attach modules to eventsGravatar attilamolnar2013-08-041-2/+0
* Remove $Core and $Mod* comments apart from $ModDep.Gravatar Peter Powell2013-07-041-2/+0
* Call Channel::SetModeParam() from the mode parser when needed instead of requ...Gravatar attilamolnar2013-06-131-2/+0
* Merge insp20Gravatar attilamolnar2013-06-061-1/+1
|\
| * Remove unused variables, avoid copies where possible, check empty() instead o...•••Most of these were detected by cppcheck Gravatar attilamolnar2013-05-161-1/+1
* | Tidy up keywords on module methods.•••- Remove virtual keyword from a ton of methods which don't need it. - Add override keyword to a ton of methods which do need it. Gravatar Peter Powell2013-05-151-5/+5
* | Merge insp20Gravatar attilamolnar2013-04-281-24/+35
|\|
| * m_kicknorejoin Store and compare uuids instead pointers•••Fixes the off chance scenario where we disallow a join because a previously kicked user has quit and the User who is trying to join happens to be allocated at the exact same memory location Gravatar attilamolnar2013-04-161-3/+3
| * m_kicknorejoin Limit time to 30m by default•••In the current implementation we only expire entries when someone joins, without a limit it was possible to make us practically never remove entries and consume (a tiny amount of) memory for each entry until the mode was removed/parameter was changed The default limit of 30m is chosen to not surprise people when they upgrade. If you need to prevent rejoins for more than a minute then you should set a (timed)ban instead Config option is available to change the limit (2.0 only) Gravatar attilamolnar2013-04-161-14/+37
| * m_kicknorejoin Minor improvements•••- Ignore remote users - Remove expired items in one pass Gravatar attilamolnar2013-04-161-8/+4
* | OnUserPreJoin is a local-only hook, change User* parameter to LocalUser*Gravatar attilamolnar2013-04-131-1/+1
* | Whitespace and empty destructor removal, minor coding style changesGravatar attilamolnar2013-04-011-6/+0
* | Change channel name parameter of Module::OnUserPreJoin() and Channel::JoinUse...Gravatar attilamolnar2013-04-011-1/+1
|/
* Register all commands, modes and extensions using AddService()•••AddService() throws an exception if an item cannot be registered, modules no longer need to worry about AddMode() etc. failing Gravatar attilamolnar2012-12-021-3/+2
* Dynamically determine the size of the eventlist[] passed to Attach()•••m_sqlauth was attached to I_OnUserDisconnect but didn't provide a handler for it, remove Gravatar attilamolnar2012-12-021-1/+1
* Attach to events and register services in init()Gravatar attilamolnar2012-12-021-0/+4
* Fix more undefined behavior caused by referencing the returned buffer by std:...•••See 83c7cc45daf6fb1f8c36f15297a4657e45a34e88 Gravatar attilamolnar2012-09-301-2/+3
* Replace copyright headers with headers granting specific authors copyrightGravatar Robby-2012-04-191-8/+20
* Fix crash on kick when +J is set, +misc cleanup•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12396 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-071-1/+1
* Remove VF_COMMON from mode-provider modules (no longer needed due to better C...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12263 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-01-151-1/+1
* ...because every now and again, i have to do a massive commit.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2010-01-111-1/+1
* Add ParamChannelModeHandler•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12134 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-151-65/+19
* Get rid of ModePair•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11963 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-241-8/+0
* Move static map of extensions into ServerInstance, add const-correctness•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11873 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-141-1/+1
* Add names for all modes (part 1 of named channel mode list)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11809 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-081-1/+1
* Run DelMode and DelModeWatcher in RemoveModule•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11799 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-051-1/+0
* Remove InspIRCd* parameters and fields•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-261-3/+3
* Simplify ModeHandler constructor•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11701 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-1/+1
* Module API changes to use Membership* where sensible•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11699 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-5/+5
* Change Extensible to use strongly typed entries•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11696 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-46/+19
* ModResult conversion: Change return type of all module functions•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11634 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-3/+3
* Remove "servermode" parameter, replace with IS_FAKE() which is more reliable•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11633 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-1/+1
* Add Module* creator to Command and ModeHandler•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11631 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-2/+2
* Use CheckTimeStamp to merge modes on netburst•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11596 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-6/+0
* Change allocation of commands/modes•••API change: Commands passed to AddCommand are no longer deleted automatically This removes lots of needless heap allocation and fixes a few memory leaks by allocating commands and modes as part of the Module rather than creating them separately in the module constructor. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11592 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-7/+4
* Overloading SetMode seems to cause the compiler to interpret "" as a bool and...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11335 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-04-291-3/+3
* Fix SetModeParam to use std::string and handle edge cases.•••Previously, changing the vaule of a mode could require 3 calls to SetMode and SetModeParam. This also fixes memory leaks caused by the strdup() not always being paired with a free(). git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11307 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-04-171-6/+3
* Update all wiki links to point to the new wiki. This was done automatically w...•••for file in $(find -type f -and -not -path '*/.svn/*' -and -not -name '*.so') ; do sed -e 's#http://www.inspircd.org/wiki#http://wiki.inspircd.org#' -e 's#http://wiki.inspircd.org/index.php/#http://wiki.inspircd.org/#' -i $file ; done git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11223 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar psychon2009-03-151-1/+1
* Update copyrights for 2009.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2009-01-021-1/+1
* Second attempt at time() -> SI->Time(), now problems with the original were f...•••Thanks Namegduf! (Please test, all, valdebug etc, report odd behaviour/warnings!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10783 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-11-011-2/+2
* Revert earlier time() -> SI->Time() diff for now, this causes problems with d...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10695 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-10-231-2/+2
* Patch from Namegduf converting all instances (where possible) of time() -> Se...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10691 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-10-231-2/+2
* Change module versions to use a string instead of fixed digits, and use props...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10291 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-08-251-1/+1