Commit Graph

651 Commits

Author SHA1 Message Date
B.Greenham a18f1b6ef8 Make it so that the same user can have more than one metadata entry of the same type. 2010-03-05 14:06:32 -05:00
B.Greenham d3b90aaad3 Clean up +J to work nicely and properly. 2010-03-05 13:45:01 -05:00
B.Greenham 6a97cac667 Make channel_metadata_time_add accept a regular value as well as a time value. 2010-03-05 11:57:48 -05:00
B.Greenham a6d1c6c037 Make RPL_WHOISMODES look a bit nicer. 2010-03-05 01:22:08 -05:00
B.Greenham 0b370fcc63 There's no reason to have two nearly identical structs for metadata, move metadata struct to ircd.h and use it for both channel and user metadata. 2010-03-05 00:51:40 -05:00
B.Greenham 8bced6dc39 Add *_metadata_clear and start using them. 2010-03-05 00:39:18 -05:00
B.Greenham 104becbf7f Add channel_metadata_time_add, a local only form of metadata that stores time values. And use it to make +J work. 2010-03-05 00:18:56 -05:00
B.Greenham 9a4dc29c68 Finish chmode +K, which prevents repeated lines. 2010-03-04 18:05:15 -05:00
B.Greenham cc39ce707d Make it so that channels can have more than one piece of channel metadata with the same value. 2010-03-04 17:49:15 -05:00
B.Greenham 6f659342dc Add channel metadata system. 2010-03-04 15:08:16 -05:00
JD Horelick 3da167f207 Really fix the ugly-ass desync by re-adding some code i accidentally
deleted on the first chmode.c override commit.
2010-03-04 04:28:53 -05:00
JD Horelick e853274c16 Fix a warning which may fix a real ugly desync.
If this doesn't fix the desync, i have an idea of how to do so.
2010-03-04 04:22:14 -05:00
B.Greenham 32d464fe77 Finish adding custom operstring support. 2010-03-03 23:06:32 -05:00
B.Greenham 3e06a4c803 Finish adding swhois support. 2010-03-03 22:59:26 -05:00
B.Greenham 3b0e9fa20e Automated merge with ssh://shadowircd/uranium/shadowircd/ 2010-03-03 20:38:57 -05:00
B.Greenham fb87421d0e Add user metadata. 2010-03-03 20:38:50 -05:00
JD Horelick cb097b8840 Don't discard self-oppings from remote override opers.
There's a small chance this could be incorrect.

Also, the final set of override cleanups.
2010-03-03 15:34:57 -05:00
JD Horelick 565f4362f2 A couple more chm_hidden cleanups/fixes. 2010-03-03 15:16:06 -05:00
JD Horelick 1cdd8fdfd7 Framework for hidden (only opers can see/set them) chmodes.
The first one of these is +M and the actual extension which handles
+M will be added next commit.
2010-03-03 14:35:54 -05:00
JD Horelick b869e117f0 Woohoo! Override is complete barring a few possible cleanups in the futures. 2010-03-03 14:11:53 -05:00
JD Horelick 4ed822ed95 Add override support to ban/quiet, owner, op, halfop and voice. 2010-03-03 13:52:31 -05:00
JD Horelick ee36f72f5d I fail. Move the epiration of +p statement lower so it actually...works. 2010-03-03 03:43:16 -05:00
B.Greenham e6f2e49e86 Fix the typos in the last commit so it compiles and works. 2010-03-03 01:00:07 -05:00
B.Greenham e787d3a226 Add conf options for swhois and operstring, though they don't do anything yet. 2010-03-03 00:52:13 -05:00
JD Horelick 1332a0ef97 Make +p expiry more robust 2010-03-02 20:49:51 -05:00
JD Horelick 9ace21a74d First step of expiry of +p crap. 2010-03-02 20:33:58 -05:00
JD Horelick eccd1c58d2 Initial support for 'noisy' oper-override of channel modes, using omode-type code. Supports simple modes at present. 2010-03-02 19:54:59 -05:00
B.Greenham 08e35f665f Add operator::vhost option. 2010-03-02 18:46:08 -05:00
B.Greenham 220c9db54d Add general::default_operhost. 2010-03-02 01:57:25 -05:00
B.Greenham 1a9821cd51 Make it so that halfops cannot set +-h 2010-03-01 20:12:11 -05:00
B.Greenham 5ad94b5000 Add channel::exemptchanops, and make +cCDTNG support it. 2010-03-01 02:43:55 -05:00
B.Greenham 23b98f3f5a Add blank +K (norepeat) chmode, though it does nothing yet. 2010-02-28 23:06:42 -05:00
B.Greenham 0eceaff17a Borrow some ircd-seven code to create channel::use_local_channels. 2010-02-28 22:42:59 -05:00
Jilles Tjoelker a04002a292 Fix memory leak on /rehash bans.
We do not have the 'oper' field in klines yet.
2010-02-28 16:45:25 +01:00
B.Greenham 82f8e812f5 Add full support for +a (owner) and +h (halfop) chmodes. 2010-02-28 02:35:48 -05:00
B.Greenham fc5ba33325 Fix a couple typos. 2010-02-27 23:47:39 -05:00
B.Greenham 154760066c There's no reason to use get_channel_access() in chm_forward, use is_any_op() instead. 2010-02-27 23:44:14 -05:00
B.Greenham c63f75891b Update burst_TS6() for +ah. 2010-02-27 23:10:04 -05:00
B.Greenham da77e1eed9 Update change_nick_user_host() to support +ah. 2010-02-27 23:04:32 -05:00
B.Greenham b8643345db Update find_channel_status() for halfop and owner. 2010-02-27 22:50:41 -05:00
B.Greenham 5af82425e0 Add +ah to the 005, if they are enabled. 2010-02-27 22:32:19 -05:00
B.Greenham 40c6b59b63 Add is_halfop() and is_owner() and start using them in the new functions. 2010-02-27 21:53:46 -05:00
B.Greenham b3b2ed9780 Add can_kick_deop() and use it in m_kick. 2010-02-27 21:27:05 -05:00
B.Greenham 46f0c51863 Add config options for owner and halfop. 2010-02-27 20:05:07 -05:00
B.Greenham bbc6973347 Move is_chanop_voiced() to a function in channels.c in preperation for +ah. 2010-02-27 19:40:52 -05:00
B.Greenham d1c7eccf6a Add is_any_op() in preperation for adding +ah, start using it instead of is_chanop() in a few places. 2010-02-27 19:20:01 -05:00
B.Greenham 846aa234b8 Add the +J channelmode and config options, though they don't do anything yet. 2010-02-26 00:30:39 -05:00
B.Greenham 99c780941a Fix everything I broke with the last three commits and make +G work for real. 2010-02-25 20:36:03 -05:00
B.Greenham c279d43b75 Add has_common_channel(), which is needed by umode +G. 2010-02-25 19:15:13 -05:00
B.Greenham 61ffa214b4 Add umode +G, soft callerid. 2010-02-25 17:57:12 -05:00