aboutsummaryrefslogtreecommitdiff
path: root/src/channels.cpp
Commit message (Collapse)AuthorAgeFilesLines
* 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
|
* 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
* Fix NAMES list getting truncated on servers having an excessively long ↵Gravatar Attila Molnar2014-03-131-1/+2
| | | | server name
* Backport "Refactor Channel::UserList() to use std::string"Gravatar Attila Molnar2014-03-131-25/+21
| | | | | | This gets rid of questionable snprintf() usage, reported by @hifi Backported commit: 8a06d54076551387f83a29360478ee6605e241b6
* Fix some logically dead code which was found by Coverity.Gravatar Peter Powell2014-01-211-10/+2
|
* Show +i users on a channel to opers having the channels/auspex priv who do ↵Gravatar Attila Molnar2014-01-041-2/+4
| | | | | | /NAMES from outside of the chan Discovered by @Cronus89
* Remove unused variables, avoid copies where possible, check empty() instead ↵Gravatar attilamolnar2013-05-161-1/+0
| | | | | | of size() == 0 Most of these were detected by cppcheck
* Don't crop the channel name if it's too long in Channel::Channel()Gravatar attilamolnar2013-04-211-4/+2
| | | | | | ...and especially don't use the shortened name in one place and the original in another Having different <limits:maxchan> values on the same network is not supported
* Fix exactly <limits:maxchan> long channel names being truncatedGravatar attilamolnar2013-02-111-4/+4
| | | | Fixes #422 reported by @RawrDragon
* Don't send quitting users in RPL_NAMREPLY, fixes desyncing clients who join ↵Gravatar Adam2012-10-311-1/+3
| | | | a channel after a user has quit but before they are culled
* Check if the mask is long enough before accessing it when checking extbansGravatar attilamolnar2012-10-031-1/+1
|
* Fix more undefined behavior caused by referencing the returned buffer by ↵Gravatar attilamolnar2012-09-301-1/+2
| | | | | | std::string::c_str() when the object is temporary See 83c7cc45daf6fb1f8c36f15297a4657e45a34e88
* Change debug message in Invitation::Find() to output expiration time as a ↵Gravatar attilamolnar2012-07-131-1/+1
| | | | string to avoid warnings
* Fix pending invites not being removed when a channel was deleted or had its ↵Gravatar attilamolnar2012-06-171-0/+88
| | | | TS lowered
* Merge pull request #166 from Robby-/insp20-cfgcorrectionsGravatar Robin Burchell2012-05-301-1/+1
|\ | | | | [2.0] Add more documentation about logging, aswell as make text, tab and space corrections to the configs.
| * Add more documentation about logging, aswell as make text, tab and space ↵Gravatar Robby-2012-05-301-1/+1
| | | | | | | | corrections to the configs
* | Fix printf-style WriteAllExcept not obeying serversource parameterGravatar attilamolnar2012-05-291-1/+1
| |
* | Silence the MODE too if a join was silenced by a module not just the JOINGravatar attilamolnar2012-05-291-5/+9
|/ | | | | This leaked information when a module gave privs to the joining user in OnUserPreJoin Fix CycleHostsFromUser having the opposite effect
* Replace copyright headers with headers granting specific authors copyrightGravatar Robby-2012-04-191-8/+20
|
* Fix unused variables reported by the clang static analyzer.Gravatar Peter Powell2012-04-141-1/+0
|
* Fix kick level check to scan all status modes and not skip checks for ↵Gravatar Daniel De Graaf2010-09-301-7/+12
| | | | modeless users
* Fix kicking permisisons - GetPrefixChar returns the prefix, not the mode ↵Gravatar Daniel De Graaf2010-09-281-2/+2
| | | | character
* Prevent kicking people you do not have permission to deprivilegeGravatar Daniel De Graaf2010-08-041-3/+6
|
* Use CycleHostsFromUser for on-join modes too (m_autoop)Gravatar danieldg2010-03-151-2/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12637 e03df62e-2008-0410-955e-edbf42e46eb7
* Make "topiclock" exemption only apply when +t is setGravatar danieldg2010-03-071-6/+7
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12613 e03df62e-2008-0410-955e-edbf42e46eb7
* Restore <options:exemptchanops> with long namesGravatar danieldg2010-02-201-2/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12502 e03df62e-2008-0410-955e-edbf42e46eb7
* Kill m_spy, which was replaced by channels/auspex in 1.2 but kept alive for ↵Gravatar danieldg2010-02-191-16/+7
| | | | | | nostalgia git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12497 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow exemptchanops to modify the channel access level needed to bypass +tGravatar danieldg2010-02-091-7/+7
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12413 e03df62e-2008-0410-955e-edbf42e46eb7
* Don't enforce access control on remote users for topic changesGravatar danieldg2010-02-051-24/+17
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12376 e03df62e-2008-0410-955e-edbf42e46eb7
* Search for correct access level for mode changes, remove hardcoded halfop ↵Gravatar danieldg2010-01-161-1/+1
| | | | | | references git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12265 e03df62e-2008-0410-955e-edbf42e46eb7
* ...because every now and again, i have to do a massive commit.Gravatar brain2010-01-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7
* Disallow adding prefix-mode when it is already set (fixes bug #935)Gravatar danieldg2010-01-091-4/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12245 e03df62e-2008-0410-955e-edbf42e46eb7
* Add ModeHandler* versions of channel mode accessGravatar danieldg2009-11-151-24/+25
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12133 e03df62e-2008-0410-955e-edbf42e46eb7
* Send %#chan messages to all members ranked at least halfop, not just those ↵Gravatar danieldg2009-11-061-5/+5
| | | | | | that have halfop git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12046 e03df62e-2008-0410-955e-edbf42e46eb7
* Get rid of ModePairGravatar danieldg2009-10-241-1/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11963 e03df62e-2008-0410-955e-edbf42e46eb7
* Make User::uuid and User::server constGravatar danieldg2009-10-231-10/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11962 e03df62e-2008-0410-955e-edbf42e46eb7
* Use Config->MaxChans as the default if class does not define maxchansGravatar danieldg2009-10-211-1/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11946 e03df62e-2008-0410-955e-edbf42e46eb7
* Move all local-only fields to LocalUserGravatar danieldg2009-10-211-16/+12
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11944 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix channel deletion on user quit and automatic removal of mode "z"Gravatar danieldg2009-10-201-30/+16
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11934 e03df62e-2008-0410-955e-edbf42e46eb7
* Cull channels, warn when Extensible objects are not culled as they must beGravatar danieldg2009-10-181-32/+27
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11901 e03df62e-2008-0410-955e-edbf42e46eb7
* Get rid of a bunch of memory-wasting C-style stringsGravatar danieldg2009-10-031-9/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11796 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix GetExtBanStatus returning MOD_RES_ALLOW when user does not have a ban ↵Gravatar danieldg2009-09-291-1/+1
| | | | | | exemption git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11778 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove InspIRCd* parameters and fieldsGravatar danieldg2009-09-261-29/+29
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7
* Change match direction of extbans to allow stackingGravatar danieldg2009-09-131-45/+33
| | | | | | | | | | This allows you create stacked bans like: +b m:r:*bot* to mute anyone with bot in their gecos +e S:j:+#staff to allow voices in #staff to use color It also deprecates extban M, which can be implemented using m:R: git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11711 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix GetPrefixChar returning empty if a non-prefix mode was usedGravatar danieldg2009-09-131-14/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11706 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove redundant ServerInstance* fieldsGravatar danieldg2009-09-131-2/+2
| | | | | | | | It has been impossible to have more than one InspIRCd* object in the same address space for some time now, and this feature was never used. This formalizes class InspIRCd as a singleton object. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11703 e03df62e-2008-0410-955e-edbf42e46eb7
* Use FindMode instead of FindPrefix for OnUserPreJoin privs; makes it ↵Gravatar danieldg2009-09-131-2/+2
| | | | | | possible to give +q or +Y on join even without prefix git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11702 e03df62e-2008-0410-955e-edbf42e46eb7