diff options
author | Felix Fietkau <nbd@nbd.name> | 2017-01-31 21:58:55 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2017-01-31 21:58:55 +0100 |
commit | b5b21126ca9217e1f721996cbef44c019185dd5d (patch) | |
tree | 1c8e640b4ea471ab7949863a9f07771a77a59e61 /coreutils/sync.c | |
parent | d6ace669737571c98977972b7392456f9e5156f6 (diff) | |
download | busybox-b5b21126ca9217e1f721996cbef44c019185dd5d.tar.gz |
ash: improve / fix glob expansion
When using musl libc glob() a very long string can cause glob() to fail,
which leads to an out of memory error being raised by ash.
This can happen easily if a very long quoted string contains *, even
though no glob expansion should ever be performed on it (since it's
quoted).
Fix this by properly parsing control characters and escaping and only
accept unquoted metacharacters. While we're at it, unify this check for
libc and built-in glob expansion
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'coreutils/sync.c')
0 files changed, 0 insertions, 0 deletions