mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-06-02 09:15:04 +02:00
Merge #17004: validation: Remove REJECT code from CValidationState
9075d13153[docs] Add release notes for removal of REJECT reasons (John Newbery)04a2f326ec[validation] Fix REJECT message comments (John Newbery)e9d5a59e34[validation] Remove REJECT code from CValidationState (John Newbery)0053e16714[logging] Don't log REJECT code when transaction is rejected (John Newbery)a1a07cfe99[validation] Fix peer punishment for bad blocks (John Newbery) Pull request description: We no longer send BIP 61 REJECT messages, so there's no need to set a REJECT code in the CValidationState object. Note that there is a minor bug fix in p2p behaviour here. Because the call to `MaybePunishNode()` in `PeerLogicValidation::BlockChecked()` only previously happened if the REJECT code was > 0 and < `REJECT_INTERNAL`, then there are cases were `MaybePunishNode()` can get called where it wasn't previously: - when `AcceptBlockHeader()` fails with `CACHED_INVALID`. - when `AcceptBlockHeader()` fails with `BLOCK_MISSING_PREV`. Note that `BlockChecked()` cannot fail with an 'internal' reject code. The only internal reject code was `REJECT_HIGHFEE`, which was only set in ATMP. This reverts a minor bug introduced in5d08c9c579. ACKs for top commit: ariard: ACK9075d13, changes since last reviewed are splitting them in separate commits to ease understanding and fix nits fjahr: ACK9075d13153, confirmed diff to last review was fixing nits in docs/comments. ryanofsky: Code review ACK9075d13153. Only changes since last review are splitting the main commit and updating comments Tree-SHA512: 58e8a1a4d4e6f156da5d29fb6ad6a62fc9c594bbfc6432b3252e962d0e9e10149bf3035185dc5320c46c09f3e49662bc2973ec759679c0f3412232087cb8a3a7
This commit is contained in:
@@ -32,3 +32,22 @@ Please use the recommended alternatives if you rely on this deprecated feature:
|
||||
could wait until the transaction has confirmed (taking into account the fee
|
||||
target they set (compare the RPC `estimatesmartfee`)) or listen for the
|
||||
transaction announcement by other network peers to check for propagation.
|
||||
|
||||
The removal of BIP61 REJECT message support also has the following minor RPC
|
||||
and logging implications:
|
||||
|
||||
* `testmempoolaccept` and `sendrawtransaction` no longer return the P2P REJECT
|
||||
code when a transaction is not accepted to the mempool. They still return the
|
||||
verbal reject reason.
|
||||
|
||||
* Log messages that previously reported the REJECT code when a transaction was
|
||||
not accepted to the mempool now no longer report the REJECT code. The reason
|
||||
for rejection is still reported.
|
||||
|
||||
Updated RPCs
|
||||
------------
|
||||
|
||||
- `testmempoolaccept` and `sendrawtransaction` no longer return the P2P REJECT
|
||||
code when a transaction is not accepted to the mempool. See the Section
|
||||
_Removal of reject network messages from Bitcoin Core (BIP61)_ for details on
|
||||
the removal of BIP61 REJECT message support.
|
||||
|
||||
Reference in New Issue
Block a user