1121 Commits

Author SHA1 Message Date
brain
034f74a23b Add support for OnWhoisLine, which allows modules to change or drop any line of whois before its sent to a user
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5570 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-28 18:12:45 +00:00
brain
3552971818 Needs more testing but seems to work: In DoBackgroundUserStuff(), calculate the time value of when we actually do need enter the function body again, and dont run function body again till that time
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5568 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-28 17:19:55 +00:00
brain
a02baa51d3 Fix unloading of modules that use u_listmode
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5533 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-23 16:28:54 +00:00
brain
4a4443c79b banexception, chanfilter, inviteexception: use modestacker to stack modes when the module is unloaded.
This results in e.g. one line of -gggggg rather than 6 lines of -g. NEEDS TESTING.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5532 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-23 12:10:58 +00:00
brain
08b8c64bb6 Change around some dns stuff (dont use this yet)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5522 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-22 15:58:13 +00:00
brain
70f589ea40 Call OnError when timing out
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5520 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-22 15:18:16 +00:00
brain
defbe5dc22 Make clever use of modestacker
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5516 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-22 13:57:56 +00:00
brain
8db7db4376 Make +beIgqa be sent multiple per line, rather than one per line, using modestacker and stringjoiner.
This cuts down server to server traffic a *lot*.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5515 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-22 13:47:55 +00:00
brain
bc69a6264e Multiply API_VERSION by ten if IPV6 is defined, to prevent modules built for an ipv6 insp being loaded into an ipv4 insp (the sizes of structs such as userrec and inspsocket are different when ipv6 is enabled)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5486 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-16 21:27:02 +00:00
special
fad82c2e0d Replaced operonlystats with userstats to improve security
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5456 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-07 21:11:50 +00:00
brain
5b3a9f2af8 Add extra debugging for socketengines, will now report OS error string when failing to remove a socket from the queue
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5436 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-06 19:55:24 +00:00
brain
855f0d98e9 Document more classes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5435 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-06 14:37:51 +00:00
brain
364735e18b Document a ton of classes (e.g. give them a short description for http://svn.inspircd.org/docs/annotated.html)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5434 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-06 14:23:37 +00:00
brain
9c96921f00 Move opertypes/operclasses maps into ServerConfig, for some reason these were global to users.cpp and not accessible to any other file.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5419 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-05 11:47:43 +00:00
brain
8d95e3d343 Whowas is now fixed.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5414 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-04 17:21:58 +00:00
brain
e25e200024 Document
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5404 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-03 13:57:53 +00:00
brain
9716d24be9 New helper class irc::stringjoiner - it pwns you.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5403 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-03 13:46:28 +00:00
brain
cf72e0d472 Remove testcases
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5398 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-02 13:48:00 +00:00
brain
f0e0cb4da6 mmmm dinner break, oh and document and make use of modestacker.
Someone test this, i cant as im at work.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5395 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-02 12:59:55 +00:00
brain
4ae42b33e6 Add more features to modestacker so that we can stack +, -, and parameterless modes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5391 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-02 09:24:49 +00:00
brain
bd0413a193 More efficient modestacker
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5390 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-02 08:51:45 +00:00
brain
02fe4a3085 modestacker class, stacks modes and returns a string list of up to MAXMODES modes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5389 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-02 08:47:14 +00:00
brain
4b0f6c610f Now with binary versioning goodness
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5366 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-01 14:59:38 +00:00
special
2d86278096 Added OnPostJoin, which is (at the moment) almost exactly identical to OnUserJoin but called after, so you can play with linking
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5361 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-01 00:19:36 +00:00
brain
27199ee710 make OnPostConnect global
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5339 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-26 17:16:42 +00:00
w00t
cae372d1eb Remove deprecated -nolimit and -notraceback options
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5338 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-26 17:04:39 +00:00
brain
990c308a95 Whoops, patch
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5324 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-25 17:43:28 +00:00
special
e71fa7cc6b Speaking of misleading comments, 'Delete and InspTImer' isn't particularly descriptive
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5313 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-24 08:44:24 +00:00
brain
8ed63fe681 Make the check against z/k/q/e/g methods return a pointer to the whole object rather than just the reason string
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5305 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-19 18:24:07 +00:00
brain
066e5ca366 Fix crashes, and in the process make xline even faster!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5304 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-19 18:12:43 +00:00
brain
89dc9ab198 Make xline more memory-efficient and faster/neater. Eliminate a mass of fixed-size buffer and strlcpy
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5300 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-19 13:44:09 +00:00
brain
0e21e5b642 Turn irc::commasepstream into a base class, irc::sepstream, inherit two classes from it: irc::commasepstream and irc::spacesepstream, to be used for the most common token seperators "," and " "
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5266 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-17 14:08:03 +00:00
brain
3a7dd5b129 Add const std::string &original_command to OnPreCommand and OnPostCommand, which gives the entire untouched command string and params in all its colon-ny glory
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5265 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-17 14:01:53 +00:00
brain
383caa90d5 Add timeouts to the http module. Two seperate timeouts, 60 seconds to receive headers, and 60 seconds after receipt of headers and sending of page, in which to time out the connection if the client doesnt close() as it should
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5260 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-15 18:36:38 +00:00
brain
2e2f1e98a6 Fix for bug noticed by dotslasher (?) where SAJOIN can desync
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5258 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-15 17:17:30 +00:00
brain
946bff6371 Annotations
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5257 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-15 15:06:51 +00:00
brain
c3f221fcbb Annotations
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5256 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-15 14:59:22 +00:00
brain
b45e7cfebb Annotations
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5254 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-15 10:59:36 +00:00
brain
ea483e4972 Remove ExemptItem and InviteItem, these were never used
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5253 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-15 10:29:22 +00:00
brain
5c53f05f76 If inspircd crashes in std::string destructor in CommandParser::ProcessCommand, take away all std::string's to make the bug manifest elsewhere, so maybe we can spot it
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5232 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-13 20:29:53 +00:00
brain
c06d4197af Special check in cmd_quit and cmd_kill and special return value CMD_USER_DELETED, to prevent theoretical segfault (this isnt the bug youre trying to find, pip)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5230 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-13 20:07:19 +00:00
w00t
83562ac4df Fix for picky compilers (see, I work sometimes ;p)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5218 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-11 19:34:28 +00:00
brain
1a3297e974 * Fix ChanModes::ModeString to not try and set a key as a user mode ;)
* Tweak the way cyclehosts works, so that mode change is not echoed back to user who changes their host/ident


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5208 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-10 19:48:30 +00:00
brain
a9c93027da Split hostmasks into ident and host pairs for matching as g/k/e lines. This allows them to be matched faster and more efficiently
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5203 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-10 17:51:03 +00:00
brain
52aec3dd2a Match IP's with klines, glines and exceptions, as well as hosts
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5201 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-10 17:18:58 +00:00
brain
ba5a5b345c Move Spacify() into irc:: namespace as multiple modules use it now
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5200 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-10 17:03:50 +00:00
brain
8f9d81063c Spacify() the oper types
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5199 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-10 16:59:10 +00:00
brain
d91de4ee7a ModuleFactories are not being deleted, this means that updates arent loaded
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5191 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-09 21:29:08 +00:00
brain
be60fccc6c Make SAMODE oper output tidier
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5184 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-09 15:29:42 +00:00
brain
38456992a3 Fix 'item not on list' output
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5162 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-08 15:02:12 +00:00