Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
#include <evo/deterministicmns.h>#include <evo/providertx.h>#include <evo/specialtx.h>#include <base58.h>#include <chainparams.h>#include <clientversion.h>#include <core_io.h>#include <hash.h>#include <messagesigner.h>#include <script/standard.h>#include <streams.h>#include <univalue.h>#include <validation.h>
Include dependency graph for providertx.cpp:Go to the source code of this file.
Functions | |
| template<typename ProTx > | |
| static bool | CheckService (const uint256 &proTxHash, const ProTx &proTx, CValidationState &state) |
| template<typename ProTx > | |
| static bool | CheckHashSig (const ProTx &proTx, const CKeyID &keyID, CValidationState &state) |
| template<typename ProTx > | |
| static bool | CheckStringSig (const ProTx &proTx, const CKeyID &keyID, CValidationState &state) |
| template<typename ProTx > | |
| static bool | CheckHashSig (const ProTx &proTx, const CBLSPublicKey &pubKey, CValidationState &state) |
| template<typename ProTx > | |
| static bool | CheckInputsHash (const CTransaction &tx, const ProTx &proTx, CValidationState &state) |
| bool | CheckProRegTx (const CTransaction &tx, const CBlockIndex *pindexPrev, CValidationState &state) |
| bool | CheckProUpServTx (const CTransaction &tx, const CBlockIndex *pindexPrev, CValidationState &state) |
| bool | CheckProUpRegTx (const CTransaction &tx, const CBlockIndex *pindexPrev, CValidationState &state) |
| bool | CheckProUpRevTx (const CTransaction &tx, const CBlockIndex *pindexPrev, CValidationState &state) |
Function Documentation
◆ CheckHashSig() [1/2]
|
static |
Definition at line 47 of file providertx.cpp.
References CValidationState::DoS(), REJECT_INVALID, SerializeHash(), and CHashSigner::VerifyHash().
Referenced by CheckProUpRegTx(), CheckProUpRevTx(), and CheckProUpServTx().
◆ CheckHashSig() [2/2]
|
static |
Definition at line 67 of file providertx.cpp.
References CValidationState::DoS(), REJECT_INVALID, and SerializeHash().
◆ CheckInputsHash()
|
static |
Definition at line 76 of file providertx.cpp.
References CalcTxInputsHash(), CValidationState::DoS(), and REJECT_INVALID.
Referenced by CheckProRegTx(), CheckProUpRegTx(), CheckProUpRevTx(), and CheckProUpServTx().
◆ CheckProRegTx()
| bool CheckProRegTx | ( | const CTransaction & | tx, |
| const CBlockIndex * | pindexPrev, | ||
| CValidationState & | state | ||
| ) |
Definition at line 86 of file providertx.cpp.
References CProRegTx::addr, CheckInputsHash(), CheckService(), CheckStringSig(), COIN, CProRegTx::collateralOutpoint, CProRegTx::CURRENT_VERSION, deterministicMNManager, CValidationState::DoS(), ExtractDestination(), CTransaction::GetHash(), GetTxPayload(), GetUTXOCoin(), COutPoint::hash, base_blob< BITS >::IsNull(), CScript::IsPayToPublicKeyHash(), CScript::IsPayToScriptHash(), CBLSWrapper< ImplType, _SerSize, C >::IsValid(), CProRegTx::keyIDOwner, CProRegTx::keyIDVoting, COutPoint::n, CBlockIndex::nHeight, CProRegTx::nMode, CProRegTx::nOperatorReward, CProRegTx::nType, CTransaction::nType, CTxOut::nValue, CProRegTx::nVersion, Coin::out, CProRegTx::pubKeyOperator, REJECT_DUPLICATE, REJECT_INVALID, CProRegTx::scriptPayout, CTxOut::scriptPubKey, TRANSACTION_PROVIDER_REGISTER, CProRegTx::vchSig, and CTransaction::vout.
Referenced by CheckSpecialTx().
◆ CheckProUpRegTx()
| bool CheckProUpRegTx | ( | const CTransaction & | tx, |
| const CBlockIndex * | pindexPrev, | ||
| CValidationState & | state | ||
| ) |
Definition at line 274 of file providertx.cpp.
References CheckHashSig(), CheckInputsHash(), CProUpRegTx::CURRENT_VERSION, deterministicMNManager, CValidationState::DoS(), ExtractDestination(), GetTxPayload(), GetUTXOCoin(), base_blob< BITS >::IsNull(), CScript::IsPayToPublicKeyHash(), CScript::IsPayToScriptHash(), CBLSWrapper< ImplType, _SerSize, C >::IsValid(), CProUpRegTx::keyIDVoting, CBlockIndex::nHeight, CProUpRegTx::nMode, CTransaction::nType, CProUpRegTx::nVersion, Coin::out, CProUpRegTx::proTxHash, CProUpRegTx::pubKeyOperator, REJECT_DUPLICATE, REJECT_INVALID, CProUpRegTx::scriptPayout, CTxOut::scriptPubKey, and TRANSACTION_PROVIDER_UPDATE_REGISTRAR.
Referenced by CheckSpecialTx().
◆ CheckProUpRevTx()
| bool CheckProUpRevTx | ( | const CTransaction & | tx, |
| const CBlockIndex * | pindexPrev, | ||
| CValidationState & | state | ||
| ) |
Definition at line 358 of file providertx.cpp.
References CheckHashSig(), CheckInputsHash(), CProUpRevTx::CURRENT_VERSION, deterministicMNManager, CValidationState::DoS(), GetTxPayload(), CProUpRevTx::nReason, CTransaction::nType, CProUpRevTx::nVersion, CProUpRevTx::proTxHash, CProUpRevTx::REASON_LAST, REJECT_INVALID, and TRANSACTION_PROVIDER_UPDATE_REVOKE.
Referenced by CheckSpecialTx().
◆ CheckProUpServTx()
| bool CheckProUpServTx | ( | const CTransaction & | tx, |
| const CBlockIndex * | pindexPrev, | ||
| CValidationState & | state | ||
| ) |
Definition at line 218 of file providertx.cpp.
References CProUpServTx::addr, CheckHashSig(), CheckInputsHash(), CheckService(), CProUpServTx::CURRENT_VERSION, deterministicMNManager, CValidationState::DoS(), GetTxPayload(), CScript::IsPayToPublicKeyHash(), CScript::IsPayToScriptHash(), CTransaction::nType, CProUpServTx::nVersion, CProUpServTx::proTxHash, REJECT_DUPLICATE, REJECT_INVALID, CProUpServTx::scriptOperatorPayout, and TRANSACTION_PROVIDER_UPDATE_SERVICE.
Referenced by CheckSpecialTx().
◆ CheckService()
|
static |
Definition at line 21 of file providertx.cpp.
References CreateChainParams(), CValidationState::DoS(), CBaseChainParams::MAIN, Params(), and REJECT_INVALID.
Referenced by CheckProRegTx(), and CheckProUpServTx().
◆ CheckStringSig()
|
static |
Definition at line 57 of file providertx.cpp.
References CValidationState::DoS(), REJECT_INVALID, and CMessageSigner::VerifyMessage().
Referenced by CheckProRegTx().

