Bram Matthys
7278c9c8f4
@if causes miscounting of line numbers shown in config errors.
...
Reported by Gottem in https://bugs.unrealircd.org/view.php?id=5509
2020-01-02 13:05:26 +01:00
Bram Matthys
b4fb4568fc
Possibly fix a hang issue. Reported by westor.
2020-01-02 12:46:37 +01:00
Bram Matthys
f8c6996edd
Fix SID being shown (eg: 001) when services set the TOPIC. Reported by westor.
2019-12-31 13:26:31 +01:00
Bram Matthys
a6b5f17656
Fix WHOX 'm', this should be an AND operation, eg: 'WHO +zo m' lists
...
IRC Operators (+o) that have +z set.
Similarly, 'WHO +o-z m' lists IRCOps (+o) which are -z.
Issue found while writing the HELPOP WHO documentation.
2019-12-31 13:22:35 +01:00
Bram Matthys
77e859459a
Add )
...
[skip ci]
2019-12-31 09:44:33 +01:00
Bram Matthys
114ef14a31
Log who (client) or what (signal) requested a config file /REHASH.
2019-12-31 09:41:19 +01:00
Bram Matthys
2c23d4299c
Send a better error when JOIN is used for a channel without hash mark (#).
...
Reported by k4be in https://bugs.unrealircd.org/view.php?id=5514
2019-12-30 19:02:20 +01:00
Bram Matthys
fccb3b2f5b
Add /ELINE exception type 'm' to bypass allow::maxperip.
...
In the configuration item you can now achieve the same via:
except ban { mask 1.2.3.4; type maxperip; }
Or even:
except ban { mask { 1.2.3.4; 8.8.8.8; }; type maxperip; }
etc.
Suggested by The_Myth in https://bugs.unrealircd.org/view.php?id=5507
Also, fixed an issue where the IRCd was counting servers as
clients for maxperip, which doesn't make much sense in practice,
so it only counts users now.
2019-12-30 18:23:55 +01:00
Bram Matthys
e4d9e001d8
Merge branch 'unreal50' of github.com:unrealircd/unrealircd into unreal50
2019-12-30 17:54:40 +01:00
Bram Matthys
c789ac6abe
Add channel:override:mlock operclass permission which allows overriding
...
MLOCK restrictions when services are down (set::services-server).
Suggested by westor in https://bugs.unrealircd.org/view.php?id=5273
By default all opers with the *-with-override privilege have this,
which sounds OK to me.
2019-12-30 17:52:22 +01:00
GottemHams
c2e3c8c8b1
Fix antirandom incorrectly defining its own BAN_ACT_WARN -- which is different from the one defined in include/struct.h and used in banact_stringtoval() -- resulting in kills instead of warns
2019-12-30 12:21:15 +01:00
Bram Matthys
c215a3621a
Use SNI in modulemanager. Not needed for the default one, but if you add
...
custom ones you might need it.
2019-12-28 18:50:03 +01:00
Bram Matthys
910f2ad383
Module manager: more error details when it fails to fetch a repository.
2019-12-28 18:05:22 +01:00
Bram Matthys
aa7b199a8a
Fix crash when reading configuration file with a password that is in
...
the old and unsupported unrealircd-specific md5/sha1 style.
2019-12-28 15:10:34 +01:00
Bram Matthys
63b77796ed
sendto_server(&me, -> sendto_server(NULL,
...
Not sure where the &me originally came from, but it is used in a few places
and is only confusing since it has no meaning... nowadays anyway.
2019-12-27 17:23:24 +01:00
Bram Matthys
c9cf74a735
Drop support for sending server pass (PASS xx) to nickserv. Use SASL!
...
It wasn't working anyway in 5.0.0 and this behavior was non-standard.
2019-12-23 16:40:06 +01:00
Bram Matthys
e3b806ec60
Fix command override priorities again. Lowest value is called first,
...
just like hooks now. Yeah we've messed up a few times by now.
Seems only Gottem uses them :D
So now it would call for example: prio -10, prio 0, 10, 20, cmd.
This matches the behavior of hook priorities (and swhois etc.)
2019-12-23 13:10:33 +01:00
Bram Matthys
595e448239
If do_cmd() is called with NULL mtags then we now generate message tags,
...
run the command, and free them again right before return.
2019-12-23 10:56:25 +01:00
GottemHams
3a55dd8422
TKL exceptions (E-Lines) were missing an expiration notification =]
2019-12-22 21:33:35 +01:00
GottemHams
a1ae90cd16
Fixed incorrect order in which command overrides were processed
2019-12-22 19:01:53 +01:00
GottemHams
fac16fe1c0
match_* functions actually return 1 on match and not 0 :D
2019-12-22 14:48:04 +01:00
GottemHams
35d6e9a067
Fixed mismatch in config variable naming for require-module
2019-12-22 14:47:07 +01:00
Bram Matthys
eac9cdc319
UnrealIRCd 5.0.0 release
2019-12-13 08:38:42 +01:00
Bram Matthys
25bc2b7923
Fix crash on nick change.
2019-12-12 16:58:26 +01:00
Bram Matthys
9fc508483f
webredir module should not depend on curl (fix symbol not found error)
2019-12-11 19:54:17 +01:00
Bram Matthys
3a4d2d907a
Fix tkldb/channeldb causing a 'File exists' error every 5 minutes.
2019-12-11 13:10:26 +01:00
Bram Matthys
a078a5d659
Print a warning that upgrade-conf is for 3.2.x to 4.x, and not for 4.x to 5.x
...
since there are no mandatory changes. For more information why this is
unnecessary, see commit 32ca956e77 .
2019-12-11 12:23:43 +01:00
Bram Matthys
b9729a4f29
Fix bug in syncing spamfilters: ban act char vs string. Didn't always matter,
...
but for example 'gzline' became 'gline' on the other link.
Also replace 'unsigned short action' -> 'BanAction action'
2019-12-08 13:45:59 +01:00
Bram Matthys
32ca956e77
There were only 2 breaking changes in 4.x -> 5.x confs. Now there are 0.
...
Turning these errors into warnings instead should be fine and makes
the upgrade process (and instructions) easier.
* set::oper-only-stats is now a warning
* except tkl is auto-transformed into except ban and is now a warning
Both warnings contain clear instructions on what to do to get rid of
the warning message.
2019-12-08 09:33:38 +01:00
Bram Matthys
cad664e749
Fix invalid parameter in jumpserver module
2019-12-07 18:05:50 +01:00
Bram Matthys
4bfdd84712
Document send.c a bit more.
2019-12-07 16:00:03 +01:00
Bram Matthys
55cad6fe05
Fix SASL authentication not working properly on servers 2+ hops away
...
from services. Reported by Koragg and The_Myth in
https://bugs.unrealircd.org/view.php?id=5485
The test framework has been updated to test these cases better.
2019-12-07 10:08:27 +01:00
Bram Matthys
7764358eb7
Remove some old URL reference / old deprecation notice for set::scan.
2019-12-06 08:44:51 +01:00
Bram Matthys
0bbb935a32
Rename CHECKPROTO() to CHECKSERVERPROTO() to avoid mixing up server caps
...
and client caps in the future.
2019-12-06 08:32:36 +01:00
Bram Matthys
a0b0526556
CAP LIST wasn't outputting anything. Reported by Koragg in
...
https://bugs.unrealircd.org/view.php?id=5483
2019-12-06 08:29:53 +01:00
Bram Matthys
bf61973a6d
Print a warning when changin me::name that this change is not effective
...
until you restart the server.
Yeah it's really too much hassle atm to make that particular setting
/rehash'able, this will probably never change.
Fortunately changing that is rather rare. At least printing the
warning should help those users doing it.
2019-12-01 19:06:22 +01:00
Bram Matthys
35dd6c66b1
Fix doxygen documentation for sendto_channel
2019-11-29 12:21:58 +01:00
Bram Matthys
0f7f872a97
Update release notes and set version to 5.0.0-rc2. The actual public
...
release will probably be on Friday, though.
2019-11-27 19:37:38 +01:00
Bram Matthys
1576f8df23
Warn on some limitations of the @if stuff:
...
* Cannot use include within an @if
..but you can just use an include and then within that file use
an if, to work around it.
* Cannot use loadmodule within an @if
For both this is because include & loadmodule are processed before
the rest. I think most people will be fine with those restrictions,
though.
2019-11-27 16:45:39 +01:00
Bram Matthys
540e7552f9
Fix crash when using conditional configuration (@if $var == ....)
...
reported in https://bugs.unrealircd.org/view.php?id=5281
It was not removing parts properly if an if didn't match,
leading to a use-after-free bug on-boot (or on rehash).
In the process I renamed config_entry_free to config_entry_free_all
since that is what it does. And I created a new config_entry_free(ce)
to free only 'ce' stuff... which is what we want from the
preprocessor.
2019-11-27 15:44:48 +01:00
Bram Matthys
1a1b9ddada
If you changed listen::ip and rehashed it would not apply those changes
...
if you were switching from a IP-specific listener to a * (all) listener.
Reported by vectr0n in https://bugs.unrealircd.org/view.php?id=5235
2019-11-27 13:25:30 +01:00
Bram Matthys
7fe3407508
Clean up whitespace
2019-11-27 13:10:06 +01:00
Bram Matthys
05f0968ccd
Test the various set::tls (and ::tls-options) files for existence
...
so we properly error and exit/fail when booting.
Reported in https://bugs.unrealircd.org/view.php?id=5350
2019-11-27 13:06:02 +01:00
Bram Matthys
1e3d726df7
Setting user mode +q now requires the self:unkickablemode permission.
...
This is included in the *-with-override operclasses.
2019-11-27 12:35:58 +01:00
Bram Matthys
f6515131aa
Handle timed bans in combination with forward, eg: +b ~t:10:~f:#chan:*!*@host
2019-11-27 12:11:26 +01:00
Bram Matthys
0b8d435232
+L can now be set by +o (or higher) instead of requiring +q (channel owner).
...
Also, update helpop on the new meaning of +L: if unable to join, then
the user is forwarded to the specified channel.
2019-11-27 12:00:57 +01:00
Bram Matthys
ae30978680
Fix numeric 470, is now:
...
:irc.test.net 470 nickname #originalchannel #redirect :[Link] Cannot join channel #originalchannel (you are banned) -- transferring you to #redirect
Previously this was completely incorrect:
:irc.test.net 470 nickname [Link] Cannot join channel ..etc...
(yeah even lacking a colon)
2019-11-27 11:38:48 +01:00
Bram Matthys
332ca4898c
Don't send CANNOTSENDTOCHAN (404) twice for dropped repeats in +f.
2019-11-27 10:33:51 +01:00
Bram Matthys
a8534a6063
Add new function kick_user() for use by modules. This so KICKs are
...
done in a consistent way.
2019-11-27 10:33:08 +01:00
Bram Matthys
5d4c474472
Clean up KICK a bit, necessary for next commit which is a bug fix
2019-11-27 10:01:21 +01:00