B.Greenham
1fe75e33cc
mode api: Remove most modes from the chmode_table, and have them initialized in modeset files.
...
Modeset files are modules stored in shadowircd/modes. All they do is initalize
a set of modes on load, and orphan said modes on unload.
All cmodes not included in ircd-ratbox are now located in modeset files, rather
than being in the core. These modes no longer simply use defines, their
locations are stored in a the new struct module_modes. Each of these is set
when intializing the mode in the modeset files, and set to 0 when orphaning
the mode upon unloading the modeset file.
In addition, use_forward has been removed, as it is now obsoleted by modesets.
2010-07-02 19:09:46 -04:00
JD Horelick
133755685e
Removal of ancient SVN ID's part one
2010-06-10 21:22:44 -04:00
Jilles Tjoelker
9dc68130ea
Improve technical documentation of BAN protocol.
2010-04-29 00:26:49 +02:00
B.Greenham
2498a1b577
Fix some valgrind warnings.
2010-05-27 18:03:51 -04:00
JD Horelick
f0e0e5672d
Backed out changeset 9bd802724b74
2010-05-21 04:08:05 -04:00
JD Horelick
446c7d4f57
Remove +J chmode (KICKNOREJOIN)
2010-05-21 03:29:07 -04:00
JD Horelick
f968f34f4b
Update comment for me_svsjoin explaining the sort of morality of it.
2010-03-31 02:16:00 -04:00
JD Horelick
b4db7c8695
It'd take the world's longest tape measure to gauge the length of my fail.
...
-- JD, March 31, 2010
2010-03-31 01:47:24 -04:00
JD Horelick
1d59ea37bb
Add me_svsjoin function to allow services to "force"join clients
...
to channels, primarily for ns_ajoin.
2010-03-30 21:20:26 -04:00
Jilles Tjoelker
7c880acbfe
Fix various compiler warnings.
2010-03-27 20:09:46 +01:00
Jilles Tjoelker
9b9d818b32
Add propagated resvs, like klines and xlines.
2010-03-27 16:13:57 +01:00
Jilles Tjoelker
a75522e6a5
BAN: xlines do not have oper reasons, their "reason" is already oper only.
2010-03-18 00:22:35 +01:00
Jilles Tjoelker
112e8a666b
Add propagated xlines, like klines.
2010-03-16 23:05:50 +01:00
Jilles Tjoelker
70fd7fc9fb
BAN: Reject bans with insufficient non-wildcard characters.
...
Such bans are not applied locally, but are propagated normally.
They can only be removed on a server that applies them.
Note that normally KLINE will not accept such bans.
This is mainly for services, differing min_wildcard and
ircd changes.
2010-03-06 01:45:41 +01:00
Jilles Tjoelker
c177d078ea
Among bans with the same creation time, prefer the one with longest lifetime.
2010-03-05 23:16:28 +01:00
Jilles Tjoelker
05114b16a3
BAN: Avoid fake direction.
2010-03-05 22:53:35 +01:00
Jilles Tjoelker
e49d818579
Remove +/- from the BAN message, instead indicating unban with duration=0.
...
A kline must now last at least one second since its creation time.
Also add better logic for bans that have already expired
when they come in.
2010-03-05 22:51:47 +01:00
Jilles Tjoelker
65b8e0029e
Add propagated klines.
...
A KLINE command without the ON clause now sets a propagated
("global") ban. KLINE commands with the ON clause work as
before.
Propagated klines can only be removed with an UNKLINE command
without the ON clause, and this removes them everywhere.
In fact, they remain in a deactivated state until the latest
expiry ever used for the mask has passed.
Propagated klines are part of the netburst using a new BAN
message and capab. If such a burst has an effect, both the
server name and the original oper are shown in the server
notice.
No checks whatsoever are done on bursted klines at this time.
The system should be extended to XLINE and RESV later.
There is currently no way to list propagated klines,
but TESTLINE works normally.
2010-03-05 18:36:44 +01:00
JD Horelick
64dd2404ca
Rewrite message when you don't have the privs to kick a user
...
(be it that the user is +a and you're +o/+h or you're not an op at all).
2010-03-25 12:31:12 -04:00
JD Horelick
d25c6eb1b2
Yay for documenting code....
2010-03-23 21:20:07 -04:00
JD Horelick
5ff039e923
Make remote restart and die actually...work...
2010-03-23 15:21:09 -04:00
JD Horelick
658a333d65
Pull in remote restart and die (from ircd-seven) allow opers
...
to remotely restart and die servers.
2010-03-23 14:21:31 -04:00
JD Horelick
6f7a78f6aa
Added check for flood settings in m_message. Why was this not here
...
before? What good are flood settings really if they're not applied
to messages?
2010-03-21 03:43:25 -04:00
B.Greenham
aa9a8067b1
Use strip_unprintable for chmodes +K and +G, which makes evasion less trivial.
2010-03-20 12:49:57 -04:00
B.Greenham
2c0c690444
Fix some compile warnings.
2010-03-18 12:32:42 -04:00
JD Horelick
b705a46f43
Fix a signedness comparison warning.
2010-03-17 03:42:40 -04:00
B.Greenham
7469e4b0d2
Remove the ability of overriding opers to privmsg/notice @#channel while lacking ops.
...
Since this goes past +q/+m and so on, it could easily and silently be abused.
2010-03-16 13:47:03 -04:00
JD Horelick
e78f685073
Add use_part_messages config option. When disabled, this will show
...
all PARTs without a message/reason. Recommended to set to no if
a static quit message is set.
2010-03-13 22:56:38 -05:00
JD Horelick
c0e2aa60b8
Added static_quit support. Pretty much what the name implies.
2010-03-13 22:19:29 -05:00
B.Greenham
0fbe4a384c
Make metadata use UIDs for s2s communication, and fix up propegation of channel metadata.
2010-03-08 18:09:10 -05:00
JD Horelick
71ea606903
Make override WALLOPS actually send netwide this time.
2010-03-07 23:22:07 -05:00
B.Greenham
c1c91f9438
s/owner/admin/ throughout the source code and docs.
2010-03-07 23:18:39 -05:00
JD Horelick
34d8ef4d14
Change all override snotes to wallops to match m_o* and to
...
make it a lot more obvious when a oper is using override.
2010-03-07 22:42:51 -05:00
JD Horelick
b6a3d80129
Change many of the ERR_CANNOTSENDTOCHAN messages to say WHY the user
...
can not send to the channel for the new chmodes.
2010-03-07 17:03:12 -05:00
B.Greenham
bc4764aefd
Looks like irc_dictionary things cannot support more than one key with the same value. Therefore, a rework of +J and OACCEPT's metadata are required to make them work properly with multiple users.
2010-03-06 19:22:59 -05:00
B.Greenham
e80126d0d3
Fix +K unintentionally stripping any messages to the channel of color.
2010-03-05 20:59:23 -05:00
B.Greenham
a58b84b4b2
Fix +J not checking for local clients properly.
2010-03-05 20:23:52 -05:00
B.Greenham
1c646b8914
Fix +g messages not showing to opers.
2010-03-05 14:39:42 -05:00
B.Greenham
e6f94b0c3c
Make oaccept use UIDs instead of nicks.
2010-03-05 14:34:44 -05:00
B.Greenham
85465c4341
Make +gGR not affect services.
2010-03-05 14:28:48 -05:00
B.Greenham
75a9b0c8b0
Make oaccept work for multiple opers on the same target.
2010-03-05 14:26:40 -05:00
B.Greenham
d3b90aaad3
Clean up +J to work nicely and properly.
2010-03-05 13:45:01 -05:00
B.Greenham
d925c36c4e
Make m_okick support +J.
2010-03-05 01:40:52 -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
6f659342dc
Add channel metadata system.
2010-03-04 15:08:16 -05:00
B.Greenham
1fbf6db662
Add extensions/m_oaccept , a module to allow opers to bypass +gGR with a command.
2010-03-04 01:40:13 -05:00
B.Greenham
03d65f8fbb
Backed out changeset 8ff8459cb04d
2010-03-03 23:20:48 -05:00
JD Horelick
ccd2e3b8ee
Have KICK not show snotes when you're opped in the channel and you have
...
override on.
2010-03-03 22:34:44 -05:00
B.Greenham
1e25cb1e0e
Add core/m_metadata.c , a module required for metadata propegation to work.
2010-03-03 20:41:39 -05:00