1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-01 09:58:14 +00:00

LibWasm: Limit module memory to 65536 pages

The spec mentions this, and anything past that can't be correctly
addressed by the 32-bit indices anyhow.
This commit is contained in:
Ali Mohammad Pur 2021-07-06 14:03:54 +04:30 committed by Ali Mohammad Pur
parent 03fe50d5e7
commit c4d4c657d0

View file

@ -350,6 +350,9 @@ public:
if (size_to_grow == 0)
return true;
auto new_size = m_data.size() + size_to_grow;
// Can't grow past 2^16 pages.
if (new_size >= Constants::page_size * 65536)
return false;
if (auto max = m_type.limits().max(); max.has_value()) {
if (max.value() * Constants::page_size < new_size)
return false;