Merge bitcoin/bitcoin#36706: policy: remove unused GetVirtualTransactionInputSize
What changed, and why it matters
This commit removes an unused helper function called GetVirtualTransactionInputSize and updates the few remaining callers to use an equivalent calculation directly. It is a routine code cleanup with no security relevance.
No security action required. This is a benign refactoring/cleanup change.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The change deletes GetVirtualTransactionInputSize and its overload from src/policy/policy.cpp and src/policy/policy.h. The fuzz target tx_in and a wallet test helper are updated to call GetVirtualTransactionSize(GetTransactionInputWeight(…), 0, 0) instead. The removed function had no non-test callers since PR #26567 (commit 9b7ec393b8).
Changed components
src/policy/policy.cppsrc/policy/policy.hsrc/test/fuzz/tx_in.cppsrc/wallet/test/wallet_tests.cppInspect captured patch +1 / −14
### src/policy/policy.cpp
@@ -401,8 +401,3 @@ int64_t GetVirtualTransactionSize(const CTransaction& tx, int64_t nSigOpCost, un
{
return GetVirtualTransactionSize(GetTransactionWeight(tx), nSigOpCost, bytes_per_sigop);
}
-
-int64_t GetVirtualTransactionInputSize(const CTxIn& txin, int64_t nSigOpCost, unsigned int bytes_per_sigop)
-{
- return GetVirtualTransactionSize(GetTransactionInputWeight(txin), nSigOpCost, bytes_per_sigop);
-}
### src/policy/policy.h
@@ -174,18 +174,12 @@ bool SpendsNonAnchorWitnessProg(const CTransaction& tx, const CCoinsViewCache& p
/** Compute the virtual transaction size (weight reinterpreted as bytes). */
int64_t GetVirtualTransactionSize(int64_t nWeight, int64_t nSigOpCost, unsigned int bytes_per_sigop);
int64_t GetVirtualTransactionSize(const CTransaction& tx, int64_t nSigOpCost, unsigned int bytes_per_sigop);
-int64_t GetVirtualTransactionInputSize(const CTxIn& tx, int64_t nSigOpCost, unsigned int bytes_per_sigop);
static inline int64_t GetVirtualTransactionSize(const CTransaction& tx)
{
return GetVirtualTransactionSize(tx, 0, 0);
}
-static inline int64_t GetVirtualTransactionInputSize(const CTxIn& tx)
-{
- return GetVirtualTransactionInputSize(tx, 0, 0);
-}
-
int64_t GetSigOpsAdjustedWeight(int64_t weight, int64_t sigop_cost, unsigned int bytes_per_sigop);
static inline FeePerVSize ToFeePerVSize(FeePerWeight feerate) { return {feerate.fee, (feerate.size + WITNESS_SCALE_FACTOR - 1) / WITNESS_SCALE_FACTOR}; }
### src/test/fuzz/tx_in.cpp
@@ -4,7 +4,6 @@
#include <consensus/validation.h>
#include <core_memusage.h>
-#include <policy/policy.h>
#include <primitives/transaction.h>
#include <streams.h>
#include <test/fuzz/fuzz.h>
@@ -21,7 +20,6 @@ FUZZ_TARGET(tx_in)
}
(void)GetTransactionInputWeight(tx_in);
- (void)GetVirtualTransactionInputSize(tx_in);
(void)RecursiveDynamicUsage(tx_in);
(void)tx_in.ToString();
### src/wallet/test/wallet_tests.cpp
@@ -639,7 +639,7 @@ static size_t CalculateNestedKeyhashInputSize(bool use_max_sig)
CTxIn tx_in;
UpdateInput(tx_in, sig_data);
- return (size_t)GetVirtualTransactionInputSize(tx_in);
+ return (size_t)GetVirtualTransactionSize(GetTransactionInputWeight(tx_in), 0, 0);
}
BOOST_FIXTURE_TEST_CASE(dummy_input_size_test, BasicTestingSetup)Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.