88 Commits

Author SHA1 Message Date
brain
f6fc729c72 Did some renaming so that the methods for modes in chanrec and userrec are identical.
bool IsModeSet(const unsigned char c);
void SetMode(const unsigned char c, bool value);
Fixed m_botmode for new api


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4194 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 21:37:16 +00:00
brain
00d4806d30 Don't allow non-ulines to kick ulines from channels - return numeric 482 if this is attempted (you are not a chanop) with different text
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4036 e03df62e-2008-0410-955e-edbf42e46eb7
2006-06-20 09:10:55 +00:00
brain
5d407fb44c delete operator tracking in debug mode (using a macro -- live with it.)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3904 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-24 13:28:07 +00:00
brain
009c5b0562 Forward-port of 1.0.4 tweak
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3903 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-21 10:50:26 +00:00
om
ecb76110fd A few more typedefs defined and put into use.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3866 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10 20:38:26 +00:00
om
e7f08977f2 Add time.h include to inspircd.h. Random cleanups in channels.cpp, mostly using the typedef'ed names already defined rather than having the full template names everywhere. Remove some unneeded casts too.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3865 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10 20:08:30 +00:00
om
77123f4dec Remove references to inspircd_io from these, stop configure making all the modules depend on it too. And remove some more un-needed includes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3853 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08 22:33:46 +00:00
om
d54fbc71e2 Split inspircd_io.* insp inspsocket.* and configreader.* with a few odd bits going into inspircd.*, doesn't look like I've broken anything... :P
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3847 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08 17:05:48 +00:00
om
54963bee70 All new shiny config parser, there's probably some bugs there somewhere but hey...I've been up all night. make clean before you try and compile this. Really. And nobody dare complain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3817 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-04 05:55:54 +00:00
om
1948b0ac28 undo w00t's screwup
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3812 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-04 02:20:59 +00:00
w00t
c116475922 This doesn't belong in userprocess.cpp. :P
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3811 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-04 00:41:28 +00:00
brain
ced58c3be3 Renamed to chanrec::modes
Renamed IsCustomModeSet to IsModeSet
GetModeParameter will now return the channel limit (as a string) for a request for mode 'l' and the channel key for a request for mode 'k'.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3692 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-12 14:49:30 +00:00
brain
988568f3d1 *NEEDS TESTING* changed binarymodes to use the custom_modes entries
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3691 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-12 14:26:15 +00:00
brain
7dd3760b6c Only calculate the names list when a local user joins (this was being calculated for remote user joins, then thrown into the bit bucket)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3652 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11 13:21:25 +00:00
brain
b251c1feb7 Fixed to use iterators
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3580 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09 11:34:47 +00:00
brain
c2a5839bcb Probably wont compile yet - purge_empty_channels refactor
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3579 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09 11:24:30 +00:00
brain
aaf5226111 Removed has_channel(userrec*,chanrec*), the new preferred way of doing it is channel->HasUser(userrec)
Yeah its the other way around to the old way, but somehow, seems less backwards to me (its also faster)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3560 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-08 23:16:18 +00:00
brain
21cf60233c Got rid of all that ugly char* cast crap (todo: change docs to reflect change)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3556 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-08 18:59:55 +00:00
brain
bd155d5308 Actually, 64.
(256-64-128) = 64 chars printable alphabet (roughly)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3552 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-08 13:06:07 +00:00
brain
76174ede1d chanrec::custom_modes only needs 96 values not 190
(256 - 32 - 128)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3551 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-08 13:05:07 +00:00
brain
6fef928da8 *TEST CODE* Faster custom mode set/unset
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3508 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-07 10:58:56 +00:00
brain
eb067467de Mode-code rewrite. Might act weird, needs proper testing (that is what svn builds are for, after all)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3474 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-06 00:29:02 +00:00
brain
21a1aec26c De-uglified chanrec::SetCustomMode -- no strlcat, no std::string, just some very clever pointer voodoo
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3415 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-02 11:31:37 +00:00
brain
786f313532 Typo found by gcc 4 warnings
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3325 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-25 16:09:20 +00:00
brain
03a85ddeaf Oh yae, Oh Yae, back in old days of yore, Ye Brain doth set the nick buffer as NICKLEN+1 to ease understanding by newbs who didnt know what thou null terminator was.
And yae, at a date later hence, Ye Brain then setteth ye buffer back to NICKLEN again.
Alas, neither Ye Brain nor Ye trusty followers hath then setteth back the rest of the core to NICKLEN-1, and verily, chaos ensued. :p


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3286 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-22 18:36:33 +00:00
brain
4648c98fa1 Tests for channel ghosting?
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3276 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-21 21:07:17 +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
brain
feaf72ecb4 Removed a whole lot of strchr's looking for mode +o where we can do if *user->oper
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3221 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-15 19:23:01 +00:00
w00t
c2f7cbbd15 - Fixed some HORRIBLE indenting. Tabs, please.
- Fixed channel keys being case insensetive.
- Added a 'XXX' fixme.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3214 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-15 04:04:57 +00:00
brain
46b40a6287 Fixed cosmetic 'need to be halfop to change modes' when kicking
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3138 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-08 11:02:34 +00:00
brain
3a5480d6ed Match bans against user::ip4 in add_channel
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3134 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-08 10:24:13 +00:00
w00t
02df4f4d07 Potential fix for CS Testnet bug, thanks to Special for helping with this one.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3133 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-08 09:16:14 +00:00
brain
dfa6568af2 Re-organized order of cmd_kick stuff (OnUserPreKick) to make override kicks work nicer
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3085 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-05 00:19:25 +00:00
brain
774478aaab Bugfix #69
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3058 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-03 17:58:37 +00:00
brain
0a58b25ad7 Tidyup op/halfop/voice list on part/quit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3054 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-03 17:37:36 +00:00
brain
785bfb8a0b Typo fix #1
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3048 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-03 17:23:49 +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
952b577edc Only access-check local user kicks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3008 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-01 20:28:13 +00:00
brain
3816f3dd12 Made bans check both real and fake host
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2873 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-23 20:37:20 +00:00
brain
715dab1753 Fixes to make server kicks work
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2831 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-22 19:33:53 +00:00
brain
93e3cda102 Added facility for servers to send KICK message (ew, i hate this crap)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2830 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-22 19:23:20 +00:00
brain
02280596a0 Added OnChannelDelete() method (called on KICK, PART or QUIT where a channel is deleted for cleanup of metadata)
Added m_messageflood.so (not yet finished, do not use yet)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2826 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-22 15:51:06 +00:00
brain
ece2c5daca strncpy sucks ass! -- Old code was using strncpy which doesnt null terminate a string if the string fills a buffer (!!!) - our strlcpy implementation fixes this.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2817 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-18 20:03:24 +00:00
brain
7e6dfdf211 Added support for part messages in the module API (and therefore between servers too)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2815 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-17 21:39:35 +00:00
brain
1383dba43e Updated copyrights in headers etc using perl inplace edit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2795 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-15 15:59:11 +00:00
brain
8aa7f73bd7 Changed channel user lists from vector to map
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2780 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-12 20:14:43 +00:00
brain
6f009062aa Fixed broken checks to allow overriding
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2707 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-30 12:00:37 +00:00
brain
a9b90ecb43 Adding hook type checking to event calls to speed them up
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2653 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-26 17:26:16 +00:00
brain
4ffd644a14 Optimized out strcpys that copy empty strings (craq++)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2637 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-22 17:18:18 +00:00
brain
423a1d78a0 Improved efficiency of chanrec constructor (removed strcpys)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2633 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-22 12:37:35 +00:00