diff options
author | Wei-Ning Huang <w@dexon.org> | 2018-10-20 16:08:40 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@byzantine-lab.io> | 2019-06-12 17:23:39 +0800 |
commit | 45dee648b6f28f73e781f71a10561dc064327edf (patch) | |
tree | 02bfeeab9f168e782306ab579acedac8e8665de7 /core | |
parent | bd1f04e40e12c36af4df39450489c477c4f0fb06 (diff) | |
download | go-tangerine-45dee648b6f28f73e781f71a10561dc064327edf.tar go-tangerine-45dee648b6f28f73e781f71a10561dc064327edf.tar.gz go-tangerine-45dee648b6f28f73e781f71a10561dc064327edf.tar.bz2 go-tangerine-45dee648b6f28f73e781f71a10561dc064327edf.tar.lz go-tangerine-45dee648b6f28f73e781f71a10561dc064327edf.tar.xz go-tangerine-45dee648b6f28f73e781f71a10561dc064327edf.tar.zst go-tangerine-45dee648b6f28f73e781f71a10561dc064327edf.zip |
dex: use RLP to encode contract payload data
Diffstat (limited to 'core')
-rw-r--r-- | core/vm/governance.go | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/core/vm/governance.go b/core/vm/governance.go index b2bb531f2..b5d703fd7 100644 --- a/core/vm/governance.go +++ b/core/vm/governance.go @@ -18,7 +18,6 @@ package vm import ( - "encoding/json" "math/big" "strings" @@ -27,6 +26,7 @@ import ( "github.com/dexon-foundation/dexon/core/types" "github.com/dexon-foundation/dexon/crypto" "github.com/dexon-foundation/dexon/params" + "github.com/dexon-foundation/dexon/rlp" coreCommon "github.com/dexon-foundation/dexon-consensus-core/common" "github.com/dexon-foundation/dexon-consensus-core/core" @@ -1388,7 +1388,7 @@ func (g *GovernanceContract) addDKGComplaint(round *big.Int, comp []byte) ([]byt } var dkgComplaint coreTypes.DKGComplaint - if err := json.Unmarshal(comp, &dkgComplaint); err != nil { + if err := rlp.DecodeBytes(comp, &dkgComplaint); err != nil { g.penalize() return nil, errExecutionReverted } @@ -1427,7 +1427,7 @@ func (g *GovernanceContract) addDKGMasterPublicKey(round *big.Int, mpk []byte) ( } var dkgMasterPK coreTypes.DKGMasterPublicKey - if err := json.Unmarshal(mpk, &dkgMasterPK); err != nil { + if err := rlp.DecodeBytes(mpk, &dkgMasterPK); err != nil { g.penalize() return nil, errExecutionReverted } @@ -1460,7 +1460,7 @@ func (g *GovernanceContract) addDKGFinalize(round *big.Int, finalize []byte) ([] caller := g.contract.Caller() var dkgFinalize coreTypes.DKGFinalize - if err := json.Unmarshal(finalize, &dkgFinalize); err != nil { + if err := rlp.DecodeBytes(finalize, &dkgFinalize); err != nil { g.penalize() return nil, errExecutionReverted } @@ -1556,7 +1556,7 @@ func (g *GovernanceContract) proposeCRS(signedCRS []byte) ([]byte, error) { var dkgMasterPKs []*coreTypes.DKGMasterPublicKey for _, mpk := range g.state.DKGMasterPublicKeys(round) { x := new(coreTypes.DKGMasterPublicKey) - if err := json.Unmarshal(mpk, x); err != nil { + if err := rlp.DecodeBytes(mpk, x); err != nil { panic(err) } dkgMasterPKs = append(dkgMasterPKs, x) @@ -1566,7 +1566,7 @@ func (g *GovernanceContract) proposeCRS(signedCRS []byte) ([]byte, error) { var dkgComplaints []*coreTypes.DKGComplaint for _, comp := range g.state.DKGComplaints(round) { x := new(coreTypes.DKGComplaint) - if err := json.Unmarshal(comp, x); err != nil { + if err := rlp.DecodeBytes(comp, x); err != nil { panic(err) } dkgComplaints = append(dkgComplaints, x) |