1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-28 08:16:38 +02:00
Commit Graph

6245 Commits

Author SHA1 Message Date
Bram Matthys faab128472 Bump version to 6.0.1 and create draft release notes (unreleased yet!) 2021-12-29 12:02:57 +01:00
Bram Matthys 58551c2d43 When unloading any of the vhoaq channel modes it would cause a crash
later on, because unload_extcmode_commit() would call extcmode_para_delslot()
even though member modes don't use a parameter slot, and hence it
would NULLify a wrong slot, usually for the +H parameter mode. Fun.

We now no longer crash and mass-unset the modes on everyone in the
channel when such a mode is unloaded, just like we do when unloading
any of the other channel modes. It is not done in an efficient way
(one mode per line) but this should be an extremely rare event anyway.

Crash reported by CrazyCat.
2021-12-29 08:41:37 +01:00
Valerie Pond f4bf9986af Fix some typos in CHGIDENT and CHGNAME log messages (#189) 2021-12-28 18:09:08 +01:00
Bram Matthys 3859c2f477 Error when an invalid (unknown) snomask is encountered in the config file.
This should help users who are upgrading to UnrealIRCd 6 spot silly mistakes
which would cause them to miss server notices.

It now errors and refers to
https://www.unrealircd.org/docs/Upgrading_from_5.x#Update_your_snomasks
2021-12-28 18:04:23 +01:00
Bram Matthys f7719d2de2 Make TKL add/remove/expire oper messages show a [duration: 60m] instead of
the [expires: ZZZZZZZZZZZZZZZZZZZZ GMT] string.

This because most people are interested in the length of the ban (so
relative time) and the exact time a TKL expires is less interesting
(the absolute time) and due to GMT/UTC requires calculating to the
local timezone too.

This also makes the tkl expiry messages be more like the add message,
with []'s, while previous it used more free text at the end of the line.
2021-12-26 09:00:39 +01:00
Bram Matthys d687e310bd Add function pretty_time_val_r(), for which you can specify a buf. 2021-12-26 08:59:44 +01:00
Bram Matthys 7f9c7a0eb4 Remove high cpu load warning, since it is confusing and may very well
not be caused by UnrealIRCd.
Reported by armyn in https://bugs.unrealircd.org/view.php?id=6029
2021-12-25 08:58:46 +01:00
Bram Matthys b98d02817a In SPAMFILTER_MATCH log message, remove leading space in 'destination' JSON.
Reported by armyn in https://bugs.unrealircd.org/view.php?id=6027
2021-12-22 17:11:44 +01:00
Bram Matthys c586c14b9f Fix ~T / ~text ban not working (was not censoring or blocking) 2021-12-22 09:25:59 +01:00
Bram Matthys 8dd1864cee Channel mode +f (flood) could place a timed extban with ~t instead of ~time.
This was only a visual issue, and coincidently these bans were still being
removed after the appropriate time, even without the fix for
0b6a70368c.
2021-12-22 09:10:51 +01:00
Bram Matthys 0b6a70368c Fix timed bans (~t/~time) not expiring if all servers on the net are U6.
Reported by armyn in https://bugs.unrealircd.org/view.php?id=6032
2021-12-22 09:10:05 +01:00
kpcyrd c1732581f8 Add SOURCE_DATE_EPOCH support for build date (#188)
For reproducible builds.
2021-12-19 18:56:37 +01:00
Bram Matthys 3059f3289a Channel is not +H? Send empty response/batch (as per IRCv3 discussion)
Backport of https://github.com/unrealircd/unrealircd/pull/156
(simplified)
2021-12-19 10:45:52 +01:00
alicetries b3c191fc23 Update short_date function to avoid crash if year > 9999 (#174) 2021-12-19 10:29:20 +01:00
crazycatdevs 9e7d4b0122 Small simplification (#185) 2021-12-19 10:24:36 +01:00
Bram Matthys d77f42e4be This one should be the other way around...
Not that anything is this particular code path should trigger it (OK,
maybe if some 3rd party module kills the user from HOOKTYPE_SECURE_CONNECT)
better safe than sorry.
2021-12-17 14:20:39 +01:00
Bram Matthys 359f7b4675 Get UnrealIRCd 6.0.0 ready, but don't release *yet*. 2021-12-15 16:54:37 +01:00
Bram Matthys 2c73912080 Fix limit for channel modes kicking in too soon. 2021-12-11 10:33:47 +01:00
Bram Matthys 2a574120f5 Rename function to avoid clashes 2021-12-11 10:25:15 +01:00
Bram Matthys bf1860bba8 Send nick!user@host in WALLOPS message from self.
Fix-for-fix 9f56fb4aa7
2021-12-10 19:41:36 +01:00
Bram Matthys 4bc2848b9e Fix a prototype and change a largely unused log category to avoid clashes. 2021-12-10 10:28:35 +01:00
Bram Matthys 07c2345af5 Fix throttling only cleaning up old entries every 2 minutes.
That is, until the first REHASH happened, after that all is good.

This was caused by update_throttling_timer_settings() being
called before init_throttling().
2021-12-06 17:40:11 +01:00
Bram Matthys 7169523d05 Update installer on Windows (.ISS): do signing during the Inno Setup stage
rather than afterwards as a separate step.
Also clean/group the files in the [Files] section a bit.
2021-12-06 09:24:36 +01:00
Bram Matthys 4702185315 Fix authprompt module: was sending trailing NUL byte in SASL, causing
all authentication attempts to fail via the module (/AUTH user:pass).
2021-12-05 10:19:33 +01:00
Bram Matthys c604a3a70e Make soft extended server bans actually work (GLINE %~country:XX)
Reported by musk in https://bugs.unrealircd.org/view.php?id=6019
2021-12-05 09:45:13 +01:00
Bram Matthys dc53818b29 ** UnrealIRCd 6.0.0-rc2 ** 2021-12-04 10:26:57 +01:00
Bram Matthys adc8d5802f Fix +s/+p during netmerge (was on todo) 2021-12-04 10:17:34 +01:00
Bram Matthys b25da63d27 Allow SVSLOGIN also if set::sasl-server is not set.
Because yeah... why not.
2021-12-04 09:42:51 +01:00
Bram Matthys e78df2461f Fix wrong mode being mentioned in ERR_NOTFORHALFOPS for +L 2021-12-04 09:15:58 +01:00
Bram Matthys b363b2e804 Fix wrong +q vs +a KICK access check. 2021-12-03 18:11:54 +01:00
Bram Matthys 8c8b4279b8 Ignore case-changes in nicks, even though not clear yet if it should be,
https://bugs.unrealircd.org/view.php?id=6013 reported by progval.
2021-12-01 08:49:41 +01:00
Bram Matthys 4af7a541f8 Add 'oldnick' to HOOKTYPE_POST_LOCAL_NICKCHANGE and HOOKTYPE_POST_REMOTE_NICKCHANGE 2021-12-01 08:40:02 +01:00
Bram Matthys 92820fc2e8 Fix uninitialized memory read on snomask change (oper-only) 2021-11-30 06:34:54 +01:00
Bram Matthys d59537391a Cut off channel for KICK at first comma, as we did in U3.2/U4/U5.
Reported by progval in https://bugs.unrealircd.org/view.php?id=6015
2021-11-29 17:23:45 +01:00
Bram Matthys a985b88c52 ** UnrealIRCd 6.0.0-rc1 ** 2021-11-27 14:41:14 +01:00
Bram Matthys 1cd79e381a Fix expansion issue in log message on invalid SJOIN SJSBY (rare)
'$client' was shown as-is instead of expanded, since it was missing.
2021-11-27 10:46:53 +01:00
Bram Matthys cb55931c6e Fix crash on incorrect S2S traffic: "HISTORY" request from remote user.
(This cannot be triggered by clients under normal conditions, only with
deliberate wrong S2S traffic, such as OS RAW, modified source, etc)
2021-11-26 17:06:27 +01:00
Bram Matthys 46d0b4d6bb Actually let's fix this one in -beta4 as well. 2021-11-21 17:34:00 +01:00
Bram Matthys 3320dce301 ** UnrealIRCd 6.0.0-beta4 ** 2021-11-21 17:00:30 +01:00
Bram Matthys 0408c10533 Fix permission check for MODE. Reported by Valware.
This check was accidentally cut out when removing support for bounce
modes in a5b86fcc11.
2021-11-21 16:41:03 +01:00
Bram Matthys d3c98413c1 Websocket module: fix memory leak and also two issues in new forwarder
code (OOB write and a NULL pointer dereference), those last two only
happen for trusted forwarders though.
2021-11-21 16:38:12 +01:00
Bram Matthys e817606ead More of the same. 2021-11-21 10:11:56 +01:00
Bram Matthys dfb7e403e3 Fix issue where an UnrealIRCd 5 server sends one mode line and an
UnrealIRCd 6 server would expand it into two different mode lines
with IDENTICAL msgid values. Obviously message ids must be different
for different events.
Introduced by b078a9c8b5.
2021-11-21 09:35:37 +01:00
Bram Matthys 86b7284e37 Fix another memory leak in SJOIN, similar to the one of an hour ago.
Introduced by b078a9c8b5.
2021-11-21 09:28:13 +01:00
Bram Matthys 75ef181d97 Fix memory leak in SJOIN.
Introduced by b078a9c8b5.
2021-11-21 08:19:40 +01:00
Bram Matthys 8b58218d29 ** UnrealIRCd 6.0.0-beta3 ** 2021-11-19 19:10:39 +01:00
Bram Matthys b42953868b Update parameters of other RunHook()s, other than in mode.c,
for HOOKTYPE_REMOTE_CHANMODE and HOOKTYPE_LOCAL_CHANMODE.
2021-11-19 19:04:48 +01:00
Bram Matthys b078a9c8b5 Fix cut-off and expansion issues with MODE, which is a possible problem when
using mixed UnrealIRCd 5 and UnrealIRCd 6 networks.

This is a slightly complex rewrite of make_mode_str() and do_mode(),
as we nog go from single mode lines to potentially multiple mode lines.

In short: whenever we would be near buffer cut-off point (the famous
512 byte limit) then previously we would prevent the mode, though not
succesfully in all cases where a network consists of mixed 5.x and 6.x.
From this point onward we no longer do that. Instead we convert one
MODE command to two MODE lines if that is needed.
The benefit of this is that we no longer prevent it BEFORE processing
the MODE, which is a flawed method and could be wrong (causing desyncs).
And also, we no longer partially ignore MODE lines from clients when
they would cause the limit to be exceeded, as we replace them with
two MODE lines instead.

These are more changes than I wanted at such a late point but.. they seem
to be necessary to prevent U5-U6 compatibility issues.
2021-11-19 13:53:21 +01:00
Bram Matthys 36274f7242 Fix nick-flood message appearing even though the user was not changing nicks. 2021-11-13 13:45:39 +01:00
k4be 0cb599be09 extjwt: enable valid "vfy" url checking and update related documentation 2021-11-11 07:55:22 +01:00