Jilles Tjoelker
6795400d0a
New custom channel mode API allowing reloading such modules.
...
Additionally, attempting to use too many modes or two times
the same letter is now detected and prevented.
Modules now request that a channel mode be added/orphaned,
instead of ugly manipulation from which that request had
to be guessed.
Slight changes are needed to modules that provide channel modes.
From the old API, one important function has been made static,
the other important function has been renamed, so loading old
modules should fail safely.
2010-04-01 01:16:16 +02:00
Jilles Tjoelker
9b9d818b32
Add propagated resvs, like klines and xlines.
2010-03-27 16:13:57 +01:00
B.Greenham
473d0842db
Fix some compiler warnings that I generated by accidentally copying something twice.
2010-03-17 02:19:18 -04:00
B.Greenham
c1c91f9438
s/owner/admin/ throughout the source code and docs.
2010-03-07 23:18:39 -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
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
6f659342dc
Add channel metadata system.
2010-03-04 15:08:16 -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
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
70e4cb8615
Fix a bug I introduced by being a massive idiot.
2010-03-01 15:01:11 -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
82f8e812f5
Add full support for +a (owner) and +h (halfop) chmodes.
2010-02-28 02:35:48 -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
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
c279d43b75
Add has_common_channel(), which is needed by umode +G.
2010-02-25 19:15:13 -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
44a8fbc29e
Actually add +p umode and expiry code. It currently does nothing though.
2010-02-24 21:53: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
677e21a450
Constify the header too :D
2010-02-23 02:53:44 -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
B.Greenham
7e6c9180da
Add chmode +D, which blocks CTCP ACTION.
2010-02-23 01:08:42 -05:00
B.Greenham
6afd4b916f
Add chmode +T, which blocks notices.
2010-02-23 00:49:24 -05:00
William Pitcock
92a7995129
Merge +C (no CTCP to channels) from ircd-seven.
2010-01-19 02:11:04 -06:00
Valery V Yatsko
fba62b0151
Moved extern chmode_flags declaration from channel.h to chmode.h, as
...
it's actually declared in the second one
2008-08-04 21:51:15 +04:00
Valery Yatsko
a02e61ed80
channel.h cleaned up a bit - removed unused includes
2008-07-30 16:27:35 +04:00
Valery V Yatsko
9a67ad23d9
Remove Channel->users_last, used nowhere
2008-06-28 12:25:53 +04:00
Valery V Yatsko
75818939ab
Applying dyn-cmodes.diff - first step in implementing channel module
...
addition in extensions
2008-06-24 20:45:19 +04:00
William Pitcock
08d11e34cc
start making this compile
2008-04-01 15:18:48 -05:00
William Pitcock
fda6c724ea
Remove CHFL_DEOPPED entirely.
...
Since charybdis 2.3 will require TS6, emulating legacy semantics is
unnecessary.
2008-02-27 14:08:27 -06:00
Jilles Tjoelker
2a719c44c0
Consolidate duplicate channel mode flags tables to one.
2007-12-25 01:00:20 +01:00
jilles
832942858c
[svn] Fix desyncs with very long extbans. Bans can now be upto 195 chars long.
2007-11-07 15:45:14 -08:00
nenolod
212380e3f4
[svn] - the new plan:
...
+ branches/release-2.1 -> 2.2 base
+ 3.0 -> branches/cxxconversion
+ backport some immediate 3.0 functionality for 2.2
+ other stuff
2007-01-24 22:40:21 -08:00