461 Commits

Author SHA1 Message Date
brain
4c6fb8032b Made extensive use of charlcat to cut down on strlcat usage
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3417 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-02 12:00:57 +00:00
brain
99f6009b2d Added charlcat which appends a single char to a char* string (range checked)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3416 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-02 11:45:38 +00:00
brain
18c757067c Changed definition of CallHandler and CallCommandHandler for the ability to return false on bad command.
This allows us to terminate server links that send commands we dont know (e.g. admin loads module A after linking, we dont have module A, when it sends module A's command, abort)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3414 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-02 09:57:48 +00:00
brain
c215eff073 BanHiding
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3384 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-28 19:33:42 +00:00
brain
b477cc1c34 Made it safe to quits and nickchanges
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3379 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-28 12:07:03 +00:00
om
7e918919b0 Add comment stressing the importance of certain elements of this file
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3377 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-27 17:29:04 +00:00
brain
080a9f5d24 Test two
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3362 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-27 10:22:10 +00:00
brain
747ae4b7a5 Constant eating 20% cpu since last nights commit - test fix
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3361 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-27 10:13:22 +00:00
brain
65d0d4fb36 Moved the contents of the mainloop into a function called InspIRCd::DoOneIteration().
We can then use this to 'yield' if incoming server text is taking too long to process


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3342 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-26 19:53:25 +00:00
om
a168cf04da Nothing to see here, nothing, at all.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3316 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-24 01:02:27 +00:00
brain
991bc1d3cf Look-behind for missed timers up to 2 minutes (if your ircd has hung for 2 minutes, or your clock drift is > 2 mins, you have bigger fish to fry, like dead network or TS split)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3310 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23 20:35:52 +00:00
brain
8c2bd7cc63 Moved timer stuff from OnBackgroundTimer to InspTimer derivative
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3305 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23 20:00:02 +00:00
brain
aca9acf422 Fixed to work
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3302 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23 19:46:43 +00:00
brain
7907a1f1cc Incorporating InspTimer into safelist as a test
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3301 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23 19:39:38 +00:00
brain
6279a01bf5 Fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3300 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23 19:13:30 +00:00
brain
932f00f8bf First revision of new timer code, not in the makefile yet (so it wont build till im done)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3297 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23 18:56:21 +00:00
brain
39ca58c38c Added m_safelist helper functions GetChannelCount and GetChannelIndex
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3287 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-22 18:56:25 +00:00
brain
326a73ff7b Fixed
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3275 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-21 19:11:07 +00:00
brain
163c429ec5 Added second form of find() taking const char*, which is faster in the core where char* is used more often
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3273 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-21 19:03:13 +00:00
brain
f0ebde21e5 Improved speed of Find() by passing reference to std::string instead of std::string itself
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3272 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-21 19:01:33 +00:00
brain
bb7ff3b7b6 AIEEE fucking overloaded operators
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3263 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 23:21:41 +00:00
brain
8942c3cd32 Tweaks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3261 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 23:17:17 +00:00
brain
f0610a1fa2 Added + and == operators between std::string and irc::string.
Its too late at night to wrestle with the = operator, this can wait for another time.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3260 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 23:14:37 +00:00
brain
82a96604ef Removed unneeded {}'s
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3253 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 16:20:34 +00:00
brain
42ead28a57 Testing \exception doxygen tag that *should* work
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3252 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 16:15:28 +00:00
brain
b1fcb6a770 Forgot to commit this?
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3247 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 15:26:07 +00:00
brain
6824a483e3 Apparently to catch descendent classes we need to catch a reference to the parent, not the parent itself
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3242 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 14:53:06 +00:00
brain
99e1325d66 Made a booboo
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3241 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 14:46:48 +00:00
brain
2a9b0cdd30 Added exception handling for module loading
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3240 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-19 14:44:32 +00:00
brain
d5d8a5987b Moved custom_mode_params to per-channel
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3223 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-15 20:30:29 +00:00
w00t
a0c2e57896 Added bool IsValidChannelName(const char *) - it doesn't seem to blow things up...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3182 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-13 01:01:43 +00:00
brain
20dbeb8cef Tweak to allow @%+ to all exist on a user at once during burst
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3170 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-12 16:25:49 +00:00
brain
3b9cf59ba0 Checks to not propogate invalid or already-existing Xlines
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3143 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-08 18:14:12 +00:00
brain
1674c21da1 Increased how often socket timeout checks occur which will mean flushing write buffers more often
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3142 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-08 17:22:12 +00:00
brain
0ebea11505 Slightly more efficient write buffers
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3125 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-07 16:55:02 +00:00
brain
6c14fd7ccd Added support for changing tempdir via <options:tempdir>
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3107 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-06 13:41:24 +00:00
brain
ecee8268b2 Propogation of away messages across network (we dont bounce the numeric back for every privmsg like other ircds, we burst them and keep them synched by broadcasting AWAY)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3095 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-05 16:08:46 +00:00
om
4be4ccdf26 Add .c_str()'s to m_sqloper in call to OneOfMatches(), and change prototype of OneOfMatches to take const char* instead of char*. Either that or case all the .c_str()'s to lose the const :"
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3091 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-05 09:55:13 +00:00
brain
8869f710e5 Commented on new return value of OnUserPreKick for explicitly allowing kicks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3087 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-05 00:23:03 +00:00
brain
fd55692291 Allow space seperated hostlist in <oper:host> e.g. <oper host="foo@bar baz@qux blarp@flerble" name="blah">
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3074 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-04 17:09:24 +00:00
brain
235a0a2035 Added "char status" parameter to OnUserPreNotice and OnUserPreMessage for NOTICE @#chan etc.
Tidied up craq++ in modules (copy and pasting OnUserPreNotice into OnUserPreMessage?! why not just call one from the other!)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3072 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-04 13:09:18 +00:00
om
ca549070d9 Add operators >> and << for irc::string and i/ostreams. m_cban utilises this
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3066 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-03 22:40:10 +00:00
brain
9c64f695f6 Typo fixes #2
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3052 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-03 17:30:46 +00:00
brain
9ebbd138cc This probably wont compile atm - add support for prefixed messages
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3046 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-03 17:20:40 +00:00
brain
7cbc465e2a Added ircu-like hidewhois feature that allows hiding of server name in whois with arbitary string like '*.network.net'
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3034 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-03 10:03:01 +00:00
brain
38d7b5b0d9 *EXPERIMENTAL* <options:hidesplits> ircu-style quit munging for netsplits
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3031 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-03 00:25:28 +00:00
brain
f42e73185f Removed bool return of DoBackgroundUserStuff()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3023 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-02 18:00:13 +00:00
brain
b7d36f5296 Extra comments re. nonblocking DNS and use of IP addresses in constructor to speed up connect time
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3022 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-02 17:51:06 +00:00
brain
bd9b965904 Nonblocking dns for InspSocket class (used by server to server)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3018 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-02 16:44:12 +00:00
brain
656e193516 *UNTESTED DO NOT USE YET* - async dns for InspSocket as test - removing requirement on nss_dns.so.1
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3017 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-02 16:34:34 +00:00