diff options
author | Alon Zakai <azakai@google.com> | 2020-10-12 17:11:30 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-12 17:11:30 -0700 |
commit | 5ae1724add800780475e02e05a4af133e3729bd6 (patch) | |
tree | 7cc9dec3bdd3fc27971b7ade1112402bda3fec64 /src/tools/wasm-ctor-eval.cpp | |
parent | d38ddda4c299a40ee48efb777ec69c823312c9dd (diff) | |
download | binaryen-5ae1724add800780475e02e05a4af133e3729bd6.tar.gz binaryen-5ae1724add800780475e02e05a4af133e3729bd6.tar.bz2 binaryen-5ae1724add800780475e02e05a4af133e3729bd6.zip |
Interpreter: Add a limit to how much we try to grow memory, to avoid DOS (#3227)
growMemory() now also returns whether we succeeded.
Without this it could eventually start to swap etc., which is annoying.
Diffstat (limited to 'src/tools/wasm-ctor-eval.cpp')
-rw-r--r-- | src/tools/wasm-ctor-eval.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/tools/wasm-ctor-eval.cpp b/src/tools/wasm-ctor-eval.cpp index a38ca4027..50ba4404e 100644 --- a/src/tools/wasm-ctor-eval.cpp +++ b/src/tools/wasm-ctor-eval.cpp @@ -283,7 +283,7 @@ struct CtorEvalExternalInterface : EvallingModuleInstance::ExternalInterface { // called during initialization, but we don't keep track of a table void tableStore(Address addr, Name value) override {} - void growMemory(Address /*oldSize*/, Address newSize) override { + bool growMemory(Address /*oldSize*/, Address newSize) override { throw FailToEvalException("grow memory"); } |