3549 Commits

Author SHA1 Message Date
Sadie Powell
8685129c52 Fix missing a Doxygen parameter comment. 2023-02-28 14:38:44 +00:00
Sadie Powell
1c6d20e73c 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.
2023-02-28 14:38:44 +00:00
Sadie Powell
45d68e95c9 Sort opers alphabetically in /STATS P. 2023-02-27 22:11:52 +00:00
Sadie Powell
d141f9c025 Make module classes specify their priority manually. 2023-02-27 20:29:56 +00:00
Sadie Powell
23ab5cfa51 Allow modules to get/reset the cloak lists. 2023-02-14 14:24:22 +00:00
Sadie Powell
06d801b527 Merge branch 'insp3' into master. 2023-02-14 09:21:59 +00:00
Sadie Powell
297212ca4d Switch to the IRCv3 standard-replies cap.
Nothing is using this so far so I'm not counting it as a breaking
change.
2023-02-13 14:27:51 +00:00
Sadie Powell
416661d17d Add an option so local non-SSL users can be seen as securely connected. 2023-02-11 09:30:22 +00:00
Sadie Powell
e64ace4c82 Expose the removed away message in OnUserBack. 2023-02-03 09:26:31 +00:00
Sadie Powell
d4ff568093 Make reading the core config less of a mess. 2023-01-27 04:15:36 +00:00
Sadie Powell
57cc457ec6 Rename some headers to match the common naming system. 2023-01-26 06:16:57 +00:00
Sadie Powell
4472683dc7 Move CheckExemption::Call to CheckExemption::EventProvider.
Now FirstResult not a macro there's no need for this to be a free
function.
2023-01-25 03:43:40 +00:00
Sadie Powell
af8effe4f0 Replace getInt/getUInt/getFloat with type safe templated functions. 2023-01-25 00:39:27 +00:00
Sadie Powell
babc733d2d Fix using (unsigned) long instead of (s)size_t. 2023-01-24 23:02:35 +00:00
Sadie Powell
e338e88e4f Fix some junk left over in Doxygen comments. 2023-01-24 09:00:16 +00:00
Sadie Powell
f3a023523f Include more stuff in the Doxygen documentation. 2023-01-24 08:02:56 +00:00
Sadie Powell
704d2c5da0 Slim down stdalgo by removing unused and duplicate functions. 2023-01-24 06:34:44 +00:00
Sadie Powell
f310e1c98d Refactor the caching methods in User and rename to make more sense. 2023-01-24 02:58:46 +00:00
Sadie Powell
206d31de85 Convert log calls to use fmtlib format strings 2023-01-24 00:12:57 +00:00
Sadie Powell
9db9d5abe4 Convert WriteToSnoMask/WriteGlobalSno to use fmtlib format strings. 2023-01-23 13:07:53 +00:00
Sadie Powell
7edc627317 Replace VAFORMAT/InspIRCd::Format/... with fmt::sprintf. 2023-01-23 13:07:53 +00:00
Sadie Powell
5c4badf8ea Replace InspIRCd::Format with fmt::format. 2023-01-23 13:07:53 +00:00
Sadie Powell
671b84ecf2 Vendor the fmtlib library. 2023-01-23 13:07:52 +00:00
Sadie Powell
9bb0cfa4f8 Default more stuff inline in the InspIRCd class. 2023-01-23 01:09:51 +00:00
Sadie Powell
b5404f8415 Move duration functions to their own header. 2023-01-23 01:01:06 +00:00
Sadie Powell
d4efd2677f Move NotifyRawIO to the Log namespace. 2023-01-22 22:52:30 +00:00
Sadie Powell
8389fbba6d Replace ModeAction with bool.
This enum is functionally the same as bool but with weird semantics.
2023-01-22 22:52:30 +00:00
Sadie Powell
cadf228c3e Convert various enums to strongly typed scoped enums. 2023-01-22 22:36:31 +00:00
Sadie Powell
e26cb5cacd Fix some Doxygen comment issues. 2023-01-21 13:32:53 +00:00
Sadie Powell
c0bb4742e0 Make implementing OnStreamSocketClose optional in middle hooks. 2023-01-21 13:22:33 +00:00
Sadie Powell
7bd8091f6b Use the underlying transport method for pinging idle clients.
Closes #1998.
2023-01-21 12:54:07 +00:00
Sadie Powell
9ed53d543f Fix Cloak::Method and Log::Method being needlessly Cullable.
If a method needs to be cullable it can inherit from that type and
pass Cullable::Deleter as a custom deleter to the shared_ptr.
2023-01-18 14:57:57 +00:00
Sadie Powell
c631b784ba Replace SocketEngine::SetReuse with SocketEngine::SetOption. 2023-01-17 04:45:26 +00:00
Sadie Powell
dad3eaa2da Add a helper method for determining if a sockaddrs is an IP endpoint. 2023-01-17 02:46:53 +00:00
Sadie Powell
a99a38a3ad Allow creating a FailedPort without a bindspec. 2023-01-17 00:37:14 +00:00
Sadie Powell
612e1a3027 Store the actual error in FailedPort instead of an error code. 2023-01-16 22:54:02 +00:00
Sadie Powell
34de733223 Add support for linking servers over SCTP sockets. 2023-01-16 21:16:16 +00:00
Sadie Powell
8856210499 Add support for SCTP listeners. 2023-01-16 21:15:55 +00:00
Sadie Powell
37ff45ac56 Improve the output of /CLOAK when there are no methods available. 2023-01-14 20:28:33 +00:00
Sadie Powell
3e75792e31 Fix a Doxygen comment typo in Cloak::Method. 2023-01-14 20:28:33 +00:00
Sadie Powell
046b1a2b65 Remove some more unnecessary things from the global headers. 2023-01-14 10:19:38 +00:00
Sadie Powell
1f4ffdfee9 Various improvements to the cloak system.
- Only rewrite cloak => cloaking if the cloak_md5 module is also
  loaded.

- Include the cloak method in the link data.

- If 1206 servers are using different cloak methods then ignore
  the other data when telling operators about the link failure.

- Clean up the code in a few places.
2023-01-13 20:50:00 +00:00
Sadie Powell
713b577496 Merge branch 'insp3' into master. 2023-01-13 07:46:47 +00:00
Sadie Powell
b353b799a2 Fix core_dns rejecting simple hostnames. 2023-01-13 07:23:45 +00:00
Sadie Powell
b680306816 Add a new cloak system that cloaks using HMAC-SHA256.
Closes #1107.

The core of the cloaking algorithm this uses is heavily inspired
by the Plexus4 cloak_hmac_sha256 module written by Adam. I've made
a few changes to the rest of it to work more like the old InspIRCd
cloaking system as well as adding the option for configuring the
case of the character table used for cloaking.

Co-authored-by: Adam <Adam@anope.org>
Co-authored-year: 2017
2023-01-13 07:02:02 +00:00
Sadie Powell
5da15b0c5a Add the core of the new cloak implementation. 2023-01-13 07:01:03 +00:00
Sadie Powell
abc5d52f13 Const correct various functions. 2023-01-11 00:56:15 +00:00
Sadie Powell
c3e42d4e5d Make some functions that don't use this static. 2023-01-11 00:56:15 +00:00
Sadie Powell
b2d86bb8a1 Qualify auto correctly in all cases. 2023-01-10 23:30:34 +00:00
Sadie Powell
b25cd86ddf Avoid copying shared_ptr<IOHookProvider> when not necessary. 2023-01-10 21:27:29 +00:00