0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-04 21:08:57 +01:00
Commit graph

576 commits

Author SHA1 Message Date
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
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
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
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
Alexander F?r?y
51027be825 Use RPL_QUIETLIST and RPL_ENDOFQUIETLIST instead of RPL_BANLIST and
RPL_ENDOFBANLIST for channel mode +q.
2010-02-27 01:08:41 +01:00
Jilles Tjoelker
1815320d3b 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
22342cd11f Remove code to write bans to csv files. 2010-02-22 19:09:46 +01:00
Jilles Tjoelker
981586df2b spambot checks: Fix excessive expiry in some cases. 2010-02-21 01:29:41 +01:00
William Pitcock
dbcd150bce Do not try to free the alias dict if it does not exist. 2010-02-18 18:38:26 -06:00
William Pitcock
cb7f3af4d3 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
9600850e8f s/o:lines/operator blocks/ 2010-02-17 23:01:58 -06:00
William Pitcock
76169ea734 Clarify ERR_NOOPERHOST and convert it to use sendto_one_numeric(). 2010-02-17 06:51:41 -06:00
William Pitcock
ff31db8473 Add support for client certificate fingerprints in o:lines. 2010-02-17 06:41:41 -06:00
Jilles Tjoelker
4f2685f3e1 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
179becdf5f target change: Overwrite the least recently used target with a new one. 2010-02-15 00:31:17 +01:00
JD Horelick
97deedc42f 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
bc4fccbc44 One or 2 English language cleanups. Less than I thought there were. 2010-02-08 16:28:08 -05:00
Jilles Tjoelker
8eda114a78 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
17e4b48b55 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
William Pitcock
11dff8a423 Clarify CertFP message. 2010-01-31 17:35:15 -06:00
Jilles Tjoelker
7247337afa Add certfp support to libratbox and ssld.
This lets a user connect with a client certificate, and
passes the certificate's fingerprint to ircd, which
currently just notices it to the user.

A new ssld->ircd message 'F' is used to pass on the
fingerprint.

This is only for OpenSSL for now, not GNUTLS.
2010-01-31 19:04:20 +01:00
William Pitcock
47f9d6002a Automated merge with ssh://hg.atheme.org//hg/charybdis 2010-01-30 19:21:28 -06:00
William Pitcock
7d778d510a modreload: Causing an entire 50,000 user network to crash due to user-error is a bad idea, don't let it happen again by not allowing paths in /modreload. 2010-01-30 19:21:17 -06:00
Jilles Tjoelker
5f2df25109 Slightly tighten auth{} duplicate check:
If the existing auth{} block has no auth_user, it will
trump any auth{} block for the same u@h.
2010-01-31 01:40:43 +01:00
Jilles Tjoelker
3d1f32c07a Take auth_user into account when detecting redundant/duplicate auth{}.
from ircd-seven (spb)
2010-01-31 01:36:37 +01:00
Jilles Tjoelker
90afc118fd No need to be paranoid about clearing auth_user.
It is a username, not a password.
2010-01-31 01:30:25 +01:00
Jilles Tjoelker
fcb057992c Fix memory leak with auth_user.
from ircd-seven (spb)
2010-01-31 01:29:08 +01:00
Jilles Tjoelker
8f10356217 Remove remnants of <foo>_t typedefs. 2010-01-30 15:57:10 +01:00
Jilles Tjoelker
cd5d9abf63 Do not read in help files starting with a dot (including dot and dot-dot). 2010-01-22 02:02:45 +01:00
Stephen Bennett
d06f3da955 Don't cache files that are empty or not files. Avoids crashing on the likes of 'HELP .' 2010-01-21 16:27:34 +00:00
William Pitcock
2e918bf515 Merge +C (no CTCP to channels) from ircd-seven. 2010-01-19 02:11:04 -06:00
William Pitcock
fdb90316e1 Automated merge with ssh://hg.atheme.org//hg/charybdis 2010-01-19 01:47:27 -06:00
William Pitcock
bde6442c47 supported: Add CLIENTVER=3.0 to indicate presence of 3.0 core capabilities (such as CAP, extended WHO, etc) as requested by LifeIsPain. 2010-01-19 01:47:21 -06:00
Jilles Tjoelker
70ea02ebd6 Complete the move of xlines and resvs from aconf->name to aconf->host. 2010-01-08 18:46:29 +01:00
William Pitcock
23959371d0 Fix up more things with bandb. 2010-01-07 18:14:15 -06:00
William Pitcock
80c9ac516e Load in new bans from bandb on startup. 2010-01-07 18:06:15 -06:00
William Pitcock
6eebc37378 Start bandb on ircd initialization. 2010-01-07 17:22:44 -06:00
William Pitcock
83595e6016 Add bandb IRCd APIs. 2010-01-07 17:10:16 -06:00
Jilles Tjoelker
22df9f8989 Update some copyright years. 2010-01-01 22:46:34 +01:00
Jilles Tjoelker
cef7a7bc4e Remove FLAGS_SENDQEX, fix sendq exceeded snotes for servers.
from ircd-ratbox
2009-12-21 16:58:25 +01:00
Stephen Bennett
6657de63ac Merge 2009-12-08 19:23:32 +00:00