From 8dc9181610d7ec2f3bc1de58e8597879d82e1e62 Mon Sep 17 00:00:00 2001 From: Deirdre Connolly Date: Wed, 9 Oct 2019 21:26:48 -0400 Subject: [PATCH] Fill out write_body for GetBlocks, GetHeaders, Headers messages --- zebra-network/src/protocol/codec.rs | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/zebra-network/src/protocol/codec.rs b/zebra-network/src/protocol/codec.rs index 83e497d9..4ba97b03 100644 --- a/zebra-network/src/protocol/codec.rs +++ b/zebra-network/src/protocol/codec.rs @@ -216,6 +216,37 @@ impl Codec { .zcash_serialize(&mut writer) .expect("Blocks must serialize."); } + GetBlocks { + ref version, + ref block_locator_hashes, + ref hash_stop, + } => { + writer.write_u32::(version.0)?; + writer.write_compactsize(block_locator_hashes.len() as u64)?; + for hash in block_locator_hashes { + hash.zcash_serialize(&mut writer)?; + } + hash_stop.zcash_serialize(&mut writer)?; + } + GetHeaders { + ref version, + ref block_locator_hashes, + ref hash_stop, + } => { + writer.write_u32::(version.0)?; + writer.write_compactsize(block_locator_hashes.len() as u64)?; + for hash in block_locator_hashes { + hash.zcash_serialize(&mut writer)?; + } + hash_stop.zcash_serialize(&mut writer)?; + } + Headers(ref headers) => { + writer.write_compactsize(headers.len() as u64)?; + for header in headers { + header.zcash_serialize(&mut writer)?; + } + } + _ => bail!("unimplemented message type"), } Ok(())