Files
wasm-instrument/cli/stack_height/main.rs
T
2020-10-21 20:24:49 +02:00

29 lines
695 B
Rust

extern crate pwasm_utils as utils;
extern crate parity_wasm;
use pwasm_utils::logger;
use std::env;
use utils::stack_height;
fn main() {
logger::init();
let args = env::args().collect::<Vec<_>>();
if args.len() != 3 {
println!("Usage: {} input_file.wasm output_file.wasm", args[0]);
return;
}
let input_file = &args[1];
let output_file = &args[2];
// Loading module
let module = parity_wasm::deserialize_file(&input_file).expect("Module deserialization to succeed");
let result = stack_height::inject_limiter(
module, 1024
).expect("Failed to inject stack height counter");
parity_wasm::serialize_to_file(&output_file, result).expect("Module serialization to succeed")
}