psbt: check output index is within bounds before accessing

This commit is contained in:
Andrew Chow committed 2020-01-06 12:57:21 -05:00
1 parent f1ef7f0aa4
commit deaa6dd144
5 files changed
+29 -1

No files matched your search

+4
View File
@@ -39,6 +39,10 @@ PSBTAnalysis AnalyzePSBT(PartiallySignedTransaction psbtx)
in_amt += utxo.nValue;
input_analysis.has_utxo = true;
} else {
if (input.non_witness_utxo && psbtx.tx->vin[i].prevout.n >= input.non_witness_utxo->vout.size()) {
result.SetInvalid(strprintf("PSBT is not valid. Input %u specifies invalid prevout", i));
return result;
}
input_analysis.has_utxo = false;
input_analysis.is_final = false;
input_analysis.next = PSBTRole::UPDATER;