@@ -11,24 +11,24 @@ bool CheckTransaction(const CTransaction& tx, CValidationState &state, bool fChe
11
11
{
12
12
// Basic checks that don't depend on any context
13
13
if (tx.vin .empty ())
14
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vin-empty" );
14
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vin-empty" );
15
15
if (tx.vout .empty ())
16
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-empty" );
16
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-empty" );
17
17
// Size limits (this doesn't take the witness into account, as that hasn't been checked for malleability)
18
18
if (::GetSerializeSize (tx, PROTOCOL_VERSION | SERIALIZE_TRANSACTION_NO_WITNESS) * WITNESS_SCALE_FACTOR > MAX_BLOCK_WEIGHT)
19
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-oversize" );
19
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-oversize" );
20
20
21
21
// Check for negative or overflow output values
22
22
CAmount nValueOut = 0 ;
23
23
for (const auto & txout : tx.vout )
24
24
{
25
25
if (txout.nValue < 0 )
26
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-negative" );
26
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-negative" );
27
27
if (txout.nValue > MAX_MONEY)
28
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-toolarge" );
28
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-toolarge" );
29
29
nValueOut += txout.nValue ;
30
30
if (!MoneyRange (nValueOut))
31
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-txouttotal-toolarge" );
31
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-txouttotal-toolarge" );
32
32
}
33
33
34
34
// Check for duplicate inputs - note that this check is slow so we skip it in CheckBlock
@@ -37,20 +37,20 @@ bool CheckTransaction(const CTransaction& tx, CValidationState &state, bool fChe
37
37
for (const auto & txin : tx.vin )
38
38
{
39
39
if (!vInOutPoints.insert (txin.prevout ).second )
40
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-inputs-duplicate" );
40
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-inputs-duplicate" );
41
41
}
42
42
}
43
43
44
44
if (tx.IsCoinBase ())
45
45
{
46
46
if (tx.vin [0 ].scriptSig .size () < 2 || tx.vin [0 ].scriptSig .size () > 100 )
47
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-cb-length" );
47
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-cb-length" );
48
48
}
49
49
else
50
50
{
51
51
for (const auto & txin : tx.vin )
52
52
if (txin.prevout .IsNull ())
53
- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-prevout-null" );
53
+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-prevout-null" );
54
54
}
55
55
56
56
return true ;
0 commit comments