net: Run clang-format on protocol.h

Can be reviewed with the git diff flags
-U0 --ignore-all-space --word-diff-regex=.
This commit is contained in:
MarcoFalke 2020-05-17 10:30:06 -04:00
parent facdeea2b2
commit fabea6d404
No known key found for this signature in database
GPG key ID: CE2B75697E69A548

View file

@ -74,100 +74,100 @@ namespace NetMsgType {
* receiving node at the beginning of a connection. * receiving node at the beginning of a connection.
* @see https://bitcoin.org/en/developer-reference#version * @see https://bitcoin.org/en/developer-reference#version
*/ */
extern const char *VERSION; extern const char* VERSION;
/** /**
* The verack message acknowledges a previously-received version message, * The verack message acknowledges a previously-received version message,
* informing the connecting node that it can begin to send other messages. * informing the connecting node that it can begin to send other messages.
* @see https://bitcoin.org/en/developer-reference#verack * @see https://bitcoin.org/en/developer-reference#verack
*/ */
extern const char *VERACK; extern const char* VERACK;
/** /**
* The addr (IP address) message relays connection information for peers on the * The addr (IP address) message relays connection information for peers on the
* network. * network.
* @see https://bitcoin.org/en/developer-reference#addr * @see https://bitcoin.org/en/developer-reference#addr
*/ */
extern const char *ADDR; extern const char* ADDR;
/** /**
* The inv message (inventory message) transmits one or more inventories of * The inv message (inventory message) transmits one or more inventories of
* objects known to the transmitting peer. * objects known to the transmitting peer.
* @see https://bitcoin.org/en/developer-reference#inv * @see https://bitcoin.org/en/developer-reference#inv
*/ */
extern const char *INV; extern const char* INV;
/** /**
* The getdata message requests one or more data objects from another node. * The getdata message requests one or more data objects from another node.
* @see https://bitcoin.org/en/developer-reference#getdata * @see https://bitcoin.org/en/developer-reference#getdata
*/ */
extern const char *GETDATA; extern const char* GETDATA;
/** /**
* The merkleblock message is a reply to a getdata message which requested a * The merkleblock message is a reply to a getdata message which requested a
* block using the inventory type MSG_MERKLEBLOCK. * block using the inventory type MSG_MERKLEBLOCK.
* @since protocol version 70001 as described by BIP37. * @since protocol version 70001 as described by BIP37.
* @see https://bitcoin.org/en/developer-reference#merkleblock * @see https://bitcoin.org/en/developer-reference#merkleblock
*/ */
extern const char *MERKLEBLOCK; extern const char* MERKLEBLOCK;
/** /**
* The getblocks message requests an inv message that provides block header * The getblocks message requests an inv message that provides block header
* hashes starting from a particular point in the block chain. * hashes starting from a particular point in the block chain.
* @see https://bitcoin.org/en/developer-reference#getblocks * @see https://bitcoin.org/en/developer-reference#getblocks
*/ */
extern const char *GETBLOCKS; extern const char* GETBLOCKS;
/** /**
* The getheaders message requests a headers message that provides block * The getheaders message requests a headers message that provides block
* headers starting from a particular point in the block chain. * headers starting from a particular point in the block chain.
* @since protocol version 31800. * @since protocol version 31800.
* @see https://bitcoin.org/en/developer-reference#getheaders * @see https://bitcoin.org/en/developer-reference#getheaders
*/ */
extern const char *GETHEADERS; extern const char* GETHEADERS;
/** /**
* The tx message transmits a single transaction. * The tx message transmits a single transaction.
* @see https://bitcoin.org/en/developer-reference#tx * @see https://bitcoin.org/en/developer-reference#tx
*/ */
extern const char *TX; extern const char* TX;
/** /**
* The headers message sends one or more block headers to a node which * The headers message sends one or more block headers to a node which
* previously requested certain headers with a getheaders message. * previously requested certain headers with a getheaders message.
* @since protocol version 31800. * @since protocol version 31800.
* @see https://bitcoin.org/en/developer-reference#headers * @see https://bitcoin.org/en/developer-reference#headers
*/ */
extern const char *HEADERS; extern const char* HEADERS;
/** /**
* The block message transmits a single serialized block. * The block message transmits a single serialized block.
* @see https://bitcoin.org/en/developer-reference#block * @see https://bitcoin.org/en/developer-reference#block
*/ */
extern const char *BLOCK; extern const char* BLOCK;
/** /**
* The getaddr message requests an addr message from the receiving node, * The getaddr message requests an addr message from the receiving node,
* preferably one with lots of IP addresses of other receiving nodes. * preferably one with lots of IP addresses of other receiving nodes.
* @see https://bitcoin.org/en/developer-reference#getaddr * @see https://bitcoin.org/en/developer-reference#getaddr
*/ */
extern const char *GETADDR; extern const char* GETADDR;
/** /**
* The mempool message requests the TXIDs of transactions that the receiving * The mempool message requests the TXIDs of transactions that the receiving
* node has verified as valid but which have not yet appeared in a block. * node has verified as valid but which have not yet appeared in a block.
* @since protocol version 60002. * @since protocol version 60002.
* @see https://bitcoin.org/en/developer-reference#mempool * @see https://bitcoin.org/en/developer-reference#mempool
*/ */
extern const char *MEMPOOL; extern const char* MEMPOOL;
/** /**
* The ping message is sent periodically to help confirm that the receiving * The ping message is sent periodically to help confirm that the receiving
* peer is still connected. * peer is still connected.
* @see https://bitcoin.org/en/developer-reference#ping * @see https://bitcoin.org/en/developer-reference#ping
*/ */
extern const char *PING; extern const char* PING;
/** /**
* The pong message replies to a ping message, proving to the pinging node that * The pong message replies to a ping message, proving to the pinging node that
* the ponging node is still alive. * the ponging node is still alive.
* @since protocol version 60001 as described by BIP31. * @since protocol version 60001 as described by BIP31.
* @see https://bitcoin.org/en/developer-reference#pong * @see https://bitcoin.org/en/developer-reference#pong
*/ */
extern const char *PONG; extern const char* PONG;
/** /**
* The notfound message is a reply to a getdata message which requested an * The notfound message is a reply to a getdata message which requested an
* object the receiving node does not have available for relay. * object the receiving node does not have available for relay.
* @since protocol version 70001. * @since protocol version 70001.
* @see https://bitcoin.org/en/developer-reference#notfound * @see https://bitcoin.org/en/developer-reference#notfound
*/ */
extern const char *NOTFOUND; extern const char* NOTFOUND;
/** /**
* The filterload message tells the receiving peer to filter all relayed * The filterload message tells the receiving peer to filter all relayed
* transactions and requested merkle blocks through the provided filter. * transactions and requested merkle blocks through the provided filter.
@ -176,7 +176,7 @@ extern const char *NOTFOUND;
* 70011 as described by BIP111. * 70011 as described by BIP111.
* @see https://bitcoin.org/en/developer-reference#filterload * @see https://bitcoin.org/en/developer-reference#filterload
*/ */
extern const char *FILTERLOAD; extern const char* FILTERLOAD;
/** /**
* The filteradd message tells the receiving peer to add a single element to a * The filteradd message tells the receiving peer to add a single element to a
* previously-set bloom filter, such as a new public key. * previously-set bloom filter, such as a new public key.
@ -185,7 +185,7 @@ extern const char *FILTERLOAD;
* 70011 as described by BIP111. * 70011 as described by BIP111.
* @see https://bitcoin.org/en/developer-reference#filteradd * @see https://bitcoin.org/en/developer-reference#filteradd
*/ */
extern const char *FILTERADD; extern const char* FILTERADD;
/** /**
* The filterclear message tells the receiving peer to remove a previously-set * The filterclear message tells the receiving peer to remove a previously-set
* bloom filter. * bloom filter.
@ -194,20 +194,20 @@ extern const char *FILTERADD;
* 70011 as described by BIP111. * 70011 as described by BIP111.
* @see https://bitcoin.org/en/developer-reference#filterclear * @see https://bitcoin.org/en/developer-reference#filterclear
*/ */
extern const char *FILTERCLEAR; extern const char* FILTERCLEAR;
/** /**
* Indicates that a node prefers to receive new block announcements via a * Indicates that a node prefers to receive new block announcements via a
* "headers" message rather than an "inv". * "headers" message rather than an "inv".
* @since protocol version 70012 as described by BIP130. * @since protocol version 70012 as described by BIP130.
* @see https://bitcoin.org/en/developer-reference#sendheaders * @see https://bitcoin.org/en/developer-reference#sendheaders
*/ */
extern const char *SENDHEADERS; extern const char* SENDHEADERS;
/** /**
* The feefilter message tells the receiving peer not to inv us any txs * The feefilter message tells the receiving peer not to inv us any txs
* which do not meet the specified min fee rate. * which do not meet the specified min fee rate.
* @since protocol version 70013 as described by BIP133 * @since protocol version 70013 as described by BIP133
*/ */
extern const char *FEEFILTER; extern const char* FEEFILTER;
/** /**
* Contains a 1-byte bool and 8-byte LE version number. * Contains a 1-byte bool and 8-byte LE version number.
* Indicates that a node is willing to provide blocks via "cmpctblock" messages. * Indicates that a node is willing to provide blocks via "cmpctblock" messages.
@ -215,43 +215,43 @@ extern const char *FEEFILTER;
* "cmpctblock" message rather than an "inv", depending on message contents. * "cmpctblock" message rather than an "inv", depending on message contents.
* @since protocol version 70014 as described by BIP 152 * @since protocol version 70014 as described by BIP 152
*/ */
extern const char *SENDCMPCT; extern const char* SENDCMPCT;
/** /**
* Contains a CBlockHeaderAndShortTxIDs object - providing a header and * Contains a CBlockHeaderAndShortTxIDs object - providing a header and
* list of "short txids". * list of "short txids".
* @since protocol version 70014 as described by BIP 152 * @since protocol version 70014 as described by BIP 152
*/ */
extern const char *CMPCTBLOCK; extern const char* CMPCTBLOCK;
/** /**
* Contains a BlockTransactionsRequest * Contains a BlockTransactionsRequest
* Peer should respond with "blocktxn" message. * Peer should respond with "blocktxn" message.
* @since protocol version 70014 as described by BIP 152 * @since protocol version 70014 as described by BIP 152
*/ */
extern const char *GETBLOCKTXN; extern const char* GETBLOCKTXN;
/** /**
* Contains a BlockTransactions. * Contains a BlockTransactions.
* Sent in response to a "getblocktxn" message. * Sent in response to a "getblocktxn" message.
* @since protocol version 70014 as described by BIP 152 * @since protocol version 70014 as described by BIP 152
*/ */
extern const char *BLOCKTXN; extern const char* BLOCKTXN;
/** /**
* getcfcheckpt requests evenly spaced compact filter headers, enabling * getcfcheckpt requests evenly spaced compact filter headers, enabling
* parallelized download and validation of the headers between them. * parallelized download and validation of the headers between them.
* Only available with service bit NODE_COMPACT_FILTERS as described by * Only available with service bit NODE_COMPACT_FILTERS as described by
* BIP 157 & 158. * BIP 157 & 158.
*/ */
extern const char *GETCFCHECKPT; extern const char* GETCFCHECKPT;
/** /**
* cfcheckpt is a response to a getcfcheckpt request containing a vector of * cfcheckpt is a response to a getcfcheckpt request containing a vector of
* evenly spaced filter headers for blocks on the requested chain. * evenly spaced filter headers for blocks on the requested chain.
* Only available with service bit NODE_COMPACT_FILTERS as described by * Only available with service bit NODE_COMPACT_FILTERS as described by
* BIP 157 & 158. * BIP 157 & 158.
*/ */
extern const char *CFCHECKPT; extern const char* CFCHECKPT;
}; }; // namespace NetMsgType
/* Get a vector of all valid message types (see above) */ /* Get a vector of all valid message types (see above) */
const std::vector<std::string> &getAllNetMessageTypes(); const std::vector<std::string>& getAllNetMessageTypes();
/** nServices flags */ /** nServices flags */
enum ServiceFlags : uint64_t { enum ServiceFlags : uint64_t {
@ -320,7 +320,8 @@ void SetServiceFlagsIBDCache(bool status);
* == GetDesirableServiceFlags(services), ie determines whether the given * == GetDesirableServiceFlags(services), ie determines whether the given
* set of service flags are sufficient for a peer to be "relevant". * set of service flags are sufficient for a peer to be "relevant".
*/ */
static inline bool HasAllDesirableServiceFlags(ServiceFlags services) { static inline bool HasAllDesirableServiceFlags(ServiceFlags services)
{
return !(GetDesirableServiceFlags(services) & (~services)); return !(GetDesirableServiceFlags(services) & (~services));
} }
@ -328,7 +329,8 @@ static inline bool HasAllDesirableServiceFlags(ServiceFlags services) {
* Checks if a peer with the given service flags may be capable of having a * Checks if a peer with the given service flags may be capable of having a
* robust address-storage DB. * robust address-storage DB.
*/ */
static inline bool MayHaveUsefulAddressDB(ServiceFlags services) { static inline bool MayHaveUsefulAddressDB(ServiceFlags services)
{
return (services & NODE_NETWORK) || (services & NODE_NETWORK_LIMITED); return (services & NODE_NETWORK) || (services & NODE_NETWORK_LIMITED);
} }
@ -368,20 +370,19 @@ public:
/** getdata message type flags */ /** getdata message type flags */
const uint32_t MSG_WITNESS_FLAG = 1 << 30; const uint32_t MSG_WITNESS_FLAG = 1 << 30;
const uint32_t MSG_TYPE_MASK = 0xffffffff >> 2; const uint32_t MSG_TYPE_MASK = 0xffffffff >> 2;
/** getdata / inv message types. /** getdata / inv message types.
* These numbers are defined by the protocol. When adding a new value, be sure * These numbers are defined by the protocol. When adding a new value, be sure
* to mention it in the respective BIP. * to mention it in the respective BIP.
*/ */
enum GetDataMsg enum GetDataMsg {
{
UNDEFINED = 0, UNDEFINED = 0,
MSG_TX = 1, MSG_TX = 1,
MSG_BLOCK = 2, MSG_BLOCK = 2,
// The following can only occur in getdata. Invs always use TX or BLOCK. // The following can only occur in getdata. Invs always use TX or BLOCK.
MSG_FILTERED_BLOCK = 3, //!< Defined in BIP37 MSG_FILTERED_BLOCK = 3, //!< Defined in BIP37
MSG_CMPCT_BLOCK = 4, //!< Defined in BIP152 MSG_CMPCT_BLOCK = 4, //!< Defined in BIP152
MSG_WITNESS_BLOCK = MSG_BLOCK | MSG_WITNESS_FLAG, //!< Defined in BIP144 MSG_WITNESS_BLOCK = MSG_BLOCK | MSG_WITNESS_FLAG, //!< Defined in BIP144
MSG_WITNESS_TX = MSG_TX | MSG_WITNESS_FLAG, //!< Defined in BIP144 MSG_WITNESS_TX = MSG_TX | MSG_WITNESS_FLAG, //!< Defined in BIP144
MSG_FILTERED_WITNESS_BLOCK = MSG_FILTERED_BLOCK | MSG_WITNESS_FLAG, MSG_FILTERED_WITNESS_BLOCK = MSG_FILTERED_BLOCK | MSG_WITNESS_FLAG,