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
JD Horelick
ef07b59ac8
Add helpchan and helpurl that tell users the official help channel
...
and (optionally) link them to your network's specific helppages on
the intertubes. It is shown in /quote help (with no extra parameters).
2010-03-28 14:08:47 -04:00
Jilles Tjoelker
7c880acbfe
Fix various compiler warnings.
2010-03-27 20:09:46 +01:00
Jilles Tjoelker
7bf8ae67cc
Restore snotes, logs for UNRESV nick.
...
This bug was introduced when adding bandb.
2010-03-27 16:24:13 +01:00
Jilles Tjoelker
9b9d818b32
Add propagated resvs, like klines and xlines.
2010-03-27 16:13:57 +01:00
Jilles Tjoelker
d0cf872a95
XLINE: Do not cluster unxlines ON specific servers.
...
This bug was introduced with BAN support for XLINE.
2010-03-27 16:09:26 +01:00
Jilles Tjoelker
5d2661a149
Remove unused variable.
2010-03-27 02:06:29 +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
JD Horelick
504f309e38
Add option general::use_propagated_bans to allow disabling new KLINE.
...
If this option is yes (default), KLINE by itself sets global (propagated) bans.
If this option is no, KLINE by itself sets a local kline following cluster{},
compatible with 3.2 and older versions.
2010-03-27 14:58:04 -04:00
William Pitcock
28805dc5fc
Add propagation of MLOCK state for simple modes.
...
Special modes like +j can be tracked easily just by adding the necessary
code to parse them to set_channel_mlock(). This will cover propagation
as well.
2010-03-07 23:13:39 -06:00
B.Greenham
01b2be6fe1
Allow users to send replies through +G the same as they can through +g.
2010-09-10 13:26:41 -04:00
B.Greenham
ca328a798f
Fix crash upon recieving SVSJOIN for remote user.
2010-08-30 18:25:40 -04:00
Jilles Tjoelker
3721c57468
Show the services login name in WHOWAS.
...
The numeric is the same (330) as used in WHOIS.
This takes at most half a megabyte of memory (large network, 30 char nicks).
2010-08-29 22:30:54 +02:00
Jilles Tjoelker
80d57d3924
Move RPL_WHOISLOGGEDIN to sendto_one_numeric().
2010-08-29 22:29:17 +02:00
Jilles Tjoelker
d8316e070f
Provide an error message when a user does /quote ban.
2010-08-29 15:16:47 +02:00
Jilles Tjoelker
9e94d9ea13
Add target change for channels.
...
This has a separate enabling option channel::channel_target_change.
It applies to PRIVMSG, NOTICE and TOPIC by unvoiced unopped non-opers.
The same slots are used for channels and users.
2010-08-28 20:02:42 -04:00
JD Horelick
ad6bcd42f9
Fix my last commit
2010-08-01 14:35:22 -04:00
JD Horelick
4eaadbf404
Fix a couple of compile warnings.
2010-08-01 14:29:06 -04:00
B.Greenham
d7a3d23cdd
Add channel::admin_on_channel_create, which gives users creating new channels +ao instead of +o, if enabled.
2010-07-29 14:22:33 -04:00
B.Greenham
7af1b8d223
Merge.
2010-07-28 20:01:55 -04:00
B.Greenham
ffd69d40d1
Fix the 'phantom user' bug, along with a bug that would make repeat mode changes appear on burst.
2010-07-28 19:54:22 -04:00
JD Horelick
713624ed6a
Add hide_channel_below_users value to m_info.
2010-07-10 05:01:23 -04:00
JD Horelick
6898ce9dde
Add general::hide_channel_below_users option.
...
This allows server owners to set how many users must be in a channel before
/LIST will show it.
2010-07-10 01:28:21 -04:00
JD Horelick
2588ff97f4
Change a bit of the last commit since opers do not go through +g on ShadowIRCd as they do on Charybdis.
2010-07-04 16:12:31 -04:00
JD Horelick
33736ea75f
Tweak auto-accept:
...
* does not apply to NOTICE (as those may well be automated)
* mirrors +g behaviour so that no useless accept entries are added for services
* respects max_accept, if it would be exceeded the message is dropped with numeric 494
* check moved up so this is checked before floodcount/tgchange
Pulled from Charybdis upstream changeset 1388:b1ef26176350 done by jilles.
2010-07-04 15:27:34 -04:00
JD Horelick
dab6375a1e
Branch Merge
2010-07-04 03:29:35 -04:00
JD Horelick
ba06b3db25
Backed out changeset 8781a9e4c62c
2010-07-04 03:25:54 -04:00
William Pitcock
5b71b8ec50
Stop griefing through taunting while hiding behind CALLERID.
...
This shouldn't provide any way for a client to get on a CALLERID list
without authorization, as if a client is +g already, a CTCP request, for
example, won't be replied to.
2010-07-03 00:44:55 -05: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
20eef93004
Add /stats g to show propagated (global) klines.
2010-03-06 00:31:51 +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
Jilles Tjoelker
90072e8be6
kline: Fix oper reasons.
2010-03-05 18:28:59 +01:00
Jilles Tjoelker
a491246f8f
Skip propagated bans in rehash txlines/tresvs.
2010-03-05 00:37:56 +01:00
Jilles Tjoelker
a0f4c418d3
Track who set a dline/kline/xline/resv as in ratbox3.
...
Like in ratbox3, there is no way to query this information
(other than bandb's tables, but they worked before this
commit).
2010-03-01 01:23:22 +01:00
Jilles Tjoelker
157c1f04bd
Generate the "Temporary K-line %d min" part from aconf->hold - aconf->created.
2010-02-28 16:27:06 +01:00
Jilles Tjoelker
ce60772db6
Store the creation time of klines and dlines as a time_t instead of as text.
...
The value 0 indicates the creation time is unknown (currently the case
for bandb).
Also store a creation time for xlines and resvs, but do not use it yet.
2010-02-28 00:46:56 +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
069f104a2e
Add shared::modules option, remote module stuff coming later/soon.
2010-03-24 15:50:15 -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
74e3e4f1e2
Add DIE shared option for remote restart and die which are on their
...
way next.
2010-03-23 14:19:48 -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
JD Horelick
1cc810d3a7
Add general::true_no_oper_flood . I'm not going to explain it here.
...
Ask me what it does on IRC if you're curious.
2010-03-21 00:14:02 -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
Jilles Tjoelker
cc7e9872be
Fix a signedness comparison warning.
2010-03-16 19:13:09 +01: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
3a68f97851
Automated merge with ssh://shadowircd/uranium/shadowircd/
2010-03-08 18:09:35 -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
938bd268e0
Remove curly braces around 2 options in m_info. This caused some
...
compile warnings which are now gone and the 2 options seem to show
just fine in /INFO and nothing segfaults when you do /INFO.
2010-03-08 13:51:46 -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
5b453fee2a
Merge.
2010-03-03 23:32:09 -05:00
B.Greenham
03d65f8fbb
Backed out changeset 8ff8459cb04d
2010-03-03 23:20:48 -05:00
B.Greenham
32d464fe77
Finish adding custom operstring support.
2010-03-03 23:06:32 -05:00
B.Greenham
6d1f5fcc73
Automated merge with ssh://shadowircd/uranium/shadowircd/
2010-03-03 22:59:49 -05:00
B.Greenham
3e06a4c803
Finish adding swhois support.
2010-03-03 22:59:26 -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
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
e7c1f6a51f
Luke! Use the fail Luke!
...
The fail. I am made of it.
* Jdhore boards the failboat.
2010-03-03 15:38:28 -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
f428b59fa8
Add +M awareness to KICK.
2010-03-03 14:51:25 -05:00
JD Horelick
c6fa55060c
Made TOPIC override send snotes.
2010-03-03 13:21:28 -05:00
JD Horelick
9ace21a74d
First step of expiry of +p crap.
2010-03-02 20:33:58 -05:00
JD Horelick
fbd2e5da56
Make KICK and INVITE send snotes on override.
2010-03-02 13:07:14 -05:00
B.Greenham
220c9db54d
Add general::default_operhost.
2010-03-02 01:57:25 -05:00
B.Greenham
5ad94b5000
Add channel::exemptchanops, and make +cCDTNG support it.
2010-03-01 02:43:55 -05:00
B.Greenham
0eceaff17a
Borrow some ircd-seven code to create channel::use_local_channels.
2010-02-28 22:42:59 -05:00
B.Greenham
6a52011244
Fix m_kick so that it checks if you're trying to kick the target, not yourself.
2010-02-28 12:07:16 -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
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
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