brain
0376f1d8be
Convert to SimpleUserModeHandler and SimpleChannelModeHandler
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9599 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-01 19:56:16 +00:00
brain
f3abcf2bcf
Simple user/channel mode patch
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9596 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-01 16:12:45 +00:00
w00t
28a1967177
Hack, hack, hack, hack hack. Hack hack. Probably fix snotice loops, though.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9573 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-21 20:54:37 +00:00
brain
98659aa0dc
Merge in large patchset from GreenReaper, useful fixes for freeing a ton of different things on shutdown for tidyness, and a few stack corruption fixes in the mode handler
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9565 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-21 16:59:23 +00:00
brain
e5131f92b3
Fix RemoveCommands to remove all commands (this function had some really odd removal logic?)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9554 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-20 18:58:59 +00:00
w00t
8c2d960130
Remove SpanningTreeProtocolInterface::SendOperNotice - it was translated to a SendSNONotice 'A' anyway, and only used by SAMODE, which duplicated it with a SendSNONotice 'A' also anyhow o.o - this means OPERNOTICE is now gone from protocol 1200, and SNONOTICE should be used instead.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9530 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-17 14:01:12 +00:00
w00t
57542f8488
Add potential for local-only snotices and use them for the ones that should be local. Individual messages cannot be made local-only, but I can't think of circumstances where this is necessary. Let's write it when it *is* necessary. :)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9527 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-17 12:09:15 +00:00
brain
94f2293f65
Implement our own dllmain. if this works and gets rid of error at 70 modules, i will backport it
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9521 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-16 22:17:28 +00:00
brain
3039e0663f
Change that allows the m_override module to not announce a key override for a user that specified the right key
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9516 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-16 00:36:20 +00:00
brain
8528562075
See configreader.cpp line 764 to see how to declare deprecated items. This is reasonably well thought out so i see no issue with leaving items here a very long time :)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9507 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-15 01:10:08 +00:00
brain
dd73789134
Port a bunch of methods of InspIRCd to functors. IsChannel, IsSID, Rehash.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9474 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-13 03:28:56 +00:00
brain
27e2941ec9
Fixes for bug #515 , update existing in-use connect tags on the fly in rehash
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9471 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-12 17:01:36 +00:00
brain
597ecea91e
Trunk fix for bug #505 reported by nenolod
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9468 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-12 15:48:01 +00:00
brain
2a3538cf05
(untested) don't move newconfig to ServerConfig::config_data until its been validated by all the validation funcs in the core config table
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9461 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-11 23:55:10 +00:00
brain
1eae3c2ad4
Remove 'default log' and <options:loglevel> (wtf?)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9460 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-11 23:27:27 +00:00
w00t
d75ec0e5a5
Patch from Brain fixing broken stuff
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9456 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-11 14:27:26 +00:00
brain
e20a091589
Much faster way of checking if the user is 4in6, avoid strncmp in User::GetIPString(), do it in User::SetSockAddr()
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9455 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-11 00:03:03 +00:00
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