aboutsummaryrefslogtreecommitdiff
path: root/src/modules.cpp
Commit message (Expand)AuthorAgeFilesLines
* Add <security:banrealmask>.Gravatar Sadie Powell2025-04-161-2/+2
* Delete the old hashing interface and modules.Gravatar Sadie Powell2025-04-061-1/+0
* Replace stalgo::erase with C++20 std::erase.Gravatar Sadie Powell2024-08-251-2/+2
* Remove support for the v3 server protocol.Gravatar Sadie Powell2024-07-231-3/+2
* Revert module flags to the way they worked in v3.Gravatar Sadie Powell2024-07-221-1/+1
* Allow contrib modules to specify their own module version.Gravatar Sadie Powell2024-07-221-0/+15
* Update copyright headers.Gravatar InspIRCd Robot2024-06-211-1/+1
* Update copyright headers.Gravatar InspIRCd Robot2024-06-071-4/+2
* Allow mutating the status message type in OnUserPre(Tag)Message.Gravatar Sadie Powell2024-05-061-1/+1
* Rename some of the Module member variables.Gravatar Sadie Powell2024-03-041-9/+9
* Rename the error log level to critical.•••"ERROR" is apparently defined by more than just Windows. Let's pick a different name which is less likely to cause collisions. Gravatar Sadie Powell2023-08-111-3/+3
* Simplify the codes that InspIRCd can exit with.•••The custom codes that InspIRCd exits with are not very useful and can confuse init systems like systemd which assume that certain exit codes mean certain things. INSPIRCD_BINARY_EXIT was a workaround for this in v3 but considering thatsers have to check the logs anyway so we may as well just use EXIT_SUCCESS and EXIT_FAILURE. Gravatar Sadie Powell2023-07-131-5/+4
* Remove rang and use fmtlib for printing coloured messages.•••This supports more platforms (e.g. Haiku) and is actually still maintained unlike the former. All of this code should really be cleaned up for release (maybe by adding something like Anope's LOG_CONSOLE) but for now I've just replaced it with the fmtlib equivalent. Gravatar Sadie Powell2023-07-121-7/+11
* Avoid culling DLLManager instances twice.Gravatar Sadie Powell2023-07-051-0/+3
* Remove OnPreChange{Host,RealName} events and deboolify methods.•••These have not ever been used as far as I can see. Gravatar Sadie Powell2023-06-291-2/+0
* Retain the "real" username properly like we do for hostnames.•••This introduces the concept of a real username. This value comes from either the initial USER message or from an ident lookup. Doing this allows us to use it for bans through vidents and cloaking web client users using their remote username. While changing this I also changed all of the uses of "ident" other than RFC 1413 lookups and some compatibility cases to refer to usernames as user(name) instead of ident. Our use of ident in these places was incorrect as that only refers to the RFC 1413 response and is not commonly used in the way we used it by any other IRC server implementations. Gravatar Sadie Powell2023-06-291-1/+3
* Fix casing of metadata in function and event names.•••Metadata is one word not two so it shouldn't be capitalised like this. Gravatar Sadie Powell2023-05-301-1/+1
* Allow modules to provide an error for when a class doesn't match.Gravatar Sadie Powell2023-03-241-1/+1
* Refactor the password checking API.•••- Rename from (On)PassCompare to (On)CheckPassword. - Fix the order of the arguments to be password, hash, value. This makes more sense than what it was previously. - Fix the code documentation to not be complete nonsense and not reference ancient outdated APIs. Gravatar Sadie Powell2023-02-281-1/+1
* Convert log calls to use fmtlib format stringsGravatar Sadie Powell2023-01-241-7/+7
* Fix some issues reported by scan-build.•••All of these are harmless and should never cause an issue in practise. Gravatar Sadie Powell2023-01-151-5/+15
* Qualify auto correctly in all cases.Gravatar Sadie Powell2023-01-101-1/+1
* Rework how users are assigned to connect classes.•••- Move core connect class checks and <performance:clonesonconnect> to the core_user module. - Add pre-change and post-change events for when a connect class changes. - Split explicit class changing out into its own method. - Remove the need to almost always call CheckClass after SetClass. - Add use counting to the connect class instead of relying on the shared_ptr use count. Gravatar Sadie Powell2023-01-081-1/+3
* Merge branch 'insp3' into master.Gravatar Sadie Powell2023-01-011-2/+1
|\
| * Update copyright headers.Gravatar InspIRCd Robot2022-12-301-2/+1
* | Use delete_zero in place that it makes sense to.Gravatar Sadie Powell2022-12-271-4/+1
* | Pass the client/server sockaddr around as a ref instead of a ptr.Gravatar Sadie Powell2022-12-251-1/+1
* | Rework the levels things are logged at to make more sense.Gravatar Sadie Powell2022-12-181-5/+4
* | Move <oper:autologin> from m_sslinfo to core_oper and rework.•••- Promote autologin to a core concept with visibility in events. - Replace the binary yes/no value with strict/relaxed/never. This intentionally breaks v3 oper block autologin as admins will need to review them for the security implications of the new behaviour. Gravatar Sadie Powell2022-12-111-3/+3
* | Remove the unused Extensible* parameter to PassCompare/OnPassCompare.Gravatar Sadie Powell2022-12-101-1/+1
* | Avoid copying a shared_ptr where not actually necessary.Gravatar Sadie Powell2022-12-011-1/+1
* | Yet more stylistic fixes.Gravatar Sadie Powell2022-12-011-2/+7
* | 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-3/+5
* | Clean up the typedefs for OnBuildNeighborList.Gravatar Sadie Powell2022-10-291-1/+1
* | More const correctness.Gravatar Sadie Powell2022-10-231-4/+4
* | Handle renamed modules when reading the modules to load.Gravatar Sadie Powell2022-10-181-5/+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-3/+3
* | Clean up the Windows build process and remove some legacy code.Gravatar Sadie Powell2022-09-031-3/+2
* | Rename OnSetUserIP to OnChangeRemoteAddress.Gravatar Sadie Powell2022-08-101-1/+1
* | Add support for clearing the target of a dynamic_reference.Gravatar Sadie Powell2022-07-301-0/+6
* | Switch from NULL to nullptr.Gravatar Sadie Powell2022-07-221-7/+7
* | Make dynamic a non-default header.Gravatar Sadie Powell2022-06-261-0/+1
* | Fix various bugs relating to platform-native module extensions.Gravatar Sadie Powell2022-06-261-1/+1
* | Add a typedef for a mode rank.Gravatar Sadie Powell2022-05-171-1/+1
* | Remove unnecessary arguments to On(Post)Oper.•••These are already accessible from the user object. Gravatar Sadie Powell2022-05-071-2/+2
* | Rewrite logging calls to use the new APIs.Gravatar Sadie Powell2022-05-011-10/+10
* | Move stdalgo::map::difference to its own utility header.Gravatar Sadie Powell2022-01-311-1/+2
* | Replace consolecolors with a vendored library.•••This library supports much more than consolecolors including the Windows 8 console API. Gravatar Sadie Powell2022-01-261-5/+7
* | Slim the included headers down more.Gravatar Sadie Powell2022-01-261-1/+3