1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-07-04 21:43:13 +02:00
Commit Graph

8765 Commits

Author SHA1 Message Date
Bram Matthys 4e511da9fb Update default logging conf
[skip ci]
2021-09-24 15:52:41 +02:00
Bram Matthys 8de1adc1c0 Update SECURITY.md to include U6
[skip ci]
2021-09-24 11:33:26 +02:00
Bram Matthys 56c3b4ced6 Automatically add default log block that logs everything if no log
block to disk is present.
Also update the English example.conf.

Both may need some default filtering (or not)...
2021-09-24 11:30:04 +02:00
Bram Matthys 9852ec9991 No longer log everything, so apply source { } on log blocks for disk files.
This also adds the option "all" to log everything (after which you can
use exclusion if you wish, eg "!whatever".
2021-09-24 11:15:52 +02:00
Bram Matthys d3dfa5f40c Make negative matching work in log sources, update default snomasks.
No longer log to all ircops if no matching snomasks.
So yeah, if you don't load snomask.default.conf you will see nothing
(TODO: some warning / error for this)
2021-09-24 11:07:25 +02:00
Bram Matthys 1d73db560c Get rid of modules/snomasks directory, since the snomask module API is gone.
(IRCOps can set any snomask dynamically now)
2021-09-24 10:10:27 +02:00
Bram Matthys b41311ddaf Update default snomask to +bBcdfkqsSoO 2021-09-24 10:03:18 +02:00
Bram Matthys e14b463b60 Major update to default snomask configuration 2021-09-24 09:41:32 +02:00
Bram Matthys bcfe43788d Some unimportant unreal_log() updates.
[skip ci]
2021-09-24 09:41:21 +02:00
Bram Matthys be6bbbcc6b Convert all remaining sendto_umode()/sendto_umode_global() to unreal_log().
Except, of course, the ones that actually need to send to a user mode,
which is only LOCOPS and GLOBOPS.
2021-09-24 08:28:37 +02:00
Bram Matthys 52667445f2 Fix warning on vsendto_prefix_one (my mistake...) 2021-09-23 20:03:33 +02:00
Bram Matthys 43e4c5444f We already got rid of sendto_ops(), now get rid of sendto_realops().
Use the new logging instead.
2021-09-23 19:57:05 +02:00
Bram Matthys 2a7da65574 Fix header: wallops -> usermodes/wallops 2021-09-23 19:31:28 +02:00
Bram Matthys 0439e4f89d Move wallops module from "wallops" to "usermodes/wallops"
(which includes the command)
2021-09-23 19:25:38 +02:00
Bram Matthys 20c4ac2cd1 Move all wallops code out of the core. 2021-09-23 19:21:19 +02:00
Bram Matthys b94707a51b Change (or delete) old sendto_ops() calls. Function is now gone. 2021-09-23 19:14:10 +02:00
Bram Matthys e36c85e4ce I don't understand much from this old code, but.. whatever. 2021-09-23 19:13:55 +02:00
Bram Matthys 6abd74b121 Get rid of REHASH flag handling for staff, just rehash ffs...
And this module is not perm so we can ditch all this code.
2021-09-23 18:55:17 +02:00
Bram Matthys cb31ec97a3 JSON log: expand a bit more for IsMe(), like filling in some client.server
stuff. Also add client.server.info for both IsServer() and IsMe().
2021-09-23 18:50:08 +02:00
Bram Matthys 720f597ad6 Get rid of current snomask system and allow ircops to set any snomask
(that is: a-z A-Z) so to use the dynamic system with the new logging.
Largely untested.
2021-09-22 15:49:20 +02:00
Bram Matthys 7fdd14de95 Remove sendto_snomask() and sendto_snomask_global() as this is no longer
the way we do things with the new logging stuff.

And converted the last few calls to these functions to unreal_log().
2021-09-22 14:27:50 +02:00
Bram Matthys e6bc040402 Update coders in ./Config as well (and restyle a little bit) 2021-09-22 12:46:38 +02:00
Bram Matthys 5175afb598 Update ircd coders 2021-09-22 12:02:46 +02:00
Bram Matthys 8d5ccee2d1 Put arabic-utf8 in the correct group and #if out the hard errror
when mixing UTF8 groups, make it a general warning again as it
may or may not be an issue.
2021-09-22 09:42:42 +02:00
Bram Matthys bcf5b2d4b8 Add support for arabic-utf8 in set::allowed-nickchars. Supplied by Sensiva
in https://bugs.unrealircd.org/view.php?id=3734
2021-09-22 09:42:08 +02:00
Bram Matthys 215677d785 Fix hooks, so gcc compiles again after last few commits. 2021-09-20 18:32:32 +02:00
Bram Matthys 381454bd1d 1) Change from .prefix_priority to .rank.
2) Make higher value = higher ranking
3) Ship with defines for these:
 #define RANK_CHANOWNER  4000
 #define RANK_CHANADMIN  3000
 #define RANK_CHANOP     2000
 #define RANK_HALFOP     1000
 #define RANK_VOICE        -1
