Bram Matthys
61ba3727df
JSON-RPC: Use proper error response with error codes according to
...
the official specification (one of JSON_RPC_ERROR_*).
Add proper rpc_error() and rpc_error_fmt()
Don't steal reference in rpc_response().
2022-06-19 13:13:33 +00:00
Bram Matthys
4cd520d327
Make user.list() RPC API return a list of all users with details.
...
This is the 1st RPC API call that actually works :D
2022-06-19 13:13:33 +00:00
Bram Matthys
31fc2843a2
Add "rpc" module. Supports parsing from *NIX domain sockets for starters.
2022-06-19 13:13:33 +00:00
Bram Matthys
53732e0f78
Warn if 'websocket' module is loaded without 'webserver' (= won't work).
2022-06-19 13:13:33 +00:00
Bram Matthys
b9d1af8fa0
Call config run hooks for CONFIG_LISTEN and CONFIG_LISTEN_OPTIONS also
...
for unix domain sockets.
2022-06-19 13:13:33 +00:00
Bram Matthys
0134c435d5
Don't apply handshake-delay to any *NIX domain socket connections,
...
instead of only exempting *NIX domain socket control channels.
2022-06-19 13:13:33 +00:00
Bram Matthys
cbfcfa1428
Create src/modules/rpc directory
2022-06-19 13:13:33 +00:00
Bram Matthys
97c8274695
Add RPC API (the beginning..)
2022-06-19 13:13:33 +00:00
Bram Matthys
2397fb8a49
Split 'websocket' module up in 'webserver' and 'websocket'
2022-06-19 13:13:33 +00:00
Bram Matthys
0c32151be1
Sort modes returned by "MODE #channel" (request)
2022-06-18 15:08:45 +02:00
alice
4b72f375f8
Update help.conf to include ~security-group extban ( #220 )
2022-06-17 15:06:01 +00:00
Bram Matthys
3a354c3410
Fix some typos in markdown of release notes.
...
[skip ci]
2022-06-17 13:59:39 +02:00
Bram Matthys
88190d08c4
** UnrealIRCd 6.0.4 **
2022-06-17 13:33:13 +02:00
Bram Matthys
8ea7fcfc9f
Fix tld::mask not working with the new form.
...
Reported by musk.
2022-06-08 08:22:14 +02:00
Bram Matthys
b5f35dfff5
Fix regular users being able to -o a service bot (that has umode +S).
...
Reported by ComputerTech in https://bugs.unrealircd.org/view.php?id=6126
HOOKTYPE_MODE_DEOP wasn't called.
2022-06-08 07:37:03 +02:00
Bram Matthys
8fe7b1bc41
Fix wrong security-group example in release notes for auto oper up.
...
This should be:
security-group Syzop { certfp "1234etc."; }
As this is wrong:
security-group Syzop { mask { certfp "1234etc."; } }
Reported by Han`.
This also makes us throw a config error on the wrong case.
2022-06-05 08:42:05 +02:00
Bram Matthys
28d3875aa9
Make variables in set::reject-message and other buildvarstring() usage
...
no longer expand shorter versions of a variable. It previously had some
unintended form of magic autocomplete where $serv was handled the same
way as if it was $server. This could cause issues in the long run when
variables are added and the meaning of the short form changes.
Reported by westor in https://bugs.unrealircd.org/view.php?id=6123
2022-06-05 08:17:06 +02:00
Bram Matthys
020c3d1fa3
** UnrealIRCd 6.0.4-rc2 **
2022-06-03 18:48:52 +02:00
Bram Matthys
1311c8a963
Fix connthrottle message when throttling (bug introduced in 6.0.4-rc1).
...
Reported by westor in https://bugs.unrealircd.org/view.php?id=6121
2022-06-01 08:49:35 +02:00
Bram Matthys
d5989695e8
Remove last global 'buf' variables. This was already done a lot in time
...
but it seems there were still a couple left. These are now gone as well.
There seem to be no issues with the ones that were left, but it is just
too easy to get it wrong. Declaring buf in function now. This should be
faster anyway, since it is located on nearby memory (stack).
Inspired by previous find from westor (c708a99955c034e842f913479cc597d87b311394).
2022-06-01 08:34:48 +02:00
Bram Matthys
d3f655cb63
Fix space stripping at end of connect and disconnect message, in the
...
"extended_client_info". Was a typo, 'buf' vs 'retbuf'.
Reported by westor in https://github.com/unrealircd/unrealircd/pull/217
2022-06-01 08:21:03 +02:00
Bram Matthys
731adb308d
set::restrict-commands: better error message if you use the same command twice (or more)
2022-05-30 13:05:04 +02:00
Bram Matthys
6ef1a6a708
Update set::antirandom example in modules.optional.conf.
...
Use the new options in the new ::except block, fix broken English
and trim down the text a bit.
This also lowers the threshold from 7 to 6. It was already 5 in
the example block on the wiki, now the wiki and this are the same
again.
2022-05-30 12:59:44 +02:00
Bram Matthys
b4f6c83821
Fix multiline log messages not working, they showed up as single lines
...
with their content added together.
2022-05-30 08:59:44 +02:00
Bram Matthys
c8ef9b2740
Fix set::restrict-commands::except not working. Reported by Rain.
2022-05-29 15:13:12 +02:00
musk
cb9ffd9e17
Update example.fr.conf ( #216 )
2022-05-29 12:27:29 +00:00
musk
dc5a7326cd
Update example.es.conf ( #215 )
...
Add translation of channel history block.
2022-05-29 06:23:34 +00:00
Bram Matthys
b183a3ea7a
Add -Wno-format-overflow as unfortunately this option is too dumb.
...
Eg it warns on sprintf() usage even if there is a strlen() check right above it.
Fixes compile warning on Ubuntu 22.04 / GCC 11.
2022-05-28 18:13:35 +02:00
Bram Matthys
965bfa441b
Crash reporter: use fclose() and not pclose() since this particular
...
file descriptor was opened by fopen() and not popen().
Fixes compile warning on Ubuntu 22.04 / GCC 11.
[skip ci]
2022-05-28 18:00:24 +02:00
Bram Matthys
2f31a8800b
Add missing blacklist { } blocks to example.fr.conf
...
copy-paste from the English one, pending translation by... someone.
[skip ci]
2022-05-28 08:06:26 +02:00
Bram Matthys
0495953f55
Update example.tr.conf with 6.0.4 example.conf.
...
Note that set::conthrottle::except needs a new translation,
and CHANNEL HISTORY needs translation too.
[skip ci]
2022-05-28 08:01:14 +02:00
Bram Matthys
54a2645f21
Update example.fr.conf with 6.0.4 example.conf.
...
Note that various parts are now in English, pending translation to French.
[skip ci]
2022-05-28 07:59:15 +02:00
Bram Matthys
a18316a737
Update example.es.conf with 6.0.4 example.conf.
...
Note that set::conthrottle::except needs a new translation,
and CHANNEL HISTORY needs translation too.
2022-05-28 07:58:19 +02:00
Bram Matthys
25e7142716
Re-indent this monster (example.es.conf)
...
[skip ci]
2022-05-28 07:47:43 +02:00
ZarTek @ CREOLE
bd7b90354d
Remove .asc file after ./unrealircd upgrade ( #212 )
2022-05-27 14:35:10 +00:00
Bram Matthys
9c8cd52057
Add the oper auto-login example to release notes
...
[skip ci]
2022-05-26 21:15:56 +02:00
Bram Matthys
d47fdbede4
Add oper::auto-login. When set to yes, opers are automatically logged in
...
if the oper block permits, the user does not have to send "OPER xyz".
Eg:
security-group Syzop { certfp "xyz"; }
oper Syzop {
auto-login yes;
mask { security-group Syzop; }
operclass netadmin-with-override;
class opers;
}
Then, if you connect with SSL with that certificate fingerprint,
you become IRCOp automatically.
2022-05-26 21:01:13 +02:00
Bram Matthys
c183c06d06
Move HOOKTYPE_LOCAL_CONNECT slightly further down.
...
[skip ci]
2022-05-26 20:56:36 +02:00
Bram Matthys
96897289e0
Allow oper block without password, now that you can use security-group
...
and other selectors in 'mask'. This allows for things like:
security-group Syzop { certfp "xyz"; }
oper Syzop {
mask { security-group Syzop; }
operclass netadmin-with-override;
class opers;
}
except ban {
mask { security-group Syzop; }
type all;
}
allow {
mask { security-group Syzop; }
class special;
maxperip 32;
}
etc...
We do error on the obvious case of mask * and mask *@* when no password
is set, but otherwise try not to stop all cases of user stupidity
(there are just too many...).
2022-05-26 20:31:28 +02:00
Bram Matthys
a4902e121c
Fix crash when using 'account' in 'except ban'.
2022-05-26 17:31:45 +02:00
Bram Matthys
960c3cc1c1
And a similar fix for multi account, eg security-group xyz { account { a; b; c; } }
2022-05-26 17:21:30 +02:00
Bram Matthys
fba0249ec3
Fix for when using security-group xyz { security-group { a; b; c; } }
2022-05-26 17:11:47 +02:00
Bram Matthys
c9f8c42281
Fix CIDR not working in match { ip ....; }
2022-05-26 17:03:17 +02:00
Bram Matthys
6802156c02
Document channel history in example.conf as persistent history is likely
...
something people would want to enable, and perhaps the limits tweaked too.
Suggested by ZarTek-Creole in https://github.com/unrealircd/unrealircd/pull/211
2022-05-26 08:25:34 +02:00
Bram Matthys
82063a48ec
Use single quotes in set::webredir::url example.
...
Suggested by ZarTek-Creole in https://github.com/unrealircd/unrealircd/pull/208
2022-05-26 07:36:11 +02:00
Bram Matthys
fe11f77be6
Fix +H not working in set::modes-on-join.
...
Reported by ZarTek-Creole in https://bugs.unrealircd.org/view.php?id=6114
We now call HOOKTYPE_LOCAL_CHANMODE on the modes we set in modes-on-join,
where 'client' is '&me'. Should be fine, as we already did the same for
+P modes (indirectly) in channeldb.
2022-05-26 07:14:12 +02:00
Bram Matthys
1548137e31
Document SVSO being back again :)
2022-05-25 20:29:09 +02:00
Bram Matthys
d1311a124b
Make ./Config import settings from 6.0.3
2022-05-25 18:27:10 +02:00
Bram Matthys
3936059768
** UnrealIRCd 6.0.4-rc1 **
2022-05-25 17:14:32 +02:00
Bram Matthys
c86e5a3c2d
Fix memory leak on REHASH when using parameter modes in set::modes-on-join
2022-05-25 16:52:41 +02:00