Trojan Source

This linter verifies if a change is using some invalid unicode.

The goal of this linter is to identify some potential usage of this technique:

The code is inspired by the Red Hat script published:

Run Locally

This mozlint linter can be run using mach:

$ mach lint --linter trojan-source <file paths>


This linter is enabled on most of the code base on C/C++, Python and Rust.