[bitcoin-dev] BIP151 protocol incompatibility
eric at voskuil.org
Mon Feb 13 11:17:11 UTC 2017
On 02/13/2017 03:11 AM, Matt Corallo wrote:
> I believe many, if not all, of those messages are sent irrespective of version number.
In the interest of perfect clarity, see your code:
Inside of the VERACK handler (i.e. after the handshake) there is a peer
version test before sending SENDCMPCT (and SENDHEADERS).
I have no idea where the fee filter message is sent, if it is sent at
all. But I have *never* seen any control messages arrive before the
handshake is complete.
> In any case, I fail to see how adding any additional messages which
are ignored by old peers amounts to a lack of backward compatibility.
See preceding messages in this thread, I think it's pretty clearly
> On February 13, 2017 11:54:23 AM GMT+01:00, Eric Voskuil <eric at voskuil.org> wrote:
>> On 02/13/2017 02:16 AM, Matt Corallo wrote:
>>> For the reasons Pieter listed, an explicit part of our version
>> handshake and protocol negotiation is the exchange of otherwise-ignored
>> messages to set up optional features.
>> Only if the peer is at the protocol level that allows the message:
>> compact blocks:
>> fee filter:
>> send headers:
>>> Peers that do not support this ignore such messages, just as if they
>> had indicated they wouldn't support it, see, eg BIP 152's handshake.
>> sure why you consider this backwards incompatible, as I would say it's
>> pretty clearly allowing old nodes to communicate just fine.
>> No, it is not the same as BIP152. Control messages apart from BIP151
>> not sent until *after* the version is negotiated.
>> I assume that BIP151 is different in this manner because it has a
>> to negotiate encryption before any other communications, including
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 490 bytes
Desc: OpenPGP digital signature
More information about the bitcoin-dev