623 Commits

Author SHA1 Message Date
InspIRCd Robot
cdd3226bef Update copyright headers. 2025-02-28 14:30:22 +00:00
Sadie Powell
6c2100a2e4 Fix expanding paths on portable installations.
Closes #2148.
2025-02-15 14:44:39 +00:00
Sadie Powell
bf53ff5084 Make Cullable::Deleter const. 2024-09-13 15:40:43 +01:00
Sadie Powell
73a98ce7be Use string_view in InspIRCd::Is{FQDN,Host,SID}. 2024-09-07 19:26:29 +01:00
InspIRCd Robot
8e784862f5 Update copyright headers. 2024-09-07 11:10:36 +01:00
Sadie Powell
3f7a7df740 Deprecate the raw overload of GenRandomStr in favour of GenRandom.
The raw overload was almost always misused where GenRandom would
be better.

While we're making changes to this code switch the printable mode
to use a static array like Anope does.
2024-08-27 16:31:38 +01:00
Sadie Powell
1302f6ee6d Fix the argument to BindPorts not being documented. 2024-08-27 15:09:40 +01:00
Sadie Powell
491d82677d Fix measuring the CPU load on Windows. 2024-08-27 14:48:28 +01:00
Sadie Powell
56b9a4e48e Redocument ServerStats and switch members to use size_t. 2024-08-27 14:47:35 +01:00
Sadie Powell
e6ea9f7d4a Change InspIRCd::ProcessColors to take a string instead of a vector.
This is more useful for how MOTDs are processed now as we iterate
through them anyway and this allows us to avoid a needless second
iteration.
2024-08-27 14:29:56 +01:00
Sadie Powell
1bf5137a9d Use sa_family_t instead of int. 2024-08-27 13:27:17 +01:00
Sadie Powell
5176f8b1ba Refactor the InspIRCd class to be actually readable.
This has been long overdue as most of the comments were outdated
and members were shoved into the class in no logical way.
2024-08-27 13:25:12 +01:00
InspIRCd Robot
ae3e2db109 Update copyright headers. 2024-06-07 10:37:56 +01:00
Sadie Powell
ec65aa8295 QuickExit is obsolete again so we can remove it again. 2023-10-17 14:00:46 +01:00
Sadie Powell
2f36d0aa2d Move TokenList back to its own header and move INSP_FORMAT to compat.
This allows making stringutils an optional header given that most
of it is not used by most of the codebase.
2023-09-03 18:46:48 +01:00
Sadie Powell
342f94ec22 Normalise the case of ServerStats. 2023-07-13 14:07:26 +01:00
Sadie Powell
1e20faa07f Misc grammar fixes. 2023-06-29 19:29:59 +01:00
Sadie Powell
29705306f2 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.
2023-06-29 17:01:25 +01:00
Sadie Powell
fe4c512839 Rename duration to timeutils and relocate InspIRCd::TimeString. 2023-05-10 11:57:48 +01:00
Sadie Powell
8900f17231 Merge branch 'insp3' into master. 2023-04-28 19:30:25 +01:00
InspIRCd Robot
f2c74267ac Update copyright headers. 2023-04-28 10:21:39 +01: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
57cc457ec6 Rename some headers to match the common naming system. 2023-01-26 06:16:57 +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
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
e26cb5cacd Fix some Doxygen comment issues. 2023-01-21 13:32:53 +00:00
Sadie Powell
8856210499 Add support for SCTP listeners. 2023-01-16 21:15:55 +00:00
Sadie Powell
046b1a2b65 Remove some more unnecessary things from the global headers. 2023-01-14 10:19:38 +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
1b2916c845 Avoid copying shared_ptr<ConfigTag> when not necessary. 2023-01-10 21:27:18 +00:00
Sadie Powell
d048778f78 Merge branch 'insp3' into master. 2023-01-01 13:19:45 +00:00
InspIRCd Robot
2b810b412a Update copyright headers. 2022-12-30 11:31:28 +00:00
Sadie Powell
1c2e79ea80 Move cull_delete to be inside of Cullable. 2022-12-27 14:12:10 +00:00
Sadie Powell
14ab989acf Remove the string_view utility header from the global header. 2022-12-23 19:10:30 +00:00
Sadie Powell
86b4a0853e Remove the unused Extensible* parameter to PassCompare/OnPassCompare. 2022-12-10 15:22:15 +00:00
Sadie Powell
5e44188857 More const correctness work. 2022-12-08 10:19:47 +00:00
Sadie Powell
ee44af8d04 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.
2022-11-28 02:57:50 +00:00
Sadie Powell
07246800fd Use string_view in IsNick/IsIdent/IsChannel. 2022-11-21 13:14:19 +00:00
Sadie Powell
89537ed2ab Fix various cases of the &* being next to the name instead of type. 2022-09-29 12:36:01 +01:00
Sadie Powell
9203f40f41 Fix some warnings noticed by the readability-* clang-tidy checkers. 2022-09-03 23:17:05 +01:00
Sadie Powell
2cfc79bfcb Rip out the extensible/user serialisation system.
This was part of a failed attempt to implement zero downtime
restarts in v3. This can be implemented in a better way but for
now its just slowing down build times so lets kill it.
2022-09-01 11:53:47 +01:00
Sadie Powell
648f813f8c Switch from NULL to nullptr. 2022-07-22 18:53:21 +01:00
Sadie Powell
b763b1e69e Merge branch 'insp3' into master. 2022-07-19 17:00:23 +01:00
Sadie Powell
42b1429b37 Also use binary exit codes in places that terminate abruptly.
This is a partial reversion of commit 57330e973b3eb1f2a84803c84daf9d6b420859fd.
2022-07-19 16:47:02 +01:00
Sadie Powell
968bf77eb4 Make dynamic a non-default header. 2022-06-26 17:06:22 +01:00
Sadie Powell
68fd81b319 Make clientprotocol{msg,event} and numericbuilder non-default headers. 2022-06-26 16:34:21 +01:00
Sadie Powell
89712e2e84 Move numerics to the source files where they are actually used. 2022-06-26 15:29:29 +01:00