| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Refactor Change{Displayed,Real}Host to match other Change* methods. | 2023-06-30 | 1 | -10/+10 | |
| | | |||||
| * | Remove OnPreChange{Host,RealName} events and deboolify methods. | 2023-06-29 | 1 | -27/+7 | |
| | | | | | These have not ever been used as far as I can see. | ||||
| * | Retain the "real" username properly like we do for hostnames. | 2023-06-29 | 1 | -15/+55 | |
| | | | | | | | | | | | | | | | 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. | ||||
| * | Inline various User methods. | 2023-06-25 | 1 | -20/+0 | |
| | | |||||
| * | Avoid using too much memory for storing user data. | 2023-06-25 | 1 | -0/+6 | |
| | | |||||
| * | Make internal bug messages more consistent. | 2023-06-12 | 1 | -1/+1 | |
| | | |||||
| * | Log when encountering an erroneous user cull without a quit. | 2023-06-12 | 1 | -0/+4 | |
| | | |||||
| * | Remove unnecessary prefix from bancache log messages. | 2023-06-04 | 1 | -1/+1 | |
| | | |||||
| * | IPv6 addresses should be partially expanded with '0' not 0x0. | 2023-04-29 | 1 | -1/+1 | |
| | | |||||
| * | Fix a copy/paste error in GetUserAddress. | 2023-04-29 | 1 | -1/+1 | |
| | | |||||
| * | Fix a segfault when sending data to a user without a connect class. | 2023-03-24 | 1 | -2/+3 | |
| | | |||||
| * | Allow modules to provide an error for when a class doesn't match. | 2023-03-24 | 1 | -1/+5 | |
| | | |||||
| * | Refactor the password checking API. | 2023-02-28 | 1 | -1/+1 | |
| | | | | | | | | | | | - 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. | ||||
| * | Make reading the core config less of a mess. | 2023-01-27 | 1 | -2/+2 | |
| | | |||||
| * | Replace getInt/getUInt/getFloat with type safe templated functions. | 2023-01-25 | 1 | -9/+9 | |
| | | |||||
| * | Refactor the caching methods in User and rename to make more sense. | 2023-01-24 | 1 | -62/+98 | |
| | | |||||
| * | Convert log calls to use fmtlib format strings | 2023-01-24 | 1 | -16/+16 | |
| | | |||||
| * | Convert WriteToSnoMask/WriteGlobalSno to use fmtlib format strings. | 2023-01-23 | 1 | -5/+5 | |
| | | |||||
| * | Convert various enums to strongly typed scoped enums. | 2023-01-22 | 1 | -9/+9 | |
| | | |||||
| * | Fix calling various static functions through a type instance. | 2023-01-11 | 1 | -1/+1 | |
| | | |||||
| * | Qualify auto correctly in all cases. | 2023-01-10 | 1 | -4/+4 | |
| | | |||||
| * | Avoid copying shared_ptr<ConfigTag> when not necessary. | 2023-01-10 | 1 | -3/+3 | |
| | | |||||
| * | Rework how users are assigned to connect classes. | 2023-01-08 | 1 | -178/+69 | |
| | | | | | | | | | | | | - 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. | ||||
| * | Fix CanUseSnomask checking the wrong snomask index. | 2023-01-02 | 1 | -1/+1 | |
| | | | | | We reuse the mode index packing here to avoid duplication. | ||||
| * | Fix getting the full snomask and mode lists. | 2023-01-02 | 1 | -7/+12 | |
| | | |||||
| * | Get rid of the virtual Has*Permission methods. | 2023-01-02 | 1 | -46/+0 | |
| | | | | | These are no longer needed now we store privs for the remote oper. | ||||
| * | Allow getting all of the oper command/mode/snomask privs. | 2023-01-02 | 1 | -5/+8 | |
| | | |||||
| * | Add some useful aliases to OperType. | 2023-01-02 | 1 | -3/+3 | |
| | | |||||
| * | Merge branch 'insp3' into master. | 2023-01-01 | 1 | -1/+0 | |
| |\ | |||||
| | * | Update copyright headers. | 2022-12-30 | 1 | -1/+0 | |
| | | | |||||
| | * | Avoid sending an +o mode change when the mode isn't available. | 2022-11-28 | 1 | -1/+1 | |
| | | | | | | | | | | | This is generally fine but may cause problems if an oper unloads the core_oper module. | ||||
| * | | Refactor SocketEngine slightly. | 2022-12-25 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | - Remove pointless shutdown() wrapper. - Remove pointless bounds checking function. - Make Bind and Listen take an EventHandler instead of a fd. - Add nullability attributes to every method. | ||||
| * | | Pass the client/server sockaddr around as a ref instead of a ptr. | 2022-12-25 | 1 | -3/+3 | |
| | | | |||||
| * | | Use in_port_t instead of int/unsigned int/long. | 2022-12-18 | 1 | -3/+6 | |
| | | | |||||
| * | | Rework the levels things are logged at to make more sense. | 2022-12-18 | 1 | -1/+1 | |
| | | | |||||
| * | | Fix conflicting with a predefined value on Windows. | 2022-12-11 | 1 | -7/+7 | |
| | | | | | | | | | | | STRICT is already defined on Windows so we'll need to do something else here. Thanks Microsoft. | ||||
| * | | Move <oper:autologin> from m_sslinfo to core_oper and rework. | 2022-12-11 | 1 | -4/+28 | |
| | | | | | | | | | | | | | | | | | - 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. | ||||
| * | | Move password checking from core_oper into OperAccount. | 2022-12-10 | 1 | -0/+6 | |
| | | | |||||
| * | | Remove the unused Extensible* parameter to PassCompare/OnPassCompare. | 2022-12-10 | 1 | -1/+1 | |
| | | | |||||
| * | | Allow modules to ignore any checks from OnPreOperLogin. | 2022-12-10 | 1 | -2/+2 | |
| | | | |||||
| * | | More const correctness work. | 2022-12-08 | 1 | -2/+2 | |
| | | | |||||
| * | | Avoid copying a shared_ptr where not actually necessary. | 2022-12-01 | 1 | -4/+3 | |
| | | | |||||
| * | | Yet more stylistic fixes. | 2022-12-01 | 1 | -7/+8 | |
| | | | |||||
| * | | Fix GetSnomasks returning unregistered snomasks. | 2022-11-30 | 1 | -1/+1 | |
| | | | |||||
| * | | Move the oper statistics to core_oper and rewrite. | 2022-11-29 | 1 | -0/+36 | |
| | | | | | | | | | | | | | | | The numerics we used previously were not being used according to the RFC and every implementation has their own behaviour here which makes it hard for clients to do anything reasonable. Instead of this using the generic stats numeric makes a lot more sense. | ||||
| * | | Refactor the internals of the oper system. | 2022-11-28 | 1 | -109/+157 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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. | ||||
| * | | Clean up the typedefs for OnBuildNeighborList. | 2022-10-29 | 1 | -3/+3 | |
| | | | |||||
| * | | Rename session registration to connection to avoid a semantic conflict. | 2022-10-29 | 1 | -14/+14 | |
| | | | | | | | | | | | | | We previously referred to both session registration and user registration as "registration" which is confusing for users who aren't familiar with how IRC works. | ||||
| * | | Use User::IsFullyConnected instead of checking for REG_ALL. | 2022-10-29 | 1 | -3/+3 | |
| | | | |||||
| * | | Rename User::age to User::nickchanged and fix the docs. | 2022-10-11 | 1 | -2/+2 | |
| | | | |||||
