15793 Commits

Author SHA1 Message Date
Sadie Powell
c765da2f51 Fix compatibility with the v3 deaf config. 2022-12-12 00:30:35 +00:00
Sadie Powell
bfee808f26 Fix conflicting with a predefined value on Windows.
STRICT is already defined on Windows so we'll need to do something
else here. Thanks Microsoft.
2022-12-11 10:31:00 +00:00
Sadie Powell
3c6e24665f 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.
2022-12-11 10:14:33 +00:00
Sadie Powell
cd6329d4b0 Improve the oper login flow and error messages. 2022-12-11 08:49:44 +00:00
Sadie Powell
61c4b2cc73 Update some references to services_account that were missed. 2022-12-11 08:48:12 +00:00
Sadie Powell
d0eae89821 Merge branch 'insp3' into master. 2022-12-10 15:45:49 +00:00
Sadie Powell
9d35da3e84 Move password checking from core_oper into OperAccount. 2022-12-10 15:30:51 +00:00
Sadie Powell
86b4a0853e Remove the unused Extensible* parameter to PassCompare/OnPassCompare. 2022-12-10 15:22:15 +00:00
Sadie Powell
52e048b214 Allow modules to ignore any checks from OnPreOperLogin. 2022-12-10 14:58:48 +00:00
Sadie Powell
7a6addf671 Slightly improve the logging in cmd_oper. 2022-12-10 14:50:11 +00:00
Sadie Powell
b65974d073 Move <oper:host> check into OnPreOperLogin. 2022-12-10 14:49:02 +00:00
Sadie Powell
b47b791f9f Allow restricting an oper account based on services account. 2022-12-10 14:14:37 +00:00
Sadie Powell
4eff31cc82 Tell an oper when the X-line they were trying to match is too wide.
Also move the snotice for an overwide X-line to snomask 'X' which
should have been done when it was added.
2022-12-10 12:27:06 +00:00
Sadie Powell
befecafad3 Allow specifying multiple masks when adding an X-line.
The only exemptions for this are RLINE (a real name might contains
commas) and SVSHOLD (sent by services only).

