From 3e1a89a27dcd7847e80dd717bbed8360b322240c Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Thu, 17 Dec 2015 01:44:48 +0100 Subject: Catch more errors --- cmd/acmed/config.go | 4 ++++ cmd/acmed/main.go | 38 ++++++++++++++++++++++++-------------- 2 files changed, 28 insertions(+), 14 deletions(-) (limited to 'cmd') diff --git a/cmd/acmed/config.go b/cmd/acmed/config.go index f1529b2..7f5ffbe 100644 --- a/cmd/acmed/config.go +++ b/cmd/acmed/config.go @@ -63,6 +63,7 @@ var ( errNoKey = errors.New("no key specified") errNoCert = errors.New("no cert specified") errNoAltNames = errors.New("no altnames specified") + errNoMail = errors.New("no mail specified") ) func LoadConfig(fname string) (*Config, error) { @@ -79,6 +80,9 @@ func LoadConfig(fname string) (*Config, error) { if v.KeySize == 0 { v.KeySize = c.Defaults.KeySize } + if v.Mail == "" { + return nil, errNoMail + } if v.Key == "" { return nil, errNoKey } diff --git a/cmd/acmed/main.go b/cmd/acmed/main.go index 5b69327..08a62f3 100644 --- a/cmd/acmed/main.go +++ b/cmd/acmed/main.go @@ -53,30 +53,40 @@ func chkKey(k PrivKey) (*rsa.PrivateKey, error) { } } -func main() { - flag.Parse() - conf, err := LoadConfig(*confName) - if err != nil { - log.Fatal(err) - } - - for k, acc := range conf.Account { +func chkKeys(c *Config) error { + var err error + for k, acc := range c.Account { acc.key, err = chkKey(acc) if err != nil { - log.Fatal(err) + return err } - conf.Account[k] = acc + c.Account[k] = acc } - - for k, des := range conf.Desire { + for k, des := range c.Desire { des.key, err = chkKey(des) if err != nil { - log.Fatal(err) + return err } - conf.Desire[k] = des + c.Desire[k] = des + } + return nil +} + +func main() { + flag.Parse() + conf, err := LoadConfig(*confName) + if err != nil { + log.Fatal(err) + } + err = chkKeys(conf) + if err != nil { + log.Fatal(err) } log.Println(conf) + for k, des := range conf.Desire { + log.Println(k, des.account) + } return for k, des := range conf.Desire { -- cgit v1.2.3