* Chet Ramey <chet.ra...@case.edu>, 2020-08-03, 09:15:
On 8/3/20 5:30 AM, Jakub Wilk wrote:
Bash Version: 5.0
Patch Level: 18
Release Status: release
bash crashes with stack overflow when checking syntax of this crafted script:
$ ulimit -s
8192
$ printf 'x[$(($(fi)))`\n%050000d\n][`]\n' | tr 0 '(' | bash -n
bash: command substitution: line 4: syntax error near unexpected token `fi'
bash: command substitution: line 4: `fi)))`'
Segmentation fault
I can't reproduce this with bash-5.1-alpha.
Oh right, looks like this was fixed in the 20191108 snapshot, probably
by this change:
parse.y
- xparse_dolparen: if the command substitution is incomplete or doesn't
end in `)', print an error message instead of allowing EOS to
terminate the comsub. From a bug report from
Oguz <oguzismailuy...@gmail.com>
--
Jakub Wilk