From 575bdcde931c100288843a8f3540426490a78a60 Mon Sep 17 00:00:00 2001 From: Luke Dashjr Date: Fri, 20 Jan 2012 20:59:04 -0500 Subject: [PATCH] Sanitize AreInputsStandard slightly Correct comment for why the check is unnecessary for coinbases Move testnet check out, to AcceptToMemoryPool where everything else checks it --- src/main.cpp | 7 ++----- 1 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 891dbed..a19cf0e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -277,11 +277,8 @@ bool CTransaction::IsStandard() const // bool CTransaction::AreInputsStandard(const MapPrevTx& mapInputs) const { - if (fTestNet) - return true; // Allow non-standard on testnet - if (IsCoinBase()) - return true; // Coinbases are allowed to have any input + return true; // Coinbases don't use vin normally for (int i = 0; i < vin.size(); i++) { @@ -500,7 +497,7 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi } // Check for non-standard pay-to-script-hash in inputs - if (!AreInputsStandard(mapInputs)) + if (!AreInputsStandard(mapInputs) && !fTestNet) return error("AcceptToMemoryPool() : nonstandard transaction input"); int64 nFees = GetValueIn(mapInputs)-GetValueOut(); -- 1.7.1