2021-09-20 16:09:14 +02:00
Bram Matthys 139098919b Get rid of PREFIX_* in sendto_channel(), message.c and in chanmsg hook.
We use char *member_modes like we now have at all the other places,
which contains eg "o".

TODO: fix prefix sending rules or remove some if 0'd out code

And not sure if we want to do it entirely this way :D
2021-09-20 15:54:57 +02:00
Bram Matthys 6277efd85e Make SAJOIN code use generic prefix framework. Also fix multi-channel
joins in such a case, code was wrong (things being done in the wrong
scope).

This also fixes a bug where an OperOverride message was generated
for SAJOIN nick @#test
2021-09-20 14:19:04 +02:00
Bram Matthys 83f4619e78 Get rid of the choice for/aginst PREFIX_AQ for three reasons:
1) All IRC clients support prefixes nowadays
2) People generally misunderstand the question and think this
   disabled +q (channel owner) and +a (channel admin), when
   in fact it does not. It only enables/disables the showing
   of prefixes, and it changes some of the rules eg requiring
   +qo / +ao for actions that normally only require +q / +a.
3) We now have the modularized +q and +a, so you can actually
   disable channel owner and channel admin, which is what most
   users want(ed) that previously disabled PREFIX_AQ.

For all users (95%+) that enable PREFIX_AQ there is no effective
change. For the other 5% it is likely only for the better.
2021-09-20 13:19:51 +02:00
Bram Matthys 067fb5c830 Fix last detected REHASH memory leak for now (couple of bytes) 2021-09-20 10:06:24 +02:00
Bram Matthys 1e6cce798b Fix memory leak on rehash: free log->sources 2021-09-20 10:04:43 +02:00
Bram Matthys 1631f35e18 Actually free memory of the channel mode, now that we use a linked
list instead of a fixed array.
(since 783cc3ff5b from 1 month ago)
2021-09-20 09:51:26 +02:00
Bram Matthys 3513806e66 Make PREFIX= dynamic by writing it based on the loaded modes. 2021-09-19 18:30:54 +02:00
Bram Matthys dd9f65f585 Add the new modules for vhoaq handling :D 2021-09-13 18:55:06 +02:00
Bram Matthys 187157b5be Fix compiler warnings 2021-09-13 18:50:40 +02:00
Bram Matthys 4cea88645c Modularize member modes (vhoaq).
Still need to clean up a bit after this, but it passes all tests :)
2021-09-13 18:44:18 +02:00
Bram Matthys 6586fe8acd Remove all unused numerics from include/numeric.h. 2021-09-12 16:46:25 +02:00
Bram Matthys cf936078d4 Get rid of the legacy numeric stuff. The file src/numeric.c is removed
as all the numerics are in include/numeric.h now, so we can have
format string checks with a few macro tricks.
(See also previous commits)
2021-09-12 16:31:26 +02:00
Bram Matthys 6237bf5f5f Convert watch code to use new sendnumeric(), getting rid of the temporary
sendnumeric_legacy() calls.

This also fixes some small format string bugs (eg: argument too much and
some time_t fun, like the previous commits elsewhere... nothing fancy).
2021-09-12 16:28:04 +02:00
Bram Matthys 4392468c3e Update HOOKTYPE_CAN_JOIN and HOOKTYPE_CAN_JOIN_LIMITEXCEEDED to take
an extra char **errmsg argument. Upon failure (non zero return value)
this should contain a format string to be sent to the client
(with the return value denoting the number of the numeric).

This gets rid of sendnumeric_legacy() in join.c
2021-09-12 16:09:36 +02:00
Bram Matthys e27749f556 Use long long casts due to time_t difference on Windows vs Linux.
Should now compile without errors on both.
2021-09-12 15:29:26 +02:00
Bram Matthys e046ec7244 Regenerate and mention actual number of the numeric in STR_ERR_*/STR_RPL_*. 2021-09-12 14:46:43 +02:00
Bram Matthys fc9bf5d607 Change sendnumeric() so it can check for format string problems.
This already found a few issues.

As a side-effect, this also means you can only use RPL_xxx and
ERR_xxx in the 2nd argument from now on. You can no longer use
a dynamic integer (eg 'reply') at runtime, since then the format
string cannot be checked.

More to follow, after making sure it works on Windows too.
2021-09-12 14:30:34 +02:00
Bram Matthys 6577721089 Get rid of the option to show modes in /LIST. Always do this.
I don't think there were more than a handful of people who disabled
this, and it clutters the source badly (not to mention that this
should not be a compile time option at all).
2021-09-12 11:28:07 +02:00
Bram Matthys 3543617834 Get rid of some useless #ifdef'd numeric stuff. 2021-09-12 11:25:34 +02:00
Bram Matthys 22bae6ec98 .................
[skip ci]
2021-09-12 11:15:20 +02:00
Bram Matthys 1f8add8868 Some clang 3 specific fixes
[skip ci]
2021-09-12 10:58:37 +02:00
Bram Matthys 58ebadf06b Forgot to run ./autogen.sh... duh. 2021-09-12 10:37:37 +02:00
Bram Matthys da8b70d78c no-no-no... something was not right here ;D 2021-09-12 10:31:14 +02:00