sort all relevant GetSignBytes:

- call SortJSON before return JSON bytes to guarantee alphabetic
ordering
This commit is contained in:
Liamsi 2018-07-06 00:23:12 +01:00
parent d84ed7c565
commit 0f1ceb073e
5 changed files with 66 additions and 2 deletions

View File

@ -3,6 +3,7 @@ package auth
import (
"encoding/json"
"github.com/cosmos/cosmos-sdk/server"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/tendermint/tendermint/crypto"
)
@ -141,6 +142,10 @@ func StdSignBytes(chainID string, accnum int64, sequence int64, fee StdFee, msgs
if err != nil {
panic(err)
}
bz, err = server.SortJSON(bz)
if err != nil {
panic(err)
}
return bz
}

View File

@ -3,6 +3,7 @@ package bank
import (
"encoding/json"
"github.com/cosmos/cosmos-sdk/server"
sdk "github.com/cosmos/cosmos-sdk/types"
)
@ -72,6 +73,10 @@ func (msg MsgSend) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -133,6 +138,10 @@ func (msg MsgIssue) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -162,6 +171,10 @@ func (in Input) GetSignBytes() []byte {
if err != nil {
panic(err)
}
bin, err = server.SortJSON(bin)
if err != nil {
panic(err)
}
return bin
}
@ -209,6 +222,10 @@ func (out Output) GetSignBytes() []byte {
if err != nil {
panic(err)
}
bin, err = server.SortJSON(bin)
if err != nil {
panic(err)
}
return bin
}

View File

@ -187,7 +187,7 @@ func TestMsgSendGetSignBytes(t *testing.T) {
}
res := msg.GetSignBytes()
expected := `{"inputs":[{"address":"cosmosaccaddr1d9h8qat5e4ehc5","coins":[{"denom":"atom","amount":"10"}]}],"outputs":[{"address":"cosmosaccaddr1da6hgur4wse3jx32","coins":[{"denom":"atom","amount":"10"}]}]}`
expected := `{"inputs":[{"address":"cosmosaccaddr1d9h8qat5e4ehc5","coins":[{"amount":"10","denom":"atom"}]}],"outputs":[{"address":"cosmosaccaddr1da6hgur4wse3jx32","coins":[{"amount":"10","denom":"atom"}]}]}`
require.Equal(t, expected, string(res))
}
@ -257,7 +257,7 @@ func TestMsgIssueGetSignBytes(t *testing.T) {
}
res := msg.GetSignBytes()
expected := `{"banker":"cosmosaccaddr1d9h8qat5e4ehc5","outputs":[{"address":"cosmosaccaddr1d3hkzm3dveex7mfdvfsku6cwsauqd","coins":[{"denom":"atom","amount":"10"}]}]}`
expected := `{"banker":"cosmosaccaddr1d9h8qat5e4ehc5","outputs":[{"address":"cosmosaccaddr1d3hkzm3dveex7mfdvfsku6cwsauqd","coins":[{"amount":"10","denom":"atom"}]}]}`
require.Equal(t, expected, string(res))
}

View File

@ -3,6 +3,7 @@ package gov
import (
"fmt"
"github.com/cosmos/cosmos-sdk/server"
sdk "github.com/cosmos/cosmos-sdk/types"
)
@ -82,6 +83,10 @@ func (msg MsgSubmitProposal) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -149,6 +154,10 @@ func (msg MsgDeposit) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -213,6 +222,10 @@ func (msg MsgVote) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}

View File

@ -3,6 +3,7 @@ package types
import (
"math"
"github.com/cosmos/cosmos-sdk/server"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/tendermint/tendermint/crypto"
)
@ -63,6 +64,10 @@ func (msg MsgCreateValidator) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -114,6 +119,10 @@ func (msg MsgEditValidator) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -166,6 +175,10 @@ func (msg MsgDelegate) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -226,6 +239,10 @@ func (msg MsgBeginRedelegate) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -286,6 +303,10 @@ func (msg MsgCompleteRedelegate) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -338,6 +359,10 @@ func (msg MsgBeginUnbonding) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}
@ -387,6 +412,10 @@ func (msg MsgCompleteUnbonding) GetSignBytes() []byte {
if err != nil {
panic(err)
}
b, err = server.SortJSON(b)
if err != nil {
panic(err)
}
return b
}