@@ -20,7 +20,7 @@ typedef std::vector<unsigned char> valtype;
2020
2121TransactionSignatureCreator::TransactionSignatureCreator (const CKeyStore* keystoreIn, const CTransaction* txToIn, unsigned int nInIn, const CAmount& amountIn, int nHashTypeIn) : BaseSignatureCreator(keystoreIn), txTo(txToIn), nIn(nInIn), nHashType(nHashTypeIn), amount(amountIn), checker(txTo, nIn, amountIn) {}
2222
23- bool TransactionSignatureCreator::CreateSig (std::vector<unsigned char >& vchSig, const CKeyID& address, const CScript& scriptCode, int sigversion) const
23+ bool TransactionSignatureCreator::CreateSig (std::vector<unsigned char >& vchSig, const CKeyID& address, const CScript& scriptCode, SigVersion sigversion) const
2424{
2525 CKey key;
2626 if (!keystore->GetKey (address, key))
@@ -33,7 +33,7 @@ bool TransactionSignatureCreator::CreateSig(std::vector<unsigned char>& vchSig,
3333 return true ;
3434}
3535
36- static bool Sign1 (const CKeyID& address, const BaseSignatureCreator& creator, const CScript& scriptCode, std::vector<valtype>& ret, int sigversion)
36+ static bool Sign1 (const CKeyID& address, const BaseSignatureCreator& creator, const CScript& scriptCode, std::vector<valtype>& ret, SigVersion sigversion)
3737{
3838 vector<unsigned char > vchSig;
3939 if (!creator.CreateSig (vchSig, address, scriptCode, sigversion))
@@ -42,7 +42,7 @@ static bool Sign1(const CKeyID& address, const BaseSignatureCreator& creator, co
4242 return true ;
4343}
4444
45- static bool SignN (const vector<valtype>& multisigdata, const BaseSignatureCreator& creator, const CScript& scriptCode, std::vector<valtype>& ret, int sigversion)
45+ static bool SignN (const vector<valtype>& multisigdata, const BaseSignatureCreator& creator, const CScript& scriptCode, std::vector<valtype>& ret, SigVersion sigversion)
4646{
4747 int nSigned = 0 ;
4848 int nRequired = multisigdata.front ()[0 ];
@@ -63,7 +63,7 @@ static bool SignN(const vector<valtype>& multisigdata, const BaseSignatureCreato
6363 * Returns false if scriptPubKey could not be completely satisfied.
6464 */
6565static bool SignStep (const BaseSignatureCreator& creator, const CScript& scriptPubKey,
66- std::vector<valtype>& ret, txnouttype& whichTypeRet, int sigversion)
66+ std::vector<valtype>& ret, txnouttype& whichTypeRet, SigVersion sigversion)
6767{
6868 CScript scriptRet;
6969 uint160 h160;
@@ -142,7 +142,7 @@ bool ProduceSignature(const BaseSignatureCreator& creator, const CScript& fromPu
142142 bool solved = true ;
143143 std::vector<valtype> result;
144144 txnouttype whichType;
145- solved = SignStep (creator, script, result, whichType, 0 );
145+ solved = SignStep (creator, script, result, whichType, SIGVERSION_BASE );
146146 bool P2SH = false ;
147147 CScript subscript;
148148 sigdata.scriptWitness .stack .clear ();
@@ -153,7 +153,7 @@ bool ProduceSignature(const BaseSignatureCreator& creator, const CScript& fromPu
153153 // the final scriptSig is the signatures from that
154154 // and then the serialized subscript:
155155 script = subscript = CScript (result[0 ].begin (), result[0 ].end ());
156- solved = solved && SignStep (creator, script, result, whichType, 0 ) && whichType != TX_SCRIPTHASH;
156+ solved = solved && SignStep (creator, script, result, whichType, SIGVERSION_BASE ) && whichType != TX_SCRIPTHASH;
157157 P2SH = true ;
158158 }
159159
@@ -162,15 +162,15 @@ bool ProduceSignature(const BaseSignatureCreator& creator, const CScript& fromPu
162162 CScript witnessscript;
163163 witnessscript << OP_DUP << OP_HASH160 << ToByteVector (result[0 ]) << OP_EQUALVERIFY << OP_CHECKSIG;
164164 txnouttype subType;
165- solved = solved && SignStep (creator, witnessscript, result, subType, 1 );
165+ solved = solved && SignStep (creator, witnessscript, result, subType, SIGVERSION_WITNESS_V0 );
166166 sigdata.scriptWitness .stack = result;
167167 result.clear ();
168168 }
169169 else if (solved && whichType == TX_WITNESS_V0_SCRIPTHASH)
170170 {
171171 CScript witnessscript (result[0 ].begin (), result[0 ].end ());
172172 txnouttype subType;
173- solved = solved && SignStep (creator, witnessscript, result, subType, 1 ) && subType != TX_SCRIPTHASH && subType != TX_WITNESS_V0_SCRIPTHASH && subType != TX_WITNESS_V0_KEYHASH;
173+ solved = solved && SignStep (creator, witnessscript, result, subType, SIGVERSION_WITNESS_V0 ) && subType != TX_SCRIPTHASH && subType != TX_WITNESS_V0_SCRIPTHASH && subType != TX_WITNESS_V0_KEYHASH;
174174 result.push_back (std::vector<unsigned char >(witnessscript.begin (), witnessscript.end ()));
175175 sigdata.scriptWitness .stack = result;
176176 result.clear ();
@@ -231,7 +231,7 @@ bool SignSignature(const CKeyStore &keystore, const CTransaction& txFrom, CMutab
231231
232232static vector<valtype> CombineMultisig (const CScript& scriptPubKey, const BaseSignatureChecker& checker,
233233 const vector<valtype>& vSolutions,
234- const vector<valtype>& sigs1, const vector<valtype>& sigs2, int sigversion)
234+ const vector<valtype>& sigs1, const vector<valtype>& sigs2, SigVersion sigversion)
235235{
236236 // Combine all the signatures we've got:
237237 set<valtype> allsigs;
@@ -294,7 +294,7 @@ struct Stacks
294294 Stacks () {}
295295 explicit Stacks (const std::vector<valtype>& scriptSigStack_) : script(scriptSigStack_), witness() {}
296296 explicit Stacks (const SignatureData& data) : witness(data.scriptWitness.stack) {
297- EvalScript (script, data.scriptSig , SCRIPT_VERIFY_STRICTENC, BaseSignatureChecker (), 0 );
297+ EvalScript (script, data.scriptSig , SCRIPT_VERIFY_STRICTENC, BaseSignatureChecker (), SIGVERSION_BASE );
298298 }
299299
300300 SignatureData Output () const {
@@ -308,7 +308,7 @@ struct Stacks
308308
309309static Stacks CombineSignatures (const CScript& scriptPubKey, const BaseSignatureChecker& checker,
310310 const txnouttype txType, const vector<valtype>& vSolutions,
311- Stacks sigs1, Stacks sigs2, int sigversion)
311+ Stacks sigs1, Stacks sigs2, SigVersion sigversion)
312312{
313313 switch (txType)
314314 {
@@ -369,7 +369,7 @@ static Stacks CombineSignatures(const CScript& scriptPubKey, const BaseSignature
369369 sigs2.witness .pop_back ();
370370 sigs2.script = sigs2.witness ;
371371 sigs2.witness .clear ();
372- Stacks result = CombineSignatures (pubKey2, checker, txType2, vSolutions2, sigs1, sigs2, 1 );
372+ Stacks result = CombineSignatures (pubKey2, checker, txType2, vSolutions2, sigs1, sigs2, SIGVERSION_WITNESS_V0 );
373373 result.witness = result.script ;
374374 result.script .clear ();
375375 result.witness .push_back (valtype (pubKey2.begin (), pubKey2.end ()));
@@ -387,7 +387,7 @@ SignatureData CombineSignatures(const CScript& scriptPubKey, const BaseSignature
387387 vector<vector<unsigned char > > vSolutions;
388388 Solver (scriptPubKey, txType, vSolutions);
389389
390- return CombineSignatures (scriptPubKey, checker, txType, vSolutions, Stacks (scriptSig1), Stacks (scriptSig2), 0 ).Output ();
390+ return CombineSignatures (scriptPubKey, checker, txType, vSolutions, Stacks (scriptSig1), Stacks (scriptSig2), SIGVERSION_BASE ).Output ();
391391}
392392
393393namespace {
@@ -397,7 +397,7 @@ class DummySignatureChecker : public BaseSignatureChecker
397397public:
398398 DummySignatureChecker () {}
399399
400- bool CheckSig (const std::vector<unsigned char >& scriptSig, const std::vector<unsigned char >& vchPubKey, const CScript& scriptCode, int sigversion) const
400+ bool CheckSig (const std::vector<unsigned char >& scriptSig, const std::vector<unsigned char >& vchPubKey, const CScript& scriptCode, SigVersion sigversion) const
401401 {
402402 return true ;
403403 }
@@ -410,7 +410,7 @@ const BaseSignatureChecker& DummySignatureCreator::Checker() const
410410 return dummyChecker;
411411}
412412
413- bool DummySignatureCreator::CreateSig (std::vector<unsigned char >& vchSig, const CKeyID& keyid, const CScript& scriptCode, int sigversion) const
413+ bool DummySignatureCreator::CreateSig (std::vector<unsigned char >& vchSig, const CKeyID& keyid, const CScript& scriptCode, SigVersion sigversion) const
414414{
415415 // Create a dummy signature that is a valid DER-encoding
416416 vchSig.assign (72 , ' \000 ' );
0 commit comments