Ensure that the user sets a PIN before proceeding to main
This commit is contained in:
parent
2a5f7517f4
commit
1d578209fc
@ -43,7 +43,7 @@ func main() {
|
||||
state.FlagDebugger.Register(models.USERFLAG_INCORRECTDATEFORMAT,"INVALIDDATEFORMAT")
|
||||
state.FlagDebugger.Register(models.USERFLAG_INVALID_RECIPIENT,"INVALIDRECIPIENT")
|
||||
state.FlagDebugger.Register(models.USERFLAG_PINMISMATCH,"PINMISMATCH")
|
||||
state.FlagDebugger.Register(models.USERFLAG_QUERYPIN,"QUERYPIN")
|
||||
state.FlagDebugger.Register(models.USERFLAG_PIN_SET,"PIN_SET")
|
||||
state.FlagDebugger.Register(models.USERFLAG_INVALID_RECIPIENT_WITH_INVITE,"INVALIDRECIPIENT_WITH_INVITE")
|
||||
state.FlagDebugger.Register(models.USERFLAG_INVALID_AMOUNT,"INVALIDAMOUNT")
|
||||
state.FlagDebugger.Register(models.USERFLAG_UNLOCKFORUPDATE,"UNLOCKFORUPDATE")
|
||||
|
@ -61,6 +61,13 @@ func (h *Handlers) CreateAccount(ctx context.Context, sym string, input []byte)
|
||||
return res, err
|
||||
}
|
||||
|
||||
// if an account exists, set the flag and return
|
||||
existingAccountData, err := h.accountFileHandler.ReadAccountData()
|
||||
if existingAccountData != nil {
|
||||
res.FlagSet = append(res.FlagSet, models.USERFLAG_ACCOUNT_CREATED)
|
||||
return res, err
|
||||
}
|
||||
|
||||
accountResp, err := server.CreateAccount()
|
||||
if err != nil {
|
||||
res.FlagSet = append(res.FlagSet, models.USERFLAG_ACCOUNT_CREATION_FAILED)
|
||||
@ -119,6 +126,7 @@ func (h *Handlers) VerifyPin(ctx context.Context, sym string, input []byte) (res
|
||||
if bytes.Equal(input, []byte(accountData["AccountPIN"])) {
|
||||
res.FlagSet = []uint32{models.USERFLAG_VALIDPIN}
|
||||
res.FlagReset = []uint32{models.USERFLAG_PINMISMATCH}
|
||||
res.FlagSet = append(res.FlagSet, models.USERFLAG_PIN_SET)
|
||||
} else {
|
||||
res.FlagSet = []uint32{models.USERFLAG_PINMISMATCH}
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ const (
|
||||
USERFLAG_INCORRECTPIN
|
||||
USERFLAG_UNLOCKFORUPDATE
|
||||
USERFLAG_INVALID_AMOUNT
|
||||
USERFLAG_QUERYPIN
|
||||
USERFLAG_PIN_SET
|
||||
USERFLAG_VALIDPIN
|
||||
USERFLAG_PINMISMATCH
|
||||
USERFLAG_INCORRECTDATEFORMAT
|
||||
|
@ -3,4 +3,5 @@ CATCH account_creation_failed 22 1
|
||||
MOUT exit 0
|
||||
HALT
|
||||
LOAD save_pin 0
|
||||
INCMP quit 0
|
||||
INCMP confirm_create_pin *
|
||||
|
@ -2,5 +2,6 @@ CATCH select_language 8 0
|
||||
CATCH terms 9 0
|
||||
LOAD check_account_status 0
|
||||
CATCH account_pending 10 1
|
||||
CATCH create_pin 18 0
|
||||
CATCH main 11 1
|
||||
HALT
|
||||
|
@ -4,4 +4,4 @@ MOUT yes 0
|
||||
MOUT no 1
|
||||
HALT
|
||||
INCMP create_pin 0
|
||||
INCMP _ *
|
||||
INCMP quit *
|
||||
|
Loading…
Reference in New Issue
Block a user