Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v8: enable inline WASM in serialization API #25313

Closed
wants to merge 1 commit into from

Conversation

@addaleax
Copy link
Member

commented Jan 2, 2019

Since the API we expose through the v8 module is Buffer-based,
we cannot transfer WASM modules directly. Instead, we enable
the V8-provided inline WASM (de)serialization for WASM modules.

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • tests and/or benchmarks are included
  • commit message follows commit guidelines
v8: enable inline WASM in serialization API
Since the API we expose through the `v8` module is Buffer-based,
we cannot transfer WASM modules directly. Instead, we enable
the V8-provided inline WASM (de)serialization for WASM modules.

@addaleax addaleax added V8 Engine wasm and removed C++ labels Jan 2, 2019

@jasnell
jasnell approved these changes Jan 2, 2019
@addaleax

This comment has been minimized.

Copy link
Member Author

commented Jan 2, 2019

@cjihrig
cjihrig approved these changes Jan 2, 2019
@bnoordhuis
Copy link
Member

left a comment

LGTM. Just curious, are there any conceivable security implications? I can't think of any but I thought I'd ask anyway.

@devsnek
devsnek approved these changes Jan 3, 2019
@addaleax

This comment has been minimized.

Copy link
Member Author

commented Jan 4, 2019

@bnoordhuis I can’t think of any either – this makes it possible to transfer executable code, but IIUC you’d still have to explicitly instantiate the WASM module in order to get callable objects (and even then I wouldn’t see how this could be problematic).

@addaleax

This comment has been minimized.

Copy link
Member Author

commented Jan 5, 2019

Landed in 47a9eea

@addaleax addaleax closed this Jan 5, 2019

@addaleax addaleax deleted the addaleax:v8-serdes-inline-wasm branch Jan 5, 2019

addaleax added a commit that referenced this pull request Jan 5, 2019
v8: enable inline WASM in serialization API
Since the API we expose through the `v8` module is Buffer-based,
we cannot transfer WASM modules directly. Instead, we enable
the V8-provided inline WASM (de)serialization for WASM modules.

PR-URL: #25313
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gus Caplan <me@gus.host>
addaleax added a commit that referenced this pull request Jan 9, 2019
v8: enable inline WASM in serialization API
Since the API we expose through the `v8` module is Buffer-based,
we cannot transfer WASM modules directly. Instead, we enable
the V8-provided inline WASM (de)serialization for WASM modules.

PR-URL: #25313
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gus Caplan <me@gus.host>
refack added a commit to refack/node that referenced this pull request Jan 14, 2019
v8: enable inline WASM in serialization API
Since the API we expose through the `v8` module is Buffer-based,
we cannot transfer WASM modules directly. Instead, we enable
the V8-provided inline WASM (de)serialization for WASM modules.

PR-URL: nodejs#25313
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gus Caplan <me@gus.host>
@BridgeAR BridgeAR referenced this pull request Jan 16, 2019
BridgeAR added a commit to BridgeAR/node that referenced this pull request Jan 16, 2019
v8: enable inline WASM in serialization API
Since the API we expose through the `v8` module is Buffer-based,
we cannot transfer WASM modules directly. Instead, we enable
the V8-provided inline WASM (de)serialization for WASM modules.

PR-URL: nodejs#25313
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gus Caplan <me@gus.host>
@MylesBorins MylesBorins referenced this pull request Jan 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.