From 8ce6e8dd325c658b3ca49a5de6c7540a72ec3fb5 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 18 Dec 2015 19:00:12 +0100 Subject: Expand interface --- cmd/acme/main.go | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'cmd/acme/main.go') diff --git a/cmd/acme/main.go b/cmd/acme/main.go index d197908..1a4f4f2 100644 --- a/cmd/acme/main.go +++ b/cmd/acme/main.go @@ -2,6 +2,7 @@ package main import ( "crypto/rsa" + "errors" "flag" "log" "os" @@ -14,7 +15,14 @@ var confName = flag.String("conf", "acme.toml", "configuration file") func chkKey(k PrivKey) (*rsa.PrivateKey, error) { key := k.KeyPath() - if _, err := os.Stat(key); os.IsNotExist(err) { + if k.KeyExists() { + fd, err := os.Open(key) + if err != nil { + return nil, err + } + defer fd.Close() + return acme.LoadKey(fd) + } else { log.Println("allocating", key, k.Size()) if err := os.MkdirAll(path.Dir(key), 0700); err != nil { return nil, err @@ -26,20 +34,12 @@ func chkKey(k PrivKey) (*rsa.PrivateKey, error) { } defer fd.Close() return acme.NewKey(fd, k.Size()) - } else { - fd, err := os.Open(key) - if err != nil { - return nil, err - } - defer fd.Close() - return acme.LoadKey(fd) } } func chkCert(k Cert) error { - cert := k.CertPath() - if _, err := os.Stat(cert); os.IsNotExist(err) { - return err + if !k.CertExists() { + return errors.New("cert missing") } return nil } -- cgit v1.2.3