![]() |
Bitcoin Core 22.99.0
P2P Digital Currency
|
Message header. More...
#include <protocol.h>
Public Types | |
typedef unsigned char | MessageStartChars[MESSAGE_START_SIZE] |
Public Member Functions | |
CMessageHeader ()=default | |
CMessageHeader (const MessageStartChars &pchMessageStartIn, const char *pszCommand, unsigned int nMessageSizeIn) | |
Construct a P2P message header from message-start characters, a command and the size of the message. More... | |
std::string | GetCommand () const |
bool | IsCommandValid () const |
SERIALIZE_METHODS (CMessageHeader, obj) | |
Public Attributes | |
char | pchMessageStart [MESSAGE_START_SIZE] {} |
char | pchCommand [COMMAND_SIZE] {} |
uint32_t | nMessageSize {std::numeric_limits<uint32_t>::max()} |
uint8_t | pchChecksum [CHECKSUM_SIZE] {} |
Static Public Attributes | |
static constexpr size_t | MESSAGE_START_SIZE = 4 |
static constexpr size_t | COMMAND_SIZE = 12 |
static constexpr size_t | MESSAGE_SIZE_SIZE = 4 |
static constexpr size_t | CHECKSUM_SIZE = 4 |
static constexpr size_t | MESSAGE_SIZE_OFFSET = MESSAGE_START_SIZE + COMMAND_SIZE |
static constexpr size_t | CHECKSUM_OFFSET = MESSAGE_SIZE_OFFSET + MESSAGE_SIZE_SIZE |
static constexpr size_t | HEADER_SIZE = MESSAGE_START_SIZE + COMMAND_SIZE + MESSAGE_SIZE_SIZE + CHECKSUM_SIZE |
Message header.
(4) message start. (12) command. (4) size. (4) checksum.
Definition at line 30 of file protocol.h.
typedef unsigned char CMessageHeader::MessageStartChars[MESSAGE_START_SIZE] |
Definition at line 40 of file protocol.h.
|
explicitdefault |
CMessageHeader::CMessageHeader | ( | const MessageStartChars & | pchMessageStartIn, |
const char * | pszCommand, | ||
unsigned int | nMessageSizeIn | ||
) |
Construct a P2P message header from message-start characters, a command and the size of the message.
pszCommand
longer than COMMAND_SIZE will result in a run-time assertion error. Definition at line 90 of file protocol.cpp.
std::string CMessageHeader::GetCommand | ( | ) | const |
Definition at line 102 of file protocol.cpp.
bool CMessageHeader::IsCommandValid | ( | ) | const |
|
inline |
Definition at line 52 of file protocol.h.
|
staticconstexpr |
Definition at line 38 of file protocol.h.
|
staticconstexpr |
Definition at line 36 of file protocol.h.
|
staticconstexpr |
Definition at line 34 of file protocol.h.
|
staticconstexpr |
Definition at line 39 of file protocol.h.
|
staticconstexpr |
Definition at line 37 of file protocol.h.
|
staticconstexpr |
Definition at line 35 of file protocol.h.
|
staticconstexpr |
Definition at line 33 of file protocol.h.
uint32_t CMessageHeader::nMessageSize {std::numeric_limits<uint32_t>::max()} |
Definition at line 56 of file protocol.h.
uint8_t CMessageHeader::pchChecksum[CHECKSUM_SIZE] {} |
Definition at line 57 of file protocol.h.
char CMessageHeader::pchCommand[COMMAND_SIZE] {} |
Definition at line 55 of file protocol.h.
char CMessageHeader::pchMessageStart[MESSAGE_START_SIZE] {} |
Definition at line 54 of file protocol.h.