aboutsummaryrefslogtreecommitdiff
path: root/src/channels.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright headers.Gravatar InspIRCd Robot2022-12-301-1/+1
|
* Update copyright headers.Gravatar InspIRCd Robot2022-04-281-1/+1
|
* Fix server status messages unintentionally being sent to all users.Gravatar Sadie Powell2022-04-021-1/+1
| | | | | | This fixes normal users seeing timedbans notices. Thanks to @AndrioCelos for pointing this out.
* Fix the opermaxchans check, properly this time.Gravatar Sadie Powell2022-01-161-1/+1
|
* Fix using the oper channel limit even if it is lower than the general limit.Gravatar Sadie Powell2022-01-151-1/+1
|
* Update copyright headers.Gravatar InspIRCd Robot2021-03-051-1/+1
|
* Update copyright headers.Gravatar InspIRCd Robot2020-01-311-1/+1
|
* Add Channel::WriteRemoteNotice and revert WriteNotice changes.Gravatar Sadie Powell2020-01-291-0/+5
| | | | | | This is a partial reversion of 687778b72e. See also: #1749.
* Update copyright headers.Gravatar InspIRCd Robot2020-01-111-5/+7
|
* Allow Channel::WriteNotice send to other servers and status ranks.Gravatar Peter Powell2019-11-171-2/+3
|
* Fix respecting the deprecated <channels:users> tag.Gravatar Peter Powell2019-10-241-0/+2
|
* Replace all abstract usages of his/he/her with they/their/it.Gravatar Peter Powell2019-06-071-2/+2
|
* Textual improvements and fixes such as typos, casing, etc. (#1612)Gravatar Robby2019-04-281-1/+1
|
* Add ParamMode::IsParameterSecret and remove special casing of keys.Gravatar Peter Powell2019-01-281-3/+3
|
* Fix conversion issues by replacing ConvToInt with ConvToNum<T>.Gravatar Peter Powell2018-12-121-1/+1
| | | | | | | 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.
* Reject setting modes which are null or not registered.Gravatar Peter Powell2018-12-121-1/+2
|
* Implement IRCv3 message tag support.Gravatar Peter Powell2018-08-131-92/+21
| | | | Co-authored-by: Attila Molnar <attilamolnar@hush.com>
* Move checking for +ikl from the core to to core_channel.Gravatar Peter Powell2018-03-311-38/+2
|
* Fix m_chanhistory sending the history notice directly to the user.Gravatar Peter Powell2018-01-031-0/+8
| | | | Closes #1452.
* Merge branch 'insp20' into master.Gravatar Peter Powell2017-12-111-1/+1
|\
| * Add length checking to GetExtBanStatus and m_banexception.Gravatar Peter Powell2017-11-281-1/+1
| | | | | | | | | | 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.
| * Revert "Fix sending the wrong numerics on join when a topic is empty."Gravatar Attila Molnar2015-10-111-1/+1
| | | | | | | | | | | | This reverts commit b0e64b8cea2d721588d92072a8d16fdd99a9c945. The original behavior isn't RFC incompliant, see #1095.
| * Fix sending the wrong numerics on join when a topic is empty.Gravatar Peter Powell2015-08-261-1/+1
| |
* | Extract RFC modes from the core to core_channel and core_user.Gravatar Peter Powell2017-12-101-0/+6
| |
* | Fix action extbans not triggeringGravatar B00mX0r2017-11-261-1/+4
| | | | | | | | This fixes a reversion from ebe5b20
* | Fix a ton of -Wsign-conversion warnings.Gravatar Peter Powell2017-11-171-1/+1
| |
* | Hide User#host and User#dhost and use accessors to modify them.Gravatar Peter Powell2017-10-281-2/+2
| | | | | | | | | | This removes the need to invalidate the cache after changing a user's hostname.
* | Fix compatibility with the legacy <channels> tag.Gravatar Peter Powell2016-09-201-1/+1
| | | | | | | | We should only use OperMaxChans if they have the right privilege.
* | Return std::string from Membership::GetAllPrefixChars()Gravatar Attila Molnar2016-08-301-7/+4
| |
* | Convert ModeHandler::GetNumParams() to NeedsParam() that returns a boolGravatar Attila Molnar2016-08-291-2/+2
| |
* | Add a method which calculates the maximum mask length. (#1171)Gravatar Peter Powell2016-07-221-1/+1
| |
* | Refactor topic setting logic to go through Channel::SetTopic() in all casesGravatar Attila Molnar2016-04-111-5/+13
| | | | | | | | | | - 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
* | Add Channel::WriteNotice()Gravatar Attila Molnar2016-03-051-0/+7
| |
* | Convert WriteNumeric() calls to pass the parameters of the numeric as method ↵Gravatar Attila Molnar2016-02-251-5/+5
| | | | | | | | parameters
* | Return true from Channel::PartUser() if the user was on the channelGravatar Attila Molnar2015-12-281-2/+4
| |
* | Invert if in Channel::PartUser()Gravatar Attila Molnar2015-12-281-11/+11
| |
* | Rewrite invite systemGravatar Attila Molnar2015-11-021-66/+0
| | | | | | | | | | | | | | | | - Moved out of core, now lives entirely in core_channel - Accessible using the provided API after including the appropriate header - Invites are stored in an extension attached to LocalUser/Channel objects, they no longer need special handling when destroying these objects or when lowering TS - Expiration of timed invites are implemented using Timers - When creating a new invite let a non-timed invite override a timed one
* | Move handling of <options:invitebypassmodes> into core_channelGravatar Attila Molnar2015-11-021-16/+4
| |
* | Update another password check to use InspIRCd::TimingSafeCompare.Gravatar Peter Powell2015-10-141-1/+1
| |
* | Move Channel::UserList() from core to cmd_namesGravatar Attila Molnar2015-05-161-63/+0
| |
* | Move topic and NAMES sending on join from core into core_channelGravatar Attila Molnar2015-05-161-10/+0
| |
* | Fix miscalculation of maxlen in Channel::UserList() introduced by the ↵Gravatar Attila Molnar2015-02-271-1/+1
| | | | | | | | WriteNumeric() conversion
* | Verify that the chan in chanlist is in fact the same object as us in ↵Gravatar Attila Molnar2015-01-161-1/+1
| | | | | | | | Channel::CheckDestroy() before proceeding
* | Gracefully handle multiple Channel::CheckDestroy() calls on the same objectGravatar Attila Molnar2015-01-161-6/+5
| | | | | | | | Don't add the channel to the cull list more than once
* | Reduce std::string::substr() usageGravatar Attila Molnar2015-01-101-2/+2
| | | | | | | | substr() returns a new string while erase() and assign() modify the existing one
* | Merge insp20Gravatar Attila Molnar2014-10-271-0/+8
|\|
| * Reject parameters that begin with a colon in Channel::SetDefaultModes()Gravatar Attila Molnar2014-09-261-0/+5
| |
| * Don't try to set a mode in Channel::SetDefaultModes() if it needs a ↵Gravatar Attila Molnar2014-09-261-0/+3
| | | | | | | | | | | | parameter but does not have one Thanks to @docwhat for helping to track this down, fixes issue #924
* | Store Membership objects physically in the nodes of Channel::MemberMapGravatar Attila Molnar2014-09-271-4/+4
| |
* | Remove typedef UserMembIter, use Channel::MemberMap::iterator insteadGravatar Attila Molnar2014-07-141-10/+10
| | | | | | | | Remove the now unused UserMembList typedef too