Update block proposer to v0.5.0

This commit is contained in:
Paul Hauner 2019-03-17 17:50:22 +11:00
parent 3a384d93f8
commit 6b3cdc34dd
No known key found for this signature in database
GPG Key ID: D362883A9218FCC6

View File

@ -4,7 +4,7 @@ mod traits;
use slot_clock::SlotClock; use slot_clock::SlotClock;
use ssz::{SignedRoot, TreeHash}; use ssz::{SignedRoot, TreeHash};
use std::sync::Arc; use std::sync::Arc;
use types::{BeaconBlock, ChainSpec, Domain, Hash256, Proposal, Slot}; use types::{BeaconBlock, ChainSpec, Domain, Slot};
pub use self::traits::{ pub use self::traits::{
BeaconNode, BeaconNodeError, DutiesReader, DutiesReaderError, PublishOutcome, Signer, BeaconNode, BeaconNodeError, DutiesReader, DutiesReaderError, PublishOutcome, Signer,
@ -158,7 +158,7 @@ impl<T: SlotClock, U: BeaconNode, V: DutiesReader, W: Signer> BlockProducer<T, U
if self.safe_to_produce(&block) { if self.safe_to_produce(&block) {
let domain = self.spec.get_domain( let domain = self.spec.get_domain(
slot.epoch(self.spec.slots_per_epoch), slot.epoch(self.spec.slots_per_epoch),
Domain::Proposal, Domain::BeaconBlock,
&fork, &fork,
); );
if let Some(block) = self.sign_block(block, domain) { if let Some(block) = self.sign_block(block, domain) {
@ -182,16 +182,9 @@ impl<T: SlotClock, U: BeaconNode, V: DutiesReader, W: Signer> BlockProducer<T, U
fn sign_block(&mut self, mut block: BeaconBlock, domain: u64) -> Option<BeaconBlock> { fn sign_block(&mut self, mut block: BeaconBlock, domain: u64) -> Option<BeaconBlock> {
self.store_produce(&block); self.store_produce(&block);
let proposal = Proposal {
slot: block.slot,
shard: self.spec.beacon_chain_shard_number,
block_root: Hash256::from_slice(&block.signed_root()[..]),
signature: block.signature.clone(),
};
match self match self
.signer .signer
.sign_block_proposal(&proposal.signed_root()[..], domain) .sign_block_proposal(&block.signed_root()[..], domain)
{ {
None => None, None => None,
Some(signature) => { Some(signature) => {