Jilles Tjoelker
dca9e55257
Add propagated resvs, like klines and xlines.
2010-03-27 16:13:57 +01:00
Jilles Tjoelker
1b5d7c2e8a
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
a812a239c8
Remove unused variable.
2010-03-27 02:06:29 +01:00
Jilles Tjoelker
f89191ace9
BAN: xlines do not have oper reasons, their "reason" is already oper only.
2010-03-18 00:22:35 +01:00
Jilles Tjoelker
3cbbfb2556
Add propagated xlines, like klines.
2010-03-16 23:05:50 +01:00
Jilles Tjoelker
34e02db66b
Fix a signedness comparison warning.
2010-03-16 19:13:09 +01:00
Jilles Tjoelker
1702b69419
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-14 17:21:20 +01:00
William Pitcock
f02f338b31
chm_simple(): enforce MLOCK
2010-03-07 23:15:52 -06:00
William Pitcock
8727cbe88a
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
William Pitcock
b99c9ae0bf
Fix order on channel_mlock() call.
2010-03-07 23:12:35 -06:00
William Pitcock
82eac99fc0
Fix typo.
2010-03-07 22:30:30 -06:00
William Pitcock
084ecbe030
Add MLOCK message to netjoin burst.
2010-03-07 22:29:34 -06:00
William Pitcock
ec55bec527
Add MLOCK capability token.
2010-03-07 22:25:41 -06:00
William Pitcock
a51c452643
Rename channel_modes() to channel_modes_real(), and use macros to build both the mode list, and the mlock list.
2010-03-07 22:22:14 -06:00
William Pitcock
d09bb8aeb0
Add syntax description of MLOCK message to ts6-protocol.txt.
2010-03-07 21:51:41 -06:00
William Pitcock
bafd5ea61c
struct Channel: add mode_lock structure to the channel object.
2010-03-07 21:41:06 -06:00
William Pitcock
a51b50c366
struct Mode: add off_mode bitfield to describe disabled channel modes.
2010-03-07 21:40:34 -06:00
William Pitcock
c59d46e572
Correct 325 (RPL_CHANNELMLOCKIS) numeric.
2010-03-07 21:37:23 -06:00
William Pitcock
dd0f1f5b88
Add RPL_CHANNELMLOCKIS for ircd-side MLOCK enforcement.
2010-03-07 21:35:54 -06:00
William Pitcock
cb4ce42ee5
Automated merge with ssh://hg.atheme.org//hg/charybdis
2010-03-07 14:45:47 -06:00
William Pitcock
030cdce7d0
Fix construction of the channel mode vector table.
...
This fixes chm_* modules and should be backported to ircd-seven and charybdis 3.2.
2010-03-07 14:45:42 -06:00
Jilles Tjoelker
13d4255541
Document BAN message.
2010-03-07 14:06:28 +01:00
William Pitcock
9d68c708a4
Update CREDITS.
2010-03-06 21:01:19 -06:00
Jilles Tjoelker
778dd56bf2
Show d/kline setter to opers in stats/testline.
2010-03-06 22:37:42 +01:00
Jilles Tjoelker
1c42ac3556
Hgignore some generated files.
2010-03-06 22:27:54 +01:00
Jilles Tjoelker
ee6da53d74
Avoid crash if get_oper_name() somehow gave no {} for local oper.
2010-03-06 16:37:50 +01:00
Jilles Tjoelker
5c2b9eaf48
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
416d868ed4
Add /stats g to show propagated (global) klines.
2010-03-06 00:31:51 +01:00
Jilles Tjoelker
6229f9f83b
Among bans with the same creation time, prefer the one with longest lifetime.
2010-03-05 23:16:28 +01:00
Jilles Tjoelker
9470d75a42
BAN: Avoid fake direction.
2010-03-05 22:53:35 +01:00
Jilles Tjoelker
cedb7d05b4
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
f54e1a8fd6
Use memmove instead of memcpy where there is overlap (modunload).
2010-03-05 22:05:15 +01:00
Jilles Tjoelker
431a1a2784
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
c935336b64
kline: Fix oper reasons.
2010-03-05 18:28:59 +01:00
Jilles Tjoelker
74178a388e
Fix --disable-balloc.
...
libratbox r26769
2010-03-05 17:28:47 +01:00
Jilles Tjoelker
97f44d343a
Skip propagated bans in rehash txlines/tresvs.
2010-03-05 00:37:56 +01:00
Jilles Tjoelker
9197bc355e
Add code to expire "propagated" bans.
...
The data structure is very simple: a dlink list of all propagated bans.
2010-03-04 00:21:22 +01:00
Jilles Tjoelker
c2e7ab8c1e
ConfItem.next is not used, remove it.
2010-03-03 23:36:28 +01:00
Jilles Tjoelker
9fca38c815
bandb: Group writes in transactions to reduce load on heavy kline activity.
...
When a ban is added or removed, open a transaction and
close it after 3 seconds; any bans in the 3 seconds
will not trigger another transaction (= 4 fsyncs with
sqlite).
The transaction is also committed if ircd closes the
connection, but not if bandb itself is terminated with
a signal.
2010-03-03 22:58:16 +01:00
Jilles Tjoelker
c52fe5f5f2
Merge final 3.2.0 changes.
2010-03-03 01:10:34 +01:00
Jilles Tjoelker
6d9035e030
Added tag charybdis-3.2.0 for changeset c2443ea9ff84
2010-03-03 01:03:41 +01:00
Jilles Tjoelker
b47da22428
Add a hint how to import old ban .conf files into bandb.
2010-03-03 00:20:34 +01:00
Jilles Tjoelker
f9545a9b54
Make struct operhash_entry private.
2010-03-01 01:24:00 +01:00
Jilles Tjoelker
27f616ddf5
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
3d242eb30f
Merge bugfix that also applied to 3.2.x.
2010-02-28 16:45:55 +01:00
Jilles Tjoelker
4db0e2bdf2
Fix memory leak on /rehash bans.
...
We do not have the 'oper' field in klines yet.
2010-02-28 16:45:25 +01:00
Jilles Tjoelker
a12ad04472
Generate the "Temporary K-line %d min" part from aconf->hold - aconf->created.
2010-02-28 16:27:06 +01:00
Jilles Tjoelker
b52c294986
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
Jilles Tjoelker
58c728aed8
Add a missing comment for new /challenge numerics.
2010-02-27 23:56:56 +01:00
William Pitcock
0e21e12f8c
Added tag charybdis-3.2.0 for changeset 6144f52a119b
2010-02-27 15:23:22 -06:00