[29.x] Backport #32521 #33013
pull darosior wants to merge 4 commits into bitcoin:29.x from darosior:2507_backport_32521_29 changing 6 files +196 −1-
darosior commented at 9:08 pm on July 18, 2025: memberThis backports PR #32521 to make the change available to miners who can’t (or don’t want to) upgrade past version 29.
-
policy: make pathological transactions packed with legacy sigops non-standard.
The Consensus Cleanup soft fork proposal includes a limit on the number of legacy signature operations potentially executed when validating a transaction. If this change is to be implemented here and activated by Bitcoin users in the future, we should prevent the ability for someone to broadcast a transaction through the p2p network that is not valid according to the new rules. This is because if it was possible it would be a trivial DoS to potentially unupgraded miners after the soft fork activates. We do not know for sure whether users will activate the Consensus Cleanup. However if they do such transactions must have been made non-standard long in advance, due to the time it takes for most nodes on the network to upgrade. In addition this limit may only be run into by pathological transactions which pad the Script with sigops but do not use actual signatures when spending, as otherwise they would run into the standard transaction size limit. Github-Pull: bitcoin/bitcoin#32521 Rebased-From: 5863315e33ba9b75a1e5189ee3da3d7311bbf193
-
qa: unit test standardness of inputs packed with legacy sigops
Check bounds and different output types. Github-Pull: bitcoin/bitcoin#32521 Rebased-From: 367147954d16c961bbd28c361abf27b4cb665f10
-
qa: functional test a transaction running into the legacy sigop limit
It's useful to have an end-to-end test in addition to the unit test to sanity check the RPC error as well as making sure the transaction is otherwise fully standard. Github-Pull: bitcoin/bitcoin#32521 Rebased-From: 96da68a38fa295d2414685739c41b8626e198d27
-
DrahtBot added the label Backport on Jul 18, 2025
-
DrahtBot commented at 9:08 pm on July 18, 2025: contributor
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
Code Coverage & Benchmarks
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/33013.
Reviews
See the guideline for information on the review process.
Type Reviewers ACK marcofleon, glozow If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.
-
fanquake renamed this:
Backport #32521 to 29
[29.x] Backport #32521
on Jul 21, 2025 -
glozow commented at 3:00 pm on July 21, 2025: member
@darosior could you make the release notes updates as well please? Thanks
For example
0diff --git a/doc/release-notes.md b/doc/release-notes.md 1index 3a39efadbce..63327ea13a5 100644 2--- a/doc/release-notes.md 3+++ b/doc/release-notes.md 4@@ -49,9 +49,10 @@ Notable changes 5 - [#31757](/bitcoin-bitcoin/31757/) wallet: fix crash on double block disconnection 6 - [#32553](/bitcoin-bitcoin/32553/) wallet: Fix logging of wallet version 7 8-### P2P 9+### P2P and Mempool Policy 10 11 - [#32826](/bitcoin-bitcoin/32826/) p2p: add more bad ports 12+- [#32521](/bitcoin-bitcoin/32521/) policy: make pathological transactions packed with legacy sigops non-standard 13 14 ### Test 15
-
darosior commented at 3:12 pm on July 21, 2025: memberSure, will do.
-
darosior commented at 12:50 pm on July 22, 2025: memberAdded a commit with the suggested release note. While i was there i also changed my nym for my name in the credits.
-
marcofleon commented at 3:22 pm on July 22, 2025: contributor
ACK 716b4362c0b93dc666464088ed81742c4abf7732
Made sure the changes here match #32521. All unit and functional tests pass on 29.x.
-
fanquake commented at 9:56 am on July 23, 2025: memberCan you squash the last two commits into
doc: update release notes for 29.x
? Although, I think this change should have it’s full release note displayed (#33037). i.e something like this: https://github.com/fanquake/bitcoin/commit/fc2e2ef1709d553a43e141db216a7f1959e1bb4c. -
fanquake added this to the milestone 29.1 on Jul 23, 2025
-
doc: update release notes for 29.x f25dc84b28
-
darosior force-pushed on Jul 23, 2025
-
darosior commented at 4:48 pm on July 23, 2025: memberCherry-picked your commit
-
DrahtBot added the label CI failed on Jul 23, 2025
-
maflcko commented at 8:26 am on July 24, 2025: memberthe ci failure is unrelated. The fix was https://github.com/bitcoin/bitcoin/commit/cd8089c20baaaee329cbf7951195953a9f86d7cf, but that never made it into 29.x
-
marcofleon commented at 1:08 pm on July 24, 2025: contributorreACK f25dc84b2892e6bdbbd0471add9fcb2757700981
-
darosior commented at 1:33 pm on July 24, 2025: memberOpened a separate backport PR for the flakiness fix: https://github.com/bitcoin/bitcoin/pull/33052
-
glozow commented at 4:28 pm on July 24, 2025: member
ACK f25dc84b2892e6bdbbd0471add9fcb2757700981
No you don’t need to rebase
-
glozow merged this on Jul 24, 2025
-
glozow closed this on Jul 24, 2025
-
darosior deleted the branch on Jul 24, 2025
github-metadata-mirror
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-08-02 09:13 UTC
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-08-02 09:13 UTC
This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me
More mirrored repositories can be found on mirror.b10c.me