diff options
author | Vasil Dimov <vd@FreeBSD.org> | 2020-06-09 09:36:26 +0200 |
---|---|---|
committer | Vasil Dimov <vd@FreeBSD.org> | 2020-07-16 20:38:02 +0200 |
commit | 350189ad489c99a426915b123502a8339ef8d1ba (patch) | |
tree | b0c5668b9db9cb7fa4284511a0798af8fff23833 /bip-0155.mediawiki | |
parent | 42ee3f5c15de34dfbe9473807d44685fa1354e86 (diff) |
BIP155: use a dedicated message for signalling
Change signaling of support for the new `addrv2` messages to be done via
a dedicated message `sendaddrv2` instead of protocol bump.
The drawback of using a protocol bump is that the protocol version is
not a bitmask and if a node wants to announce support for `addrv2` this
would imply support for all prior features included in that protocol
version.
Diffstat (limited to 'bip-0155.mediawiki')
-rw-r--r-- | bip-0155.mediawiki | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/bip-0155.mediawiki b/bip-0155.mediawiki index ba0c798..1364a3f 100644 --- a/bip-0155.mediawiki +++ b/bip-0155.mediawiki @@ -130,14 +130,13 @@ Clients SHOULD reject messages that contain addresses that have a different leng See the appendices for the address encodings to be used for the various networks. -==Compatibility== - -Send <code>addrv2</code> messages only, and exclusively, when the peer has a certain protocol version (or higher): -<source lang="c++"> -//! gossiping using `addrv2` messages starts with this version -static const int GOSSIP_ADDRV2_VERSION = 70016; -</source> -For older peers keep sending the legacy <code>addr</code> message, ignoring addresses with the newly introduced address types. +==Signaling support and compatibility== + +Introduce a new message type <code>sendaddrv2</code>. Sending such a message indicates that a node can understand and prefers to receive <code>addrv2</code> messages instead of <code>addr</code> messages. I.e. "Send me addrv2". + +<code>sendaddrv2</code> SHOULD be sent after receiving the <code>verack</code> message from the peer. + +For older peers, that did not emit <code>sendaddrv2</code>, keep sending the legacy <code>addr</code> message, ignoring addresses with the newly introduced address types. ==Reference implementation== |