aboutsummaryrefslogtreecommitdiffstats
path: root/include/listmode.h
Commit message (Collapse)AuthorAgeFilesLines
* Minor cleanup of ListModeBaseGravatar Sadie Powell2026-06-151-8/+7
| | | | | | - Rename ChanData to ListData - Rename extItem to listdata - Use GetRef instead of Get/Set.
* Rework how list mode limits are parsed and applied.Gravatar Sadie Powell2026-06-151-52/+15
| | | | | | | | | | | | | | | - Keep one list of all limits in ServerLimits instead of one in each list mode. This should reduce memory usage slightly and the lists are usually so small and are compared so infrequently that this won't cause any performnace issues. - Automatically look up the mode limit when the mode list is used instead of manually rehashing in each module. This should cause less footguns than the old API and doesn't require manually updating the limit on rehash. - Move code relating to variable and lower limits from the core to core_channel. This is only used by ISUPPORT.
* Update my email address.Gravatar Sadie Powell2026-06-061-1/+1
|
* Fix various minor Doxygen issues.Gravatar Sadie Powell2026-03-291-0/+1
|
* Switch modules from reference<> to shared_ptr<> and weak_ptr<>.Gravatar Sadie Powell2026-03-291-1/+1
|
* Switch typedefs to using statements.Gravatar Sadie Powell2026-03-261-2/+2
|
* Make the ban checking functions able to check any list mode.Gravatar Sadie Powell2026-03-081-9/+11
|
* Update copyright headers.Gravatar InspIRCd Robot2025-12-031-1/+1
|
* Update copyright headers.Gravatar InspIRCd Robot2024-06-071-1/+1
|
* Fix big list limits and expose the limit to TellListTooLong.Gravatar Sadie Powell2023-08-121-8/+9
|
* Fix list modes unintentionally being case sensitive.Gravatar Sadie Powell2023-08-121-0/+7
| | | | Closes #907.
* Replace ModeAction with bool.Gravatar Sadie Powell2023-01-221-1/+1
| | | | This enum is functionally the same as bool but with weird semantics.
* Move extension types to their own header to speed up build times.Gravatar Sadie Powell2022-12-191-0/+2
|
* Yet more stylistic fixes.Gravatar Sadie Powell2022-12-011-5/+12
|
* Fix some types which were missed when making stuff final.Gravatar Sadie Powell2022-10-301-3/+3
|
* Switch from NULL to nullptr.Gravatar Sadie Powell2022-07-221-1/+1
|
* Fix various Doxygen comment issues.Gravatar Sadie Powell2022-05-021-2/+2
|
* Fix a now outdated documentation comment.Gravatar Sadie Powell2022-04-181-3/+3
|
* Constify the parameter arguments in ListModeBase's Tell* methods.Gravatar Sadie Powell2022-04-171-3/+3
|
* Refactor ListModeBase::OnModeChange.Gravatar Sadie Powell2022-04-171-3/+3
|
* Remove ValidateParam and rename CanonicalizeParam.Gravatar Sadie Powell2022-04-171-10/+1
| | | | | | | There's basically no safe way to handle a malformed list mode sent by a remote server without causing a desync. Its probably for the best if we just only apply validation to locally added list modes entries.
* Add ListModeBase::CanonicalizeParam, fix cleaning extban masks.Gravatar Sadie Powell2022-04-161-6/+11
|
* Replace duplicated documentation with @copydoc.Gravatar Sadie Powell2022-04-161-29/+6
|
* Make the parameter field of ValidateParam const.Gravatar Sadie Powell2022-04-161-1/+1
|
* Use a consistent message format for end of list numerics.Gravatar Sadie Powell2022-04-011-6/+1
|
* Abolish the infernal space before accessibility keywords.Gravatar Sadie Powell2022-01-251-4/+4
|
* Add constexpr to the initialisation of various const static fields.Gravatar Sadie Powell2022-01-181-1/+1
|
* Add the final keyword to all remaining classes that can have it.Gravatar Sadie Powell2021-12-201-1/+2
|
* Added -Wshorten-64-to-32 and fixed all warnings.Gravatar Dominic Hamon2021-05-301-7/+7
|
* Convert various mode methods to take Mode::Change.Gravatar Sadie Powell2021-03-301-1/+1
| | | | | | | | - AccessCheck - AfterMode - BeforeMode - OnModeChange - OnRawMode
* Pascalize Get in extension item classes.Gravatar Sadie Powell2021-03-171-1/+1
|
* Merge branch 'insp3' into master.Gravatar Sadie Powell2020-01-171-1/+3
|\
| * Update copyright headers.Gravatar InspIRCd Robot2020-01-111-1/+3
| |
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2019-11-131-0/+3
|\|
| * Show the list modes which have variable list lengths in 005.Gravatar Peter Powell2019-10-011-0/+3
| |
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2019-02-051-1/+1
|\|
| * Fix a minor Doxygen warning.Gravatar Peter Powell2019-01-241-1/+1
| |
* | Replace the override macro with the override keyword.Gravatar Sadie Powell2019-01-251-5/+5
|/
* Add the <maxlist> tag and switch ListModeBase to always use it.Gravatar Peter Powell2018-12-191-7/+7
| | | | | | | | | | | | | | The old method of doing this was: 1. Extremely inconsistently used. Some list modes used <banlist> and some used their own config tag. 2. Not documented in the slightest. There was a small reference to <maxbans> for the ban mode but nothing else. 3. In some cases conflicting with other config tags. The chanfilter module defined a <chanfilter> tag for general config whilst also using it for the max list settings. The new <maxlist> tag avoids these issues entirely.
* Fix an invalid mode parameters numeric upon attempting to view a list modeGravatar B00mX0r2018-04-081-0/+9
|
* Add the override keyword in places that it is missing.Gravatar Peter Powell2017-11-211-4/+4
| | | | GCCs warnings for this are much better than Clangs.
* Raise the default listmode limit to 100 from 64.Gravatar Peter Powell2017-09-141-1/+1
| | | | | | | | | 64 is a rather restrictive limit especially considering how fast channels can accumulate bans. In fact, #InspIRCd hit the ban limit in just over a year. Having a low limit might have made sense when memory was expensive but the average IRC server should be able to handle this fine now.
* Replace the deprecated MAXBANS token with MAXLIST.Gravatar Peter Powell2017-07-241-0/+4
|
* Add DEFAULT_LIST_SIZE for the default list mode size.Gravatar Peter Powell2017-07-241-0/+3
|
* Change listmode storage type to vectorGravatar Attila Molnar2014-12-161-1/+1
|
* Use Modes::ChangeList in ModeHandler::RemoveMode()Gravatar Attila Molnar2014-09-031-2/+2
|
* Change ListModeBase::DoRehash() to not be virtualGravatar Attila Molnar2014-08-061-1/+1
|
* Send ListModeBase modes implicitly on channel syncGravatar attilamolnar2013-09-121-8/+0
| | | | Remove Module::ProtoSendMode() and ListModeBase::DoSyncChannel()
* Automatically register ServiceProviders created by modulesGravatar attilamolnar2013-09-081-4/+0
|
* Fix Doxygen comments.Gravatar Peter Powell2013-06-211-2/+3
|