1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-07-08 00:03:12 +02:00
Commit Graph

6973 Commits

Author SHA1 Message Date
Bram Matthys d5b643ceee Rewrite hash table code to use SipHash (more to follow) 2019-06-26 13:24:02 +02:00
Bram Matthys df7bcc1326 Remove temporary FreeBSD workaround.
(reverts adf56ad8fd)
2019-06-26 07:14:35 +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 e17ba624c7 Fix crash in new get_access(). This crash happens in case of
(malicious) server traffic.
Also seems we have a behvior change here: has_voice and such returned
1 for servers, now it returns 0. I can live with that, but may cause
more issues.
2019-06-24 16:24: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 c507db9005 Get rid of Windows compile warning regarding abort(). 2019-06-23 08:57:39 +02:00
Bram Matthys 7875fc9d7d Compile fixes for Windows due to cleanup from yesterday. 2019-06-23 08:03:33 +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 74586e7ecd Make all snomasks oper only (was just one: +s +k).
Maybe an API change later?
2019-06-22 19:34:04 +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 f0f0a93cc5 Makefile: makes no sense to create modules/cap only to remove it later
[skip ci]
2019-06-22 17:57:42 +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 7fd794c563 Make /VERSION send 005 properly. 2019-06-22 15:16:16 +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 c2ba6b40b8 Silently force a 'make clean' as otherwise part (or whole) of the
compiled source could be using different settings than the user
just requested when re-running ./Config.
2019-06-16 10:13:57 +02:00
Bram Matthys 7b42c252ea Some documentation updates, nothing important
[skip ci]
2019-06-16 10:08:50 +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 d0d454f696 Fix 100% CPU loop problem on REHASH due to bug in history backend (deja-vu). 2019-06-16 08:44:57 +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
Bram Matthys 7542cdeaca Cleanup of m_tkl part 1. New tkl_chartotype (the reverse of tkl_typetochar).
Move stripcrlf() to core instead of at 3 places, rename calls of iCstrip()
to that. Hopefully I didn't break anything.. :D
2019-06-15 16:56:34 +02:00
Bram Matthys 41ba282ed6 Obey MAXMODEPARA under all circumstances. 2019-06-15 15:17:24 +02:00
Bram Matthys ca9b04a0fa Module API: EventAddEx() -> EventAdd() 2019-06-12 19:09:33 +02:00
Bram Matthys e3013ae067 Commit current work of history API and channel history mode (+H count:time)
Note: there are still some TODO items
2019-06-12 18:59:12 +02:00
Bram Matthys ed4bc8e8c5 Prevent running ./Config as root and print out a clear instruction.
Since UnrealIRCd 4 (and probably before) our instructions always mentioned
that you should not build or run UnrealIRCd as root.

Even system integrators are unlikely to build as root, but just in
case, the safety the check is in ./Config and not in ./configure.
2019-06-12 13:16:58 +02:00