297 Commits

Author SHA1 Message Date
Sadie Powell
45e56e5ee1 Yet more stylistic fixes. 2022-12-01 05:25:01 +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
7a623b0663 Use T&& instead of T or const T&. 2022-11-29 06:09:01 +00:00
Sadie Powell
d5759d1de2 Extract the logic for tags that need message-tags to its own type. 2022-11-29 05:12:42 +00:00
Sadie Powell
b045f49afb Merge branch 'insp3' into master. 2022-11-24 19:16:25 +00:00
Sadie Powell
5a30466990 Add a workaround for the replies API not working with a cap reference.
A Cap::Reference can not be cast to a Cap::Capability& because it may
not be available and that would create a null reference. In v4 we can
change the API to take a Cap::Capability* but for now this is the best
we can do.
2022-11-24 19:01:22 +00:00
Sadie Powell
92739a57f6 Merge branch 'insp3' into master. 2022-11-16 16:29:12 +00:00
delthas
6939a79a67
Add support for the IRCv3 extended-monitor specification.
Co-authored-by: Sadie Powell <sadie@witchery.services>
2022-11-02 12:18:37 +00:00
Sadie Powell
41926908ec Fix some types which were missed when making stuff final. 2022-10-30 12:58:38 +00:00
Sadie Powell
6fc111ccb6 Rename session registration to connection to avoid a semantic conflict.
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.
2022-10-29 15:54:59 +01:00
Sadie Powell
859088dac5 More const correctness. 2022-10-23 14:51:33 +01:00
Sadie Powell
77a76b8553 Merge branch 'insp3' into master. 2022-10-18 12:33:09 +01:00
Sadie Powell
ad24454084 Fix an unintentional string copy in the geolocation API. 2022-10-18 12:30:15 +01:00
Sadie Powell
4dfb70a936 Add the accountnicks metadata as a replacement for user mode +r.
This isn't used much currently but in the future will allow doing
a lot of behaviour which is currently implemented in services in
the IRCd instead e.g. killing ghost clients, nickname enforcement.
2022-10-18 10:58:14 +01:00
Sadie Powell
f49cfd2f30 Merge branch 'insp3' into master. 2022-10-13 08:35:02 +01:00
Sadie Powell
59ec1f6eb6 Allow modules to control the visible channel in a WHO request. 2022-10-12 08:50:06 +01:00
Sadie Powell
a54b78fb9d Add the matched channel to the WHO request data. 2022-10-12 08:50:06 +01:00
Sadie Powell
45cfe11c98 Fix saving the database identifier in SQL::Provider. 2022-10-07 19:41:07 +01:00
Sadie Powell
69aab925da Modernize an old-style loop that was previously missed. 2022-10-01 22:26:26 +01:00
Sadie Powell
e4efd41a99 Use a global typedef for representing a character set. 2022-09-30 20:21:59 +01: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
2a0cce9d46 Fix more warnings discovered with -Weverything. 2022-09-05 21:14:36 +01:00
Sadie Powell
648f813f8c Switch from NULL to nullptr. 2022-07-22 18:53:21 +01:00
Sadie Powell
a0850bc53f Add methods for extracting specific regex captures. 2022-06-28 14:00:14 +01:00
Sadie Powell
89712e2e84 Move numerics to the source files where they are actually used. 2022-06-26 15:29:29 +01:00
Sadie Powell
fe9107c992 Modernize the syntax of various templates. 2022-06-23 21:22:04 +01:00
Sadie Powell
bc2098a492 Require specifying the repeat argument of the Timer class. 2022-05-17 12:06:26 +01:00
Sadie Powell
986d587ea4 Add the new account system.
This still relies on the old extensibles for now but we can change
that later.
2022-05-14 14:47:56 +01:00
Sadie Powell
83b1afdfad Remove the old account system. 2022-05-14 13:50:29 +01:00
Sadie Powell
f7c041f560 Implement support for regex capture groups. 2022-05-06 15:53:08 +01:00
Sadie Powell
0e7883dd96 Format enums with an underlying type like classes. 2022-04-30 14:47:39 +01:00
Sadie Powell
0e660314c3 Make the extban enums 8-bit. 2022-04-29 22:07:42 +01:00
Sadie Powell
d7912e6a3e Merge branch 'insp3' into master. 2022-04-29 11:24:05 +01:00
InspIRCd Robot
346ec99c43 Update copyright headers. 2022-04-28 18:49:16 +01:00
Sadie Powell
9fbcb685e8 Merge branch 'insp3' into master. 2022-04-21 16:32:29 +01:00
Sadie Powell
d856205432 Fix doxygen to include the public module header files. 2022-04-17 14:16:05 +01:00
Sadie Powell
b6c77b3e01 Fix a missing doxygen comment. 2022-04-17 12:13:35 +01:00
Sadie Powell
27c0ae9433 Allow normalising extbans to a specific format.
Also, fix canonicalisation of acting extban values.
2022-04-17 12:08:57 +01:00
Sadie Powell
30edd1070d Merge branch 'insp3' into master. 2022-04-16 16:16:29 +01:00
Sadie Powell
c0bc5bf798 Add ListModeBase::CanonicalizeParam, fix cleaning extban masks. 2022-04-16 12:01:59 +01:00
Sadie Powell
985ef046ce Add a class that wraps a dynamic reference to the extban manager. 2022-04-16 10:52:34 +01:00
Sadie Powell
7385ceccb1 Expose the invite announcement level to modules. 2022-04-07 20:00:52 +01:00
Sadie Powell
f06ea52d0a Merge branch 'insp3' into master. 2022-03-27 15:30:41 +01:00
Sadie Powell
3bf6454518 Allow modules to handle WHO matching. 2022-03-25 13:18:42 +00:00
Sadie Powell
a7de91861f Merge branch 'insp3' into master. 2022-03-19 18:37:51 +00:00
Sadie Powell
e3f8149f65 Fix a compiler warning on Windows. 2022-03-19 16:36:25 +00:00
Sadie Powell
2d329701db Merge branch 'insp3' into master. 2022-03-11 14:52:56 +00:00
Sadie Powell
4169e0e799 Make the accessor methods in ssl_cert const. 2022-02-14 20:28:08 +00:00
Sadie Powell
24229f59f7 Squash an unnecessary string copy in SQL::Error. 2022-02-05 01:52:45 +00:00
Sadie Powell
8ab6b7230f Remove duplicate includes from module headers. 2022-01-25 16:20:45 +00:00