mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-03-26 23:45:54 +01:00
Merge bitcoin/bitcoin#20295: rpc: getblockfrompeer
dce8c4c381rpc: getblockfrompeer (Sjors Provoost)b884ababc2rpc: move Ensure* helpers to server_util.h (Sjors Provoost) Pull request description: This adds an RPC method to fetch a block directly from a peer. This can used to fetch stale blocks with lower proof of work that are normally ignored by the node (`headers-only` in `getchaintips`). Usage: ``` bitcoin-cli getblockfrompeer HASH peer_n ``` Closes #20155 Limitations: * you have to specify which peer to fetch the block from * the node must already have the header ACKs for top commit: jnewbery: ACKdce8c4c381fjahr: re-ACKdce8c4c381Tree-SHA512: 843ba2b7a308f640770d624d0aa3265fdc5c6ea48e8db32269b96a082b7420f7953d1d8d1ef2e6529392c7172dded9d15639fbc9c24e7bfa5cfb79e13a5498c8
This commit is contained in:
@@ -3407,6 +3407,7 @@ bool CChainState::AcceptBlock(const std::shared_ptr<const CBlock>& pblock, Block
|
||||
// This requires some new chain data structure to efficiently look up if a
|
||||
// block is in a chain leading to a candidate for best tip, despite not
|
||||
// being such a candidate itself.
|
||||
// Note that this would break the getblockfrompeer RPC
|
||||
|
||||
// TODO: deal better with return value and error conditions for duplicate
|
||||
// and unrequested blocks.
|
||||
|
||||
Reference in New Issue
Block a user