mirror of
https://github.com/dashpay/dash.git
synced 2024-12-24 19:42:46 +01:00
Merge bitcoin/bitcoin#25370: test: check for getblocktxn
request with out-of-bounds tx index
5a8c321444c10c7c89c4222c0b47c2d83a1a9ea4 test: check for `getblocktxn` request with out-of-bounds tx index (Sebastian Falbesoner)
Pull request description:
This PR adds missing test coverage for the `getblocktxn` message handler, in the case that any of the contained indices is out-of-bounds:
a05876619a/src/net_processing.cpp (L2180-L2183)
ACKs for top commit:
dunxen:
ACK 5a8c321
Tree-SHA512: 2743c2c6d8aed57b22f825aefd60ba3e670321b60625a42ea7248e7b0fc41c73e9a5945153567c02824ba3b5f0fce7f4125bffc974973fc608b6ffbe49e14b65
Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
This commit is contained in:
parent
da4fd2eaf2
commit
fa14df62bf
@ -561,6 +561,15 @@ class CompactBlocksTest(BitcoinTestFramework):
|
||||
assert_equal(test_node.last_message["block"].block.sha256, int(block_hash, 16))
|
||||
assert "blocktxn" not in test_node.last_message
|
||||
|
||||
# Request with out-of-bounds tx index results in disconnect
|
||||
bad_peer = self.nodes[0].add_p2p_connection(TestP2PConn(cmpct_version=1))
|
||||
block_hash = node.getblockhash(chain_height)
|
||||
block = FromHex(CBlock(), node.getblock(block_hash, False))
|
||||
msg.block_txn_request = BlockTransactionsRequest(int(block_hash, 16), [len(block.vtx)])
|
||||
with node.assert_debug_log(['getblocktxn with out-of-bounds tx indices']):
|
||||
bad_peer.send_message(msg)
|
||||
bad_peer.wait_for_disconnect()
|
||||
|
||||
def test_compactblocks_not_at_tip(self, test_node):
|
||||
node = self.nodes[0]
|
||||
# Test that requesting old compactblocks doesn't work.
|
||||
|
Loading…
Reference in New Issue
Block a user