summaryrefslogtreecommitdiff
path: root/6f/879d36444692a3edab1e95e66ba33b5e5bf1e7
blob: d553b1278675bb848bed946ac38c5ff156a8241c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
Return-Path: <eric@voskuil.org>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 61040949
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Mon, 13 Feb 2017 11:17:09 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-ot0-f172.google.com (mail-ot0-f172.google.com
	[74.125.82.172])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id F236216F
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Mon, 13 Feb 2017 11:17:07 +0000 (UTC)
Received: by mail-ot0-f172.google.com with SMTP id 32so64861767oth.3
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Mon, 13 Feb 2017 03:17:07 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=voskuil-org.20150623.gappssmtp.com; s=20150623;
	h=subject:to:references:cc:from:message-id:date:user-agent
	:mime-version:in-reply-to;
	bh=/xymEjAjXCNTbr42SyXmlJuuFMTGEQ+QNhchnAUJe9g=;
	b=f6V7oDz4nt6IzQQdtZgyJ4zU6yKq/cb2P/VZbh24Vpl0yufFBVBSmPw4su44l+7cSR
	XHR5i76jOerzFYyyoRZpcfyvreSNUTrOrF9jDFTP11TLYE1oy/qUAvYObTu7dun5NK/B
	nEyE3JIN88URV4SVLc4RXtZQltOUS/MWGJ/14ssc/MS1HDJVdy/HnEzzSsxLuYbZN+g3
	mNjTDs0PpJXDXDLU/trDOBTlNbMR58+Z3T72FJ2Vy+YTmqYKpG/15TTkzsnCvzTZr96r
	gjd00qPteJk24QLWe64Ku/i/l+0vzNxVMtw92Y763CCA152zcwxTNwmC23ZBmP6Et5dA
	5kzw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20161025;
	h=x-gm-message-state:subject:to:references:cc:from:message-id:date
	:user-agent:mime-version:in-reply-to;
	bh=/xymEjAjXCNTbr42SyXmlJuuFMTGEQ+QNhchnAUJe9g=;
	b=mQ4t87OzGuXBc7F8dCNVdQvuhGmXpWIGcr+h1eETleEKsZTRFtniTA9aaLzeXMm0VE
	56UVjexF96C4IVq8W34H10NFVDhL748HLEYYWbrl2uwqiw10l2s2F9QLx3XdUoY/Nxaw
	SJ8N02SlZp10vyJmYcefdkaBy/U4Zov5pwPC1Pj0mV08hXYfG7cnHMZ+roqlbUmDG5Eb
	dNT4NTlTXVciFwghWrmn9pWUwJEal6JyTb1/nB/1DWuHABQpKlqAEFRTfqEud37mhAVg
	oXxyNcKBZ9DABCP2OuVjBIIRs1kBxE0gkNQIxKYjcO8XGCRVKH4mb8R/t5thdHgzih11
	FCtA==
X-Gm-Message-State: AMke39l0PHdgwzynLiFojj2k9433DXBHL4JjGHQCd/aIHaQYtHsHre+oMt0BaKLIXjpwiQ==
X-Received: by 10.98.71.199 with SMTP id p68mr25497321pfi.104.1486984627240;
	Mon, 13 Feb 2017 03:17:07 -0800 (PST)