Closes #1972.
2022-12-10 12:26:18 +00:00
Sadie Powell
8f84e725c6 Remove support for the old deprecated Intel compiler. 2022-12-10 07:08:46 +00:00
Sadie Powell
17d9796f11 Remove test-build now its no longer used. 2022-12-10 07:01:01 +00:00
Sadie Powell
20a1892e31 Merge branch 'insp3' into master. 2022-12-10 07:00:24 +00:00
Sadie Powell
513309fc68 Fix building with the Intel C++ compiler.
- Fix adding -Wshadow in the compiler flags twice.
- Detect the new Clang-based Intel compiler as well as the old one.
- Silence some deprecation warnings using Intel syntax.
2022-12-10 06:58:39 +00:00
Sadie Powell
c3294e9f64 Add a sslprofile option for disabling TLS 1.3 in ssl_openssl.
This mirrors the options (<sslprofile:tlsv{1,11,12}>) for other
TLS versions.
2022-12-10 06:48:07 +00:00
Sadie Powell
e99ad4eb88 Remove test-build now its no longer used. 2022-12-09 16:58:29 +00:00
Sadie Powell
0de5151eec Add support for per-oper/opertype operator MOTDs. 2022-12-09 16:13:55 +00:00
Sadie Powell
3e941f1cfb Merge branch 'insp3' into master. 2022-12-09 11:31:11 +00:00
Sadie Powell
619018c216 Fix reading the MOTD when <connect:motd> is a literal path. 2022-12-09 10:49:47 +00:00
Sadie Powell
aac9fe1921 Fix sending malformed MOTD and showfile messages to clients. 2022-12-09 10:49:46 +00:00
InspIRCd Robot
4163c57c08 Update author list. 2022-12-08 13:37:09 +00:00
Sadie Powell
0b1a210659 Sort names case insensitively in the authors list. 2022-12-08 13:36:57 +00:00
Sadie Powell
5e44188857 More const correctness work. 2022-12-08 10:19:47 +00:00
Sadie Powell
ce57199237 Const correct the IRCv3 standard replies API. 2022-12-06 13:02:52 +00:00
Sadie Powell
1452ed8e08 If an oper is away then show it in /STATS P.
Also fix hideoper and the idle timestamp.
2022-12-06 09:02:41 +00:00
Sadie Powell
7e38f836f7 Load regex_pcre instead of regex_pcre2 for compat with v3. 2022-12-05 08:13:09 +00:00
Sadie Powell
77faab6ce2 Merge branch 'insp3' into master. 2022-12-05 08:11:27 +00:00
Sadie Powell
3de3459e59 Attempt to speed up package installation on the macOS CI. 2022-12-05 08:01:10 +00:00
Sadie Powell
0a03eada1c Import regex_pcre2 from inspircd-contrib.
The original plan was to make the PCRE2 switch happen in v3 but it
seems that distributions are beginning to unpackage the old pcre
library already.
2022-12-05 07:18:32 +00:00
Sadie Powell
445773907d Merge branch 'insp3' into master. 2022-12-04 06:07:20 +00:00
Sadie Powell
69442119e0 Fix a missing doxygen parameter. 2022-12-04 06:07:01 +00:00
Sadie Powell
1203f3ae15 Update Doxygen config for the latest version. 2022-12-03 21:22:45 +00:00
Sadie Powell
4fa6bbee3d Release v4.0.0 alpha 17. v4.0.0a17 2022-12-01 20:46:37 +00:00
Sadie Powell
d130106374 Avoid copying a shared_ptr where not actually necessary. 2022-12-01 05:39:24 +00:00
Sadie Powell
45e56e5ee1 Yet more stylistic fixes. 2022-12-01 05:25:01 +00:00
Sadie Powell
175bf0fa91 Merge branch 'insp3' into master. 2022-11-30 21:33:29 +00:00
Sadie Powell
1c68f3d2e2 Mark the entire client protocol namespace as CoreExport. 2022-11-30 21:11:40 +00:00
Sadie Powell
43b5c69523 Switch the Ubuntu CI to use ubuntu-latest. 2022-11-30 20:44:48 +00:00
Sadie Powell
97201322ec Fix using C++11 features in code that was backported from master. 2022-11-30 20:40:45 +00:00
Sadie Powell
e2243c3aae Merge branch 'insp3' into master. 2022-11-30 11:04:30 +00:00
Sadie Powell
4df802c56f Fix GetSnomasks returning unregistered snomasks. 2022-11-30 10:51:21 +00:00
Sadie Powell
894e9d8ddc Add a method for quickly escaping a tag value. 2022-11-30 10:46:26 +00:00
Sadie Powell
a3fedf513a Add stats tags for /STATS O and /STATS o. 2022-11-30 04:57:11 +00:00
Sadie Powell
5dd3629f12 Allow attaching tags with extra info to stats rows.
Stats responses are incredibly non-standard and no clients render
them correctly. This makes using /STATS a massive pain in the ass
for users.

However, now we have message tags we have a way to fix this. We can
send a <trailing> with the message details and for clients (probably
bots) that need to parse the response we can include the specific
details in message tags enabled by the new inspircd.org/stats-tags
capability.

The average user will get this:

    :<server> 210 <nick> <stats-char> :<stats-message>

If however they enable the newcapability they will get this instead:

    @inspircd.org/stats-foo=bar;inspircd.org/stats-baz=bax :<server> 210 <nick> <stats-char> :<stats-message>
2022-11-30 04:08:30 +00:00
Sadie Powell
bfd4c5d44e Add a method for quickly escaping a tag value. 2022-11-30 03:26:38 +00:00
Sadie Powell
7b3e961782 Make it easier to add tags to a numeric. 2022-11-30 02:22:51 +00:00