From 460e9515849b8b0a2d305101babf40d0e82112ce Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Fri, 23 Aug 2024 16:01:13 +0300 Subject: [PATCH] validate PIN using the set AccountPIN --- cmd/main.go | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/cmd/main.go b/cmd/main.go index dbe702b..8b8043a 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -362,8 +362,21 @@ func (fsd *fsData) checkIdentifier(ctx context.Context, sym string, input []byte func (fsd *fsData) unLock(ctx context.Context, sym string, input []byte) (resource.Result, error) { res := resource.Result{} pin := string(input) - if len(input) > 0 { - if pin == "0000" { + fp := fsd.path + "_data" + + jsonData, err := os.ReadFile(fp) + if err != nil { + return res, err + } + + var accountData map[string]string + err = json.Unmarshal(jsonData, &accountData) + if err != nil { + return res, err + } + + if len(input) > 1 { + if pin != accountData["AccountPIN"] { res.FlagSet = append(res.FlagSet, USERFLAG_INCORRECTPIN) res.FlagReset = append(res.FlagReset, USERFLAG_ACCOUNT_UNLOCKED) return res, nil