Skip to content

Commit 3b85e7e

Browse files
committed
fix replacement and signing process
1 parent 8ecfdd2 commit 3b85e7e

File tree

13 files changed

+33
-53
lines changed

13 files changed

+33
-53
lines changed

x/bandtss/keeper/group.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,8 @@ func (k Keeper) CreateGroupReplacement(
4949
}
5050

5151
// Execute the handler to process the replacement request.
52-
msg, err := k.tssKeeper.ConvertContentToBytes(ctx, types.NewReplaceGroupSignatureOrder(newGroup.PubKey))
53-
if err != nil {
54-
return 0, err
55-
}
56-
signing, err := k.tssKeeper.CreateSigning(ctx, currentGroup, msg)
52+
content := types.NewReplaceGroupSignatureOrder(newGroup.PubKey)
53+
signing, err := k.tssKeeper.CreateSigning(ctx, currentGroup, content)
5754
if err != nil {
5855
return 0, err
5956
}

x/bandtss/keeper/group_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,7 @@ func TestSuccessCreateGroupReplacement(t *testing.T) {
3737
k.SetCurrentGroupID(ctx, currentGroupID)
3838
s.MockTSSKeeper.EXPECT().GetGroup(ctx, currentGroupID).Return(currentGroup, nil).AnyTimes()
3939
s.MockTSSKeeper.EXPECT().GetGroup(ctx, newGroupID).Return(newGroup, nil).AnyTimes()
40-
s.MockTSSKeeper.EXPECT().ConvertContentToBytes(ctx, types.NewReplaceGroupSignatureOrder(newGroup.PubKey)).Return([]byte("test-msg"), nil)
41-
s.MockTSSKeeper.EXPECT().CreateSigning(ctx, currentGroup, []byte("test-msg")).Return(expectSigning, nil)
40+
s.MockTSSKeeper.EXPECT().CreateSigning(ctx, currentGroup, types.NewReplaceGroupSignatureOrder(newGroup.PubKey)).Return(expectSigning, nil)
4241

4342
signingID, err := k.CreateGroupReplacement(ctx, newGroupID, execTime)
4443
require.NoError(t, err)

x/bandtss/keeper/member.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func (k Keeper) SetLastActive(ctx sdk.Context, address sdk.AccAddress) error {
6464
return nil
6565
}
6666

67-
// DeactivateMember flags is_active to false. This function will panic if the given address
67+
// DeactivateMember flags is_active to false. This function will return error if the given address
6868
// isn't the member of the current group.
6969
func (k Keeper) DeactivateMember(ctx sdk.Context, address sdk.AccAddress) error {
7070
member, err := k.GetMember(ctx, address)

x/bandtss/keeper/msg_server.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,14 @@ func (k msgServer) RequestSignature(
7979
return nil, sdkerrors.ErrInvalidAddress.Wrapf("invalid address: %s", err)
8080
}
8181

82+
content := req.GetContent()
83+
if content.OrderRoute() == types.RouterKey && content.OrderType() == types.ReplaceGroupPath {
84+
return nil, types.ErrInvalidRequestSignature.Wrapf(
85+
"invalid request order route: %s order type: %s", content.OrderRoute(), content.OrderType())
86+
}
87+
8288
// Execute the handler to process the request.
83-
_, err = k.HandleCreateSigning(ctx, req.GetContent(), feePayer, req.FeeLimit)
89+
_, err = k.HandleCreateSigning(ctx, content, feePayer, req.FeeLimit)
8490
if err != nil {
8591
return nil, err
8692
}

x/bandtss/keeper/signing.go

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -132,12 +132,6 @@ func (k Keeper) HandleCreateSigning(
132132
sender sdk.AccAddress,
133133
feeLimit sdk.Coins,
134134
) (types.SigningID, error) {
135-
// Execute the handler to process the request.
136-
msg, err := k.tssKeeper.ConvertContentToBytes(ctx, content)
137-
if err != nil {
138-
return 0, err
139-
}
140-
141135
currentGroupID := k.GetCurrentGroupID(ctx)
142136
if currentGroupID == 0 {
143137
return 0, types.ErrNoActiveGroup
@@ -169,7 +163,7 @@ func (k Keeper) HandleCreateSigning(
169163
}
170164
}
171165

172-
currentGroupSigning, err := k.tssKeeper.CreateSigning(ctx, currentGroup, msg)
166+
currentGroupSigning, err := k.tssKeeper.CreateSigning(ctx, currentGroup, content)
173167
if err != nil {
174168
return 0, err
175169
}
@@ -181,7 +175,7 @@ func (k Keeper) HandleCreateSigning(
181175
return 0, err
182176
}
183177

184-
replacingGroupSigning, err := k.tssKeeper.CreateSigning(ctx, replacingGroup, msg)
178+
replacingGroupSigning, err := k.tssKeeper.CreateSigning(ctx, replacingGroup, content)
185179
if err != nil {
186180
return 0, err
187181
}

x/bandtss/keeper/signing_test.go

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ func TestHandleCreateSigning(t *testing.T) {
3232
err := k.SetParams(ctx, params)
3333
require.NoError(t, err)
3434

35-
s.MockTSSKeeper.EXPECT().ConvertContentToBytes(ctx, content).Return([]byte("test"), nil).AnyTimes()
3635
s.MockTSSKeeper.EXPECT().GetGroup(ctx, currentGroupID).Return(currentGroup, nil).AnyTimes()
3736

3837
type input struct {
@@ -59,7 +58,7 @@ func TestHandleCreateSigning(t *testing.T) {
5958
s.MockTSSKeeper.EXPECT().CreateSigning(
6059
ctx,
6160
currentGroup,
62-
[]byte("test"),
61+
content,
6362
).Return(expectCurrentGroupSigning, nil)
6463
s.MockBankKeeper.EXPECT().SendCoinsFromAccountToModule(
6564
ctx,
@@ -102,7 +101,7 @@ func TestHandleCreateSigning(t *testing.T) {
102101
s.MockTSSKeeper.EXPECT().CreateSigning(
103102
ctx,
104103
currentGroup,
105-
[]byte("test"),
104+
content,
106105
).Return(expectCurrentGroupSigning, nil)
107106
},
108107
postCheck: func() {
@@ -163,12 +162,12 @@ func TestHandleCreateSigning(t *testing.T) {
163162
s.MockTSSKeeper.EXPECT().CreateSigning(
164163
ctx,
165164
currentGroup,
166-
[]byte("test"),
165+
content,
167166
).Return(expectCurrentGroupSigning, nil)
168167
s.MockTSSKeeper.EXPECT().CreateSigning(
169168
ctx,
170169
replaceGroup,
171-
[]byte("test"),
170+
content,
172171
).Return(expectReplaceGroupSigning, nil)
173172
s.MockBankKeeper.EXPECT().SendCoinsFromAccountToModule(
174173
ctx,
@@ -223,7 +222,7 @@ func TestHandleCreateSigning(t *testing.T) {
223222
s.MockTSSKeeper.EXPECT().CreateSigning(
224223
ctx,
225224
currentGroup,
226-
[]byte("test"),
225+
content,
227226
).Return(expectCurrentGroupSigning, nil)
228227
s.MockBankKeeper.EXPECT().SendCoinsFromAccountToModule(
229228
ctx,

x/bandtss/testutil/mock_expected_keepers.go

Lines changed: 4 additions & 19 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

x/bandtss/types/errors.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,5 @@ var (
1616
ErrMemberAlreadyActive = errorsmod.Register(ModuleName, 11, "member already active")
1717
ErrMemberDuplicate = errorsmod.Register(ModuleName, 12, "duplicated member found within the list")
1818
ErrInvalidSigningThreshold = errorsmod.Register(ModuleName, 13, "invalid signing threshold number")
19+
ErrInvalidRequestSignature = errorsmod.Register(ModuleName, 14, "request signature is invalid")
1920
)

x/bandtss/types/expected_keepers.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ type TSSKeeper interface {
9191
CreateSigning(
9292
ctx sdk.Context,
9393
group tsstypes.Group,
94-
message []byte,
94+
content tsstypes.Content,
9595
) (*tsstypes.Signing, error)
9696

9797
MustGetMembers(ctx sdk.Context, groupID tss.GroupID) []tsstypes.Member
@@ -105,6 +105,5 @@ type TSSKeeper interface {
105105
GetPenalizedMembersExpiredSigning(ctx sdk.Context, signing tsstypes.Signing) ([]sdk.AccAddress, error)
106106

107107
GetSigning(ctx sdk.Context, signingID tss.SigningID) (tsstypes.Signing, error)
108-
ConvertContentToBytes(ctx sdk.Context, content tsstypes.Content) ([]byte, error)
109108
GetSigningResult(ctx sdk.Context, signingID tss.SigningID) (*tsstypes.SigningResult, error)
110109
}

x/oracle/client/cli/tx.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -695,7 +695,7 @@ func GetCmdRequestSignature() *cobra.Command {
695695
Long: strings.TrimSpace(
696696
fmt.Sprintf(`Request signature from request id.
697697
Example:
698-
$ %s tx bandtss request-signature oracle-result 1 --fee-limit 10uband
698+
$ %s tx bandtss request-signature oracle-result 1 2 --fee-limit 10uband
699699
`,
700700
version.AppName,
701701
),

0 commit comments

Comments
 (0)