Add module loading validity checks

This commit is contained in:
Rerumu
2022-08-22 14:08:38 -04:00
parent e40023e8e6
commit 2c913e86ed
8 changed files with 38 additions and 35 deletions
+1 -1
View File
@@ -5,7 +5,7 @@ use wasm_smith::Module as RngModule;
libfuzzer_sys::fuzz_target!(|module: RngModule| {
let data = module.to_bytes();
let wasm = Module::from_data(&data);
let wasm = Module::try_from_data(&data).unwrap();
let sink = &mut std::io::sink();
+1 -1
View File
@@ -5,7 +5,7 @@ use wasm_smith::Module as RngModule;
libfuzzer_sys::fuzz_target!(|module: RngModule| {
let data = module.to_bytes();
let wasm = Module::from_data(&data);
let wasm = Module::try_from_data(&data).unwrap();
let sink = &mut std::io::sink();
+1 -1
View File
@@ -90,7 +90,7 @@ impl Target for LuaJIT {
Wat::Module(ast) => ast.encode().unwrap(),
Wat::Component(_) => unimplemented!(),
};
let data = Module::from_data(&bytes);
let data = Module::try_from_data(&bytes).unwrap();
writeln!(w, "assert_trap((function()")?;
codegen_luajit::from_module_untyped(&data, w)?;
+1 -1
View File
@@ -103,7 +103,7 @@ impl Target for Luau {
Wat::Module(ast) => ast.encode().unwrap(),
Wat::Component(_) => unimplemented!(),
};
let data = Module::from_data(&bytes);
let data = Module::try_from_data(&bytes).unwrap();
writeln!(w, "assert_trap((function()")?;
codegen_luau::from_module_untyped(&data, w)?;
+1 -1
View File
@@ -81,7 +81,7 @@ pub trait Target: Sized {
let mut ast = try_into_ast_module(data).expect("Must be a module");
let bytes = ast.encode().unwrap();
let data = AstModule::from_data(&bytes);
let data = AstModule::try_from_data(&bytes).unwrap();
let name = ast.id.as_ref().map(Id::name);
Self::write_module(&data, name, w)?;