summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaweł Bylica <chfast@gmail.com>2020-07-30 21:48:59 +0200
committerGitHub <noreply@github.com>2020-07-30 12:48:59 -0700
commitdfb652a62ba36409d00ca96c730d39a699b898a5 (patch)
tree5fe587ff7237d4f045d5530778355b3d003b1e33
parent5390bb0c51023aef254d9a637d84b79bef9c03db (diff)
downloadwabt-dfb652a62ba36409d00ca96c730d39a699b898a5.tar.gz
wabt-dfb652a62ba36409d00ca96c730d39a699b898a5.tar.bz2
wabt-dfb652a62ba36409d00ca96c730d39a699b898a5.zip
Detect malformed import kind in binary reader (#1504)
-rw-r--r--src/binary-reader.cc4
-rw-r--r--test/binary/bad-import-kind.txt8
2 files changed, 12 insertions, 0 deletions
diff --git a/src/binary-reader.cc b/src/binary-reader.cc
index 7f195356..217253f5 100644
--- a/src/binary-reader.cc
+++ b/src/binary-reader.cc
@@ -2086,6 +2086,10 @@ Result BinaryReader::ReadImportSection(Offset section_size) {
num_event_imports_++;
break;
}
+
+ default:
+ PrintError("malformed import kind: %d", kind);
+ return Result::Error;
}
}
diff --git a/test/binary/bad-import-kind.txt b/test/binary/bad-import-kind.txt
new file mode 100644
index 00000000..3c850880
--- /dev/null
+++ b/test/binary/bad-import-kind.txt
@@ -0,0 +1,8 @@
+;;; TOOL: run-gen-wasm-bad
+magic
+version
+section(IMPORT) { count[1] str("module") str("func") dummy[5] }
+(;; STDERR ;;;
+0000018: error: malformed import kind: 5
+0000018: error: malformed import kind: 5
+;;; STDERR ;;)