You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello, while fuzz testing the current crate, I found that an excessive number of ( characters can cause a stack overflow (this can be triggered in both debug and release builds):
❯ valgrind ./target/debug/full_moon_fuzz_target_test
==3998728== Memcheck, a memory error detector
==3998728== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.==3998728== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info==3998728== Command: ./target/debug/full_moon_fuzz_target_test==3998728== ==3998728== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==3998728== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==3998728==
==3998728== Process terminating with default action of signal 11 (SIGSEGV)
==3998728== Access not within mapped region at address 0x1FFE801F60
==3998728== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==3998728== at 0x1BB3AE: full_moon::tokenizer::lexer::Lexer::process_next (lexer.rs:255)
==3998728== If you believe this happened as a result of a stack
==3998728== overflow in your program's main thread (unlikely but==3998728== possible), you can try to increase the size of the==3998728== main thread stack using the --main-stacksize= flag.==3998728== The main thread stack size used in this run was 8388608.
Here’s the crash log for the release build:
❯ valgrind ./target/release/full_moon_fuzz_target_test
==3999207== Memcheck, a memory error detector
==3999207== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.==3999207== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info==3999207== Command: ./target/release/full_moon_fuzz_target_test==3999207== ==3999207== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==3999207== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==3999207==
==3999207== Process terminating with default action of signal 11 (SIGSEGV)
==3999207== Access not within mapped region at address 0x1FFE801FC8
==3999207== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==3999207== at 0x170423: full_moon::ast::parsers::parse_prefix_and_suffixes (in /home/ubuntu/full_moon_fuzz_target_test/target/release/full_moon_fuzz_target_test)
==3999207== If you believe this happened as a result of a stack
==3999207== overflow in your program's main thread (unlikely but==3999207== possible), you can try to increase the size of the==3999207== main thread stack using the --main-stacksize= flag.==3999207== The main thread stack size used in this run was 8388608.
The root cause may lie in the full_moon::tokenizer::lexer::Lexer::process_next or full_moon::ast::parsers::parse_prefix_and_suffixes functions.
The text was updated successfully, but these errors were encountered:
Hello, while fuzz testing the current crate, I found that an excessive number of ( characters can cause a stack overflow (this can be triggered in both debug and release builds):
Below is the crash log for the debug build:
Here’s the crash log for the release build:
The root cause may lie in the
full_moon::tokenizer::lexer::Lexer::process_next
orfull_moon::ast::parsers::parse_prefix_and_suffixes
functions.The text was updated successfully, but these errors were encountered: