Bitcoin ABC  0.26.3
P2P Digital Currency
Enumerations
blockvalidity.h File Reference
#include <cstdint>
Include dependency graph for blockvalidity.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum class  BlockValidity : uint32_t {
  UNKNOWN = 0 , RESERVED = 1 , TREE = 2 , TRANSACTIONS = 3 ,
  CHAIN = 4 , SCRIPTS = 5
}
 

Enumeration Type Documentation

◆ BlockValidity

enum BlockValidity : uint32_t
strong
Enumerator
UNKNOWN 

Unused.

RESERVED 

Reserved (was HEADER).

TREE 

All parent headers found, difficulty matches, timestamp >= median previous, checkpoint.

Implies all parents are also at least TREE.

TRANSACTIONS 

Only first tx is coinbase, 2 <= coinbase input script length <= 100, transactions valid, no duplicate txids, size, merkle root.

Implies all parents are at least TREE but not necessarily TRANSACTIONS. When all parent blocks also have TRANSACTIONS, CBlockIndex::nChainTx and CBlockIndex::nChainSize will be set.

CHAIN 

Outputs do not overspend inputs, no double spends, coinbase output ok, no immature coinbase spends, BIP30.

Implies all parents are also at least CHAIN.

SCRIPTS 

Scripts & signatures ok.

Implies all parents are also at least SCRIPTS.

Definition at line 10 of file blockvalidity.h.