449 Commits

Author SHA1 Message Date
Sadie Powell
0f3f8285fe Fix a bunch of weird uses of .c_str(). 2022-01-30 23:16:23 +00:00
Sadie Powell
8e6d811f34 Remove a bunch of unnecessary whitespace. 2021-08-17 21:13:05 +01:00
Dominic Hamon
02340285c5
Added -Wshorten-64-to-32 and fixed all warnings. 2021-05-30 20:37:54 +01:00
Sadie Powell
ee1325cf9d Fire OnUserPreJoin regardless of whether the join is an override. 2021-05-23 01:58:34 +01:00
Sadie Powell
8933c4b9ff Switch Channel::ChanModes to use the channel mode map. 2021-05-08 17:50:24 +01:00
Sadie Powell
0c750c0608 Move channel logic from InspIRCd to the new ChannelManager class. 2021-05-08 15:31:50 +01:00
Sadie Powell
569324feee Migrate collections from insert to emplace. 2021-04-18 04:58:28 +01:00
Sadie Powell
e5b586315b Make the reason parameter to PartUser const. 2021-04-18 04:58:28 +01:00
Sadie Powell
942fd2bcfd Switch simple iterator loops to use range-based for loops. 2021-04-07 10:36:11 +01:00
Sadie Powell
49702c621e Convert various mode methods to take Mode::Change.
- AccessCheck
- AfterMode
- BeforeMode
- OnModeChange
- OnRawMode
2021-03-30 18:25:55 +01:00
Sadie Powell
1e1cf527d2 Merge branch 'insp3' into master. 2021-03-05 02:32:35 +00:00
InspIRCd Robot
7b1ab06a95 Update copyright headers. 2021-03-05 02:16:11 +00:00
Sadie Powell
4e488cb54d Refactor classbase/CullResult into Cullable/Cullable::Result. 2021-03-02 05:56:56 +00:00
Sadie Powell
fbb7675c66 Move ban checking to core_channel. 2020-11-30 18:47:19 +00:00
Sadie Powell
8315d5250d Rename ChanMax to MaxChannel for consistency with the other limits. 2020-11-27 12:36:44 +00: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
98e4ddfb21 Use C++11 inline initialisation for class members. 2020-02-06 11:25:42 +00:00
Sadie Powell
6da4987073 Merge branch 'insp3' into master. 2020-02-04 12:26:25 +00:00
InspIRCd Robot
8f62016f16 Update copyright headers. 2020-01-31 12:48:25 +00:00
Sadie Powell
6597fe5d4f Add Channel::WriteRemoteNotice and revert WriteNotice changes.
This is a partial reversion of 687778b72e.

See also: #1749.
2020-01-29 12:00:32 +00:00
Sadie Powell
1de6f5b4a9 Merge branch 'insp3' into master. 2020-01-17 12:36:09 +00:00
InspIRCd Robot
aa692dc103 Update copyright headers. 2020-01-11 22:14:43 +00:00
Sadie Powell
034dad6ab0 Merge branch 'insp3' into master. 2019-12-08 17:47:07 +00:00
Peter Powell
687778b72e Allow Channel::WriteNotice send to other servers and status ranks. 2019-11-17 22:17:42 +00:00
Peter Powell
2e75491aed Fix respecting the deprecated <channels:users> tag. 2019-10-24 15:56:20 +01:00
Sadie Powell
cd8b456f97 Merge branch 'insp3' into master. 2019-07-16 16:48:18 +01:00
Peter Powell
f6b33a8fac Replace all abstract usages of his/he/her with they/their/it. 2019-06-07 20:22:43 +01:00
Sadie Powell
1d5b18de82 Merge branch 'insp3' into master. 2019-05-15 15:26:55 +01:00
Robby
e57d1b19ff Textual improvements and fixes such as typos, casing, etc. (#1612) 2019-04-28 09:14:21 +01:00
Sadie Powell
7ba7290bf0 ModeParser: remove fakederef. 2019-02-07 12:14:37 +00:00
Sadie Powell
e862582e7e LogManager: remove fakederef. 2019-02-07 12:14:07 +00:00
Sadie Powell
bfa5fb407e Merge branch 'insp3' into master. 2019-02-05 00:47:30 +00:00
Peter Powell
18678c6a22 Add ParamMode::IsParameterSecret and remove special casing of keys. 2019-01-28 17:26:15 +00:00
Sadie Powell
b4685e06d4 Remove all 2.0 config compatibility code. 2019-01-25 03:27:13 +00:00
Peter Powell
0f7cfd46ef Fix conversion issues by replacing ConvToInt with ConvToNum<T>.
The former was a thin wrapper around atol and brought with it all
of the weird parsing logic of atol which is almost never what is
actually wanted. It also almost never returned the numeric type
which is actually wanted which can cause weird issues when casting.
2018-12-12 21:43:24 +00:00
Peter Powell
654355c2d1 Reject setting modes which are null or not registered. 2018-12-12 14:43:55 +00:00
Peter Powell
58a0a7e014 Implement IRCv3 message tag support.
Co-authored-by: Attila Molnar <attilamolnar@hush.com>
2018-08-13 21:51:11 +01:00
Peter Powell
b3a728d93f Move checking for +ikl from the core to to core_channel. 2018-03-31 13:00:57 +01:00
Peter Powell
57e4bf9725 Fix m_chanhistory sending the history notice directly to the user.
Closes #1452.
2018-01-03 16:24:19 +00:00
Peter Powell
565544fac9 Merge branch 'insp20' into master. 2017-12-11 11:41:44 +00:00
Peter Powell
98372c3cf2 Extract RFC modes from the core to core_channel and core_user. 2017-12-10 12:38:45 +00:00
Peter Powell
25c1319e0d Add length checking to GetExtBanStatus and m_banexception.
As far as I can tell this is not a problem as all ban masks are
canonicalised but its better to be safe than sorry.
2017-11-28 13:48:50 +00:00
B00mX0r
d2f4558bcc
Fix action extbans not triggering
This fixes a reversion from ebe5b20
2017-11-26 14:16:29 -08:00
Peter Powell
36040be295 Fix a ton of -Wsign-conversion warnings. 2017-11-17 15:33:01 +00:00
Peter Powell
d865b43486 Hide User#host and User#dhost and use accessors to modify them.
This removes the need to invalidate the cache after changing a
user's hostname.
2017-10-28 16:16:10 +01:00
Peter Powell
caded702bf Fix compatibility with the legacy <channels> tag.
We should only use OperMaxChans if they have the right privilege.
2016-09-20 05:38:03 +01:00
Attila Molnar
6a35f493f3 Return std::string from Membership::GetAllPrefixChars() 2016-08-30 16:33:46 +02:00
Attila Molnar
19f0c09aa7 Convert ModeHandler::GetNumParams() to NeedsParam() that returns a bool 2016-08-29 14:50:08 +02:00
Peter Powell
4a12fc9d4b Add a method which calculates the maximum mask length. (#1171) 2016-07-22 12:26:11 +02:00
Attila Molnar
2706a993b3 Refactor topic setting logic to go through Channel::SetTopic() in all cases
- Pass topic set time and optionally the setter to SetTopic()
- Don't do anything if the topic is changed by a local user to what it is currently
2016-04-11 15:53:01 +02:00