summaryrefslogtreecommitdiff
path: root/src/channels.cpp
AgeCommit message (Collapse)Author
2017-10-07No longer expose c->ci and ci->cAdam
2017-04-20Merge commit '8656b65e392e8d26de218bf372da949c3a00d8d4'Adam
2017-03-19Get rid of relying on if(this) in WhoSends()Adam
2017-01-23Make log system use newer format stringsAdam
Also allow log messages to be translatable
2017-01-16Update copyright to 2017.Robby
This was done with: find docs/ include/ language/ modules/ src/ *.* Config -exec sed -i 's/-20.. Anope Team/-2017 Anope Team/i' {} \; Added missing copyright headers to files that didn't have it yet.
2016-12-22Move log messages for status mode change for unknown user to debugAdam
2016-12-17Split ircdproto send functions out into separate servicesAdam
This makes it easier to see which send functions a protocol module implements as they are all explicitly registered by the module, and avoids the problem of subtly breaking other protocol modules when using inheritance. Also split the old "core" send implementations out into a module, and the TS6 ID generator
2016-12-07Remove C style var args from Channel::KickAdam
2016-12-06Remove many more old C style format strings in the protocol functionsAdam
2016-10-02Also defer channel deletion when processing sjoinsAdam
(cherry picked from commit 79e7c3f98a57b7cffc46d9a7dc250a0e6e25fc98)
2016-07-31Update license headers and copyrights on all source filesAdam
2016-07-28Allow serializable fields to use storage in the respective objects.Adam
Split service management code nito a proper servicemanager. Make service references managed instead of lazy lookup. Also made events and serializable use service manager instead of their respective systems for management
2016-03-19Also defer channel deletion when processing sjoinsAdam
2016-01-28Update copyright to 2016. This was done with:Robby
find include/ src/ lang/ docs/ modules/ *.* Config -exec sed -i 's/-20.. Anope Team/-2014 Anope Team/i' {} \; Added missing copyright headers to files that didn't have it yet. Fixed some whitespace and blank lines along the way.
2015-10-27Merge branch '2.0' into 2.1Adam
2015-09-17Defer channel deletion until after i/o. There are some edge cases with ↵Adam
events kicking users mid-event that can delete them.
2015-09-06Allow configuring modesAdam
2015-09-06Merge pull request #126 from SaberUK/2.0+typosAdam
Fix a ton of typos.
2015-09-06Don't unset modes which have no privilege associated with themAdam
2015-07-13Unset extensibles on larger objects when they destructAdam
Some complex extensibles require the full object to still be alive in their destructors to keep proper bookkeeping
2015-07-08Fix a ton of typos.Peter Powell
2015-01-28More properly track topic change sources and allow users with access to ↵Adam
change topics through topiclock
2015-01-10Always use source name when logging server kicksAdam
2015-01-05Merge branch '2.0' into 2.1Adam
Conflicts: CMakeLists.txt include/modules.h include/serialize.h modules/commands/bs_assign.cpp modules/commands/bs_badwords.cpp modules/commands/bs_bot.cpp modules/commands/bs_control.cpp modules/commands/bs_kick.cpp modules/commands/cs_access.cpp modules/commands/cs_akick.cpp modules/commands/cs_drop.cpp modules/commands/cs_entrymsg.cpp modules/commands/cs_flags.cpp modules/commands/cs_info.cpp modules/commands/cs_invite.cpp modules/commands/cs_kick.cpp modules/commands/cs_mode.cpp modules/commands/cs_register.cpp modules/commands/cs_seen.cpp modules/commands/cs_set.cpp modules/commands/cs_suspend.cpp modules/commands/cs_topic.cpp modules/commands/cs_unban.cpp modules/commands/cs_xop.cpp modules/commands/hs_del.cpp modules/commands/hs_list.cpp modules/commands/hs_request.cpp modules/commands/ms_ignore.cpp modules/commands/ms_send.cpp modules/commands/ns_recover.cpp modules/commands/ns_register.cpp modules/commands/ns_suspend.cpp modules/commands/os_dns.cpp modules/commands/os_noop.cpp modules/commands/os_oper.cpp modules/commands/os_session.cpp modules/database/db_sql_live.cpp modules/encryption/enc_bcrypt.cpp modules/extra/m_ldap_authentication.cpp modules/extra/m_ldap_oper.cpp modules/fantasy.cpp modules/m_dnsbl.cpp modules/m_sasl.cpp modules/protocol/hybrid.cpp modules/protocol/inspircd20.cpp modules/protocol/unreal.cpp modules/pseudoclients/chanserv.cpp modules/pseudoclients/nickserv.cpp modules/webcpanel/pages/chanserv/access.cpp modules/webcpanel/webcpanel.cpp modules/webcpanel/webcpanel.h src/command.cpp src/messages.cpp src/modulemanager.cpp src/regchannel.cpp src/serialize.cpp
2014-08-24Change Channel::GetModeList to return a copy of the mode list, not aAdam
pair of lower/upper bound iterators. Sometimes when iterating the list, like in cs_mode, we can modify the contents of it, which combined with mlock always agressively trying to readd modes to it can do bad things.
2014-07-15Check modetimes in CheckModes before enabling bouncy modesAdam
2014-06-23Merge branch '2.0' into 2.1Adam
Conflicts: cmake/Anope.cmake cmake/FindGettext.cmake include/access.h include/messages.h include/modes.h include/modules.h include/users.h modules/CMakeLists.txt modules/commands/bs_bot.cpp modules/commands/cs_access.cpp modules/commands/cs_ban.cpp modules/commands/cs_clone.cpp modules/commands/cs_flags.cpp modules/commands/cs_info.cpp modules/commands/cs_list.cpp modules/commands/cs_log.cpp modules/commands/cs_mode.cpp modules/commands/cs_status.cpp modules/commands/cs_suspend.cpp modules/commands/cs_updown.cpp modules/commands/cs_xop.cpp modules/commands/ms_check.cpp modules/commands/ns_access.cpp modules/commands/ns_cert.cpp modules/commands/ns_group.cpp modules/commands/ns_register.cpp modules/commands/ns_set.cpp modules/commands/ns_suspend.cpp modules/commands/os_session.cpp modules/commands/os_svs.cpp modules/extra/m_ldap_authentication.cpp modules/extra/m_regex_pcre.cpp modules/extra/m_sql_authentication.cpp modules/extra/stats/m_chanstats.cpp modules/protocol/bahamut.cpp modules/protocol/hybrid.cpp modules/protocol/inspircd12.cpp modules/protocol/inspircd20.cpp modules/protocol/unreal.cpp modules/pseudoclients/chanserv.cpp modules/pseudoclients/chanserv/channel.cpp modules/pseudoclients/nickserv/nickserv.cpp modules/webcpanel/pages/chanserv/access.cpp src/access.cpp src/bots.cpp src/channels.cpp src/language.cpp src/modes.cpp src/modulemanager.cpp src/process.cpp src/users.cpp src/version.sh
2014-06-23Mostly working language string rewrite with new format stringsAdam
2014-05-28Move most of the core pseudoclient logic to modulesAdam
2014-05-13Sanitize nuh masks more to prevent the other side from rewriting them, which ↵Adam
screws with our internal tracking of them
2014-04-25Add "virtual mode" supportAdam
This allows fully tracking extbans and other modes set by a different underlying mode, such as InspIRCd's namedmodes Add two configuration options to cs_ban to configure which mode is set and whether or not to kick banned users. Add default "mute" fantasy command to botserv.example.conf
2014-04-21Constify message source for OnChannelMode(Un)SetAdam
2014-04-20New event systemAdam
2014-03-20Make bouncymodes harder to trigger by only bumping server modcount when ↵Adam
something changes
2014-03-14Mark all channels as syncing when we connect to our uplink. They willAdam
finish syncing later when the uplink syncs. Normally the channel state is fully synced here anyway, except if we do not know the modes the uplink has yet. Also fix a related issue with resetting chanels and bouncing modes on our clients, if this is done prior to knowing which modes exist it would silently fail.
2014-03-04Fix 2 crashes from removing the permanent channel mode from channels which ↵Adam
do not exist
2014-02-27Do not take modes from users in channels with secureops off if we are always ↵Adam
lowering channels timestamps to their creations
2014-02-14Do not sync channels in Channel::Reset if they are in the middle of syncing, ↵Adam
and checkmodes in Channel::Sync. Fixes channel modes sometimes not being set if always_lower_ts is on
2014-02-09Add an opertype priv "protected" to not allow services to kick a user.Adam
Also classify ulines as protected
2014-01-01Update copyright to 2014. This was done with:Adam
find include/ src/ lang/ docs/ modules/ *.* Config -exec sed -i 's/-20.. Anope Team/-2014 Anope Team/i' {} \;
2013-11-16Use the source's sync state and not mine when processing sjoins to determine ↵Adam
whether or not to sync the channel on creation, instead sync it when the server syncs.
2013-11-01Don't take modes in SetCorrectModes if the user has the ME privilegeAdam
2013-09-03Dont allow multiple list modes with the same param on the mode list at onceAdam
2013-08-25Fix not resetting channel status modes on our clients when a channel ts lowersAdam
2013-08-25Create persistent channels on startup, which used to work and got lost somewhereAdam
Fix some oddities with using persistent channels with no botserv Send list modes to uplink when bursting Fix issues with persist + keepmodes Fix /os modes clear all not clearing all status modes Fix operwall on ratbox/plexus Dont apply mlock in SetCorrectModes since that just recursively calls itself unncessarially Change command logging to show the command name and not the service name
2013-08-22Fix previous commitAdam
2013-08-22Always set +o on users who have access for it, even if higher modes have a ↵Adam
prefix
2013-08-01Use MessageSource as the source for many IRCDProto funcsAdam
Keep track of what user modes are oper only/server only/etc
2013-07-20Fix not setting the correct compile flags on modules and fix the resulting ↵Adam
warnings
2013-07-01Change extensible keys to require explicitly having a type defined for it. ↵Adam
Completely modularize more features like bs_kick, entrymsg, log, mode, etc. Move fantasy to its own module. Move greet to its own module.