Received: from ?IPv6:2601:600:9000:d69e:29fe:db3d:631d:9499?
	([2601:600:9000:d69e:29fe:db3d:631d:9499])
	by smtp.gmail.com with ESMTPSA id
	s24sm18206109pgo.25.2017.02.13.03.17.06
	(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 13 Feb 2017 03:17:06 -0800 (PST)
To: Matt Corallo <lf-lists@mattcorallo.com>,
	Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>,
	Pieter Wuille <pieter.wuille@gmail.com>
References: <ba422d5e-8e96-3475-2a29-80d89fd67322@voskuil.org>
	<CAPg+sBhDjVuN6=tdvUcSY5OCdJD7s3Jp90K1qx0iRX+2WppUQQ@mail.gmail.com>
	<dde5349d-c430-ad57-30c7-77954ff1a94d@voskuil.org>
	<424C9E40-0B90-46A6-9C5E-30AE3E84E119@mattcorallo.com>
	<9ca02a65-23df-5eb4-f9bd-7e05b54ec4ea@voskuil.org>
	<9ECDD902-1D2C-4500-8FC2-4DADF46E4318@mattcorallo.com>
From: Eric Voskuil <eric@voskuil.org>
Message-ID: <0983c823-e517-2821-1398-24bc7467b364@voskuil.org>
Date: Mon, 13 Feb 2017 03:17:11 -0800
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
	Thunderbird/45.5.1
MIME-Version: 1.0
In-Reply-To: <9ECDD902-1D2C-4500-8FC2-4DADF46E4318@mattcorallo.com>
Content-Type: multipart/signed; micalg=pgp-sha1;
	protocol="application/pgp-signature";
	boundary="49wTHU7AGXBEgdaqnfV7ANW21NLQk7ai9"
X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,
	DKIM_VALID, RCVD_IN_DNSWL_NONE,
	RCVD_IN_SORBS_SPAM autolearn=no version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
	smtp1.linux-foundation.org
X-Mailman-Approved-At: Mon, 13 Feb 2017 11:43:51 +0000
Cc: libbitcoin@lists.dyne.org
Subject: Re: [bitcoin-dev] BIP151 protocol incompatibility
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Mon, 13 Feb 2017 11:17:09 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--49wTHU7AGXBEgdaqnfV7ANW21NLQk7ai9
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

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:

https://github.com/bitcoin/bitcoin/blob/master/src/net_processing.cpp#L13=
72-L1403

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
spelled out.

e

> On February 13, 2017 11:54:23 AM GMT+01:00, Eric Voskuil <eric@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-ignore=
d
>> messages to set up optional features.
>>
>> Only if the peer is at the protocol level that allows the message:
>>
>> compact blocks:
>>
>> https://github.com/bitcoin/bitcoin/blob/master/src/protocol.h#L217-L24=
2
>>
>> fee filter:
>>
>> https://github.com/bitcoin/bitcoin/blob/master/src/protocol.h#L211-L21=
6
>>
>> send headers:
>>
>> https://github.com/bitcoin/bitcoin/blob/master/src/protocol.h#L204-L21=
0
>>
>> filters:
>>
>> https://github.com/bitcoin/bitcoin/blob/master/src/protocol.h#L170-L19=
6
>>
>>> 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.
>> Not
>> 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
>> are
>> not sent until *after* the version is negotiated.
>>
>> I assume that BIP151 is different in this manner because it has a
>> desire
>> to negotiate encryption before any other communications, including
>> version.
>>
>> e


--49wTHU7AGXBEgdaqnfV7ANW21NLQk7ai9
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)

iQEcBAEBAgAGBQJYoZW3AAoJEDzYwH8LXOFOmOgH/iEyfUO8gJXdo5FG/5oyOwte
dc1abCKv0HezFcdwc710ZLX6Obj8/1j6tVabzdCTZSbbHmhNmj3wSbZe6gjFUzTy
2/SBm2jGmMQUlpuKI2dhBPEIg7aMGV1W0b30YphWAaqAyQm0U1qgXuBKCcyxFLR4
006o/yEf6v0RXjd9Ghd87oMGrTxfIHm0FPTovrkTakK7cr+HwBxM5rutZdB0q70o
050uCapxZYj412YsJGEJ3iCSiCbP84+RL8fYi0iiEIE+z5kTNMaGyeqyCZRaWgwH
a1yUDmPKeEbh2gwcmqUfCAgM7+AEzp39UFcEF0lhm6fbFr7ZCR4n+77hxZYXR00=
=1a34
-----END PGP SIGNATURE-----

--49wTHU7AGXBEgdaqnfV7ANW21NLQk7ai9--