View Issue Details

IDProjectCategoryView StatusLast Update
0006576unrealircdpublic2025-09-13 18:57
Reportercrazycat Assigned Tosyzop  
PrioritynormalSeveritymajorReproducibilityrandom
Status feedbackResolutionopen 
Product Version6.2.0 
Summary0006576: antimixedutf8 sureact
DescriptionSince I upgraded to 6.2.0, some users are punished by the antimixedutf8 module.

I've change the action to warn, so I hope I'll be able to give more elements soon.
Tagsmixed, utf8
3rd party modules

Activities

syzop

2025-09-13 16:40

administrator   ~0023493

What scores do your users get? You can check in logs, it looks something like:
antimixedutf8.ANTIMIXEDUTF8_HIT info: [antimixedutf8] Client .... hit score XX - taking action

And what score did you configure to act upon in the config?

syzop

2025-09-13 18:51

administrator   ~0023494

Last edited: 2025-09-13 18:52

Oh yeah I see what you mean, the éá etc stuff is in a different unicode block, so for languages like French there are lots of block transitions leading to higher antimixedutf8 scores. We suggest 5-10 and default to 8 but that is quite reachable in ordinary text. Eg with 8 you only need 4 accent characters because you are transitioning back and forth. Pretty dumb oversight.

In the old version of the module we also didn't see it as one big block but in that version it was a transition to an "undefined" code page (and back) so didn't count.

syzop

2025-09-13 18:56

administrator   ~0023495

This is now fixed in https://github.com/unrealircd/unrealircd/commit/64eab2c6aec450171766c8994cda6473e6787400

commit 64eab2c6aec450171766c8994cda6473e6787400 (HEAD -> unreal60_dev, origin/unreal60_dev, origin/HEAD)
Author: Bram Matthys <[email protected]>
Date: Sat Sep 13 18:52:46 2025 +0200

    antimixedutf8: fix extended latin, like éí accents leading to a high score.
    The 4 unicode blocks are now treated as one big Latin block
    Latin-1 Supplement, Latin Extended-A, Latin Extended-B ==mapped=to==> Basic Latin
    
    Reported by CrazyCat in https://bugs.unrealircd.org/view.php?id=6576

syzop

2025-09-13 18:57

administrator   ~0023496

If you want to hot patch without restart you can do something like this:

cd /home/whatever/unrealircd-6.2.0.1
wget -O patch https://github.com/unrealircd/unrealircd/commit/64eab2c6aec450171766c8994cda6473e6787400.patch
patch -p1 <patch
make && make install
./unrealircd rehash

Issue History

Date Modified Username Field Change
2025-09-13 15:53 crazycat New Issue
2025-09-13 15:53 crazycat Tag Attached: mixed
2025-09-13 15:53 crazycat Tag Attached: utf8
2025-09-13 16:40 syzop Note Added: 0023493
2025-09-13 16:40 syzop Assigned To => syzop
2025-09-13 16:40 syzop Status new => feedback
2025-09-13 18:51 syzop Note Added: 0023494
2025-09-13 18:51 syzop Note Edited: 0023494
2025-09-13 18:52 syzop Note Edited: 0023494
2025-09-13 18:56 syzop Note Added: 0023495
2025-09-13 18:57 syzop Note Added: 0023496