diff options
author | Jimmy Hu <jimmy.hu@dexon.org> | 2019-03-28 18:21:00 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@dexon.org> | 2019-04-09 21:32:59 +0800 |
commit | 3cb8ea02990fe36da2498f5df736e2eb1d0f43b2 (patch) | |
tree | bafe34fe0dc4424ee830801aa336289f03d26dff /core | |
parent | 08c893f4942ea84ed13ecdd6058bcf39585a4566 (diff) | |
download | go-tangerine-3cb8ea02990fe36da2498f5df736e2eb1d0f43b2.tar go-tangerine-3cb8ea02990fe36da2498f5df736e2eb1d0f43b2.tar.gz go-tangerine-3cb8ea02990fe36da2498f5df736e2eb1d0f43b2.tar.bz2 go-tangerine-3cb8ea02990fe36da2498f5df736e2eb1d0f43b2.tar.lz go-tangerine-3cb8ea02990fe36da2498f5df736e2eb1d0f43b2.tar.xz go-tangerine-3cb8ea02990fe36da2498f5df736e2eb1d0f43b2.tar.zst go-tangerine-3cb8ea02990fe36da2498f5df736e2eb1d0f43b2.zip |
dex: rebuild connection if dkg reset, core/vm: fix gov (#308)
* dex: rebuild connection if dkg reset
* core: vm: fix governance contract
Diffstat (limited to 'core')
-rw-r--r-- | core/governance.go | 4 | ||||
-rw-r--r-- | core/vm/oracle_contracts.go | 12 |
2 files changed, 16 insertions, 0 deletions
diff --git a/core/governance.go b/core/governance.go index b39fdc3c6..d40432301 100644 --- a/core/governance.go +++ b/core/governance.go @@ -170,6 +170,10 @@ func (d *Governance) NodeSet(round uint64) []coreCrypto.PublicKey { return pks } +func (d *Governance) PurgeNotarySet(round uint64) { + d.nodeSetCache.Purge(round) +} + func (d *Governance) NotarySet(round uint64) (map[string]struct{}, error) { notarySet, err := d.nodeSetCache.GetNotarySet(round) if err != nil { diff --git a/core/vm/oracle_contracts.go b/core/vm/oracle_contracts.go index dc09df194..3da5e3335 100644 --- a/core/vm/oracle_contracts.go +++ b/core/vm/oracle_contracts.go @@ -2349,6 +2349,18 @@ func (g *GovernanceContract) Run(evm *EVM, input []byte, contract *Contract) (re return nil, errExecutionReverted } return res, nil + case "notaryParamAlpha": + res, err := method.Outputs.Pack(g.state.NotaryParamAlpha()) + if err != nil { + return nil, errExecutionReverted + } + return res, nil + case "notaryParamBeta": + res, err := method.Outputs.Pack(g.state.NotaryParamBeta()) + if err != nil { + return nil, errExecutionReverted + } + return res, nil case "owner": res, err := method.Outputs.Pack(g.state.Owner()) if err != nil { |