summaryrefslogtreecommitdiff
path: root/src/channels.cpp
AgeCommit message (Collapse)Author
2013-08-04Change the syntax of FOREACH macros to be less dumb.Adam
2013-07-19Replace hardcoded mode letters, part 3attilamolnar
This changes most remaining User::IsModeSet() calls to use ModeReferences for modes that were created by other modules or the core
2013-07-19Replace hardcoded mode letters, part 2attilamolnar
This changes all remaining Channel::IsModeSet() and Channel::GetModeParameter() calls to use ModeReferences for modes that were created by other modules or the core
2013-07-19Seperate ModeReference into ChanModeReference and UserModeReferenceattilamolnar
2013-07-04Remove $Core and $Mod* comments apart from $ModDep.Peter Powell
2013-07-01Replace hardcoded mode letters passed to IsModeSet() and GetModeParameter() ↵attilamolnar
with ModeHandlers, part 1
2013-07-01Fix a few oversightsattilamolnar
This partially reverts e0cb6bd46fb1d804ad6adea5688c844f7e1a0f6f
2013-06-16Always set the topic in Channel::SetTopic(), move access checks into cmd_topicattilamolnar
2013-06-13Call Channel::SetModeParam() from the mode parser when needed instead of ↵attilamolnar
requiring mode handlers to do it
2013-06-04Refactor Channel::UserList() to use std::stringattilamolnar
2013-06-04Remove the now unused Channel::RemoveAllPrefixes() and CountInvisible()attilamolnar
2013-06-04Reduce User* -> Membership* lookups on part and kickattilamolnar
2013-06-04Channel::KickUser() and cmd_kick changesattilamolnar
- Remove uline checks from KickUser() - Disallow the kick if done by a local user and the victim is ulined in cmd_kick - Remove call to RemoveAllPrefixes() as it has no additional effect, the Membership object containing the prefixes is destroyed soon after the call
2013-06-04Remove NULL checks from various Channel functionsattilamolnar
Passing NULL to these functions are not permitted and must be avoided by the caller
2013-06-02Move a few trivial functions into headersattilamolnar
2013-05-18Replaced vsnprintf with VAFORMAT pretty much everywhere.Daniel Vassdal
2013-05-16Remove unused variables, avoid copies where possible, check empty() instead ↵attilamolnar
of size() == 0 Most of these were detected by cppcheck
2013-05-16Get rid of strlcpy(), strlcat(), charlcat() and charremove()attilamolnar
2013-05-15Replace some C-isms with C++-isms.Peter Powell
* 'const char*' to 'const std::string&'. * snprintf to std::string concatenation. * Replace duplicated OneOfMatches with InspIRCd::MatchMask.
2013-04-28Merge insp20attilamolnar
2013-04-21Don't crop the channel name if it's too long in Channel::Channel()attilamolnar
...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
2013-04-13Channel::JoinUser() and Channel::ForceChan() changesattilamolnar
Convert static Channel::ForceChan() to non-static Channel::ForceJoin() that joins a user to a channel, no permission checks The (static) Channel::JoinUser() now has a LocalUser parameter, and no longer have TS and bursting parameters. If the channel doesn't exist, it is created using current time as TS
2013-04-13OnUserPreJoin is a local-only hook, change User* parameter to LocalUser*attilamolnar
2013-04-13Remove the deprecated invite APIattilamolnar
2013-04-12Add LOG_ prefix to the log level enum values.Peter Powell
2013-04-08Migrate u_listmode.h into the core, change +b to use itattilamolnar
2013-04-01Change channel name parameter of Module::OnUserPreJoin() and ↵attilamolnar
Channel::JoinUser() to std::string from char*
2013-02-11Fix exactly <limits:maxchan> long channel names being truncatedattilamolnar
Fixes #422 reported by @RawrDragon
2012-10-31Don't send quitting users in RPL_NAMREPLY, fixes desyncing clients who join ↵Adam
a channel after a user has quit but before they are culled
2012-10-03Check if the mask is long enough before accessing it when checking extbansattilamolnar
2012-09-30Fix more undefined behavior caused by referencing the returned buffer by ↵attilamolnar
std::string::c_str() when the object is temporary See 83c7cc45daf6fb1f8c36f15297a4657e45a34e88
2012-07-13Change debug message in Invitation::Find() to output expiration time as a ↵attilamolnar
string to avoid warnings
2012-06-17Fix pending invites not being removed when a channel was deleted or had its ↵attilamolnar
TS lowered
2012-05-30Merge pull request #166 from Robby-/insp20-cfgcorrectionsRobin Burchell
[2.0] Add more documentation about logging, aswell as make text, tab and space corrections to the configs.
2012-05-30Add more documentation about logging, aswell as make text, tab and space ↵Robby-
corrections to the configs
2012-05-29Fix printf-style WriteAllExcept not obeying serversource parameterattilamolnar
2012-05-29Silence the MODE too if a join was silenced by a module not just the JOINattilamolnar
This leaked information when a module gave privs to the joining user in OnUserPreJoin Fix CycleHostsFromUser having the opposite effect
2012-04-19Replace copyright headers with headers granting specific authors copyrightRobby-
2012-04-14Fix unused variables reported by the clang static analyzer.Peter Powell
2010-09-30Fix kick level check to scan all status modes and not skip checks for ↵Daniel De Graaf
modeless users
2010-09-28Fix kicking permisisons - GetPrefixChar returns the prefix, not the mode ↵Daniel De Graaf
character
2010-08-04Prevent kicking people you do not have permission to deprivilegeDaniel De Graaf
2010-03-15Use CycleHostsFromUser for on-join modes too (m_autoop)danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12637 e03df62e-2008-0410-955e-edbf42e46eb7
2010-03-07Make "topiclock" exemption only apply when +t is setdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12613 e03df62e-2008-0410-955e-edbf42e46eb7
2010-02-20Restore <options:exemptchanops> with long namesdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12502 e03df62e-2008-0410-955e-edbf42e46eb7
2010-02-19Kill m_spy, which was replaced by channels/auspex in 1.2 but kept alive for ↵danieldg
nostalgia git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12497 e03df62e-2008-0410-955e-edbf42e46eb7
2010-02-09Allow exemptchanops to modify the channel access level needed to bypass +tdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12413 e03df62e-2008-0410-955e-edbf42e46eb7
2010-02-05Don't enforce access control on remote users for topic changesdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12376 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-16Search for correct access level for mode changes, remove hardcoded halfop ↵danieldg
references git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12265 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-11...because every now and again, i have to do a massive commit.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7