aboutsummaryrefslogtreecommitdiff
path: root/cli.go
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2024-01-29 23:55:38 +0700
committerShulhan <ms@kilabit.info>2024-01-29 23:55:38 +0700
commit1b26cbde7cc7f8488fa5df3c37c9b0163a921631 (patch)
tree13b5565865151ba17e2e8a861f6024b8e04b904f /cli.go
parent3aa08b00a1151249c6172f0739daac6be5ef857f (diff)
downloadgotp-1b26cbde7cc7f8488fa5df3c37c9b0163a921631.tar.xz
cli: simplify Import
Check for valid provider name and parse the imported file before loading private key.
Diffstat (limited to 'cli.go')
-rw-r--r--cli.go17
1 files changed, 6 insertions, 11 deletions
diff --git a/cli.go b/cli.go
index cea70bc..c07dcad 100644
--- a/cli.go
+++ b/cli.go
@@ -146,11 +146,6 @@ func (cli *Cli) Import(providerName, file string) (n int, err error) {
issuer *Issuer
)
- err = cli.cfg.loadPrivateKey()
- if err != nil {
- return 0, fmt.Errorf(`%s: %w`, logp, err)
- }
-
providerName = strings.ToLower(providerName)
switch providerName {
case providerNameAegis:
@@ -163,13 +158,13 @@ func (cli *Cli) Import(providerName, file string) (n int, err error) {
return 0, fmt.Errorf(`%s: %w`, logp, err)
}
- for _, issuer = range issuers {
- err = issuer.validate()
- if err != nil {
- return 0, fmt.Errorf(`%s: %w`, logp, err)
- }
+ err = cli.cfg.loadPrivateKey()
+ if err != nil {
+ return 0, fmt.Errorf(`%s: %w`, logp, err)
+ }
- err = cli.cfg.add(issuer)
+ for _, issuer = range issuers {
+ err = cli.add(issuer)
if err != nil {
return 0, fmt.Errorf(`%s: %w`, logp, err)
}