summaryrefslogtreecommitdiff
path: root/src/modes.cpp
AgeCommit message (Collapse)Author
2010-10-02Set the botmodes on bots in the log channel(s) when using ircds that have ↵Adam
dynamic modes
2010-09-16Fixed many bugs and crashesAdam
2010-08-28Properly store our clients internal channel status's and burst them if needed.Adam
Also made Flag::HasFlag use test() instead of operator[] to catch errors, and fixed an out of bounds access to a Flags bitset causing crashes on some systems.
2010-08-27Added a new logging systemAdam
2010-08-22Added a classbase for the major classes, makes dynamic_reference ↵Adam
invalidation really work. This also cleans up a bit of the code in the modestacker.
2010-08-21Made Anope keep track of channels its clients are in if it splits from its ↵Adam
uplink, then burst them back to its uplink once connection is reestablished. Also made Anope use TS enforcement to change persistant channels creation time to the time they were registered.
2010-08-17Rewrote the config reader to better handle invalid configs.Adam
This prevents Anope from exploding when /os reload has errors.
2010-07-30Some more slight cleanups, this time in modes.cpp and module.cpp.Naram Qashat
2010-07-29Added support for tracking inspircd2.0 usermode +Q and cahnged the Flags ↵Adam
bitsets for modes to not use a max defined value, it can go over
2010-07-27Added debug_cast which uses dynamic_cast on debug builds, and static_cast on ↵Adam
release builds
2010-07-26Trying to make things a little more const-safe, a work in progress but this ↵Naram Qashat
is a bit better.
2010-07-25Epic commit to replace most of the strings in Anope with a single ↵Naram Qashat
Anope::string class, plus some other little fixes here and there. If you follow 1.9.x development and are testing things, THIS is one of those things that NEEDS testing.
2010-06-27Made Anope track its own clients internally as if they were real usersAdam
2010-06-26Made the flags class take an optional size argAdam
2010-06-26Added support for InspIRCd 2.0s dynamic modes.Adam
Note that this changes the maximum length of an acceptable IRC message from 512 to 1024 because InspIRCd sends messages longer than 512 characters.
2010-06-20The first of a few "CBX OCDing over code style" commits, focusing on ↵Naram Qashat
include/* and src/* but not src/core/* or src/modules/*.
2010-06-18Store modes in users and channels using the Flags class, cleanerAdam
2010-06-18Store a plaintext version of mode names in the mode structures, removes alot ↵Adam
of unneeded code from db_plain/db_mysql.
2010-06-18Removed all references to $, git has no svn keywordsAdam
2010-06-18Fixed some problems with the mode stacker from svn to git mergeAdam
2010-06-18Merge svn with gitCharles
2010-06-16Minor edits to fix compile errors/warnings with clang and a small compile ↵cyberbotx
warning under Windows (gotta work on the other 450+ Windows warnings sometime). git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@3006 5417fbe8-f217-4b02-8779-1006273d7864
2010-06-16Replaced some spaces with tabs in unreal32.c, os_defcon.c, and modes.cppAdam
2010-04-09Fixed tracking of InspIRCd mode +J and fixed mode manager and stacker to ↵Adam-
handle parameter modes correctly git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2879 5417fbe8-f217-4b02-8779-1006273d7864
2010-04-09Removed the OnFind events, they are not necessary anymore and just waste CPUAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2872 5417fbe8-f217-4b02-8779-1006273d7864
2010-04-09Made the mode stacker never send a mode change for something that is already ↵Adam-
(un)set, and set -r when dropping channels git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2868 5417fbe8-f217-4b02-8779-1006273d7864
2010-02-12Added generic support for unknown modes told to Anope at runtime by the IRCdAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2790 5417fbe8-f217-4b02-8779-1006273d7864
2010-02-10Changed up a small part of the mode API for preparation for dynamic mode ↵Adam-
support at runtime git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2789 5417fbe8-f217-4b02-8779-1006273d7864
2010-02-06Recieve the max number of modes we can set at once from the IRCd and use itAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2783 5417fbe8-f217-4b02-8779-1006273d7864
2010-02-06Remove protectbotserv option from modes, just use options:botmodes insteadAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2782 5417fbe8-f217-4b02-8779-1006273d7864
2010-02-02Added options:botmodes to configure what modes BotServ bots should use in ↵Adam-
channels git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2778 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-31replaced the alog() command with a new type-safe and stream-based Alog()DukePyrolator
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2777 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-21Rewrote how Anope stores channel status modes on users.Adam-
This allows 3rd party modules to add and track their own status mode. Additionally we now store a users status in both the UserContainer and ChannelContainer. This also fixes the ModeStacker to not send any mode strings unnecessarially and shuffles some code around so we don't have to manually remove channels from users lists everywhere. git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2775 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-16Removed c_userlist and u_chanlist, replaced with std::listAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2764 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-14Burned do_sjoin and rewrote it to be sane. This changes how Anope handles ↵Adam-
new channel creations drasitcally as we now truely track it all instead of hack around it by not initially tracking user joins to new channels git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2755 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-11updated copyright info for 2010pimpmylinux
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2753 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-06Fix crash caused by trying to add an akick to a channel when certain types ↵Adam-
of exceptions are set, this also fixes entry_match to match with case insensitivity, as bans/excepts/invexs arent case sensitive git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2738 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-04Removed NICKMAX and CHANMAX, replaced user->nick, c->name, and ci->name with ↵Adam-
std::string git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2732 5417fbe8-f217-4b02-8779-1006273d7864
2009-12-23Replaced some static_casts related to modes with dynamic_cast - its a bit saferAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2715 5417fbe8-f217-4b02-8779-1006273d7864
2009-12-17Added BotInfo* sender arg to all of the User mode functions, changed ↵Adam-
IRcdProto::SendMode for channels to accept a Channel pointer and fixed unsetting users vhosts on Unreal git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2710 5417fbe8-f217-4b02-8779-1006273d7864
2009-12-13Added in a modestacker and rewrote almost all of the remaining old mode codeAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2696 5417fbe8-f217-4b02-8779-1006273d7864
2009-12-05Added options:mlock in the config so you can set what modes should be locked ↵Adam-
on new channels git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2690 5417fbe8-f217-4b02-8779-1006273d7864
2009-11-28Massive move of all of the Config variables out of global scope to the ↵Adam-
Config class git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2674 5417fbe8-f217-4b02-8779-1006273d7864
2009-10-30Rewrote all of the defcon code, and moved most of it to os_defcon. This ↵Adam-
fixes defcon to have the ability to use modes introduced to Anope at a later time than on startup (eg, from the IRCd), amongst other things git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2597 5417fbe8-f217-4b02-8779-1006273d7864
2009-10-30Added I_OnPreUserConnect, I_OnUserModeAdd, and I_OnUserModeAdd eventsAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2596 5417fbe8-f217-4b02-8779-1006273d7864
2009-10-27Rewrote part of chan_set_correct_modes and set Mode::ModeChar correctlyAdam-
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2590 5417fbe8-f217-4b02-8779-1006273d7864
2009-10-17dos2unix on files.cyberbotx
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2568 5417fbe8-f217-4b02-8779-1006273d7864
2009-10-13Complete rewrite of everything associated with modes, this breaks saving and ↵Adam-
reading mlocked modes from the databases until the new databases are implemented git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2560 5417fbe8-f217-4b02-8779-1006273d7864