Move VerifySignature to main
This commit is contained in:
parent
429915bd0d
commit
f1136200a6
4 changed files with 14 additions and 14 deletions
11
src/main.cpp
11
src/main.cpp
|
@ -1348,6 +1348,17 @@ bool CTransaction::HaveInputs(CCoinsViewCache &inputs) const
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool VerifySignature(const CCoins& txFrom, const CTransaction& txTo, unsigned int nIn, unsigned int flags, int nHashType)
|
||||||
|
{
|
||||||
|
assert(nIn < txTo.vin.size());
|
||||||
|
const CTxIn& txin = txTo.vin[nIn];
|
||||||
|
if (txin.prevout.n >= txFrom.vout.size())
|
||||||
|
return false;
|
||||||
|
const CTxOut& txout = txFrom.vout[txin.prevout.n];
|
||||||
|
|
||||||
|
return VerifyScript(txin.scriptSig, txout.scriptPubKey, txTo, nIn, flags, nHashType);
|
||||||
|
}
|
||||||
|
|
||||||
bool CTransaction::CheckInputs(CCoinsViewCache &inputs, enum CheckSig_mode csmode, unsigned int flags) const
|
bool CTransaction::CheckInputs(CCoinsViewCache &inputs, enum CheckSig_mode csmode, unsigned int flags) const
|
||||||
{
|
{
|
||||||
if (!IsCoinBase())
|
if (!IsCoinBase())
|
||||||
|
|
|
@ -164,6 +164,8 @@ bool SetBestChain(CBlockIndex* pindexNew);
|
||||||
bool ConnectBestBlock();
|
bool ConnectBestBlock();
|
||||||
/** Create a new block index entry for a given block hash */
|
/** Create a new block index entry for a given block hash */
|
||||||
CBlockIndex * InsertBlockIndex(uint256 hash);
|
CBlockIndex * InsertBlockIndex(uint256 hash);
|
||||||
|
/** Verify a signature */
|
||||||
|
bool VerifySignature(const CCoins& txFrom, const CTransaction& txTo, unsigned int nIn, unsigned int flags, int nHashType);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1723,17 +1723,6 @@ bool SignSignature(const CKeyStore &keystore, const CTransaction& txFrom, CTrans
|
||||||
return SignSignature(keystore, txout.scriptPubKey, txTo, nIn, nHashType);
|
return SignSignature(keystore, txout.scriptPubKey, txTo, nIn, nHashType);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool VerifySignature(const CCoins& txFrom, const CTransaction& txTo, unsigned int nIn, unsigned int flags, int nHashType)
|
|
||||||
{
|
|
||||||
assert(nIn < txTo.vin.size());
|
|
||||||
const CTxIn& txin = txTo.vin[nIn];
|
|
||||||
if (txin.prevout.n >= txFrom.vout.size())
|
|
||||||
return false;
|
|
||||||
const CTxOut& txout = txFrom.vout[txin.prevout.n];
|
|
||||||
|
|
||||||
return VerifyScript(txin.scriptSig, txout.scriptPubKey, txTo, nIn, flags, nHashType);
|
|
||||||
}
|
|
||||||
|
|
||||||
static CScript PushAll(const vector<valtype>& values)
|
static CScript PushAll(const vector<valtype>& values)
|
||||||
{
|
{
|
||||||
CScript result;
|
CScript result;
|
||||||
|
|
|
@ -673,9 +673,7 @@ bool ExtractDestination(const CScript& scriptPubKey, CTxDestination& addressRet)
|
||||||
bool ExtractDestinations(const CScript& scriptPubKey, txnouttype& typeRet, std::vector<CTxDestination>& addressRet, int& nRequiredRet);
|
bool ExtractDestinations(const CScript& scriptPubKey, txnouttype& typeRet, std::vector<CTxDestination>& addressRet, int& nRequiredRet);
|
||||||
bool SignSignature(const CKeyStore& keystore, const CScript& fromPubKey, CTransaction& txTo, unsigned int nIn, int nHashType=SIGHASH_ALL);
|
bool SignSignature(const CKeyStore& keystore, const CScript& fromPubKey, CTransaction& txTo, unsigned int nIn, int nHashType=SIGHASH_ALL);
|
||||||
bool SignSignature(const CKeyStore& keystore, const CTransaction& txFrom, CTransaction& txTo, unsigned int nIn, int nHashType=SIGHASH_ALL);
|
bool SignSignature(const CKeyStore& keystore, const CTransaction& txFrom, CTransaction& txTo, unsigned int nIn, int nHashType=SIGHASH_ALL);
|
||||||
bool VerifyScript(const CScript& scriptSig, const CScript& scriptPubKey, const CTransaction& txTo, unsigned int nIn,
|
bool VerifyScript(const CScript& scriptSig, const CScript& scriptPubKey, const CTransaction& txTo, unsigned int nIn, unsigned int flags, int nHashType);
|
||||||
unsigned int flags, int nHashType);
|
|
||||||
bool VerifySignature(const CCoins& txFrom, const CTransaction& txTo, unsigned int nIn, unsigned int flags, int nHashType);
|
|
||||||
|
|
||||||
// Given two sets of signatures for scriptPubKey, possibly with OP_0 placeholders,
|
// Given two sets of signatures for scriptPubKey, possibly with OP_0 placeholders,
|
||||||
// combine them intelligently and return the result.
|
// combine them intelligently and return the result.
|
||||||
|
|
Loading…
Reference in a new issue