aboutsummaryrefslogtreecommitdiff
path: root/src/protocol.cpp
diff options
context:
space:
mode:
authorVasil Dimov <vd@FreeBSD.org>2020-05-20 12:05:18 +0200
committerVasil Dimov <vd@FreeBSD.org>2020-10-09 16:42:50 +0200
commit353a3fdaad055eea42a0baf7326bdd591f541170 (patch)
treeab25e783cbf347df239d98060f83dcf2ea72209a /src/protocol.cpp
parent201a4596d92d640d5eb7e76cc8d959228fa09dbb (diff)
downloadbitcoin-353a3fdaad055eea42a0baf7326bdd591f541170.tar.xz
net: advertise support for ADDRv2 via new message
Introduce a new message `sendaddrv2` to signal support for ADDRv2. Send the new message immediately after sending the `VERACK` message. Add support for receiving and parsing ADDRv2 messages. Send ADDRv2 messages (instead of ADDR) to a peer if he has advertised support for it. Co-authored-by: Carl Dong <contact@carldong.me>
Diffstat (limited to 'src/protocol.cpp')
-rw-r--r--src/protocol.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/protocol.cpp b/src/protocol.cpp
index 84b6e96aee..dc8f795a0c 100644
--- a/src/protocol.cpp
+++ b/src/protocol.cpp
@@ -14,6 +14,8 @@ namespace NetMsgType {
const char *VERSION="version";
const char *VERACK="verack";
const char *ADDR="addr";
+const char *ADDRV2="addrv2";
+const char *SENDADDRV2="sendaddrv2";
const char *INV="inv";
const char *GETDATA="getdata";
const char *MERKLEBLOCK="merkleblock";
@@ -52,6 +54,8 @@ const static std::string allNetMessageTypes[] = {
NetMsgType::VERSION,
NetMsgType::VERACK,
NetMsgType::ADDR,
+ NetMsgType::ADDRV2,
+ NetMsgType::SENDADDRV2,
NetMsgType::INV,
NetMsgType::GETDATA,
NetMsgType::MERKLEBLOCK,