Bitcoin Core
31.1.0
P2P Digital Currency
Toggle main menu visibility
Loading...
Searching...
No Matches
src
node
connection_types.h
Go to the documentation of this file.
1
// Copyright (c) 2022-present The Bitcoin Core developers
2
// Distributed under the MIT software license, see the accompanying
3
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5
#ifndef BITCOIN_NODE_CONNECTION_TYPES_H
6
#define BITCOIN_NODE_CONNECTION_TYPES_H
7
8
#include <cstdint>
9
#include <string>
10
18
enum class
ConnectionType
{
24
INBOUND
,
25
32
OUTBOUND_FULL_RELAY
,
33
34
41
MANUAL
,
42
58
FEELER
,
59
69
BLOCK_RELAY
,
70
77
ADDR_FETCH
,
78
84
PRIVATE_BROADCAST
,
85
};
86
88
std::string
ConnectionTypeAsString
(
ConnectionType
conn_type);
89
91
enum class
TransportProtocolType
: uint8_t {
92
DETECTING
,
93
V1
,
94
V2
,
95
};
96
98
std::string
TransportTypeAsString
(
TransportProtocolType
transport_type);
99
100
#endif
// BITCOIN_NODE_CONNECTION_TYPES_H
TransportTypeAsString
std::string TransportTypeAsString(TransportProtocolType transport_type)
Convert TransportProtocolType enum to a string value.
Definition
connection_types.cpp:30
ConnectionType
ConnectionType
Different types of connections to a peer.
Definition
connection_types.h:18
ConnectionType::PRIVATE_BROADCAST
@ PRIVATE_BROADCAST
Private broadcast connections are short-lived and only opened to privacy networks (Tor,...
Definition
connection_types.h:84
ConnectionType::BLOCK_RELAY
@ BLOCK_RELAY
We use block-relay-only connections to help prevent against partition attacks.
Definition
connection_types.h:69
ConnectionType::MANUAL
@ MANUAL
We open manual connections to addresses that users explicitly requested via the addnode RPC or the -a...
Definition
connection_types.h:41
ConnectionType::OUTBOUND_FULL_RELAY
@ OUTBOUND_FULL_RELAY
These are the default connections that we use to connect with the network.
Definition
connection_types.h:32
ConnectionType::FEELER
@ FEELER
Feeler connections are short-lived connections made to check that a node is alive.
Definition
connection_types.h:58
ConnectionType::INBOUND
@ INBOUND
Inbound connections are those initiated by a peer.
Definition
connection_types.h:24
ConnectionType::ADDR_FETCH
@ ADDR_FETCH
AddrFetch connections are short lived connections used to solicit addresses from peers.
Definition
connection_types.h:77
TransportProtocolType
TransportProtocolType
Transport layer version.
Definition
connection_types.h:91
TransportProtocolType::V1
@ V1
Unencrypted, plaintext protocol.
Definition
connection_types.h:93
TransportProtocolType::V2
@ V2
BIP324 protocol.
Definition
connection_types.h:94
TransportProtocolType::DETECTING
@ DETECTING
Peer could be v1 or v2.
Definition
connection_types.h:92
ConnectionTypeAsString
std::string ConnectionTypeAsString(ConnectionType conn_type)
Convert ConnectionType enum to a string value.
Definition
connection_types.cpp:8
Generated on
for Bitcoin Core by
1.17.0