@@ -160,24 +160,24 @@ bool CheckTransaction(const CTransaction& tx, CValidationState &state, bool fChe
160160{
161161 // Basic checks that don't depend on any context
162162 if (tx.vin .empty ())
163- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vin-empty" );
163+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vin-empty" );
164164 if (tx.vout .empty ())
165- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-empty" );
165+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-empty" );
166166 // Size limits (this doesn't take the witness into account, as that hasn't been checked for malleability)
167167 if (::GetSerializeSize (tx, PROTOCOL_VERSION | SERIALIZE_TRANSACTION_NO_WITNESS) * WITNESS_SCALE_FACTOR > MAX_BLOCK_WEIGHT)
168- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-oversize" );
168+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-oversize" );
169169
170170 // Check for negative or overflow output values
171171 CAmount nValueOut = 0 ;
172172 for (const auto & txout : tx.vout )
173173 {
174174 if (txout.nValue < 0 )
175- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-negative" );
175+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-negative" );
176176 if (txout.nValue > MAX_MONEY)
177- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-toolarge" );
177+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-vout-toolarge" );
178178 nValueOut += txout.nValue ;
179179 if (!MoneyRange (nValueOut))
180- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-txouttotal-toolarge" );
180+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-txouttotal-toolarge" );
181181 }
182182
183183 // Check for duplicate inputs - note that this check is slow so we skip it in CheckBlock
@@ -186,20 +186,20 @@ bool CheckTransaction(const CTransaction& tx, CValidationState &state, bool fChe
186186 for (const auto & txin : tx.vin )
187187 {
188188 if (!vInOutPoints.insert (txin.prevout ).second )
189- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-inputs-duplicate" );
189+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-inputs-duplicate" );
190190 }
191191 }
192192
193193 if (tx.IsCoinBase ())
194194 {
195195 if (tx.vin [0 ].scriptSig .size () < 2 || tx.vin [0 ].scriptSig .size () > 100 )
196- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-cb-length" );
196+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-cb-length" );
197197 }
198198 else
199199 {
200200 for (const auto & txin : tx.vin )
201201 if (txin.prevout .IsNull ())
202- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-prevout-null" );
202+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-prevout-null" );
203203 }
204204
205205 return true ;
@@ -209,7 +209,7 @@ bool Consensus::CheckTxInputs(const CTransaction& tx, CValidationState& state, c
209209{
210210 // are the actual inputs available?
211211 if (!inputs.HaveInputs (tx)) {
212- return state.DoS ( 0 , ValidationInvalidReason::TX_MISSING_INPUTS, false , REJECT_INVALID, " bad-txns-inputs-missingorspent" , false ,
212+ return state.Invalid ( ValidationInvalidReason::TX_MISSING_INPUTS, false , REJECT_INVALID, " bad-txns-inputs-missingorspent" ,
213213 strprintf (" %s: inputs missing/spent" , __func__));
214214 }
215215
@@ -221,27 +221,27 @@ bool Consensus::CheckTxInputs(const CTransaction& tx, CValidationState& state, c
221221
222222 // If prev is coinbase, check that it's matured
223223 if (coin.IsCoinBase () && nSpendHeight - coin.nHeight < COINBASE_MATURITY) {
224- return state.DoS ( 0 , ValidationInvalidReason::TX_MISSING_INPUTS, false , REJECT_INVALID, " bad-txns-premature-spend-of-coinbase" , false ,
224+ return state.Invalid ( ValidationInvalidReason::TX_MISSING_INPUTS, false , REJECT_INVALID, " bad-txns-premature-spend-of-coinbase" ,
225225 strprintf (" tried to spend coinbase at depth %d" , nSpendHeight - coin.nHeight ));
226226 }
227227
228228 // Check for negative or overflow input values
229229 nValueIn += coin.out .nValue ;
230230 if (!MoneyRange (coin.out .nValue ) || !MoneyRange (nValueIn)) {
231- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-inputvalues-outofrange" );
231+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-inputvalues-outofrange" );
232232 }
233233 }
234234
235235 const CAmount value_out = tx.GetValueOut ();
236236 if (nValueIn < value_out) {
237- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-in-belowout" , false ,
237+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-in-belowout" ,
238238 strprintf (" value in (%s) < value out (%s)" , FormatMoney (nValueIn), FormatMoney (value_out)));
239239 }
240240
241241 // Tally transaction fees
242242 const CAmount txfee_aux = nValueIn - value_out;
243243 if (!MoneyRange (txfee_aux)) {
244- return state.DoS ( 100 , ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-fee-outofrange" );
244+ return state.Invalid ( ValidationInvalidReason::CONSENSUS, false , REJECT_INVALID, " bad-txns-fee-outofrange" );
245245 }
246246
247247 txfee = txfee_aux;
0 commit comments