1510 Commits

Author SHA1 Message Date
brain
548883a392 Comment small API change (returning -1 from OnCheckBan to explicitly deny the ban)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9450 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-10 20:53:13 +00:00
w00t
6d6f0ef3c6 AddClient -> AddUser, to be consistant
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9443 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-09 15:47:10 +00:00
w00t
d7a0cd3db1 Move QuitUser into UserManager class, and unstaticize it. This prepares for some benchmarking lulz on object pooling I plan to do today, as well as making more sense now we *have* a manager class
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9442 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-09 15:34:54 +00:00
brain
ef30d86d11 Add extra stuff for w00t, AutoApplyToUserList method for XLineFactory
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9409 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-07 22:30:45 +00:00
brain
f78a6a90b1 This should probably be tested, but makes a whole lot more sense like this (users.cpp)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9404 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-07 22:00:49 +00:00
brain
18310fc8b7 We were lucky this one didnt bring down the whole devnet (see cmd_part.cpp diff)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9400 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-07 16:18:32 +00:00
w00t
f00094febf The start of extended bans infrastructure: syntax is e.g. +b n:w00tdiff@*, bans of any type can be applied and checked against, but there's more to come with this.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9337 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 21:43:21 +00:00
w00t
eb2e28b0cf Remove deprecated InspIRCd::Log() method so people don't use it etc
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9320 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 15:40:33 +00:00
brain
89fc6ca9c6 Remote server PRIVMSG/NOTICE to nickname support
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9314 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 15:06:32 +00:00
w00t
ce4dc653ce Remove two useless methods, chanlog is b0rked at the moment.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9313 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 15:06:24 +00:00
brain
001861f5d2 Add protocol api functions: PI->WriteChannelPrivmsg() and PI->WriteChannelNotice() - sends with SID origin over network
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9308 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 14:37:23 +00:00
brain
3f971b447f Change the function name because gcc is dumb :/
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9305 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 13:29:15 +00:00
brain
d3d32dcf6d A convenience function for ProtocolInterface::SendMode that just takes a string, then splits it internally to deque for sending to the other function of the same name
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9303 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 13:21:12 +00:00
brain
b07868e77c The rest of the server protocol interface and fix a warning in m_rline
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9299 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 12:49:42 +00:00
brain
e48c7e038a Add basic stuff for protocol interface and implement a couple of the methods. It's all in ServerInstance->PI for calls from other modules/the core
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9297 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-04 12:30:38 +00:00
brain
3079075ad6 Fix socketengine select to work with arsey compilers that think we're using ISO C++
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9287 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-03 16:03:10 +00:00
brain
57608fe351 Fixes for bug #493, tidyups to clearing of channel modes on losing FJOIN. Module unloads may also be tidied at a future date but it means reordering some loops in mode.cpp. See around the comment added.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9283 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02 23:53:29 +00:00
brain
7dadb07a19 Fix peavey and w00ts bug they found by removing the nonblocking part of the logger. This stuff was hackish and isnt required. If your hard disk locks up, then you have bigger worries.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9276 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02 19:52:33 +00:00
brain
2db77cda56 Automatic detection and allocation of max fds. No longer needs recompile to change, just adjust it in your kernel or whatever and restart insp.
Please note that select and iocp socket engines do not support detection and are always set to FD_SETSIZE and 10240 descriptors respectively.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9263 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02 17:08:09 +00:00
w00t
d9d33e7246 Fix all this crap - it actually works now (we pray..)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9261 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02 12:33:01 +00:00
w00t
519d8e5dfe Better generation. This is still fucked up, but less spectacularly and in a much less obvious way.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9260 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02 11:48:54 +00:00
w00t
9fcf4c08a1 Unneeded
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9255 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02 08:54:43 +00:00
w00t
814eff8532 Initialise a variable correctly to avoid valgrind warning
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9252 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01 23:24:22 +00:00
w00t
86c2b7abf7 Remove call to FlushWriteBuffer from BufferedSocket::Write(), this means we don't try write() pointlessly when we may very well not (chewing CPU), and instead waits for the socketengine to tell us we can write. Tested, works fine. (nothing used this return value anyway)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9247 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01 18:56:31 +00:00
w00t
6953371f71 Remove deprecated BufferedSocket::MarkAsClosed()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9246 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01 18:34:34 +00:00
w00t
1fe8085c6d Remove this, it won't work (reliably), use ModeParser::ModeString() instead, ta B
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9243 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01 16:30:49 +00:00
brain
5b4e92cc2c Add an optional bool to ModeParser::ModeString() to not give the nickname n times on the end of the string. This can be used for w00ts funky stuff. :-)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9242 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01 16:25:02 +00:00
w00t
1f9ef40812 Configurable prefixes for chanmodes +qa: prefixes can be turned on or off individually and seperately, per server as well as per mode, and prefixes are no longer limited to ~&. *** SERVICES AUTHORS *** This involves a protocol change. FJOIN now sends the userlist with format modes,nick instead of prefixes,nick.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9241 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-01 13:53:27 +00:00
w00t
d48726ce80 AWAY notification for WATCH. Numerics are now sent out when a user goes away (or returns from AWAY), as well as in WATCH L (if the user is online and away).
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9227 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-30 15:33:33 +00:00
w00t
e2f4bf3a13 Merge OnCancelAway and OnSetAway, add param awaymsg to OnSetAway (blank when cancelling), and change return type to int so modules can block away messages by returning nonzero.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9223 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-30 14:26:01 +00:00
aquanight
58385dd458 Commit -Wformat=2 -Wmissing-format-attributes, printf-like functions in inspircd now get treated like printf (meaning compile-time check goodness) in GCC
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9217 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-30 02:48:54 +00:00
brain
4f946291b7 A load of classes dont inherit from classbase, and they should. fix.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9191 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-24 16:53:34 +00:00
brain
d1b20f9519 This module uses io hooking too, fix it up
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9190 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-24 16:24:52 +00:00
brain
43d1577839 Port bindings for gnutls now bind via ip:port, rather than on all ports for that ip, fixes feature request for roadmap. NOTE, this still needs doing for the openssl module!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9188 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-24 16:03:39 +00:00
brain
343f12b9b2 Add stuff so that modules can hook users by altering a pointer in the User class. Note that ssl modules still bind by port, but the idea of doing this change is so we can remove that logic next
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9187 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-24 15:13:17 +00:00
brain
20680f9c49 This should save 128 bytes per user for non-opers. Well worth it imho for a reasonably large amount of unused ram.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9179 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-23 21:12:36 +00:00
aquanight
743c10e4ca Add ability to control what opertypes can set what operonly user/chan modes. This works the same way as commands, in that modes allowed by classes are added together, and * allows all.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9176 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-23 20:43:35 +00:00
brain
68730d4c97 Wheeee for HUGE commits. Convert all numerics to WriteNumeric so that OnNumeric can capture them.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9175 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-22 12:03:43 +00:00
brain
9ee525bec5 Add WriteNumeric() to User and OnNumeric module event. Note that modules do not change the numeric text on the fly, as this involves needless allocations for numerics that arent being changed, so instead they block the original numeric and send out their own when needed.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9174 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-22 11:45:57 +00:00
brain
9855300460 Add support for OnNamesListItem, discussed with w00t a few days ago. This makes NAMESX etc a LOT cleaner and safer.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9140 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-21 15:54:15 +00:00
brain
43a376fd68 Fix the warnings that are worth fixing, ignore the rest of gcc's nannying
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9117 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-17 17:28:54 +00:00
brain
c84ad4cc16 Add fixes to stop people changing the SID of a live server - certain configuration values are silently ignored on rehash, namely the server name and server id.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9073 e03df62e-2008-0410-955e-edbf42e46eb7
2008-03-14 15:22:27 +00:00
brain
d16efdba4a Left out CoreExport
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9047 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-26 23:05:58 +00:00
brain
2a56c8f4ec This should fix it, thanks w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9045 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-26 21:39:44 +00:00
brain
be8af5c156 The count=0 in the body Isnt needed
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9044 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-26 21:17:56 +00:00
w00t
4a26ba48eb Remind me that I need to initialise ints *smack*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9043 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-26 21:16:56 +00:00
brain
9ce18436e9 Revert configure so that we can uh, actually compile.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9037 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-26 19:18:26 +00:00
brain
a36fa98300 More stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9026 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-24 18:52:31 +00:00
brain
b119a88b55 Allow for 'bail' and 'user' parameters to rehash thread
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9022 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-24 17:45:21 +00:00
brain
23fb1f062b Rollback complete! Everyone please go through the code and check i havent forgotten to incorporate your tweaks and changes.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9019 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-24 15:55:23 +00:00