Sadie Powell
06add0e5fc
Simplify limit extraction code.
2024-03-12 12:24:02 +00:00
Sadie Powell
04e1a4f5c8
Add a protocol module function for extracting timestamps.
2024-03-12 11:02:08 +00:00
Sadie Powell
1538909ac0
Add ProtocolException and use it to send fatal errors.
2024-03-12 00:17:49 +00:00
Sadie Powell
29e7674e56
Replace convertTo/stringify with non-throwing alternatives.
...
Having these throw is terrible for ergonomics and there are loads
of places where the exception was either silently ignored or not
handled at all. Having a function which returns an optional and
another that returns a default works a lot better imo.
2024-03-11 19:17:29 +00:00
Sadie Powell
25bdcfcbc4
Add names for the numerics used by the core.
2024-02-29 13:07:14 +00:00
Sadie Powell
26919f41d2
If a PRIVMSG or NOTICE is empty then send a single space instead.
...
Currently a bunch of code does source.Reply(" ") to ensure that an
empty line gets rendered but this is a much better way to handle
this problem.
The code that does this already will be updated in a future commit
to avoid breaking translations in progress.
2024-02-29 12:31:19 +00:00
Sadie Powell
7640fad30c
Simplify several boolean expressions.
2024-02-27 10:19:44 +00:00
Sadie Powell
1e87849e5c
Rework IRCDMessage/IRCDMessageFlag.
2024-02-26 23:56:07 +00:00
Sadie Powell
6be4df3b39
Remove several string format IRCDProto function overloads.
2024-02-26 16:45:28 +00:00
Sadie Powell
e341cac8d6
Implement support for the IRCv3 +draft/channel-context tag.
...
Closes #358 .
2024-02-26 15:34:17 +00:00
Sadie Powell
3290ebd36a
GetMaxListFor: use size_t and add a default like the other fields.
2024-02-22 17:25:47 +00:00
Sadie Powell
c4e9c0bf85
If the IRCd sends a field limit then use it over that of the config.
2024-02-22 17:05:30 +00:00
Sadie Powell
7423fa9998
Route message tags into more message functions.
2024-02-22 13:03:53 +00:00
Sadie Powell
aefbb4fbda
Rework SendModeInternal to be usable with Uplink::Send.
2024-02-22 00:14:08 +00:00
Sadie Powell
9b77fdf5b6
Rework SendNumericInternal to be usable with Uplink::Send.
2024-02-22 00:14:08 +00:00
Sadie Powell
7a6979c814
Convert most core protocol handlers to use Uplink::Send.
2024-02-22 00:14:08 +00:00
Sadie Powell
8475697e3b
Inline, constify, and document GetProtocolName.
2024-02-22 00:14:08 +00:00
Sadie Powell
07373c8cf2
Move IRCDProto member initializers to the header.
2024-02-21 13:55:48 +00:00
Sadie Powell
a40f8e0b9d
Update the copyright headers for 2024.
2024-01-04 22:25:48 +00:00
Sadie Powell
b28180d680
Implement support for the ANONYMOUS SASL mechanism.
2023-11-14 15:02:04 +00:00
Sadie Powell
a3241065c5
Start migrating to range-based for loops.
2023-10-11 15:51:52 +01:00
Sadie Powell
885462d98e
Merge branch '2.0' into 2.1.
2022-12-31 22:11:19 +00:00
Sadie Powell
33a337dfc0
Update the copyright headers for 2023.
2022-12-31 22:08:50 +00:00
Sadie Powell
a631028660
Merge branch '2.0' into 2.1.
2022-01-12 22:08:35 +00:00
Sadie Powell
b8bcad048e
Update the copyright headers for 2022.
2022-01-06 23:15:44 +00:00
Sadie Powell
7531e90499
Use C++11 style class/struct initialisation.
2022-01-04 00:17:13 +00:00
Sadie Powell
561b205c4a
Merge branch '2.0' into 2.1.
2021-08-01 18:53:24 +01:00
Josh Soref
fd88b756fc
Fix various spelling issues ( #274 ).
...
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com >.
2021-06-17 15:02:30 +01:00
Sadie Powell
e67c2d5632
Add support for per-mode list limits.
2021-06-04 02:12:09 +01:00
Sadie Powell
376053e0ac
Allow protocol modules to declare that the IRCd supports tags.
...
This is not being used currently but will be soon.
2021-06-01 00:21:41 +01:00
Sadie Powell
c68b81eac8
Merge branch '2.0' into 2.1.
2021-02-18 23:59:28 +00:00
Robby
c5a4e8337c
Update copyright to 2021.
...
This was done with:
find docs/ include/ language/ modules/ src/ *.* Config -exec sed -i 's/-20.. Anope Team/-2021 Anope Team/i' {} \;
2021-01-07 03:31:08 +01:00
Sadie Powell
9d6dd4af11
Remove the non-tagged version of IRCDMessage::Run.
2020-09-28 15:28:27 +01:00
Sadie Powell
7f39fb14f2
Remove operserv/oline and CanSVSO/SendSVSO in IRCDProto.
...
Now UnrealIRCd 3.2.x support has been removed nothing uses this.
2020-09-28 15:28:26 +01:00
Robby
c8699c6726
Update copyright to 2020.
...
This was done with:
find docs/ include/ language/ modules/ src/ *.* Config -exec sed -i 's/-20.. Anope Team/-2020 Anope Team/i' {} \;
2020-01-04 15:51:20 +01:00
Peter Powell
6617d29b52
Fix a bunch of broken indentation.
2019-12-14 18:38:13 +00:00
Peter Powell
e43bc49ba7
Update the core message parser to allow parsing IRCv3 message tags.
2019-09-23 13:20:07 +01:00
Robby
6fbb7cffe9
Update copyright to 2019.
...
This was done with:
find docs/ include/ language/ modules/ src/ *.* Config -exec sed -i 's/-20.. Anope Team/-2019 Anope Team/i' {} \;
2019-01-01 17:43:35 +01:00
Robby
e03ae0cd85
Update copyright to 2018.
...
This was done with:
find docs/ include/ language/ modules/ src/ *.* Config -exec sed -i 's/-20.. Anope Team/-2018 Anope Team/i' {} \;
2018-04-25 19:22:13 +02:00
Robby
76ce8ece1a
Cleanup some excess whitespaces and tabs, and fix a few typos along the way.
2017-01-17 05:03:25 +01:00
Robby
8656b65e39
Update copyright to 2017.
...
This was done with:
find docs/ include/ language/ modules/ src/ *.* Config -exec sed -i 's/-20.. Anope Team/-2017 Anope Team/i' {} \;
Added missing copyright headers to files that didn't have it yet.
2017-01-16 03:13:25 +01:00
Robby
f118960a25
Update copyright to 2016. This was done with:
...
find include/ src/ lang/ docs/ modules/ *.* Config -exec sed -i 's/-20.. Anope Team/-2014 Anope Team/i' {} \;
Added missing copyright headers to files that didn't have it yet.
Fixed some whitespace and blank lines along the way.
2016-01-28 20:24:49 +01:00
Adam
32007f81cf
Add networkinfo:nick_chars option to allow configuring additional characters allowed in nicknames
2015-01-10 15:19:40 -05:00
Adam
4f76bee273
Fix sid generator generating invalid sids after sid 999
2014-11-24 22:00:30 -05:00
Adam
37b3ed8ef3
Do not normalize extban masks
2014-05-27 12:55:03 -04:00
Adam
f627a3bacd
Core prep for p10 stuff
2014-05-21 08:50:40 -04:00
Adam
63b02b8c97
Sanitize nuh masks more to prevent the other side from rewriting them, which screws with our internal tracking of them
2014-05-13 22:57:53 -04:00
Attila Molnar
e36f8143e3
Fix SVSNICK target being a nick even when UIDs are available
2014-04-19 14:35:50 +02:00
Adam
fee016bb84
Handle nick collisions somewhat instead of blindly overwriting the nicks
...
in memory, which does weird things.
For fun different ircds implement this differently (Unreal compares
timestamps, TS6 compares timestamps and user username/host), and whether
or not we get a kill for our user also varies, so just kill everyone.
This can't really happen anyway with properly set qlines, only if
services haven't yet set the qlines, or possibly in a bot add/nick
user introduce race, or with enforcers, which not many ircds require.
2014-02-27 22:42:54 -05:00
Daniel Vassdal
7926238fd2
Improve IsChannelValid()
2014-02-01 10:55:12 -08:00