Struct bitcoin::p2p::message_network::VersionMessage
source · pub struct VersionMessage {
pub version: u32,
pub services: ServiceFlags,
pub timestamp: i64,
pub receiver: Address,
pub sender: Address,
pub nonce: u64,
pub user_agent: String,
pub start_height: i32,
pub relay: bool,
}
Expand description
Some simple messages
The version
message
Fields§
§version: u32
The P2P network protocol version
services: ServiceFlags
A bitmask describing the services supported by this node
timestamp: i64
The time at which the version
message was sent
receiver: Address
The network address of the peer receiving the message
sender: Address
The network address of the peer sending the message
nonce: u64
A random nonce used to detect loops in the network
user_agent: String
A string describing the peer’s software
start_height: i32
The height of the maximum-work blockchain that the peer is aware of
relay: bool
Whether the receiving peer should relay messages to the sender; used if the sender is bandwidth-limited and would like to support bloom filtering. Defaults to false.
Implementations§
source§impl VersionMessage
impl VersionMessage
sourcepub fn new(
services: ServiceFlags,
timestamp: i64,
receiver: Address,
sender: Address,
nonce: u64,
user_agent: String,
start_height: i32
) -> VersionMessage
pub fn new( services: ServiceFlags, timestamp: i64, receiver: Address, sender: Address, nonce: u64, user_agent: String, start_height: i32 ) -> VersionMessage
Constructs a new version
message with relay
set to false
Trait Implementations§
source§impl Clone for VersionMessage
impl Clone for VersionMessage
source§fn clone(&self) -> VersionMessage
fn clone(&self) -> VersionMessage
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for VersionMessage
impl Debug for VersionMessage
source§impl Decodable for VersionMessage
impl Decodable for VersionMessage
source§fn consensus_decode_from_finite_reader<R: Read + ?Sized>(
r: &mut R
) -> Result<VersionMessage, Error>
fn consensus_decode_from_finite_reader<R: Read + ?Sized>( r: &mut R ) -> Result<VersionMessage, Error>
Decode
Self
from a size-limited reader. Read moresource§fn consensus_decode<R: Read + ?Sized>(
r: &mut R
) -> Result<VersionMessage, Error>
fn consensus_decode<R: Read + ?Sized>( r: &mut R ) -> Result<VersionMessage, Error>
Decode an object with a well-defined format. Read more
source§impl Encodable for VersionMessage
impl Encodable for VersionMessage
source§impl PartialEq<VersionMessage> for VersionMessage
impl PartialEq<VersionMessage> for VersionMessage
source§fn eq(&self, other: &VersionMessage) -> bool
fn eq(&self, other: &VersionMessage) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for VersionMessage
impl StructuralEq for VersionMessage
impl StructuralPartialEq for VersionMessage
Auto Trait Implementations§
impl RefUnwindSafe for VersionMessage
impl Send for VersionMessage
impl Sync for VersionMessage
impl Unpin for VersionMessage
impl UnwindSafe for VersionMessage
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more