Struct template_distribution_sv2::SetNewPrevHash [−][src]
pub struct SetNewPrevHash<'decoder> { pub template_id: u64, pub prev_hash: U256<'decoder>, pub header_timestamp: u32, pub n_bits: u32, pub target: U256<'decoder>, }
Expand description
SetNewPrevHash (Server -> Client)
Upon successful validation of a new best block, the server MUST immediately provide a SetNewPrevHash message. If a [NewWork](TODO link) message has previously been sent with the [future_job](TODO link) flag set, which is valid work based on the prev_hash contained in this message, the template_id field SHOULD be set to the job_id present in that NewTemplate message indicating the client MUST begin mining on that template as soon as possible. TODO: Define how many previous works the client has to track (2? 3?), and require that the server reference one of those in SetNewPrevHash.
Fields
template_id: u64
template_id referenced in a previous NewTemplate message.
prev_hash: U256<'decoder>
Previous block’s hash, as it must appear in the next block’s header.
header_timestamp: u32
The nTime field in the block header at which the client should start (usually current time). This is NOT the minimum valid nTime value.
n_bits: u32
Block header field.
target: U256<'decoder>
The maximum double-SHA256 hash value which would represent a valid block. Note that this may be lower than the target implied by nBits in several cases, including weak-block based block propagation.
Trait Implementations
fn from_bytes(data: &'a mut [u8]) -> Result<Self, Error>
fn from_reader(reader: &mut impl Read) -> Result<Self, Error>
Performs the conversion.
Performs the conversion.
Auto Trait Implementations
impl<'decoder> RefUnwindSafe for SetNewPrevHash<'decoder>
impl<'decoder> Send for SetNewPrevHash<'decoder>
impl<'decoder> Sync for SetNewPrevHash<'decoder>
impl<'decoder> Unpin for SetNewPrevHash<'decoder>
impl<'decoder> !UnwindSafe for SetNewPrevHash<'decoder>
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<'a, T> Encodable for T where
T: Into<EncodableField<'a>>,
impl<'a, T> Encodable for T where
T: Into<EncodableField<'a>>,