Pass the exported name to the after_export event.#2
Closed
dschuff wants to merge 1 commit into
Closed
Conversation
sumayyanc
pushed a commit
to pose-dev/wabt
that referenced
this pull request
Aug 2, 2019
Upstream merge 20180918
Closed
dimitry-
pushed a commit
to dimitry-/wabt
that referenced
this pull request
Nov 24, 2022
Replace access to __stack_pointer with actual stack.
sbc100
pushed a commit
that referenced
this pull request
Jul 13, 2026
ASan, release build, `wasm2wat` on a crafted module:
==…==ERROR: AddressSanitizer: heap-buffer-overflow
#0 wabt::MakeTypeBindingReverseMapping(...) ir.cc
#1 wabt::ApplyNames(wabt::Module*)
#2 ProgramMain
... located 1535 bytes after 24-byte region
Found while going over the name-section handlers. The local subsection
stores a (local index, name) pair per entry. `OnLocalNameLocalCount`
checks the entry count against the function's param+local count, but the
per-entry local index in `OnLocalName` is never range-checked before it
becomes a `Binding`. `MakeTypeBindingReverseMapping` sizes the reverse
map to that local count and writes each name at `binding.index`, guarded
only by an `assert`. A name whose index sits past the function's locals
writes off the end of the vector: a debug build trips the assert, a
release build corrupts the heap. Reached from an untrusted `.wasm`
through `wasm2wat` and `wasm2c` (both call `ApplyNames` and read debug
names by default), on an otherwise valid module.
Skip entries that land outside the mapping. Valid modules only name real
locals, so their output does not change. The added test names local
index 5 of a one-param function; before the fix `wasm2wat` aborts, after
it prints the module with the stray name dropped.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.