aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSonic <sonic@dexon.org>2018-11-30 12:35:33 +0800
committerWei-Ning Huang <w@byzantine-lab.io>2019-06-12 17:27:19 +0800
commit2777a457ba570455ef9641faf33f59852ea93d9e (patch)
tree348c23a0c439182d67a54da199626b1d61f8c9ff
parent4f9c54893e6eb06dd32c509137fc682cc7b1ab84 (diff)
downloadgo-tangerine-2777a457ba570455ef9641faf33f59852ea93d9e.tar.gz
go-tangerine-2777a457ba570455ef9641faf33f59852ea93d9e.tar.zst
go-tangerine-2777a457ba570455ef9641faf33f59852ea93d9e.zip
dex: verify header that imported from fetcher (#68)
-rw-r--r--core/blockchain.go4
-rw-r--r--dex/handler.go2
2 files changed, 5 insertions, 1 deletions
diff --git a/core/blockchain.go b/core/blockchain.go
index 625bf7e3a..b22da28ab 100644
--- a/core/blockchain.go
+++ b/core/blockchain.go
@@ -1734,6 +1734,10 @@ func (bc *BlockChain) insertDexonChain(chain types.Blocks) (int, []interface{},
return 0, events, coalescedLogs, nil
}
+func (bc *BlockChain) VerifyDexonHeader(header *types.Header) error {
+ return bc.hc.verifyTSig(header, bc.verifierCache)
+}
+
func (bc *BlockChain) ProcessPendingBlock(block *types.Block, witness *coreTypes.Witness) (*common.Hash, error) {
n, events, logs, err := bc.processPendingBlock(block, witness)
bc.PostChainEvents(events, logs)
diff --git a/dex/handler.go b/dex/handler.go
index b6a75d2fd..5cdff5d0c 100644
--- a/dex/handler.go
+++ b/dex/handler.go
@@ -208,7 +208,7 @@ func NewProtocolManager(
manager.downloader = downloader.New(mode, chaindb, manager.eventMux, blockchain, nil, manager.removePeer)
validator := func(header *types.Header) error {
- return engine.VerifyHeader(blockchain, header, true)
+ return blockchain.VerifyDexonHeader(header)
}
heighter := func() uint64 {
return blockchain.CurrentBlock().NumberU64()