mirror of
https://github.com/bellard/quickjs.git
synced 2025-05-29 01:49:18 +08:00
The regex engine is prone to excessive backtracking, leading to timeouts, especially while fuzzing. This commit introduces a backtracking counter and a limit of 1000 backtracking steps. When this limit is exceeded during fuzzing, the regex engine aborts to prevent excessive backtracking. For this, the FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION macro is used, as per suggested by the documentation of libFuzzer.
The main documentation is in doc/quickjs.pdf or doc/quickjs.html.
Languages
C
94.1%
JavaScript
5.3%
Makefile
0.5%
Shell
0.1%