3072 Commits

Author SHA1 Message Date
Sadie Powell
5a88a78f99 Merge branch 'insp3' into master. 2020-10-27 10:50:28 +00:00
Sadie Powell
7cb27dabe6 Convert CmdResult to an 8-bit strongly typed enum. 2020-10-27 00:59:11 +00:00
Sadie Powell
7ba36f5348 Don't kill cloaking users when hash/md5 is missing. 2020-10-27 00:42:32 +00:00
Sadie Powell
581d1d8fa0 Fix the behaviour of multi-value PING and PONG messages. 2020-10-26 18:02:23 +00:00
Sadie Powell
e81dcaec7f Recheck users for xlines when their real hostname changes. 2020-10-06 10:31:39 +01:00
Sadie Powell
5c06a0f335 Check that the values specified in <limits> are reasonable. 2020-09-30 17:21:52 +01:00
Sadie Powell
f6c4ff5498 Merge branch 'insp3' into master. 2020-09-27 12:37:24 +01:00
Sadie Powell
e79d4ec07d Make shun block client-only tags by default. 2020-09-27 11:37:22 +01:00
Sadie Powell
73b4ac1b3a Merge branch 'insp3' into master. 2020-08-25 10:46:42 +01:00
Sadie Powell
63dd77804f Silence some copy warnings on C++11 compilers. 2020-08-01 13:24:36 +01:00
Sadie Powell
279ad1616d Release v3.7.0. 2020-07-30 17:23:30 +01:00
InspIRCd Robot
2f12f76ec9 Update copyright headers. 2020-07-30 14:31:12 +01:00
Sadie Powell
2c9ebe040c Make the ERR_CANNOTSENDTOCHAN extban message less misleading. 2020-07-30 12:00:16 +01:00
Sadie Powell
e059f82249 Merge branch 'insp3' into master. 2020-07-29 12:13:45 +01:00
Sadie Powell
1d06a27acc Add a method for creating a regex pattern with included flags. 2020-07-29 10:42:31 +01:00
Sadie Powell
1621a84f96 Rewrite the regex system from scratch.
* Move everything to the Regex namespace:
  - Regex -> Regex::Pattern
  - RegexException -> Regex::Exception
  - RegexFactory -> Regex::Engine

* Add support for regex flags.
  - Regex::OPT_CASE_INSENSITIVE performs case-insensitive matching.

* Add the Regex::EngineReference class as a friendly wrapper around
  dynamic_reference_nocheck<Regex::Engine>.

* Add the Regex::SimpleEngine template class for automating the
  implementation of regex factory classes.

* Use std::shared_ptr for Regex::Pattern objects instead of making
  users manage memory manually.
2020-07-28 19:22:59 +01:00
Matt Schatz
30648e84ce Fix secure websocket users not being seen as secure.
Since a TLS (SSL) module will always be the last IOHook attached
to a socket, IsSSL() needs to ignore any Middle IOHooks that may
also be attached.
2020-07-27 09:38:11 +01:00
Sadie Powell
c3e88d6b53 Clean up ISUPPORT code and implement support for ISUPPORT updates. 2020-07-24 14:27:46 +01:00
Sadie Powell
cac18ebf0d Add a method for comparing two maps. 2020-07-24 13:56:16 +01:00
Sadie Powell
1b356e5a89 Move the property string from cmd_modules to Module & show on load. 2020-07-24 05:05:27 +01:00
Sadie Powell
4e3d97546a Pascalize Cap::set and rename Cap::get to IsEnabled. 2020-07-20 12:16:48 +01:00
Sadie Powell
ef4e61cd24 Pascalize ExtensionItem::{get,set,unset}_raw. 2020-07-20 11:58:28 +01:00
Sadie Powell
456989e9d5 Clean up the StreamSocket documentation comments slightly. 2020-07-20 07:52:59 +01:00
Sadie Powell
306594f591 Move GetNextLine from StreamSocket to TreeSocket. 2020-07-20 07:50:18 +01:00
Sadie Powell
90fb7c511f Fix the case of getError/getSendQSize and rewrite the doc comments. 2020-07-20 07:36:44 +01:00
Sadie Powell
f73d200a1e Split OnSetEndPoint into two events. 2020-07-20 07:21:16 +01:00
Sadie Powell
93ae431955 Merge branch 'insp3' into master. 2020-07-15 11:00:24 +01:00
Sadie Powell
7823761cf3 Add a config option that forces bots to use NOTICEs. 2020-07-07 01:49:03 +01:00
Sadie Powell
58e9055162 Merge branch 'insp3' into master. 2020-06-08 18:14:19 +01:00
Sadie Powell
1cb1430c70 ModResult is a class now. 2020-05-22 17:20:34 +01:00
Sadie Powell
3c9d53eadd Document ModResult and switch the underlying type to char. 2020-05-21 19:24:46 +01:00
Sadie Powell
7c126a98e4 Replace FileSystem::GetFileList with std::filesystem. 2020-05-19 19:45:06 +01:00
Sadie Powell
437c2045ad Add ConfigParser::getEnum for parsing enum values. 2020-05-13 14:33:47 +01:00
Sadie Powell
6c24f71abf Fix warnings on GCC 9. 2020-05-11 14:25:32 +01:00
Sadie Powell
dac5288954 Implement support for inverted extbans. 2020-05-07 23:45:52 +01:00
Sadie Powell
eb0f385c8d Deduplicate extban parsing. 2020-05-07 23:10:54 +01:00
Sadie Powell
37fbbd840c Add first class support for extbans.
This replaces the previous support which was pretty much a giant
hack and was not synchronised between servers.
2020-05-07 21:41:04 +01:00
Sadie Powell
a4586749b9 Fix an oversight introduced in commit 98e4ddfb21. 2020-05-07 21:15:34 +01:00
Sadie Powell
b755d2a778 Merge branch 'insp3' into master. 2020-05-05 22:03:14 +01:00
InspIRCd Robot
44489ddf7e Update copyright headers. 2020-04-24 10:23:47 +01:00
Sadie Powell
119907f238 Revert "Convert UserType to an enum class".
There's a bug in GCC with bitfields and enum class.

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51242

This reverts commit 44834a66a7e92c8979ae16421286c581a9cffbe9.
2020-04-21 11:40:26 +01:00
InspIRCd Robot
4f9abe96a4 Fixes by misspell-fixer 2020-04-21 00:52:12 -06:00
Sadie Powell
44834a66a7 Convert UserType to an enum class. 2020-04-21 04:17:14 +01:00
Matt Schatz
3ed1cc27b1
Switch User::usertype back to an unsigned int.
Leaving it up to the compiler to set the underlying type of the enum
can result in this being a signed int. This variable will not work
as intended as a 2 bit signed int.
This fixes an issue with the Windows build(s) where a server trying
to link would fail with "Protocol violation: Invalid source".
2020-04-19 05:01:04 -06:00
Sadie Powell
9ec5126eeb Replace the flags_required field with an enum. 2020-04-14 21:30:50 +01:00
Sadie Powell
bafb721640 Merge branch 'insp3' into master. 2020-04-14 19:57:10 +01:00
Sadie Powell
b382496d5c Alow modules to specify multiple syntax lines. 2020-04-14 16:41:31 +01:00
Matt Schatz
ccebfe6e63
Update user-facing text and comments of SSL to TLS. 2020-04-14 06:08:31 -06:00
Matt Schatz
8874c1c575 Update user-facing text and comments of SSL to TLS. 2020-04-14 06:08:31 -06:00
Sadie Powell
31897d26f2 Add the inspircd.org/standard-replies capability. 2020-04-13 18:36:21 +01:00