@@ -83,6 +83,162 @@ def run_test(self):
83
83
"status" : "headers-only" ,
84
84
} in self .nodes [1 ].getchaintips ()
85
85
86
+ self .log .info ("Feed checkpoint-violating block (succeeds up until the checkpoint mismatch, then fails)" )
87
+ block = CBlockHeader (self .headers_fork [- 1 ])
88
+ headers_fork2 = []
89
+ for time_offset , nonce in (
90
+ (3 ,0x023ec36d ),(3 ,0x9e4f929b ),(0 ,0x8bb04400 ),(3 ,0x31bbae20 ),
91
+ (0 ,0xd53e5028 ),(2 ,0x7841f4e3 ),(5 ,0x7a8990a4 ),(2 ,0x489e28a1 ),
92
+ (1 ,0x68bdb61a ),(- 1 ,0xf6d2a9fb ),(5 ,0x487dcf25 ),(3 ,0x546da3d4 ),
93
+ (4 ,0xc1f844d2 ),(3 ,0x0c086f6f ),(0 ,0xc2321e55 ),(6 ,0xde1aa13c ),
94
+ (0 ,0x05227358 ),(4 ,0x5e021e88 ),(1 ,0xab2a18ae ),(8 ,0x80c58047 ),
95
+ (5 ,0xfaed66b9 ),(4 ,0x85e64899 ),(6 ,0x3a0de669 ),(1 ,0x5c519d58 ),
96
+ (4 ,0x992f74d0 ),(4 ,0xf9eb3bef ),(4 ,0x07673e35 ),(5 ,0x21b99d08 ),
97
+ (3 ,0xef38d256 ),(2 ,0xa4f1dc1b ),(1 ,0x2c8a4530 ),(0 ,0x2b5ea5b4 ),
98
+ (6 ,0xf2284fc5 ),(0 ,0x1dfbd513 ),(0 ,0x0b17a886 ),(2 ,0x0bc3f397 ),
99
+ (0 ,0x22cc4db0 ),(9 ,0x297d6621 ),(1 ,0xa6ae996b ),(0 ,0x48749a3f ),
100
+ (0 ,0x989bf1a2 ),(6 ,0xa052d387 ),(1 ,0x9e2f6137 ),(3 ,0x6a0be10c ),
101
+ (1 ,0xef64e362 ),(4 ,0xce516de6 ),(0 ,0x2d077f41 ),(1 ,0x6188fb5d ),
102
+ (3 ,0xa72b0388 ),(2 ,0xd1065e3b ),(0 ,0x73641cc7 ),(4 ,0xa667e807 ),
103
+ (3 ,0x343f4941 ),(2 ,0xe62c5e97 ),(2 ,0x64ccbe3f ),(2 ,0x891494ce ),
104
+ (2 ,0x1a1593ba ),(1 ,0x7fb3165c ),(3 ,0x9210c30b ),(0 ,0x221e0eb6 ),
105
+ (2 ,0x9e80023b ),(5 ,0xb8981525 ),(4 ,0xa9eb35ed ),(0 ,0x0cfe8f68 ),
106
+ (4 ,0x31868c9d ),(0 ,0xbc0fa60e ),(5 ,0xcca64b21 ),(0 ,0x28a1f860 ),
107
+ (2 ,0xbf629fb5 ),(2 ,0x4e0673ab ),(0 ,0x8271fd15 ),(2 ,0x1d1ba6fd ),
108
+ (1 ,0xf8552431 ),(1 ,0x4a5847a3 ),(2 ,0x60e70a8b ),(0 ,0x28e05674 ),
109
+ (1 ,0x3a52baa0 ),(4 ,0x93cc4193 ),(1 ,0xb9e83452 ),(- 1 ,0x02578099 ),
110
+ (6 ,0xf1deecdb ),(3 ,0xbfc713f0 ),(1 ,0xd42411c2 ),(3 ,0x2ff09457 ),
111
+ (4 ,0xca26349a ),(5 ,0x11e45b8a ),(2 ,0x21861128 ),(0 ,0xc2f0cf4d ),
112
+ (4 ,0x8934b604 ),(0 ,0xcc822981 ),(4 ,0xef67ee2c ),(2 ,0x940a8496 ),
113
+ (2 ,0xd67ea903 ),(3 ,0xd6975b4c ),(1 ,0x39d3775b ),(3 ,0x33e2a45a ),
114
+ (0 ,0x43452dd5 ),(5 ,0xf0221dda ),(2 ,0x24440716 ),(1 ,0x9c160e08 ),
115
+ (4 ,0xd0e7252a ),(1 ,0x447411d2 ),(3 ,0x958eaa10 ),(- 3 ,0xb9c956ec ),
116
+ (1 ,0x5cd63c9c ),(1 ,0x4af69deb ),(3 ,0x90b93454 ),(2 ,0x17959b09 ),
117
+ (3 ,0xb05154ec ),(0 ,0x058f9e11 ),(1 ,0x227d9c1e ),(4 ,0xacb7701f ),
118
+ (4 ,0x9542721f ),(2 ,0x1e05aa42 ),(1 ,0x933d4365 ),(1 ,0xb5c3a67e ),
119
+ (0 ,0xac9cc6a6 ),(1 ,0x4a76055a ),(2 ,0x7721afe9 ),(5 ,0xe12b457e ),
120
+ (1 ,0xaecdc119 ),(0 ,0xe8e4ca43 ),(1 ,0x6e42e836 ),(1 ,0x1d4dec49 ),
121
+ (1 ,0xf8056d54 ),(1 ,0x584bccb8 ),(1 ,0x1932259b ),(0 ,0xdf53ee37 ),
122
+ (0 ,0x74e1f913 ),(1 ,0xc7d3a7e2 ),(4 ,0xef483c04 ),(0 ,0x60ad07f0 ),
123
+ (3 ,0x89c790ea ),(0 ,0xb7cadd7e ),(2 ,0x38a82398 ),(1 ,0xfb93ea07 ),
124
+ (0 ,0x200d8ecd ),(0 ,0xf1339a41 ),(3 ,0x6af69ec7 ),(3 ,0xaffa785f ),
125
+ (2 ,0x67552c61 ),(3 ,0xec447684 ),(0 ,0xa28c3c1b ),(0 ,0x1a3218f3 ),
126
+ (3 ,0xc291da2c ),(0 ,0x497d588f ),(3 ,0x9fc4f865 ),(0 ,0x68070cc7 ),
127
+ (4 ,0x9b7c0842 ),(3 ,0x3ea910ac ),(0 ,0x5c793e79 ),(3 ,0x839fca4c ),
128
+ (1 ,0x16a801e7 ),(0 ,0x26ad46a3 ),(2 ,0x7709be6c ),(2 ,0xc57d1b58 ),
129
+ (4 ,0x9a4a49c1 ),(4 ,0xd59ee673 ),(7 ,0x8d1ded67 ),(1 ,0x9ddc3594 ),
130
+ (0 ,0xf3af3d45 ),(3 ,0xbbb210be ),(0 ,0xec262c80 ),(4 ,0x6731951b ),
131
+ (0 ,0xdc36282b ),(2 ,0xae470ed2 ),(1 ,0x22c57186 ),(1 ,0xde307b71 ),
132
+ (4 ,0x3d185e05 ),(- 3 ,0x58d53609 ),(1 ,0xb25fc17d ),(2 ,0x6c490b64 ),
133
+ (5 ,0x03d05d9b ),(2 ,0x3e84e2ce ),(0 ,0x2c38303d ),(1 ,0x487c092c ),
134
+ (1 ,0x23a3da6e ),(3 ,0x2854a040 ),(1 ,0xa546be54 ),(1 ,0x50bfd84d ),
135
+ (1 ,0x6795f353 ),(0 ,0x82e77285 ),(1 ,0x24dd5aa3 ),(1 ,0x0563f0ea ),
136
+ (2 ,0xb2b9be8d ),(1 ,0x54e70019 ),(0 ,0xb4a31d38 ),(0 ,0xfd3c816d ),
137
+ (4 ,0x84bfd3a7 ),(3 ,0x47ecc30d ),(2 ,0x6e1caa0c ),(1 ,0x47097b3e ),
138
+ (0 ,0x30316532 ),(0 ,0xca42b48d ),(6 ,0xb5f05a80 ),(5 ,0xcf1f9c0f ),
139
+ (1 ,0xc7c9c0a0 ),(7 ,0xdce826fa ),(2 ,0x92478133 ),(0 ,0xdeff31ab ),
140
+ (2 ,0xfeba362f ),(2 ,0x143b78db ),(0 ,0x48dfb442 ),(1 ,0x7b660255 ),
141
+ (0 ,0x9b2d9613 ),(0 ,0xc81a0b46 ),(5 ,0xfa0257c2 ),(0 ,0xcb799eac ),
142
+ (3 ,0xe66885b5 ),(0 ,0xb7523b87 ),(3 ,0x80ec766e ),(0 ,0xd3117846 ),
143
+ (4 ,0x44d9d213 ),(3 ,0xf3540f37 ),(0 ,0x838a3b64 ),(4 ,0xd221d138 ),
144
+ (3 ,0xa96e0947 ),(1 ,0xd09222da ),(1 ,0x72071fec ),(0 ,0x5424ae38 ),
145
+ (4 ,0xbd5c3d49 ),(4 ,0x2d1be9ef ),(3 ,0x31d8521d ),(3 ,0x5f0ac290 ),
146
+ (0 ,0x27710324 ),(3 ,0xc1cc6b58 ),(0 ,0xb1256275 ),(0 ,0x5473ced1 ),
147
+ (1 ,0x35293898 ),(0 ,0x062a003f ),(3 ,0xee177b2e ),(4 ,0xbbb9235a ),
148
+ (1 ,0x183cebbe ),(3 ,0xced4e55b ),(2 ,0x8050c0fc ),(7 ,0xe46e0207 ),
149
+ (2 ,0xf23c4b96 ),(- 2 ,0x2d7ec1f1 ),(1 ,0x90161c6d ),(8 ,0x62d4b92f ),
150
+ (1 ,0x20086401 ),(2 ,0x2ce864a0 ),(4 ,0x317da57e ),(2 ,0x2cc9250b ),
151
+ (0 ,0xf41ea979 ),(1 ,0xa50ca905 ),(0 ,0x4c0916bb ),(6 ,0x45becd84 ),
152
+ (3 ,0xdac6c807 ),(0 ,0xc88954d5 ),(2 ,0xf1ebf2b6 ),(2 ,0xa1e8f013 ),
153
+ (1 ,0xb86af5b1 ),(1 ,0xc864d9f1 ),(4 ,0x5e91821b ),(5 ,0x9b3ae958 ),
154
+ (0 ,0x5c37debb ),(4 ,0xf85e2180 ),(1 ,0x9de6eb5c ),(1 ,0x51ec9650 ),
155
+ (0 ,0xf3d31a0d ),(0 ,0x127a4cad ),(2 ,0x7698ee29 ),(1 ,0x63297ce6 ),
156
+ (1 ,0xf9952a56 ),(0 ,0xb2bcdb59 ),(2 ,0xd904198f ),(1 ,0xe0ceed57 ),
157
+ (2 ,0xe883801f ),(0 ,0x9c48eff1 ),(2 ,0x69bd1c00 ),(0 ,0xefb5c46c ),
158
+ (1 ,0x0ee6d904 ),(0 ,0xa01e4f15 ),(0 ,0xe50170fc ),(3 ,0x1a057766 ),
159
+ (2 ,0xffddd03e ),(1 ,0x9842404d ),(0 ,0xff3c892c ),(3 ,0x468f2c36 ),
160
+ (2 ,0xef3c2e4e ),(0 ,0x72c0ea16 ),(4 ,0x815c722e ),(1 ,0xe77dee42 ),
161
+ (0 ,0xddd8b502 ),(5 ,0xf4d60169 ),(0 ,0x86b593af ),(0 ,0x08cca2a5 ),
162
+ (4 ,0x07652fb5 ),(2 ,0x19ead298 ),(0 ,0x94af6d52 ),(2 ,0x67955b19 ),
163
+ (0 ,0xf579c469 ),(0 ,0x4b010360 ),(0 ,0x67bbba31 ),(5 ,0x2e47930e ),
164
+ (1 ,0xbc6872d8 ),(3 ,0x645621b8 ),(1 ,0xe2c5120b ),(0 ,0xf3c50807 ),
165
+ (1 ,0x6dcf4d07 ),(1 ,0xaeb4237d ),(1 ,0x2a5f46a0 ),(2 ,0x4e8d3883 ),
166
+ (0 ,0x48268869 ),(0 ,0x3bd2401a ),(6 ,0x0bec238c ),(0 ,0x262c5697 ),
167
+ (1 ,0xbbf9572d ),(2 ,0x37df6e6f ),(3 ,0x2ce9e7f3 ),(2 ,0x9c0741b1 ),
168
+ (0 ,0x8158c135 ),(2 ,0x007c8856 ),(1 ,0x6c59cc11 ),(1 ,0x2d77e50c ),
169
+ (0 ,0x43b85637 ),(1 ,0x37440748 ),(4 ,0x418b2692 ),(4 ,0x3bc8200e ),
170
+ (3 ,0x42e28d55 ),(1 ,0xadd84676 ),(0 ,0x2f58d608 ),(4 ,0xa252bf4e ),
171
+ (5 ,0x36365c0e ),(3 ,0x22736e12 ),(2 ,0xac0e0e83 ),(1 ,0x30316f60 ),
172
+ (4 ,0xedb2b98e ),(1 ,0x46cd60ed ),(3 ,0x8404d922 ),(2 ,0x0e230e16 ),
173
+ (1 ,0xf2b50134 ),(- 1 ,0x8e256fff ),(0 ,0x80199c4d ),(1 ,0x56e07a97 ),
174
+ (1 ,0x2f9eed9a ),(0 ,0xfb8a7055 ),(3 ,0xe3d02c6b ),(3 ,0xd9b43b13 ),
175
+ (1 ,0xe4faa52a ),(2 ,0x270801f7 ),(0 ,0x5fa6a206 ),(4 ,0xa151f071 ),
176
+ (3 ,0xd2848896 ),(0 ,0x3d5f905f ),(5 ,0x499ae522 ),(1 ,0xc61d9839 ),
177
+ (5 ,0xdd2f28b4 ),(0 ,0x7dc21c39 ),(0 ,0x57e1ab56 ),(0 ,0x42027d5a ),
178
+ (6 ,0x242a8813 ),(4 ,0x69fdcc57 ),(3 ,0xff7bd13a ),(2 ,0x9a3b2839 ),
179
+ (5 ,0x4af325ee ),(2 ,0x58dea930 ),(2 ,0x202b57a4 ),(764 ,0xa39c30f0 ),
180
+ (3 ,0x1ac08e2c ),(7 ,0xa9263507 ),(1 ,0xb1c5602a ),(0 ,0xf9716695 ),
181
+ (2 ,0x8ce36f1c ),(1 ,0xddf12292 ),(4 ,0xa22e830d ),(1 ,0xb84c2e51 ),
182
+ (2 ,0x3f6eb08c ),(0 ,0x185ae643 ),(0 ,0x3b3ee340 ),(5 ,0x2f0bce41 ),
183
+ (5 ,0x2c915d7c ),(4 ,0xe0169c60 ),(5 ,0xc5b08211 ),(0 ,0x3f123b19 ),
184
+ (2 ,0x443baa3f ),(0 ,0x86e5bd6b ),(1 ,0x728af7ae ),(2 ,0x34cd4af0 ),
185
+ (1 ,0x773b28fc ),(4 ,0xb42fcf79 ),(2 ,0xcf4cddcd ),(3 ,0x472c939d ),
186
+ (1 ,0xa2f66937 ),(3 ,0x9202dd5a ),(13 ,0x87b4cbd0 ),(16 ,0x8d74ed44 ),
187
+ (1 ,0xab0ec370 ),(0 ,0x4345bc72 ),(3 ,0x1663d4e8 ),(54 ,0x53304a20 ),
188
+ (14 ,0xf3c7c0b5 ),(1 ,0xa755c4d5 ),(0 ,0xb4a4246d ),(3 ,0xb55800f7 ),
189
+ (14 ,0x80d85102 ),(0 ,0x98d4e5ac ),(1 ,0x6f245269 ),(13 ,0x038c57c4 ),
190
+ (0 ,0x86e5ac2e ),(1 ,0x6c1963c6 ),(0 ,0x1adc14a1 ),(3 ,0x8f37ac31 ),
191
+ (18 ,0x16fd4d32 ),(15 ,0xee5bbf16 ),(13 ,0xfba44c88 ),(13 ,0x4f6b4e47 ),
192
+ (14 ,0xf9d7fe91 ),(1 ,0xe5e66769 ),(1 ,0x7ff9be17 ),(1 ,0xd53b2c20 ),
193
+ (3 ,0xa48129e8 ),(1 ,0xca7692d9 ),(1 ,0x55067b69 ),(0 ,0xbae33993 ),
194
+ (0 ,0x789a395c ),(0 ,0xb2617974 ),(1 ,0xa49ae3ae ),(0 ,0x52c934ba ),
195
+ (4 ,0x6ee4bde6 ),(0 ,0x083b4807 ),(4 ,0x382b6a26 ),(1 ,0x17f2e8d3 ),
196
+ (4 ,0x70d17e03 ),(4 ,0x48bb565b ),(2 ,0x437d655f ),(2 ,0xece43c5f ),
197
+ (0 ,0xc06407f0 ),(4 ,0xabc4d27a ),(4 ,0xf7162b9f ),(5 ,0x97dc4313 ),
198
+ (4 ,0x7c9578fa ),(4 ,0xd38229e0 ),(4 ,0xc61a6e08 ),(0 ,0xc821347c ),
199
+ (5 ,0xbb37d0ab ),(4 ,0x3e93a911 ),(5 ,0x3c03d85e ),(4 ,0xb289102e ),
200
+ (5 ,0x5e42768e ),(4 ,0x4c574f91 ),(0 ,0xc3531db9 ),(5 ,0x8ebbfe1b ),
201
+ (2 ,0x62de7520 ),(4 ,0x11def7c6 ),(0 ,0xd12a5839 ),(4 ,0xd60eb230 ),
202
+ (0 ,0xfb6d0844 ),(2 ,0x701a5c56 ),(1 ,0x48998570 ),(4 ,0xcc786b3e ),
203
+ (1 ,0x8973807a ),(4 ,0x77151b83 ),(3 ,0xb9b223a4 ),(4 ,0x7d213a8e ),
204
+ (0 ,0xe627ba6e ),(1 ,0x2de15b60 ),(0 ,0x382c67c4 ),(6 ,0x43701b8e ),
205
+ (8 ,0x5f41b027 ),(1 ,0x09c5d515 ),(1 ,0x7fdaaf68 ),(4 ,0x8bf79290 ),
206
+ (3 ,0x1a7c0271 ),(0 ,0x3562b3a1 ),(4 ,0x079aa703 ),(1 ,0x8fb1aace ),
207
+ (4 ,0xb02b8935 ),(4 ,0x939d1697 ),(0 ,0x7b2d7a80 ),(4 ,0x351c3288 ),
208
+ (5 ,0x5f3dd388 ),(1 ,0xe865101a ),(0 ,0x57871387 ),(0 ,0xd4fd6955 ),
209
+ (4 ,0x86fe1cbb ),(0 ,0x21296c24 ),(4 ,0x68f6d66d ),(3 ,0x9ac3b10b ),
210
+ (8 ,0x659ebf23 ),(0 ,0x8e483006 ),(5 ,0x2821774f ),(4 ,0x3b005030 ),
211
+ (1 ,0x6bb6f09a ),(3 ,0xb918ea6c ),(5 ,0x259aca8a ),(1 ,0x4bdaa577 ),
212
+ (3 ,0x585e295b ),(2 ,0xd7c04cca ),(6 ,0x00a0f04d ),(3 ,0x0cb7eda9 ),
213
+ (5 ,0xb1d83641 ),(4 ,0xd1105e7d ),(2 ,0xe8ad8382 ),(3 ,0x92df8405 ),
214
+ (4 ,0xffb344bf ),(0 ,0x94471661 ),(- 3 ,0x0b9714a4 ),(6 ,0x87e08f18 ),
215
+ (6 ,0xae594216 ),(5 ,0x51acdc5e ),(4 ,0x83664747 ),(0 ,0x7b10c195 ),
216
+ (2 ,0x1ef4426a ),(5 ,0x1dbf29d0 ),(2 ,0xe9b85e89 ),(3 ,0x18611e1a ),
217
+ (0 ,0xa10966dd ),(0 ,0xe54fad12 ),(5 ,0x03e6220d ),(3 ,0x64fa4ada ),
218
+ (4 ,0x8facb4b4 ),(2 ,0xfc0dae5b ),(4 ,0x61a98300 ),(0 ,0xd919ee25 ),
219
+ (3 ,0x47d8f268 ),(1 ,0xd3d5250f ),(1 ,0xa1b7d150 ),(1 ,0x39584b6a ),
220
+ (1 ,0xb730f059 ),(0 ,0x421a930a ),(0 ,0xf4520724 ),(2 ,0xf51ac97e ),
221
+ (1 ,0x3a2e424f ),(5 ,0x4488e824 ),(5 ,0x51f37f50 ),(0 ,0x2060682b ),
222
+ (4 ,0x668bcc70 ),(0 ,0x87bfad0d ),(3 ,0x87a5e2be ),(3 ,0xdb87b268 ),
223
+ (0 ,0xbdc1bd9f ),(0 ,0x9e97bae4 ),(0 ,0x5f8854cc ),(1 ,0x6a54a576 ),
224
+ (0 ,0x6abb7c6e ),(4 ,0x3529e627 ),(0 ,0x2b17bf18 ),(6 ,0xe718bb6f ),
225
+ (0 ,0x2f8ca470 ),(5 ,0xabf106a3 ),(4 ,0x6f80543f ),(0 ,0x7459d412 ),
226
+ ):
227
+ block .hashPrevBlock = block .sha256
228
+ block .nTime += time_offset
229
+ block .nNonce = nonce
230
+ block .rehash ()
231
+ headers_fork2 .append (CBlockHeader (block ))
232
+
233
+ with self .nodes [1 ].assert_debug_log (['checkpoint-mismatch' ]):
234
+ peer_before_checkpoint .send_message (msg_headers (headers_fork2 ))
235
+ peer_before_checkpoint .wait_for_disconnect ()
236
+ assert {
237
+ "height" : 545 ,
238
+ "hash" : "000000008ce04625549eb92726e39fe6de52cd44df861bbd477f9ada8bc30efc" ,
239
+ "branchlen" : 545 ,
240
+ "status" : "headers-only" ,
241
+ } in self .nodes [1 ].getchaintips ()
86
242
87
243
if __name__ == '__main__' :
88
244
RejectLowDifficultyHeadersTest (__file__ ).main ()
0 commit comments