mirror of https://github.com/certusone/dc4bc.git
return step for state_sig_proposal_await_participants_confirmations
This commit is contained in:
parent
950e7369b4
commit
eca8329508
|
@ -7,6 +7,7 @@ import (
|
||||||
"github.com/depools/dc4bc/dkg"
|
"github.com/depools/dc4bc/dkg"
|
||||||
"github.com/depools/dc4bc/fsm/fsm"
|
"github.com/depools/dc4bc/fsm/fsm"
|
||||||
"github.com/depools/dc4bc/fsm/state_machines/dkg_proposal_fsm"
|
"github.com/depools/dc4bc/fsm/state_machines/dkg_proposal_fsm"
|
||||||
|
"github.com/depools/dc4bc/fsm/state_machines/signature_proposal_fsm"
|
||||||
"github.com/depools/dc4bc/fsm/types/requests"
|
"github.com/depools/dc4bc/fsm/types/requests"
|
||||||
"github.com/depools/dc4bc/qr"
|
"github.com/depools/dc4bc/qr"
|
||||||
"github.com/syndtr/goleveldb/leveldb"
|
"github.com/syndtr/goleveldb/leveldb"
|
||||||
|
@ -174,6 +175,8 @@ func (am *AirgappedMachine) HandleOperation(operation client.Operation) ([]clien
|
||||||
// handler gets a pointer to an operation, do necessary things
|
// handler gets a pointer to an operation, do necessary things
|
||||||
// and write a result (or an error) to .Result field of operation
|
// and write a result (or an error) to .Result field of operation
|
||||||
switch fsm.State(operation.Type) {
|
switch fsm.State(operation.Type) {
|
||||||
|
case signature_proposal_fsm.StateAwaitParticipantsConfirmations:
|
||||||
|
err = am.handleStateAwaitParticipantsConfirmations(&operation)
|
||||||
case dkg_proposal_fsm.StateDkgCommitsAwaitConfirmations:
|
case dkg_proposal_fsm.StateDkgCommitsAwaitConfirmations:
|
||||||
err = am.handleStateDkgCommitsAwaitConfirmations(&operation)
|
err = am.handleStateDkgCommitsAwaitConfirmations(&operation)
|
||||||
case dkg_proposal_fsm.StateDkgDealsAwaitConfirmations:
|
case dkg_proposal_fsm.StateDkgDealsAwaitConfirmations:
|
||||||
|
|
|
@ -164,9 +164,11 @@ func (c *Client) ProcessMessage(message storage.Message) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
operation = &types.Operation{
|
operation = &types.Operation{
|
||||||
Type: types.OperationType(resp.State),
|
Type: types.OperationType(resp.State),
|
||||||
Payload: bz,
|
Payload: bz,
|
||||||
|
DKGIdentifier: message.DkgRoundID,
|
||||||
}
|
}
|
||||||
|
fmt.Println("DKG - ", message.DkgRoundID)
|
||||||
default:
|
default:
|
||||||
log.Printf("State %s does not require an operation", resp.State)
|
log.Printf("State %s does not require an operation", resp.State)
|
||||||
}
|
}
|
||||||
|
|
|
@ -115,8 +115,10 @@ func (s *LevelDBState) SaveFSM(dkgRoundID string, dump []byte) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
var fsmInstances = map[string][]byte{}
|
var fsmInstances = map[string][]byte{}
|
||||||
if err := json.Unmarshal(bz, &fsmInstances); err != nil {
|
if len(bz) > 0 {
|
||||||
return fmt.Errorf("failed to unmarshal FSM instances: %w", err)
|
if err := json.Unmarshal(bz, &fsmInstances); err != nil {
|
||||||
|
return fmt.Errorf("failed to unmarshal FSM instances: %w", err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fsmInstances[dkgRoundID] = dump
|
fsmInstances[dkgRoundID] = dump
|
||||||
|
@ -135,8 +137,10 @@ func (s *LevelDBState) LoadFSM(dkgRoundID string) (*state_machines.FSMInstance,
|
||||||
}
|
}
|
||||||
|
|
||||||
var fsmInstances = map[string][]byte{}
|
var fsmInstances = map[string][]byte{}
|
||||||
if err := json.Unmarshal(bz, &fsmInstances); err != nil {
|
if len(bz) > 0 {
|
||||||
return nil, false, fmt.Errorf("failed to unmarshal FSM instances: %w", err)
|
if err := json.Unmarshal(bz, &fsmInstances); err != nil {
|
||||||
|
return nil, false, fmt.Errorf("failed to unmarshal FSM instances: %w", err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fsmInstanceBz, ok := fsmInstances[dkgRoundID]
|
fsmInstanceBz, ok := fsmInstances[dkgRoundID]
|
||||||
|
|
Loading…
Reference in New Issue