7130 Commits

Author SHA1 Message Date
brain
b94c45340e Roadmap item "Fix jointhrottle to not try 'throttle' clients during a netmerge (requires changing join event to be aware of netmerge?)" -- 1.2 only
requires an extra parameter to OnUserJoin, bool sync. usually false, but FJOIN code during burst sets it to true.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8552 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-09 21:51:48 +00:00
brain
c708d7a3c0 Same here, fix some minor memory leaks noticed by w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8551 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-09 17:18:19 +00:00
brain
90063fd921 We should probably UseInterface last, too
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8549 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-09 17:06:26 +00:00
brain
ae821d38d9 Theres actually more to this. Before we throw, delete cu (the destructor WONT be called if we throw from a constructor, we must do this tidyup ourselves)
And move some other throws below OnRehash call


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8548 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-09 17:05:42 +00:00
brain
12923aae21 Same fix here
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8547 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-09 17:04:17 +00:00
brain
91a3d1324b Rehash method added which frees unused memory from the hash_map. Has a delete-safe iterator. see comments.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8542 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-05 19:52:16 +00:00
brain
477681996b Why the hell the includes are half way down the damn file in modules.h is beyond me. lets fix this.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8541 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 23:33:40 +00:00
w00t
2cbafb754a BanCache: Add a negative hit for an IP address upon FullConnect.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8540 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 23:15:26 +00:00
brain
99e5c4d39f Fix the FIXME related to new module event and loading stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8539 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 23:07:27 +00:00
w00t
880ae2dab1 Integrate K/Gline into the bancache system by making some modifications to DefaultApply method. This means any type of XLine that uses DefaultApply can hook into the bancache system and add positive hits quickly and easily with no modification, which is neat.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8538 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 23:04:47 +00:00
brain
cd44daa962 On failure to load a module, DetachAll on the module pointer, also, try to free module handle
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8537 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 22:58:40 +00:00
brain
53afaa7cad Remove Implements() method from every module. booya.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8536 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 22:51:22 +00:00
brain
6f1b91fb14 wtf at the line endings in this bag of spanners
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8535 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 22:43:11 +00:00
brain
198cc96a62 And whoops, typo
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8534 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 22:16:30 +00:00
brain
6fa2633311 Fix these to use new hook system (u_listmode wasnt fixed yet)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8533 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 22:15:46 +00:00
brain
71b7b578bd Get rid of global_implementation[] and implement_lists[] from here
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8532 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 22:07:36 +00:00
brain
a3b4110d51 Instead of a vector of vectors, use an array of vectors as in the original spec on Development/Hooking.
This is faster, as only the inner list resizes, and this avoids calls to std::vector::operator[]


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8531 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 21:57:27 +00:00
brain
fe54be35fc Remove debug junk from ModuleManager::SetPriority
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8530 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 21:29:01 +00:00
brain
5c4b7d3003 Somehow, we missed one
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8529 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 21:26:24 +00:00
brain
59c6dc9853 Fix non-POD passing
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8528 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 21:25:29 +00:00
brain
12b9855339 Honking huge commit. Removal of DELETE() template that never worked right anyway
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8527 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 21:24:40 +00:00
brain
38d5fd9b40 Comments
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8526 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 21:19:29 +00:00
brain
5b58824b6c Aaaand, the rest of it
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8525 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 21:10:44 +00:00
brain
ad9715ffd1 MODERR tidyups
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8524 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 21:07:54 +00:00
brain
c930256639 Fix the two FIXMEs
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8521 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 20:19:25 +00:00
brain
d2858a7fef Remove some now redundant if (!empty) checks in FOREACH_MOD
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8520 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 20:10:20 +00:00
brain
051aa21ed3 Comments
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8519 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 20:02:03 +00:00
brain
17137ac101 Change this, risking a crash otherwise
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8518 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 19:53:58 +00:00
brain
d6a3643a4b Remove no longer required typedef
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8517 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 19:52:41 +00:00
brain
43d2d6ec89 Comment all the new stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8516 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 19:49:36 +00:00
brain
cc1413d350 Some more to fix still, modules probably wont load correctly atm
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8515 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 19:35:34 +00:00
brain
e1efa862f3 Not yet tested: remove last vestiges of modules[] and module_names[] arrays.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8514 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 19:28:22 +00:00
brain
7fe5347210 Remove our vectors of Module*/ircd_module*, replace with a map of std::pair<ircd_module*, Module*>
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8513 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 19:12:55 +00:00
brain
8923de4c4f All done... i think. Just tidying up to be done, removal of Implements() method from all modules.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8511 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 18:37:14 +00:00
brain
cadc11999e Convert all to new Attach() system. The Implements() method needs removing from all modules as it is dead weight.
WARNING: there are segfaults here! HERE BE DRAGONS, i am not finished!


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8510 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 18:30:43 +00:00
brain
c08446c3ab Extra debug logging
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8509 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 17:12:00 +00:00
brain
6fe38c14c1 This compiles, but note most modules are currently broken, they dont Attach()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8508 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:55:45 +00:00
brain
9b131bef32 More craq
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8507 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:50:50 +00:00
brain
f6bd92ab87 Again
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8506 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:38:14 +00:00
brain
aaf4373299 Another too
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8505 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:35:34 +00:00
brain
b65abfdc1a Another
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8504 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:33:54 +00:00
brain
91876870c8 For now, just fix the Priority Prioritize(). We might be able to do the rest with a perl script
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8503 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:32:18 +00:00
brain
419f45ad54 Whoops and make it valid
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8502 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:27:24 +00:00
brain
25df845b90 Fix this one too
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8501 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:26:46 +00:00
brain
2282f5c9f5 Fix this to compile
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8500 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:24:43 +00:00
brain
02ce802257 Bring back Prioritize (needs to occur after module load) with a different declaration
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8499 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 16:23:06 +00:00
brain
2facf72164 Next part of Development/Hooking (see wiki)
Module::Prioritize and Module::Implements are now GONE.
ModuleManager::MoveTo, MoveBefore, MoveAfter, MoveFirst, MoveLast are GONE too.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8498 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 15:39:06 +00:00
brain
bf44023d11 Development/Hooking in full swing now: WARNING, this will break ALL modules for the time being until complete!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8497 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 15:29:49 +00:00
brain
c0abad9948 Add EventHandlers structure for Development/Hooking
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8496 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 15:06:21 +00:00
brain
7ae7ccb556 Avoid code duplication, just call XLine::Apply() rather than retyping all that moronbanner stuff each time
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8494 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04 14:18:42 +00:00