mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-09-05 09:21:42 +00:00
wasi-nn: add a missing address validation for get_output
cf. https://github.com/bytecodealliance/wasm-micro-runtime/issues/4533
This commit is contained in:
parent
390e78030e
commit
da9afc1d3a
|
@ -781,6 +781,22 @@ wasi_nn_get_output(wasm_exec_env_t exec_env, graph_execution_context ctx,
|
||||||
if (success != (res = is_model_initialized(wasi_nn_ctx)))
|
if (success != (res = is_model_initialized(wasi_nn_ctx)))
|
||||||
goto fail;
|
goto fail;
|
||||||
|
|
||||||
|
#if WASM_ENABLE_WASI_EPHEMERAL_NN != 0
|
||||||
|
if (!wasm_runtime_validate_native_addr(instance, output_tensor,
|
||||||
|
output_tensor_len)) {
|
||||||
|
NN_ERR_PRINTF("output_tensor is invalid");
|
||||||
|
res = invalid_argument;
|
||||||
|
goto fail;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if (!wasm_runtime_validate_native_addr(instance, output_tensor,
|
||||||
|
*output_tensor_size)) {
|
||||||
|
NN_ERR_PRINTF("output_tensor is invalid");
|
||||||
|
res = invalid_argument;
|
||||||
|
goto fail;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (!wasm_runtime_validate_native_addr(instance, output_tensor_size,
|
if (!wasm_runtime_validate_native_addr(instance, output_tensor_size,
|
||||||
(uint64)sizeof(uint32_t))) {
|
(uint64)sizeof(uint32_t))) {
|
||||||
NN_ERR_PRINTF("output_tensor_size is invalid");
|
NN_ERR_PRINTF("output_tensor_size is invalid");
|
||||||
|
|
Loading…
Reference in New Issue
Block a user