aboutsummaryrefslogtreecommitdiffstats
path: root/src/mode.cpp
Commit message (Expand)AuthorAgeFilesLines
* Add ModeHandler::IsSameMode.Gravatar Sadie Powell2026-06-151-0/+14
* Remove an unnecessary single use struct.Gravatar Sadie Powell2026-06-131-4/+4
* Use aggregate initialisation instead of memset.Gravatar Sadie Powell2026-06-131-7/+0
* Update my email address.Gravatar Sadie Powell2026-06-061-1/+1
* Move service types to their own namespace.•••- ServiceProvider is now Service::Provider - DataProvider is now Service::SimpleProvider (the old name does not really make sense now we don't have SERVICE_DATA and the only difference is automatic registration. - Some members of ModuleManager have been elevated to the Service namespace in case other code wants to use them. Gravatar Sadie Powell2026-03-291-1/+1
* Switch modules from reference<> to shared_ptr<> and weak_ptr<>.Gravatar Sadie Powell2026-03-291-3/+3
* Improve support for renaming modes.Gravatar Sadie Powell2026-03-191-0/+7
* Replace IS_* with member functions.•••- All user types get an Is* function. - Only local users are cast using the old function so only local users get an As* function. Gravatar Sadie Powell2026-03-081-5/+5
* Fix unnecessarily calculating the service name for modes.Gravatar Sadie Powell2026-03-061-2/+1
* Rename ServiceProvider::creator to service_creator and add GetSource.Gravatar Sadie Powell2026-03-021-10/+10
* Massive rework of how internal service providers work.•••- ServiceType is dead. All modules use RegisterService now. - Modules can implement UnregisterService which is called from DelService now. - Split the service type prefix into its own field. - Renamed Service::name to Service::service_name. This revealed a few bugs. Gravatar Sadie Powell2026-03-021-2/+11
* Rename ServiceProvider methods to avoid shadowing issues.Gravatar Sadie Powell2026-03-021-15/+17
* Add a numeric helper for ERR_NOPRIVILEGES.Gravatar Sadie Powell2026-02-261-4/+6
* Merge branch 'insp4' into master.Gravatar Sadie Powell2025-12-071-1/+1
|\
| * Update copyright headers.Gravatar InspIRCd Robot2025-12-031-1/+1
* | Merge branch 'insp4' into master.Gravatar Sadie Powell2025-03-291-1/+1
|\|
| * Update copyright headers.Gravatar InspIRCd Robot2025-03-281-1/+1
* | Merge branch 'insp4' into master.Gravatar Sadie Powell2025-03-221-8/+8
|\|
| * Add a formatting overload of the ModuleException constructor.Gravatar Sadie Powell2025-03-181-8/+8
* | Merge branch 'insp4' into master.Gravatar Sadie Powell2024-09-091-10/+10
|\|
| * Normalise the case of MOD_RESULT variables.Gravatar Sadie Powell2024-08-311-10/+10
* | Use C++20 <format> instead of fmtlib when available.Gravatar Sadie Powell2024-08-221-11/+11
* | Merge branch 'insp4' into master.Gravatar Sadie Powell2024-06-231-1/+1
|\|
| * Update copyright headers.Gravatar InspIRCd Robot2024-06-211-1/+1
* | Always use fmtlib directly.Gravatar Sadie Powell2024-06-071-11/+11
|/
* Update copyright headers.Gravatar InspIRCd Robot2024-06-071-3/+3
* Merge branch 'insp3' into insp4.Gravatar Sadie Powell2024-06-071-1/+1
|\
| * Update copyright headers.Gravatar InspIRCd Robot2024-06-071-1/+1
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2024-06-031-0/+3
|\|
| * Send an error when a user tries to give a status rank to a non-member.•••Closes #2097. Gravatar Sadie Powell2024-06-031-0/+3
* | Rename some of the Module member variables.Gravatar Sadie Powell2024-03-041-3/+3
* | Replace InspIRCd::Format with fmt::format.Gravatar Sadie Powell2023-01-231-23/+17
* | Replace ModeAction with bool.•••This enum is functionally the same as bool but with weird semantics. Gravatar Sadie Powell2023-01-221-34/+30
* | Qualify auto correctly in all cases.Gravatar Sadie Powell2023-01-101-3/+3
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2023-01-011-2/+1
|\|
| * Update copyright headers.Gravatar InspIRCd Robot2022-12-301-2/+1
* | Allow remapping mode and extban characters at load time.•••Closes #1970. Gravatar Sadie Powell2022-12-201-1/+1
* | Yet more stylistic fixes.Gravatar Sadie Powell2022-12-011-1/+3
* | Refactor the internals of the oper system.•••- Allow overriding privileges from the <class> blocks in the <type> and <oper> blocks. - Separate oper types from oper accounts in the code. This enables moving some core stuff out of the config tag later. - Merge the config tags together to make a synthetic tag that can have getXXX called on it instead of using getConfig and then converting it. - Move the details of Have*Permission into the oper type class. - Improve oper events to allow modules to easily hook into the oper system. Gravatar Sadie Powell2022-11-281-1/+1
* | Rename user_hash to UserMap and move to usermanager.Gravatar Sadie Powell2022-10-071-2/+2
* | Fix various cases of the &* being next to the name instead of type.Gravatar Sadie Powell2022-09-291-2/+2
* | Fix some warnings noticed by the readability-* clang-tidy checkers.Gravatar Sadie Powell2022-09-031-2/+2
* | Switch from NULL to nullptr.Gravatar Sadie Powell2022-07-221-9/+9
* | Make clientprotocol{msg,event} and numericbuilder non-default headers.Gravatar Sadie Powell2022-06-261-0/+1
* | Move numeric helper classes to their own header.Gravatar Sadie Powell2022-06-261-0/+1
* | Use size_t instead of `unsigned int` in ModeParser.Gravatar Sadie Powell2022-06-111-5/+4
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2022-05-211-1/+1
|\|
| * Fix an unnecessary mode lookup in RemoveMode.Gravatar Sadie Powell2022-05-151-1/+1
* | Add a typedef for a mode rank.Gravatar Sadie Powell2022-05-171-6/+6
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2022-04-291-1/+1
|\|