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