|
|
@ -73,12 +73,12 @@ bool IsStandardTx(const CTransaction& tx, std::string& reason) |
|
|
|
BOOST_FOREACH(const CTxIn& txin, tx.vin) |
|
|
|
BOOST_FOREACH(const CTxIn& txin, tx.vin) |
|
|
|
{ |
|
|
|
{ |
|
|
|
// Biggest 'standard' txin is a 15-of-15 P2SH multisig with compressed
|
|
|
|
// Biggest 'standard' txin is a 15-of-15 P2SH multisig with compressed
|
|
|
|
// keys. (remember the 520 byte limit on redeemScript size) That works
|
|
|
|
// keys (remember the 520 byte limit on redeemScript size). That works
|
|
|
|
// out to a (15*(33+1))+3=513 byte redeemScript, 513+1+15*(73+1)+3=1627
|
|
|
|
// out to a (15*(33+1))+3=513 byte redeemScript, 513+1+15*(73+1)+3=1627
|
|
|
|
// bytes of scriptSig, which we round off to 1650 bytes for some minor
|
|
|
|
// bytes of scriptSig, which we round off to 1650 bytes for some minor
|
|
|
|
// future-proofing. That's also enough to spend a 20-of-20
|
|
|
|
// future-proofing. That's also enough to spend a 20-of-20
|
|
|
|
// CHECKMULTISIG scriptPubKey, though such a scriptPubKey is not
|
|
|
|
// CHECKMULTISIG scriptPubKey, though such a scriptPubKey is not
|
|
|
|
// considered standard)
|
|
|
|
// considered standard.
|
|
|
|
if (txin.scriptSig.size() > 1650) { |
|
|
|
if (txin.scriptSig.size() > 1650) { |
|
|
|
reason = "scriptsig-size"; |
|
|
|
reason = "scriptsig-size"; |
|
|
|
return false; |
|
|
|
return false; |
|
|
|