1
0
mirror of https://github.com/anope/anope.git synced 2026-06-24 18:46:37 +02:00
Commit Graph

73 Commits

Author SHA1 Message Date
Adam c4da496834 Copy modules to the runtime directory in one big read/write if we can instead of this 1 byte at a time thing, significantly improves startup loading time. 2011-08-08 00:32:09 -04:00
Adam f858164dee Rewrote how commands are handled within Anope.
This allows naming commands and having spaces within command names.
2011-07-14 02:31:12 -04:00
Adam 115f94bfc2 Made Anope able to process normally when disconnected from the uplink and not sleep(), enable usage of non-blocking connect() and default all sockets to non blocking mode. Some cleanup to m_ssl and some cleanup to main.cpp. 2011-05-21 04:57:27 -04:00
Adam 583954d3a1 Use module type to determine what type each module is instead of its location in the configuration file. 2011-05-16 04:09:32 -04:00
Adam 284af258bf Added more useful functions to our LDAP API, allow adding newly registered accounts to LDAP, removed some unnecessary OnPre events and fixed unloading all modules 2011-05-16 04:09:07 -04:00
Adam 076ebafa1b Moved some global functions to be member functions and misc cleanup 2011-05-16 04:07:56 -04:00
DukePyrolator 3fbf39b25d Added some useful Anope::Version functions to prevent some files from unnecessarily rebuilding on every make 2011-03-13 03:42:30 -04:00
Adam c83b2b73d7 Much more work on the live SQL. Should work pretty decently now under heavy load. 2011-02-20 01:05:16 -05:00
Adam 90f0a7c92a Added os_modreload. Also allow unloading database and encryption modules since there isn't a reason we cant allow reloading them. Soon os_modreload will allow reloading the protocol modules. 2010-10-02 21:09:11 -04:00
Adam 0a8bb88085 Made OperServ and Global optional 2010-10-02 03:08:29 -04:00
Adam 5d9df2bdc1 Revert "Do not use new/delete to allocate modules, allows modules to always destruct properly and automatically"
This does not work as expected, it causes objects allocated by modules to be freed by the operating system when
the module is unloaded, giving no chance to the module to deallocate it itself.

