mirror of
https://github.com/opnsense/src.git
synced 2026-04-04 00:45:17 -04:00
An invalid substitution like ${var@} does not cause a parse error but is
stored in the intermediate representation, to be written as part of the
error message. If there is a CTL* byte in the stored part, this confuses
some code such as the code to skip an unused alternative such as in
${var-alternative}.
To keep things simple, do not store CTL* bytes.
Found with afl-fuzz.
MFC after: 1 week
4 lines
52 B
Text
4 lines
52 B
Text
# $FreeBSD$
|
|
|
|
v=1
|
|
eval ": $(printf '${v-${w\372}}')"
|