50262d8953
This replaces using inv messages to announce new blocks, when a peer requests (via the new "sendheaders" message) that blocks be announced with headers instead of inv's. Since headers-first was introduced, peers send getheaders messages in response to an inv, which requires generating a block locator that is large compared to the size of the header being requested, and requires an extra round-trip before a reorg can be relayed. Save time by tracking headers that a peer is likely to know about, and send a headers chain that would connect to a peer's known headers, unless the chain would be too big, in which case we revert to sending an inv instead. Based off of @sipa's commit to announce all blocks in a reorg via inv, which has been squashed into this commit. Rebased-by: Pieter Wuille |
||
---|---|---|
.. | ||
__init__.py | ||
authproxy.py | ||
bignum.py | ||
blockstore.py | ||
blocktools.py | ||
comptool.py | ||
coverage.py | ||
key.py | ||
mininode.py | ||
netutil.py | ||
script.py | ||
socks5.py | ||
test_framework.py | ||
util.py |