summaryrefslogtreecommitdiff
path: root/testsuite/awk.tests
diff options
context:
space:
mode:
authorBrian Foley2019-01-01 13:40:58 -0800
committerDenys Vlasenko2019-01-21 12:55:49 +0100
commitdac15a10accc6921d1559d254ceed9fe9d092ddf (patch)
tree2c0082d5b5b03df07d26d048c587fdae0a22700c /testsuite/awk.tests
parent11cb9eeffec0e2575c8722e83de3116f81b61b4f (diff)
downloadbusybox-dac15a10accc6921d1559d254ceed9fe9d092ddf.zip
busybox-dac15a10accc6921d1559d254ceed9fe9d092ddf.tar.gz
awk: Guard pointer chasing when parsing ternary expressions.
Avoids an uninit pointer deref for some malformed ternary exprs. Add a test that would crash in busybox before this fix. Signed-off-by: Brian Foley <bpfoley@google.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'testsuite/awk.tests')
-rwxr-xr-xtestsuite/awk.tests3
1 files changed, 3 insertions, 0 deletions
diff --git a/testsuite/awk.tests b/testsuite/awk.tests
index 3933fef..9f353fc 100755
--- a/testsuite/awk.tests
+++ b/testsuite/awk.tests
@@ -338,6 +338,9 @@ testing "awk continue" \
testing "awk handles invalid for loop" \
"awk '{ for() }' 2>&1" "awk: cmd. line:1: Unexpected token\n" "" ""
+testing "awk handles colon not preceded by ternary" \
+ "awk 'foo:bar:' 2>&1" "awk: cmd. line:1: Unexpected token\n" "" ""
+
# testing "description" "command" "result" "infile" "stdin"
testing 'awk negative field access' \
'awk 2>&1 -- '\''{ $(-1) }'\' \