diff options
| -rw-r--r-- | cli.go | 27 | ||||
| -rw-r--r-- | cli_test.go | 5 | ||||
| -rw-r--r-- | config.go | 7 |
3 files changed, 28 insertions, 11 deletions
@@ -134,9 +134,12 @@ func (cli *Cli) Add(issuer *Issuer) (err error) { return nil } - var ( - logp = `Add` - ) + var logp = `Add` + + cli.cfg.privateKey, err = loadPrivateKey(cli.cfg.PrivateKey, nil) + if err != nil { + return fmt.Errorf(`%s: %w`, logp, err) + } err = cli.add(issuer) if err != nil { @@ -163,6 +166,11 @@ func (cli *Cli) Generate(label string, n int) (listOtp []string, err error) { proto totp.Protocol ) + cli.cfg.privateKey, err = loadPrivateKey(cli.cfg.PrivateKey, nil) + if err != nil { + return nil, fmt.Errorf(`%s: %w`, logp, err) + } + issuer, err = cli.cfg.get(label) if err != nil { return nil, fmt.Errorf(`%s: %w`, logp, err) @@ -201,6 +209,11 @@ func (cli *Cli) Import(providerName, file string) (n int, err error) { issuer *Issuer ) + cli.cfg.privateKey, err = loadPrivateKey(cli.cfg.PrivateKey, nil) + if err != nil { + return 0, fmt.Errorf(`%s: %w`, logp, err) + } + providerName = strings.ToLower(providerName) switch providerName { case providerNameAegis: @@ -278,8 +291,14 @@ func (cli *Cli) RemovePrivateKey() (err error) { return nil } + var logp = `RemovePrivateKey` + + cli.cfg.privateKey, err = loadPrivateKey(cli.cfg.PrivateKey, nil) + if err != nil { + return fmt.Errorf(`%s: %w`, logp, err) + } + var ( - logp = `RemovePrivateKey` oldPrivateKey = cli.cfg.privateKey oldIssuers = cli.cfg.Issuers diff --git a/cli_test.go b/cli_test.go index 70a5e1d..81253b1 100644 --- a/cli_test.go +++ b/cli_test.go @@ -191,6 +191,11 @@ func TestCli_SetPrivateKey(t *testing.T) { } cli.cfg = cfg + cli.cfg.privateKey, err = loadPrivateKey(cli.cfg.PrivateKey, nil) + if err != nil { + t.Fatal(err) + } + var ( gotLabels []string = cli.List() label string @@ -77,13 +77,6 @@ func loadConfig(content []byte) (cfg *config, err error) { return nil, fmt.Errorf(`%s: %w`, logp, err) } - if len(cfg.PrivateKey) > 0 { - cfg.privateKey, err = loadPrivateKey(cfg.PrivateKey, nil) - if err != nil { - return nil, fmt.Errorf(`%s: %w`, logp, err) - } - } - return cfg, nil } |
