Enum bdk_chain::bitcoin::p2p::message::NetworkMessage
pub enum NetworkMessage {
Show 37 variants
Version(VersionMessage),
Verack,
Addr(Vec<(u32, Address)>),
Inv(Vec<Inventory>),
GetData(Vec<Inventory>),
NotFound(Vec<Inventory>),
GetBlocks(GetBlocksMessage),
GetHeaders(GetHeadersMessage),
MemPool,
Tx(Transaction),
Block(Block),
Headers(Vec<Header>),
SendHeaders,
GetAddr,
Ping(u64),
Pong(u64),
MerkleBlock(MerkleBlock),
FilterLoad(FilterLoad),
FilterAdd(FilterAdd),
FilterClear,
GetCFilters(GetCFilters),
CFilter(CFilter),
GetCFHeaders(GetCFHeaders),
CFHeaders(CFHeaders),
GetCFCheckpt(GetCFCheckpt),
CFCheckpt(CFCheckpt),
SendCmpct(SendCmpct),
CmpctBlock(CmpctBlock),
GetBlockTxn(GetBlockTxn),
BlockTxn(BlockTxn),
Alert(Vec<u8>),
Reject(Reject),
FeeFilter(i64),
WtxidRelay,
AddrV2(Vec<AddrV2Message>),
SendAddrV2,
Unknown {
command: CommandString,
payload: Vec<u8>,
},
}
Expand description
A Network message payload. Proper documentation is available on at Bitcoin Wiki: Protocol Specification
Variants§
Version(VersionMessage)
version
Verack
verack
Addr(Vec<(u32, Address)>)
addr
Inv(Vec<Inventory>)
inv
GetData(Vec<Inventory>)
getdata
NotFound(Vec<Inventory>)
notfound
GetBlocks(GetBlocksMessage)
getblocks
GetHeaders(GetHeadersMessage)
getheaders
MemPool
mempool
Tx(Transaction)
tx
Block(Block)
block
Headers(Vec<Header>)
headers
SendHeaders
sendheaders
GetAddr
getaddr
Ping(u64)
ping
Pong(u64)
pong
MerkleBlock(MerkleBlock)
merkleblock
FilterLoad(FilterLoad)
BIP 37 filterload
FilterAdd(FilterAdd)
BIP 37 filteradd
FilterClear
BIP 37 filterclear
GetCFilters(GetCFilters)
BIP157 getcfilters
CFilter(CFilter)
BIP157 cfilter
GetCFHeaders(GetCFHeaders)
BIP157 getcfheaders
CFHeaders(CFHeaders)
BIP157 cfheaders
GetCFCheckpt(GetCFCheckpt)
BIP157 getcfcheckpt
CFCheckpt(CFCheckpt)
BIP157 cfcheckpt
SendCmpct(SendCmpct)
BIP152 sendcmpct
CmpctBlock(CmpctBlock)
BIP152 cmpctblock
GetBlockTxn(GetBlockTxn)
BIP152 getblocktxn
BlockTxn(BlockTxn)
BIP152 blocktxn
Alert(Vec<u8>)
alert
Reject(Reject)
reject
FeeFilter(i64)
feefilter
WtxidRelay
wtxidrelay
AddrV2(Vec<AddrV2Message>)
addrv2
SendAddrV2
sendaddrv2
Unknown
Any other message.
Fields
command: CommandString
The command of this message.
Implementations§
§impl NetworkMessage
impl NetworkMessage
pub fn cmd(&self) -> &'static str
pub fn cmd(&self) -> &'static str
Return the message command as a static string reference.
This returns "unknown"
for NetworkMessage::Unknown,
regardless of the actual command in the unknown message.
Use the Self::command method to get the command for unknown messages.
pub fn command(&self) -> CommandString
pub fn command(&self) -> CommandString
Return the CommandString for the message command.
Trait Implementations§
§impl Clone for NetworkMessage
impl Clone for NetworkMessage
§fn clone(&self) -> NetworkMessage
fn clone(&self) -> NetworkMessage
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for NetworkMessage
impl Debug for NetworkMessage
§impl Encodable for NetworkMessage
impl Encodable for NetworkMessage
§impl PartialEq for NetworkMessage
impl PartialEq for NetworkMessage
§fn eq(&self, other: &NetworkMessage) -> bool
fn eq(&self, other: &NetworkMessage) -> bool
self
and other
values to be equal, and is used
by ==
.