wasm: Use effective context when calling foreign functions. #42227
+17
−2
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.
Commit Message:
Use effective context when calling foreign functions.
Additional Description:
This PR fixes an issue when a connection specific foreign function is called from wasm plugin's http or grpc callback. Such callback is invoked on root context and calling a foreign function (like set_filter_state) fails, because root context does not have associated stream. The effective context value is set properly, but was not used when invoking the foreign function. Similar issue has been described in #39797.
Risk Level: Low (affects only foreign functions invoked from http/grpc callback)
Testing: Manual
Docs Changes: yes
Release Notes: yes
Platform Specific Features: no
Runtime guard: yes - envoy.reloadable_features.wasm_use_effective_ctx_for_foreign_functions