This reverts commit 05e6815d91.
2010-10-01 20:24:25 -04:00
Adam d646d455e2 Changed the language system to use gettext 2010-09-26 02:33:01 -04:00
Adam 05e6815d91 Do not use new/delete to allocate modules, allows modules to always destruct properly and automatically 2010-09-22 14:56:43 -04:00
Adam 227909e2cf Rejig of some of the socket stuff. Fixed marking sockets as nonblocking on Windows. Added in a LastError function to keep having to use strerror/GetLastError everywhere. 2010-09-17 19:20:07 -04:00
Adam e7ac33fd62 Cleanup DNS requests when modules are unloaded, fixes unloading m_dnsbl during the middle of queries 2010-09-14 18:24:14 -04:00
Adam c2ddecc2b1 Added a new logging system 2010-08-27 20:56:28 -04:00
Adam ada65a3baf Added a classbase for the major classes, makes dynamic_reference invalidation really work.
This also cleans up a bit of the code in the modestacker.
2010-08-22 00:34:02 -04:00
Adam b180d5f975 Always unload socketengines/database/protocl etc modules last, and fixed a potential crash in m_mysql when unloading when not in GDB 2010-08-17 22:19:36 -04:00
Adam e65d8b2f3d Rewrote the config reader to better handle invalid configs.
This prevents Anope from exploding when /os reload has errors.
2010-08-17 19:27:37 -04:00
Adam a950ed8cab Rewrote the MySQL API to use threads. This acts similar to before, but is faster. Removed db_mysql_execute for now. 2010-08-15 01:45:38 -04:00
Naram Qashat 7a7b8933bb Cleanup in modulemanager.cpp, make it so CMake only includes the -fno-leading-underscore flag on a GNU compiler, changed the hash compare functions to use struct to appease clang, and made it so hashcomp.h uses tr1/unordered_map with g++ 4.x or up. 2010-07-30 19:24:41 -04:00
Adam d4048134af Some windows fixes from the Anope::string commit 2010-07-27 02:03:10 -04:00
Naram Qashat 57bb759305 Trying to make things a little more const-safe, a work in progress but this is a bit better. 2010-07-26 23:32:03 -04:00
Naram Qashat aa2c1009ee Removed std::string and ci::string versions of LoadModuleList, we only need the Anope::string version now. 2010-07-26 00:20:00 -04:00
Naram Qashat ae38212c1c Epic commit to replace most of the strings in Anope with a single 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-07-25 21:58:20 -04:00
Naram Qashat de1bf10690 Missed OCDing over src/protocol/*, plus fixed a minor lack of braces and fixed Config to work in an out-of-source build. 2010-06-29 08:21:20 -04:00
Adam 16854ae793 Fixed a few Windows problems with cleaning out the runtime directory 2010-06-21 00:02:57 -04:00
Adam 17040c088a Store modules in a list and xlines in a vector, not deques. We need to be able to keep iterators valid. 2010-06-20 21:33:01 -04:00
Naram Qashat 381c9c8870 The first of a few "CBX OCDing over code style" commits, focusing on include/* and src/* but not src/core/* or src/modules/*. 2010-06-20 18:42:58 -04:00
Adam f049124905 Rewrote the hashing system to use std::tr1::unordered_map 2010-06-18 21:01:53 -04:00
Adam 5d437d9ab5 Renamed the init_module function to AnopeInit - Some systems have an init_module function outside of Anope which causes a crash if you try to load a non-Anope module 2010-06-18 20:58:55 -04:00
Adam c4b725b2e1 Removed all references to $, git has no svn keywords 2010-06-18 18:39:30 -04:00
Adam- dc3744a71c Check if a module file exists before making runtime copy of it, keeps 0 byte sized unused modules out of the runtime/ directory
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2984 5417fbe8-f217-4b02-8779-1006273d7864
2010-05-25 20:21:54 +00:00
Adam- 235c4ae95c Rewrote part of the Timer and CallBack code for modules to be sane
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2795 5417fbe8-f217-4b02-8779-1006273d7864
2010-02-25 06:20:00 +00:00
DukePyrolator aa4b3e2563 replaced the alog() command with a new type-safe and stream-based Alog()
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2777 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-31 06:15:29 +00:00
Adam- 2708eea5d1 Removed NICKMAX and CHANMAX, replaced user->nick, c->name, and ci->name with std::string
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2732 5417fbe8-f217-4b02-8779-1006273d7864
2010-01-04 05:45:58 +00:00
Adam- 657e1deb59 Added in new plaintext databases. Note: This currently has no automatic backup feature. Big thanks to Phil on this for mass scale testing
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2722 5417fbe8-f217-4b02-8779-1006273d7864
2009-12-31 01:25:10 +00:00
Adam- c6e3324b30 Made many of the functions in IRCDProto accept the relative object pointers instea of char* everywhere, and updated TODO
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2706 5417fbe8-f217-4b02-8779-1006273d7864
2009-12-16 02:25:38 +00:00
Adam- a08b3ec592 Massive move of all of the Config variables out of global scope to the Config class
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2674 5417fbe8-f217-4b02-8779-1006273d7864
2009-11-28 23:02:07 +00:00
cyberbotx e10fe1cd76 Removed some unnecessary casts, used C++-style casts over C-style casts, fixed a few warnings (one possibly fatal one).
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2655 5417fbe8-f217-4b02-8779-1006273d7864
2009-11-17 04:04:24 +00:00
Adam- d82771900e Made the 'Module compiled against current version of Anope' message debug only
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2652 5417fbe8-f217-4b02-8779-1006273d7864
2009-11-16 02:38:46 +00:00
Adam- 1c1312624d Rewrote BuildStringList to use std::list instead of char**
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2632 5417fbe8-f217-4b02-8779-1006273d7864
2009-11-08 18:00:54 +00:00
DukePyrolator 9a0b1efc24 added a way to load multiple encryption modules at the same and to switch between encryption methods
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2602 5417fbe8-f217-4b02-8779-1006273d7864
2009-11-02 05:22:35 +00:00
cyberbotx 0b3824c86a Apply some changes based on possible "flaws" found with flawfinder.
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2574 5417fbe8-f217-4b02-8779-1006273d7864
2009-10-20 04:34:03 +00:00
Adam- 777c6cf073 Added OnPostDatabaseLoad event, which triggers after the cores databases have been loaded AND immediatly after a module is loaded *if* the core has already been loaded
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2552 5417fbe8-f217-4b02-8779-1006273d7864
2009-10-11 15:31:34 +00:00
Adam- dc4b9afebb Properly remove old callbacks from modules internal list of callbacks list, and cleaned up some of the timers code
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2524 5417fbe8-f217-4b02-8779-1006273d7864
2009-10-02 22:19:19 +00:00
Adam- f572827157 Removed old mod_version system for detecting module versions and replaced with the Module::GetVersion() function
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2521 5417fbe8-f217-4b02-8779-1006273d7864
2009-09-27 21:20:56 +00:00
Adam- de7b668ad1 Removed the file name arg from MODULE_INIT
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2510 5417fbe8-f217-4b02-8779-1006273d7864
2009-09-20 00:40:14 +00:00
adam- 6b5786aa37 Changed module callbacks to use new Timer API
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2338 5417fbe8-f217-4b02-8779-1006273d7864
2009-06-26 20:01:26 +00:00
cyberbotx fdfc12f398 Detach all module hooks when a module is unloaded, patch from DukePyrolator, thanks for spotting this!
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2225 5417fbe8-f217-4b02-8779-1006273d7864
2009-03-30 18:27:01 +00:00