Hi Peter, I'm talking about this check in VerifyScript as of commit 43e71f74 in bitcoin core. ``` if ((flags & SCRIPT_VERIFY_SIGPUSHONLY) != 0 && !scriptSig.IsPushOnly()) { return set_error(serror, SCRIPT_ERR_SIG_PUSHONLY); } ``` In my understanding, we never set SCRIPT_VERIFY_SIGPUSHONLY, neither in MANDATORY_SCRIPT_VERIFY_FLAGS, nor in STANDARD_SCRIPT_VERIFY_FLAGS, and this sounds okay as it's a script check pertaining to BIP62 rule 2, and BIP62 was never activated. As far as I can tell, that's more a stale check just right there in the interpreter code paths. We still return SCRIPT_ERR_SIG_PUSHONLY for P2SH spends, verifying the scriptSig is push-only. All the unit tests (i.e `script_tests.cpp`) are manually setting the SCRIPT_VERIFY_SIGPUSHONLY flag to verify the logic correctness, even it appears as never being set for block validation. The original PR is there: https://github.com/bitcoin/bitcoin/pull/5065 Feel free to point me out if I'm missing something obvious here. Best, Antoine OTS hash: 42e2e614fea49ec876539e28b323718df3ef734b3a4b247fcc649f0704ea1b61 Le vendredi 14 février 2025 à 17:45:54 UTC, Peter Todd a écrit : > On Fri, Feb 07, 2025 at 05:02:46AM -0800, Antoine Riard wrote: > > This might be a stylistic note, though I could point in bitcoin core > code > > today implemented > > check in the script interpreter right in the crux of consensus code > paths > > that is just stale > > due to a never-activated BIP (-- yes I'm starring at you SIGPUSHONLY). > > What specifically do you mean by this? You mean the > SCRIPT_ERR_SIG_PUSHONLY error condition? > > -- > https://petertodd.org 'peter'[:-1]@petertodd.org > -- You received this message because you are subscribed to the Google Groups "Bitcoin Development Mailing List" group. To unsubscribe from this group and stop receiving emails from it, send an email to bitcoindev+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/97c36a7a-fe4d-4e24-8bbb-a55b7284fe71n%40googlegroups.com.