#[repr(C)]pub struct CoinbaseOutputDataSize {
pub coinbase_output_max_additional_size: u32,
}
Expand description
§CoinbaseOutputDataSize (Client -> Server)
Ultimately, the pool is responsible for adding coinbase transaction outputs for payouts and other uses, and thus the Template Provider will need to consider this additional block size when selecting transactions for inclusion in a block (to not create an invalid, oversized block). Thus, this message is used to indicate that some additional space in the block/coinbase transaction be reserved for the pool’s use (while always assuming the pool will use the entirety of available coinbase space). The Job Declarator MUST discover the maximum serialized size of the additional outputs which will be added by the pool(s) it intends to use this work. It then MUST communicate the maximum such size to the Template Provider via this message. The Template Provider MUST NOT provide NewWork messages which would represent consensus-invalid blocks once this additional size — along with a maximally-sized (100 byte) coinbase field — is added. Further, the Template Provider MUST consider the maximum additional bytes required in the output count variable-length integer in the coinbase transaction when complying with the size limits.
Fields§
§coinbase_output_max_additional_size: u32
The maximum additional serialized bytes which the pool will add in coinbase transaction outputs.
Implementations§
source§impl<'decoder> CoinbaseOutputDataSize
impl<'decoder> CoinbaseOutputDataSize
pub fn into_static(self) -> CoinbaseOutputDataSize
source§impl<'decoder> CoinbaseOutputDataSize
impl<'decoder> CoinbaseOutputDataSize
pub fn as_static(&self) -> CoinbaseOutputDataSize
Trait Implementations§
source§impl Clone for CoinbaseOutputDataSize
impl Clone for CoinbaseOutputDataSize
source§fn clone(&self) -> CoinbaseOutputDataSize
fn clone(&self) -> CoinbaseOutputDataSize
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CoinbaseOutputDataSize
impl Debug for CoinbaseOutputDataSize
source§impl<'decoder> Decodable<'decoder> for CoinbaseOutputDataSize
impl<'decoder> Decodable<'decoder> for CoinbaseOutputDataSize
fn get_structure(data: &[u8]) -> Result<Vec<FieldMarker>, Error>
fn from_decoded_fields( data: Vec<DecodableField<'decoder>> ) -> Result<Self, Error>
fn from_bytes(data: &'a mut [u8]) -> Result<Self, Error>
source§impl<'decoder> From<CoinbaseOutputDataSize> for EncodableField<'decoder>
impl<'decoder> From<CoinbaseOutputDataSize> for EncodableField<'decoder>
source§fn from(v: CoinbaseOutputDataSize) -> Self
fn from(v: CoinbaseOutputDataSize) -> Self
source§impl PartialEq for CoinbaseOutputDataSize
impl PartialEq for CoinbaseOutputDataSize
source§fn eq(&self, other: &CoinbaseOutputDataSize) -> bool
fn eq(&self, other: &CoinbaseOutputDataSize) -> bool
self
and other
values to be equal, and is used
by ==
.