mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-09-13 13:00:10 +00:00

* [NOD-1223] Move all network stuff into a new network package. * [NOD-1223] Delete the unused package testutil. * [NOD-1223] Move infrastructure stuff into a new instrastructure package. * [NOD-1223] Move domain stuff into a new domain package.
45 lines
1.5 KiB
Go
45 lines
1.5 KiB
Go
package blockdag
|
|
|
|
// BehaviorFlags is a bitmask defining tweaks to the normal behavior when
|
|
// performing DAG processing and consensus rules checks.
|
|
type BehaviorFlags uint32
|
|
|
|
const (
|
|
// BFFastAdd may be set to indicate that several checks can be avoided
|
|
// for the block since it is already known to fit into the DAG due to
|
|
// already proving it correct links into the DAG.
|
|
BFFastAdd BehaviorFlags = 1 << iota
|
|
|
|
// BFNoPoWCheck may be set to indicate the proof of work check which
|
|
// ensures a block hashes to a value less than the required target will
|
|
// not be performed.
|
|
BFNoPoWCheck
|
|
|
|
// BFWasUnorphaned may be set to indicate that a block was just now
|
|
// unorphaned
|
|
BFWasUnorphaned
|
|
|
|
// BFAfterDelay may be set to indicate that a block had timestamp too far
|
|
// in the future, just finished the delay
|
|
BFAfterDelay
|
|
|
|
// BFWasStored is set to indicate that the block was previously stored
|
|
// in the block index but was never fully processed
|
|
BFWasStored
|
|
|
|
// BFDisallowDelay is set to indicate that a delayed block should be rejected.
|
|
// This is used for the case where a block is submitted through RPC.
|
|
BFDisallowDelay
|
|
|
|
// BFDisallowOrphans is set to indicate that an orphan block should be rejected.
|
|
// This is used for the case where a block is submitted through RPC.
|
|
BFDisallowOrphans
|
|
|
|
// BFNone is a convenience value to specifically indicate no flags.
|
|
BFNone BehaviorFlags = 0
|
|
)
|
|
|
|
func isBehaviorFlagRaised(flags BehaviorFlags, flag BehaviorFlags) bool {
|
|
return flags&flag == flag
|
|
}
|