From c5f0cd7d5e350afe4dd2d18e8efc009ad7f1eae3 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Tue, 28 Aug 2018 16:51:05 -0700 Subject: [PATCH] Enforce the wasm memory size limit on heaps with no maximum. --- lib/execute/src/memory.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/execute/src/memory.rs b/lib/execute/src/memory.rs index 10069d95b3..4830b93861 100644 --- a/lib/execute/src/memory.rs +++ b/lib/execute/src/memory.rs @@ -57,6 +57,13 @@ impl LinearMemory { if new_pages > val { return None; } + } else { + // Wasm linear memories are never allowed to grow beyond what is + // indexable. If the memory has no maximum, enforce the greatest + // limit here. + if new_pages >= 65536 { + return None; + } } let prev_pages = self.current;