mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-05-20 13:56:45 +00:00

* Add a new message: BlockLocatorHighestHash. * Add a new message: IBDBlockLocator. * Implement HandleIBDBlockLocator. * Reimplement findHighestSharedBlockHash. * Make HandleIBDBlockLocator only return hashes that are in the selected parent chain of the target hash. * Increase the cache sizes of blockRelationStore, reachabilityDataStore, and ghostdagDataStore. * Fix wrong initial highHash in findHighestSharedBlockHash. * Make go vet happy. * Protect against receiving wrong messages when expecting MsgIBDBlockLocatorHighestHash.
28 lines
764 B
Go
28 lines
764 B
Go
package appmessage
|
|
|
|
import (
|
|
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
|
)
|
|
|
|
// MsgIBDBlockLocator represents a kaspa ibdBlockLocator message
|
|
type MsgIBDBlockLocator struct {
|
|
baseMessage
|
|
TargetHash *externalapi.DomainHash
|
|
BlockLocatorHashes []*externalapi.DomainHash
|
|
}
|
|
|
|
// Command returns the protocol command string for the message
|
|
func (msg *MsgIBDBlockLocator) Command() MessageCommand {
|
|
return CmdIBDBlockLocator
|
|
}
|
|
|
|
// NewMsgIBDBlockLocator returns a new kaspa ibdBlockLocator message
|
|
func NewMsgIBDBlockLocator(targetHash *externalapi.DomainHash,
|
|
blockLocatorHashes []*externalapi.DomainHash) *MsgIBDBlockLocator {
|
|
|
|
return &MsgIBDBlockLocator{
|
|
TargetHash: targetHash,
|
|
BlockLocatorHashes: blockLocatorHashes,
|
|
}
|
|
}
|