X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=wasmpack%2Fsrc%2Flib.rs;fp=wasmpack%2Fsrc%2Flib.rs;h=952e036c191617a66bb0b34661ca487224b73983;hb=2940d1d40c8baecab5853ad4338d45c074979020;hp=976df500eee2d96ede250f89877d9a1fd84c5c83;hpb=1a3f89a9b503adb711a10260b865d8e109e2046a;p=dnssec-prover diff --git a/wasmpack/src/lib.rs b/wasmpack/src/lib.rs index 976df50..952e036 100644 --- a/wasmpack/src/lib.rs +++ b/wasmpack/src/lib.rs @@ -5,6 +5,8 @@ use dnssec_prover::validation::{verify_rr_stream, ValidationError}; use wasm_bindgen::prelude::wasm_bindgen; +use core::fmt::Write; + #[global_allocator] static ALLOC: wee_alloc::WeeAlloc = wee_alloc::WeeAlloc::INIT; @@ -21,10 +23,13 @@ fn do_verify_byte_stream(stream: Vec) -> Result { let rrs = parse_rr_stream(&stream).map_err(|()| ValidationError::Invalid)?; let verified_rrs = verify_rr_stream(&rrs)?; let mut resp = String::new(); - resp += &format!("{{\"valid_from\": {}, \"expires\": {}, \"max_cache_ttl\": {}, \"verified_rrs\": [", - verified_rrs.valid_from, verified_rrs.expires, verified_rrs.max_cache_ttl); + write!(&mut resp, "{}", + format_args!("{{\"valid_from\": {}, \"expires\": {}, \"max_cache_ttl\": {}, \"verified_rrs\": [", + verified_rrs.valid_from, verified_rrs.expires, verified_rrs.max_cache_ttl) + ).expect("Write to a String shouldn't fail"); for (idx, rr) in verified_rrs.verified_rrs.iter().enumerate() { - resp += &format!("{}\"{:?}\"", if idx != 0 { ", " } else { "" }, rr); + write!(&mut resp, "{}{}", if idx != 0 { ", " } else { "" }, rr.json()) + .expect("Write to a String shouldn't fail"); } resp += "]}"; Ok(resp)