Update block height used to determine relevant parameters

This commit is contained in:
J Ross Nicoll 2015-08-27 22:25:34 +01:00 committed by Ross Nicoll
parent 31f2d1ae92
commit 8f17f8f732

View file

@ -1187,7 +1187,8 @@ static bool ReadBlockOrHeader(T& block, const CDiskBlockPos& pos)
}
// Check the header
if (!CheckAuxPowProofOfWork(block, Params().GetConsensus(0))) // FIXME: Can we get height at all?
// Dogecoin: We don't necessarily have block height, so we depend on using the base parameters
if (!CheckAuxPowProofOfWork(block, Params().GetConsensus(0)))
return error("ReadBlockFromDisk: Errors in block header at %s", pos.ToString());
return true;
@ -2677,7 +2678,10 @@ bool FindUndoPos(CValidationState &state, int nFile, CDiskBlockPos &pos, unsigne
bool CheckBlockHeader(const CBlockHeader& block, CValidationState& state, bool fCheckPOW)
{
// Check proof of work matches claimed amount
if (fCheckPOW && !CheckAuxPowProofOfWork(block, Params().GetConsensus(0))) // FIXME: Get actual height
// We don't have block height as this is called without context (i.e. without
// knowing the previous block), but that's okay, as the checks done are permissive
// (i.e. doesn't check work limit or whether AuxPoW is enabled)
if (fCheckPOW && !CheckAuxPowProofOfWork(block, Params().GetConsensus(0)))
return state.DoS(50, error("CheckBlockHeader(): proof of work failed"),
REJECT_INVALID, "high-hash");