Commit Graph

698 Commits

Author SHA1 Message Date
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
JD Horelick a4f6509ce1 more override stuff 2010-02-25 16:15:17 -05:00
JD Horelick 13a467bb98 Override part one. 2010-02-25 16:01:03 -05:00
JD Horelick afe430eebb Backed out changeset 677d7b5cbbcc 2010-02-25 15:47:08 -05:00
JD Horelick c7c1673d10 bad 2010-02-25 15:46:42 -05:00
JD Horelick cff17f66fa branch merge 2010-02-25 15:13:24 -05:00
JD Horelick da3ba37e04 Backed out changeset 0d7b5f2ac591 2010-02-25 15:13:12 -05:00
JD Horelick 4355dbd3c9 branch merge 2010-02-25 15:12:18 -05:00
JD Horelick 47fab428b1 Backed out changeset 65db6ca26281 2010-02-25 15:11:43 -05:00
B.Greenham 2b3c7c29c3 Add chmode +G, which blocks messages in all caps. 2010-02-25 01:51:28 -05:00
B.Greenham ea4041ece9 Automated merge with ssh://shadowircd/uranium/shadowircd/ 2010-02-25 01:14:49 -05:00
B.Greenham afd4834b50 Add chmode +N, which prevents nickchanges. 2010-02-25 01:14:38 -05:00
JD Horelick 13ec57db15 autochanmodes support 2010-02-24 22:18:13 -05:00
JD Horelick 44a8fbc29e Actually add +p umode and expiry code. It currently does nothing though. 2010-02-24 21:53:45 -05:00
JD Horelick 5974ba0c55 Add the config handling code for expire_override_time config option.
Part one of override stuff. This is gonna be painful.
2010-02-24 20:28:17 -05:00
B.Greenham 837a020a0c Add general::secret_channels_in_whois. 2010-02-23 22:38:35 -05:00
JD Horelick 45b9f1cbc0 Added channel::host_in_topic. 2010-02-23 20:19:58 -05:00
JD Horelick c3a0fde28f Added cycle_host_change option. 2010-02-23 19:50:45 -05:00
B.Greenham f9e91eceaa Add chmode +E, which prevents ops from using /kick on channels where it is set. 2010-02-23 18:14:43 -05:00
JD Horelick aa35afbb1f Some changes to bring the code i moved all around up-to-date. 2010-02-23 04:12:11 -05:00
B.Greenham be2d3c114f Make the last commit actually compile. 2010-02-23 03:08:58 -05:00
B.Greenham 88b63e6506 Make the target user's modes show up in whois. 2010-02-23 02:59:35 -05:00
JD Horelick 074fe45ad7 Some quick user_join() call fixes. 2010-02-23 02:56:57 -05:00
JD Horelick 824455aba6 Forgot to constify 2010-02-23 02:53:19 -05:00
JD Horelick 3472ff3fec Add an include 2010-02-23 02:52:53 -05:00
JD Horelick 9230426e7a More moving 2010-02-23 02:52:01 -05:00
JD Horelick 67b90240c4 move user_join() to channels.c 2010-02-23 02:48:33 -05:00
JD Horelick 080bb5cf25 Start moving parts of join to channels.c so they can be used in more places. 2010-02-23 02:41:26 -05:00
JD Horelick 2c489d8e65 Backed out changeset 199eadae216a 2010-02-23 02:04:53 -05:00
JD Horelick 6d3e983251 Compile fix 2010-02-23 02:01:19 -05:00
B.Greenham 7e6c9180da Add chmode +D, which blocks CTCP ACTION. 2010-02-23 01:08:42 -05:00
B.Greenham 92504d43b1 Merge. 2010-02-23 00:54:16 -05:00
B.Greenham 6afd4b916f Add chmode +T, which blocks notices. 2010-02-23 00:49:24 -05:00
JD Horelick e54944ef98 Whoops, small fail. 2010-02-23 00:43:34 -05:00
JD Horelick 87f58b4ffb Add oper autojoin (with auth::autojoin_opers config option). 2010-02-23 00:41:14 -05:00
JD Horelick fa72cee166 Added autojoin-on-connect (with auth::autojoin config option). 2010-02-23 00:22:37 -05:00
B.Greenham 930629c5f2 Add umode +B, which marks users with it set as a bot in whois. 2010-02-23 00:21:24 -05:00
B.Greenham 2678f87a51 Fix some indentation I messed up while adding umode +C. 2010-02-22 23:10:36 -05:00
B.Greenham 854f6bd0af Add umode +V, which blocks invites to anyone with it set. 2010-02-22 22:45:37 -05:00
B.Greenham ccfc9b567d Add umode +C, which blocks CTCPs to anyone with it set. 2010-02-22 22:14:47 -05:00
Jilles Tjoelker c6d5c019d0 Remove more old kline.conf stuff.
Make sure to recompile modules, stuff has been removed
close to the start of ConfigFileEntry.
2010-02-22 19:31:05 +01:00
Jilles Tjoelker 918a0e1d39 Remove code to write bans to csv files. 2010-02-22 19:09:46 +01:00
Jilles Tjoelker b6698246ba spambot checks: Fix excessive expiry in some cases. 2010-02-21 01:29:41 +01:00
William Pitcock ba29286a4a Do not try to free the alias dict if it does not exist. 2010-02-18 18:38:26 -06:00
William Pitcock 6d194359ab Change license version in version.c.SH (GPLv1 -> GPLv2) so that it agrees with the other documentation. 2010-02-17 23:05:47 -06:00
William Pitcock 8afd32ce07 s/o:lines/operator blocks/ 2010-02-17 23:01:58 -06:00
William Pitcock e4c72f7919 Clarify ERR_NOOPERHOST and convert it to use sendto_one_numeric(). 2010-02-17 06:51:41 -06:00
William Pitcock d8a023eddd Add support for client certificate fingerprints in o:lines. 2010-02-17 06:41:41 -06:00
Jilles Tjoelker 878733fd68 Move target change code to src/tgchange.c,
so we can use it for /invite as well.
2010-02-15 21:58:34 +01:00
Jilles Tjoelker 3002877654 target change: Overwrite the least recently used target with a new one. 2010-02-15 00:31:17 +01:00
JD Horelick 957ee03b56 English fix to fix the fix i made about 80 minutes ago.
I suck at a/an cometimes. Also, fix.
2010-02-08 18:04:54 -05:00
JD Horelick b17999e11b One or 2 English language cleanups. Less than I thought there were. 2010-02-08 16:28:08 -05:00
Jilles Tjoelker 54656d7650 Pass certfp to other servers and show it in whois. Do not show it on connect.
The server protocol for this is
:<uid> ENCAP * CERTFP :<40 hex chars>
both in new user introductions and in burst.

As in oftc-hybrid, only the user themselves and opers can see the certfp.

Displaying the certfp on connect seems unnecessary to me,
the user can whois themselves if needed.
2010-02-06 00:18:27 +01:00
Jilles Tjoelker f7b5446177 Apply ratbox3 workaround for too permissive inet_pton6():
Any kline (or various other things) containing * or ? is
a mask kline and not an IP kline. Ideally, rb_inet_pton_sock()
would return failure for those, but in practice this is not
always the case for IPv6.

Such a kline that is erroneously treated as an IP line
likely matches way fewer IPs than expected.
2010-02-03 00:44:51 +01:00