i
780d9e95a2
extbans/partmsg: remove unused leftovers
2019-06-29 00:41:23 +03:00
i
cf3d01da06
extban ~p for hiding part/quit message
2019-06-29 00:30:10 +03:00
Bram Matthys
5182c664d1
Easier API for just-commited persistent variables. Example:
...
LoadPersistentPointer(modinfo, removefld_list, floodprot_free_removefld_list);
SavePersistentPointer(modinfo, removefld_list);
The above example was for a pointer, there are also functions for int and long,
which are even more simple:
LoadPersistentInt(modinfo, somevar)
SavePersistentInt(modinfo, somevar)
and
LoadPersistentLong(modinfo, somevar)
SavePersistentLong(modinfo, somevar)
both are untested, but will be tested soon...
2019-06-28 22:08:45 +02:00
Bram Matthys
0920967cc4
New module_load_variable / module_save_variable functions
...
and made floodprot to use these functions.
TODO: 1) Different functions for pointer/int/long, 2) macro?
2019-06-28 21:02:29 +02:00
Bram Matthys
7fe1848340
Make floodprot no longer PERM so it can be reloaded. Useful if we ever
...
make a mistake in the module so we can upgrade it on-the-fly.
Or if someone wants to get rid of it.
TODO: consider abstracting the saving/restoring of vars.
2019-06-28 20:14:32 +02:00
Bram Matthys
1f5acd852b
Update tkldb to use (new) MODDATATYPE_LOCALVAR.
2019-06-28 19:11:34 +02:00
Bram Matthys
2a7fc8042d
Add new moddata types: MODDATA_LOCALVAR and MODDATA_GLOBALVAR. Untested.
...
Code using it will soon follow (and then it will be tested :D)
2019-06-28 18:35:37 +02:00
Bram Matthys
38e9c100d4
Get rid of include/threads.h (unused)
2019-06-26 17:27:45 +02:00
Bram Matthys
c673e5bbc6
Get rid of now meaningless include/hash.h
2019-06-26 17:17:20 +02:00
Bram Matthys
8e44d4d5ab
Get rid of weird NullChn, which is now just NULL :D
2019-06-26 17:13:45 +02:00
Bram Matthys
e8f336622a
u_int64_t -> uint64_t
2019-06-26 17:03:07 +02:00
Bram Matthys
709c84fff9
Remove stupid hash table layer for channels that only eats 256k+ extra
...
memory and causes unnecessary slowdown. Stupid ->hits and ->links.
And get rid of "return (xyz)", must be "return xyz" :D
2019-06-26 16:56:17 +02:00
Bram Matthys
c75a1ebb25
Make src/modules/history_backend_mem.c use SipHash. And also,
...
make the module permanent.. which is probably a good idea :D
2019-06-26 15:49:54 +02:00
Bram Matthys
0d7f9e219e
Update reputation module to use SipHash
2019-06-26 14:13:12 +02:00
Bram Matthys
f6eac29592
hash_nick_name -> hash_client_name, hash_find_nickserver -> hash_find_nickatserver
...
Both were confusing :)
2019-06-26 13:45:55 +02:00
Bram Matthys
d5b643ceee
Rewrite hash table code to use SipHash (more to follow)
2019-06-26 13:24:02 +02:00
Bram Matthys
2894681c4f
Cleanup m_topic. Handle the if's in a smart way rather than indenting X levels.
2019-06-26 06:55:01 +02:00
Bram Matthys
849d57be40
Fix msgid inconsistency in KICK. Thank you, new test framework :]
2019-06-24 14:00:47 +02:00
Bram Matthys
4213ca9ab1
Add MyClient() call in QUIT for set::part-instead-of-quit-on-comment-change
...
handling. Since we shouldn't PART remote users.. ;)
2019-06-23 17:14:35 +02:00
Bram Matthys
6fab82124a
Call is_banned with BANCHK_LEAVE_MSG from both PART and QUIT.
...
The latter only if iConf.part_instead_of_quit_on_comment_change.
2019-06-23 17:10:41 +02:00
Bram Matthys
7161f33311
Code cleanup: make src/*.c use the generic #include "unrealircd.h" file
...
(with only a few exceptions)
Now, we'll find out later if Windows still compiles, I guess ;)
2019-06-22 21:18:08 +02:00
Bram Matthys
e8ff5d77c7
Remove weird option set::snomask-on-connect. Doubt anyone uses it.
2019-06-22 19:36:54 +02:00
Bram Matthys
f9b589d0c6
Remove almost 1000 lines, all functions that are (now) unused.
...
Also, drop support for snomasks to non-ircops (TODO: more)
2019-06-22 19:32:11 +02:00
Bram Matthys
b8d033f11e
The blacklist module is missing a call to blacklist_quit. Bug?
2019-06-22 19:11:16 +02:00
Bram Matthys
e03c8135a9
CHFL_CHANPROT -> CHFL_CHANADMIN, is_chanprot -> is_chanadmin
...
These are just remnants of the past, when +a was called channel protection.
It is called channel admin since as long as I can remember, and in 90%
of the code and documentation it is called that way.
2019-06-22 17:32:57 +02:00
Bram Matthys
cf29aa8feb
Replace various 90% identical functions with some macro's instead.
2019-06-22 17:29:03 +02:00
Bram Matthys
19af2c6b5c
Fix return value in can_send() and add tracing for modules that don't behave.
2019-06-22 17:21:57 +02:00
Bram Matthys
05202dd2a4
Move can_send() function from core to m_message.
2019-06-22 16:03:06 +02:00
Bram Matthys
bf4d96e991
can_send() now returns 0 (false) or 1 (true), rather than magic values.
...
Also, the HOOKTYPE_CAN_SEND prototype changed so you can communicate
the error message in a flexible way, similar to what I just did
with extbans.
2019-06-22 15:57:32 +02:00
Bram Matthys
f08557f2fd
Propagate is_banned() errmsg to m_message layer.
2019-06-22 15:36:21 +02:00
Bram Matthys
be49ef0bb8
More extban API changes... fun...
2019-06-22 15:11:16 +02:00
Bram Matthys
383f54a6c9
Fix bug caused last few weeks where user would receive a privmsg with
...
a SID/UID rather than server-/nickname.
2019-06-22 14:21:07 +02:00
Bram Matthys
086d370704
Change extban API: pass 'msg' in BANCHK_MSG and (new) BANCHK_LEAVE_MSG.
2019-06-17 20:19:34 +02:00
Bram Matthys
1cfebcf05e
Add new set::part_instead_of_quit_on_comment_change to convert QUIT to PART
...
in case of a change in the quit comment, such as color stripping / blocking.
The default is 'no', but some users may like this to be 'yes' so things like
+S only affect the channel and not the quit for all channels.
This hereby also lays the groundwork for some next commits of 'i' :)
The configuration item name may still change if I think of a better one....
2019-06-17 08:20:42 +02:00
Bram Matthys
b8cdb21754
Fix crash on "TKL" command without parameters. Due to rewrites from yesterday.
2019-06-17 07:46:32 +02:00
Bram Matthys
1d046b6f61
Move ban [nick|user|ip] { } block parsing to m_tkl.
2019-06-16 09:33:30 +02:00
Bram Matthys
d106609d89
Move all spamfilter { } block parsing to m_tkl.
2019-06-16 09:21:39 +02:00
Bram Matthys
36808a60ac
Remove all tk->flags & TKL_FLAG_CONFIG entries on rehash.
...
Make local spamfilter blocks use this too. Already did so for
ban xxx types that will cause kline/gline/zline and qline.
This also simplifies handling in the tkldb module.
2019-06-16 09:09:09 +02:00
Bram Matthys
bd785a9309
Some initial work for the upcoming TKL 'e'/'E'/TKL_EXCEPT type.
2019-06-16 08:42:41 +02:00
Bram Matthys
18ae7b8925
Document *ALL* functions in m_tkl and remove efuncs that are no longer
...
needed: tkl_expire and tkl_check_expire, which are now self-contained
in the m_tkl module.
2019-06-16 08:35:56 +02:00
Bram Matthys
b102e79f8e
Use check_banned() from s_bsd too, less duplicate code.
2019-06-15 18:44:33 +02:00
Bram Matthys
24726d533d
Make the require authentication { } block use the TKL layer.
...
Remove CONF_BAN_UNAUTHENTICATED.
2019-06-15 18:31:06 +02:00
Bram Matthys
8c2ce9a7d5
[tkldb] skip if (tkl->flags & TKL_FLAG_CONFIG)
2019-06-15 18:27:43 +02:00
Bram Matthys
8e6302d003
Rip out CONF_BAN_NICK, CONF_BAN_IP, CONF_BAN_USER, now that they are moved
...
to the TKL layer.
2019-06-15 18:18:19 +02:00
Bram Matthys
97fc19591c
Add support for tkline->flag TKL_FLAG_CONFIG: item from configuration
...
file that cannot be deleted via commands such as /KLINE -...
And transform some ban XX entries to use the TKL system
TODO: test & rip out the old stuff
2019-06-15 18:08:43 +02:00
Bram Matthys
a40cd9fae4
Rename dospamfilter() to run_spamfilter(), which is more meaningful.
2019-06-15 17:43:34 +02:00
Bram Matthys
630ab8f869
Fix some indentation
2019-06-15 17:37:02 +02:00
Bram Matthys
060502aedd
Remove unused variables and some shadow...
2019-06-15 17:27:54 +02:00
Bram Matthys
4f4cda7f7d
Cleanup part 2 of m_tkl. Splitting up in m_tkl_add / m_tkl_del and
...
various whitespace / indenting fixes.
2019-06-15 17:18:48 +02:00
Bram Matthys
876fda63ec
Export tkl_type_string via efuncs (actually, the name may change...)
2019-06-15 17:06:41 +02:00