Bram Matthys
7cabd4b79e
Const const const
2021-09-11 08:17:12 +02:00
Bram Matthys
ac84d4f207
Const const const... modules.c and elsewhere.
2021-09-11 07:53:30 +02:00
Bram Matthys
6f91b2854a
Add extra logging for build tests to trace issues.
2021-09-11 07:02:17 +02:00
Bram Matthys
5bc244c1f3
Add a lot more consts. This finishes the work for all hooktypes.
2021-09-10 20:36:38 +02:00
Bram Matthys
74d1481dcb
Do the same for RunHookReturn() and RunHookReturnInt().
...
NOTE: The arguments are swapped, it is now eg:
RunHookReturn(HOOKTYPE_SOMETHING, !=0, a, b, c);
2021-09-10 19:32:17 +02:00
Bram Matthys
7dac12e31e
Get rid of RunHook2/3/4/5/6/etc and just have RunHook with __VA_ARGS__
2021-09-10 19:27:18 +02:00
Bram Matthys
cb9b24686b
Module API changes:
...
- For HOOKTYPE_LOCAL_JOIN and HOOKTYPE_REMOTE_JOIN: drop parv[] argument
as it was useless anyway, it only contained the channel name in parv[1]
but never the key, sometimes was entirely NULL even.
- For HOOKTYPE_PRE_LOCAL_JOIN instead of char *parv[] we now pass
const char *key. As predicted more than a year ago when fixing
0902ed7a99
2021-09-10 19:22:47 +02:00
Bram Matthys
5b091975f5
Get rid of parv[] in HOOKTYPE_CAN_JOIN and HOOKTYPE_CAN_JOIN_LIMITEXCEEDED
...
as it already has a 'key' argument too.
2021-09-10 19:11:37 +02:00
k4be
b2718379d7
Workaround compiler warning with openssl version below 1.1.0-pre3,
2021-09-10 17:02:19 +02:00
k4be
e13815b604
Add extjwt module
2021-09-10 16:19:07 +02:00
Bram Matthys
c5e0ba7780
Fix build with cURL due to the latest changes.
2021-09-10 15:50:01 +02:00
Bram Matthys
86fa29aaee
Add consts in support.c
2021-09-10 15:48:58 +02:00
Bram Matthys
9438ddfd93
Add consts in user.c
2021-09-10 15:40:50 +02:00
Bram Matthys
09a412782d
Const stuff for misc.c
2021-09-10 15:25:21 +02:00
Bram Matthys
447555e044
More consts in stats.c
2021-09-10 15:07:17 +02:00
Bram Matthys
f085173d46
More const char * stuff... mostly in conf.c but also elsewhere.
2021-09-10 15:01:23 +02:00
Bram Matthys
2e82ab0eca
Make CommandOverrideAddEx() the new CommandOverrideAdd():
...
IOTW, change CommandOverrideAdd() to require a priority argument:
- CommandOverrideAdd(modinfo->handle, "TEST", override_test);
+ CommandOverrideAdd(modinfo->handle, "TEST", 0, override_test);
2021-09-10 14:13:07 +02:00
Bram Matthys
bba0124bd3
Drop the Ex... CallbackAdd*Ex() -> CallbackAdd*()
2021-09-10 14:09:22 +02:00
Bram Matthys
6ebddc8817
Update channel mode API to use more consts
2021-09-10 14:06:57 +02:00
Bram Matthys
08a32429ff
Update extban API to use more consts
2021-09-10 13:39:26 +02:00
Bram Matthys
d4d4da6a8d
Add another const to ValidatePermissionsForPath. Fix Windows build, maybe?
2021-09-10 12:58:15 +02:00
Bram Matthys
66a51fb659
Massive conversions from 'char *' to 'const char *' and 'char **' to 'const char **'
2021-09-10 12:46:31 +02:00
Bram Matthys
edfdfe4a03
Add HookAddConstString() and friends.
...
Also EfunctionAddPChar() -> EfunctionAddString(), and callbacks etc.
2021-09-10 11:59:14 +02:00
Bram Matthys
a3bfa210e9
HookAddPChar() -> HookAddString()
...
and .pcharfunc -> .stringfunc
2021-09-10 11:49:06 +02:00
Bram Matthys
fe3907f153
Use more const char *
2021-09-10 11:39:04 +02:00
Bram Matthys
d648cd0729
Use strlncpy() everywhere where we previously used strlncat() with a empty
...
buffer (due to the lack of strlncpy before...).
2021-09-10 11:26:36 +02:00
Bram Matthys
c550d95619
Add strlncpy(): works just like strlcpy except that it has an extra
...
argument which specifies how many characters to copy max.
strlncpy(dest, src, sizeof(dest), maxcopybytes);
vs
strlcpy(dest, src, MIN(sizeof(dest),maxcopybytes+1));
We already had a strlncat() vs strlcat()
2021-09-10 11:19:57 +02:00
Bram Matthys
cd88e02f3d
Use more const char *
2021-09-10 11:11:54 +02:00
Bram Matthys
463c7d4ddf
Spoof remote connecting/disconnecting notices with sender being the
...
server where the client is (or was) on. Just like we did in UnrealIRCd 5.
Not sure if API-wise and variable-name-wise I want to do it this way,
but whatever...
2021-09-10 08:54:29 +02:00
k4be
59888af8db
Fix crash on failed file download while rehashing
2021-09-05 19:56:41 +02:00
Bram Matthys
43f77b8211
BuildBot: log server commands for tracing
2021-09-04 10:55:11 +02:00
Bram Matthys
2951c94ccd
Use $MAKE instead of make in extras/build-tests/nix/build too
2021-09-04 09:37:45 +02:00
Bram Matthys
01ec8696d0
FreeBSD hangs with ASan enabled, in OPENSSL_init_ssl(), so disable it in
...
the build tests (wtf?)
[skip ci]
2021-09-04 09:36:59 +02:00
Bram Matthys
4ef3b9f000
Add BSDmakefile with a note to run 'gmake' for BSD users.
...
Also, check for GNU make (which can be either 'make' or 'gmake')
early in ./Config and print out an error to install prerequisites
from https://www.unrealircd.org/docs/Installing_from_source
This also replaces 'make' with ${MAKE} (and such) everywhere.
2021-09-04 09:31:30 +02:00
Bram Matthys
894b7e5461
Makefiles: switch from suffix rules to pattern rules. As suffix rules
...
can't have dependencies, so if you change a .h file, it fails to
recompile the other dependencies. Grmpf!
This does mean that we require GNU Make (gmake) from now on.
2021-09-04 08:25:18 +02:00
Bram Matthys
9ef1d06afd
Remove more unused stuff in dynconf.h, and drop set::dns which did
...
nothing since 3.2 or so.
2021-09-03 21:17:51 +02:00
Bram Matthys
13dc17f5dc
Code cleanup: remove unused structs and variables.
2021-09-03 21:07:38 +02:00
Bram Matthys
617288991e
Remove find_except(), conf_except and struct ConfigItem_except.
...
These are all unused since the addition of ELINE.
2021-09-03 20:46:06 +02:00
k4be
8c6f94ffef
metadata debug: remove command logging and replace last sendto_snomask with unreal_log.
...
Also get rid of unused trylater variable.
2021-09-03 18:54:19 +02:00
Bram Matthys
4a82b89793
Code cleanup in tkl.c: get rid of confusing 'whattodo' and use 'add'
...
which is 1/0 so that the meaning is straightforward.
2021-09-03 11:05:19 +02:00
Bram Matthys
16179b9c00
Don't log add_config_resource() debug code by default.
2021-09-03 10:37:51 +02:00
Bram Matthys
a9833ebedf
Fix crash on empty remote METADATA (bad S2S traffic).
2021-09-03 08:50:16 +02:00
Bram Matthys
c4a4867ca5
More goto's make the world a better place.
...
Oh and also fix a memory leak in parse_extended_server_ban().
2021-09-03 08:06:03 +02:00
Bram Matthys
7d75b38c26
OpenSSL: Check for lib64
...
Mostly due to openssl 3 beta if you custom build to a specific dir.
2021-09-03 07:54:25 +02:00
Bram Matthys
1f2e79b64c
Fix missing return after exit_client() in PROTOCTL.
...
This caused client->server to be NULL and then when processing
another PROTOCTL parameter this would cause a crash.
2021-09-02 18:15:12 +02:00
Bram Matthys
725e03e1e9
Simplify identical_ban(), it was never perfect anyway.
2021-09-02 17:20:54 +02:00
Bram Matthys
9cdd90e848
Ignore remote MONITOR requests.
...
(Fixes crash with faulty S2S traffic)
2021-09-02 17:08:10 +02:00
Bram Matthys
5b9c419041
Add parse_extended_server_ban(). This makes named extended server bans
...
working now (eg ELINE ~certfp:xyz etc).
Also fixes a crash due to an OOB read.
2021-09-02 17:01:20 +02:00
Bram Matthys
9952a8e98f
Be more careful in json_expand_client() when called for a server that is
...
only partially a server yet: IsServer() is true but client->server is NULL.
Fixes a crash when called from PROTOCTL.
Actually not entirely sure if this happens in practice, but better safe
than sorry.
2021-09-02 15:59:43 +02:00
Bram Matthys
fa5c9039a2
Put the same extban rule checks in extban_is_ok_nuh_extban() as they
...
already were in extban_conv_param_nuh_or_extban().
The recursion check was already there, but not the "rule 2 violation"
if ((extban->options & EXTBOPT_ACTMODIFIER) || (extban->options & EXTBOPT_NOSTACKCHILD))
This also backs out the temporary fix 5df1b1b889 .
2021-09-02 15:51:11 +02:00