aboutsummaryrefslogtreecommitdiffstats
path: root/include/listmode.h
Commit message (Expand)AuthorAgeFilesLines
* Minor cleanup of ListModeBase•••- Rename ChanData to ListData - Rename extItem to listdata - Use GetRef instead of Get/Set. Gravatar Sadie Powell2026-06-151-8/+7
* Rework how list mode limits are parsed and applied.•••- 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. Gravatar Sadie Powell2026-06-151-52/+15
* 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.•••Closes #907. Gravatar Sadie Powell2023-08-121-0/+7
* Replace ModeAction with bool.•••This enum is functionally the same as bool but with weird semantics. Gravatar Sadie Powell2023-01-221-1/+1
* 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.•••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. Gravatar Sadie Powell2022-04-171-10/+1
* 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.•••- AccessCheck - AfterMode - BeforeMode - OnModeChange - OnRawMode Gravatar Sadie Powell2021-03-301-1/+1
* 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.•••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. Gravatar Peter Powell2018-12-191-7/+7
* 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.•••GCCs warnings for this are much better than Clangs. Gravatar Peter Powell2017-11-211-4/+4
* Raise the default listmode limit to 100 from 64.•••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. Gravatar Peter Powell2017-09-141-1/+1
* 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 sync•••Remove Module::ProtoSendMode() and ListModeBase::DoSyncChannel() Gravatar attilamolnar2013-09-121-8/+0
* Automatically register ServiceProviders created by modulesGravatar attilamolnar2013-09-081-4/+0
* Fix Doxygen comments.Gravatar Peter Powell2013-06-211-2/+3