mirror of
https://github.com/LBRYFoundation/LBRY-Vault.git
synced 2025-08-30 17:01:34 +00:00
fix #4401
This commit is contained in:
parent
3031f594cb
commit
219c2a363a
1 changed files with 11 additions and 1 deletions
|
@ -30,6 +30,11 @@ from .bitcoin import *
|
||||||
|
|
||||||
MAX_TARGET = 0x00000000FFFF0000000000000000000000000000000000000000000000000000
|
MAX_TARGET = 0x00000000FFFF0000000000000000000000000000000000000000000000000000
|
||||||
|
|
||||||
|
|
||||||
|
class MissingHeader(Exception):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
def serialize_header(res):
|
def serialize_header(res):
|
||||||
s = int_to_hex(res.get('version'), 4) \
|
s = int_to_hex(res.get('version'), 4) \
|
||||||
+ rev_hex(res.get('prev_block_hash')) \
|
+ rev_hex(res.get('prev_block_hash')) \
|
||||||
|
@ -300,6 +305,8 @@ class Blockchain(util.PrintError):
|
||||||
# new target
|
# new target
|
||||||
first = self.read_header(index * 2016)
|
first = self.read_header(index * 2016)
|
||||||
last = self.read_header(index * 2016 + 2015)
|
last = self.read_header(index * 2016 + 2015)
|
||||||
|
if not first or not last:
|
||||||
|
raise MissingHeader()
|
||||||
bits = last.get('bits')
|
bits = last.get('bits')
|
||||||
target = self.bits_to_target(bits)
|
target = self.bits_to_target(bits)
|
||||||
nActualTimespan = last.get('timestamp') - first.get('timestamp')
|
nActualTimespan = last.get('timestamp') - first.get('timestamp')
|
||||||
|
@ -343,7 +350,10 @@ class Blockchain(util.PrintError):
|
||||||
return False
|
return False
|
||||||
if prev_hash != header.get('prev_block_hash'):
|
if prev_hash != header.get('prev_block_hash'):
|
||||||
return False
|
return False
|
||||||
target = self.get_target(height // 2016 - 1)
|
try:
|
||||||
|
target = self.get_target(height // 2016 - 1)
|
||||||
|
except MissingHeader:
|
||||||
|
return False
|
||||||
try:
|
try:
|
||||||
self.verify_header(header, prev_hash, target)
|
self.verify_header(header, prev_hash, target)
|
||||||
except BaseException as e:
|
except BaseException as e:
|
||||||
|
|
Loading…
Add table
Reference in a new issue